Merge "Use new graph interfaces in CHOTestMonkey"
diff --git a/.gitignore b/.gitignore
index fa270ed..b70404d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,4 +3,4 @@
*.pyc
.DS_Store
._.DS_Store
-
+.idea/*
diff --git a/README.md b/README.md
index ad22ef6..49ded69 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
-TestON, a testing infastructure by Paxterra
+TestON, a testing infastructure by Paxterra and Open Networking Labs
=======================================
-TestON is the testing platform that all the ONOS tests are being run on currently.
+TestON is the testing platform that all the ONOS tests are being run on currently.
Code Style
@@ -11,27 +11,27 @@
Setup
-------------
-0. Pull the git repo from https://github.com/OPENNETWORKINGLAB/OnosSystemTest.git
+0. Pull the git repo from gerrit or github(Read only mirror)
+
+ $ git clone https://gerrit.onosproject.org/OnosSystemTest
+
+ or
$ git clone https://github.com/OPENNETWORKINGLAB/OnosSystemTest.git
-1. Make a symbolic link for TestON on the HOMEDIR
- Execute the following from the home directory
+1. Run the install script
- $ ln -s OnosSystemTest/TestON TestON
+ $ cd OnosSystemTest/TestON
-2. Make sure python path is correct
+ $ install.sh
- $ export PYTHONPATH={PATH TO HOMEDIR}/TestON/
-
- $ echo $PYTHONPATH
Dependencies
------------
-1. ONOS
+1. [ONOS](https://github.com/opennetworkinglab/onos) - The system under test
-2. Mininet - Some driver functions rely on a modified version of Mininet. These functions are noted in the mininet driver file. To checkout this branch from your Mininet folder:
+2. [Mininet](https://github.com/mininet/mininet) - A Network Emulator. NOTE: Some driver functions rely on a modified version of Mininet. These functions are noted in the mininet driver file. To checkout this branch from your Mininet folder:
$ git remote add jhall11 https://github.com/jhall11/mininet.git
@@ -43,13 +43,7 @@
Note that you may need to run 'sudo make develop' if your mnexec.c file changed when switching branches.
-3. Install python packages configObj and pexpect (Note: pexpect 3.3 has a known bug. We recommend using version 3.2 for now). They can be installed as :
-
- $ sudo pip install configObj
-
- $ sudo pip install pexpect==3.2
-
- $ sudo pip install numpy
+3. There are some python modules required by some test cases. These modules should be installed by running the install.sh script.
4. Linc-OE - Some testcases use this to emulate optical devices
@@ -83,53 +77,51 @@
Change the file paths to the appropriate paths
2. The .topo file for each test
-
+
Must change the IPs/login/etc to point to the nodes you want to run on
Running TestON
------------
-1. TestON must be ran from its bin directory
+1. TestON must be ran from its bin directory
$ cd TestON/bin
-2. Launch cli
+2. Run the test
- $ ./cli.py
-
-3. Run the test
-
- teston> run PingallExample
+ $ teston run SAMPstartTemplate_1node
The Tests
-----------------------------------------------
The tests are all located it TestON/tests/
-Each test has its own folder with the following files:
+Each test has its own folder with the following files:
-1. .ospk file
+1. .ospk file (optional)
- This is written in Openspeak, a word based language developed by Paxterra.
- - It defines the cases and sequence of events for the test
+ - It defines the cases and sequence of events for the test
+
+ - TestON will automatically generate the .py file based on the .ospk file if the .ospk file exists.
2. .py file
-
- - This file serves the same exact function as the openspeak file.
- - It will only be used if there is NO .ospk file, so if you like python, delete or rename the .ospk file
-
-3. .topo file
+ - This file serves the same exact function as the openspeak file.
- - This defines all the components that TestON creates for that test and includes data such as IP address, login info, and device drivers
-
- - The Components must be defined in this file to be uesd in the openspeak or python files.
-
+ - It will only be used if there is NO .ospk file, so if you like python, delete or rename the .ospk file
+
+3. .topo file
+
+ - This defines all the components that TestON creates for that test and includes data such as IP address, login info, and device drivers
+
+ - The Components must be defined in this file to be uesd in the openspeak or python files.
+
4. .params file
- - Defines all the test-specific variables that are used by the test.
+ - Defines all the test-specific variables that are used by the test.
- - NOTE: The variable `testcases` which defines which testcases run when the test is ran.
+ - NOTE: The variable `testcases` defines which testcases run when the test is ran.
Troubleshooting
-----------------------------------------------
@@ -137,4 +129,4 @@
1. Double check the topo file for that specific test the nodes must be able to run that specific component ( Mininet IP -> machine with mn installed)
-2. Enable passwordless logins between your nodes and the TestON node.
+2. Enable passwordless logins between your nodes and the TestON node.
diff --git a/TestON/tests/SAMP/SAMPstartTemplate2_1node/__init__.py b/TestON/Documentation/.gitignore
similarity index 100%
copy from TestON/tests/SAMP/SAMPstartTemplate2_1node/__init__.py
copy to TestON/Documentation/.gitignore
diff --git a/TestON/Documentation/Driver_APIs_details.xls b/TestON/Documentation/Driver_APIs_details.xls
deleted file mode 100644
index b600549..0000000
--- a/TestON/Documentation/Driver_APIs_details.xls
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/OFA_Project_Tracker.xls b/TestON/Documentation/OFA_Project_Tracker.xls
deleted file mode 100644
index f6f9c6a..0000000
--- a/TestON/Documentation/OFA_Project_Tracker.xls
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/OFAutomation SRS V1.0.doc b/TestON/Documentation/OFAutomation SRS V1.0.doc
deleted file mode 100644
index 0248c15..0000000
--- a/TestON/Documentation/OFAutomation SRS V1.0.doc
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/OnLab_07_Feb_11_Feb.xls b/TestON/Documentation/OnLab_07_Feb_11_Feb.xls
deleted file mode 100644
index 70a6c93..0000000
--- a/TestON/Documentation/OnLab_07_Feb_11_Feb.xls
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/OpenSpeak Specs-1.1.doc b/TestON/Documentation/OpenSpeak Specs-1.1.doc
deleted file mode 100644
index 0389df5..0000000
--- a/TestON/Documentation/OpenSpeak Specs-1.1.doc
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/OpenSpeak Specs.doc b/TestON/Documentation/OpenSpeak Specs.doc
deleted file mode 100644
index 36be5a8..0000000
--- a/TestON/Documentation/OpenSpeak Specs.doc
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/TestON-module.html b/TestON/Documentation/TestON_Document/TestON-module.html
deleted file mode 100644
index c8dacdc..0000000
--- a/TestON/Documentation/TestON_Document/TestON-module.html
+++ /dev/null
@@ -1,390 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- > Home </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- Package TestON
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package TestON</h1><p class="nomargin-top"><span class="codelink"><a href="TestON-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.bin-module.html">TestON.bin</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.bin.cli-module.html">TestON.bin.cli</a></strong>: <em class="summary">Created on 20-Dec-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.bin.generatedriver-module.html">TestON.bin.generatedriver</a></strong>: <em class="summary">Created on 11-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.bin.nec-module.html">TestON.bin.nec</a></strong> </li>
- <li> <strong class="uidlink">TestON.bin.pronto</strong> </li>
- <li> <strong class="uidlink"><a href="TestON.bin.updatedriver-module.html">TestON.bin.updatedriver</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.bin.vyatta-module.html">TestON.bin.vyatta</a></strong>: <em class="summary">TestON is free software: you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.core-module.html">TestON.core</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.core.Thread-module.html">TestON.core.Thread</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.core.ast-module.html">TestON.core.ast</a></strong>: <em class="summary">ast
-~~~</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.dicttoobject-module.html">TestON.core.dicttoobject</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.core.iniparser-module.html">TestON.core.iniparser</a></strong>: <em class="summary">Created on 07-Jan-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.jsonparser-module.html">TestON.core.jsonparser</a></strong>: <em class="summary">Created on 07-Jan-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.logger-module.html">TestON.core.logger</a></strong>: <em class="summary">Created on 07-Jan-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.openspeak-module.html">TestON.core.openspeak</a></strong>: <em class="summary">Created on 20-Dec-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.teston-module.html">TestON.core.teston</a></strong>: <em class="summary">Created on 22-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.testparser-module.html">TestON.core.testparser</a></strong>: <em class="summary">Created on 26-Dec-2012</em> </li>
- <li> <strong class="uidlink">TestON.core.utilities</strong> </li>
- <li> <strong class="uidlink"><a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a></strong>: <em class="summary">Created on 03-Dec-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.xmlparser-module.html">TestON.core.xmlparser</a></strong>: <em class="summary">Created on 07-Jan-2013</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers-module.html">TestON.drivers</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common-module.html">TestON.drivers.common</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api-module.html">TestON.drivers.common.api</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.controller-module.html">TestON.drivers.common.api.controller</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.controller.onosrestdriver-module.html">TestON.drivers.common.api.controller.onosrestdriver</a></strong>: <em class="summary">Created on 07-08-2015</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.controllerdriver-module.html">TestON.drivers.common.api.controllerdriver</a></strong>: <em class="summary">Created on 29-Nov-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.fvtapidriver-module.html">TestON.drivers.common.api.fvtapidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.apidriver-module.html">TestON.drivers.common.apidriver</a></strong>: <em class="summary">Created on 22-Nov-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.dpclidriver-module.html">TestON.drivers.common.cli.dpclidriver</a></strong>: <em class="summary">Driver for blank dataplane VMs.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator-module.html">TestON.drivers.common.cli.emulator</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-module.html">TestON.drivers.common.cli.emulator.flowvisordriver</a></strong>: <em class="summary">Created on 26-Mar-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-module.html">TestON.drivers.common.cli.emulator.lincoedriver</a></strong>: <em class="summary">This driver handles the optical switch emulator linc-oe.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-module.html">TestON.drivers.common.cli.emulator.mininetclidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-module.html">TestON.drivers.common.cli.emulator.poxclidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-module.html">TestON.drivers.common.cli.emulator.remotemininetdriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulatordriver-module.html">TestON.drivers.common.cli.emulatordriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.onosclidriver-module.html">TestON.drivers.common.cli.onosclidriver</a></strong>: <em class="summary">This driver enters the onos> prompt to issue commands.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.onosdriver-module.html">TestON.drivers.common.cli.onosdriver</a></strong>: <em class="summary">This driver interacts with ONOS bench, the OSGi platform that
- configures the ONOS nodes.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.quaggaclidriver-module.html">TestON.drivers.common.cli.quaggaclidriver</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotesys-module.html">TestON.drivers.common.cli.remotesys</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotesysdriver-module.html">TestON.drivers.common.cli.remotesysdriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed-module.html">TestON.drivers.common.cli.remotetestbed</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html">TestON.drivers.common.cli.remotetestbed.floodlightclidriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html">TestON.drivers.common.cli.remotetestbed.necswitchdriver</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html">TestON.drivers.common.cli.remotetestbed.remotepoxdriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html">TestON.drivers.common.cli.remotetestbed.remotevmdriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbeddriver-module.html">TestON.drivers.common.cli.remotetestbeddriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.tool-module.html">TestON.drivers.common.cli.tool</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-module.html">TestON.drivers.common.cli.tool.dpctlclidriver</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.toolsdriver-module.html">TestON.drivers.common.cli.toolsdriver</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.clidriver-module.html">TestON.drivers.common.clidriver</a></strong>: <em class="summary">Created on 24-Oct-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink">TestON.drivers.component</strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples-module.html">TestON.examples</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.Assert-module.html">TestON.examples.Assert</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.Assert.Assert-module.html">TestON.examples.Assert.Assert</a></strong>: <em class="summary">TestON is free software: you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples.CaseParams-module.html">TestON.examples.CaseParams</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.CaseParams.CaseParams-module.html">TestON.examples.CaseParams.CaseParams</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples.ExperimentTest-module.html">TestON.examples.ExperimentTest</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.ExperimentTest.ExperimentTest-module.html">TestON.examples.ExperimentTest.ExperimentTest</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples.StepParams-module.html">TestON.examples.StepParams</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.StepParams.StepParams-module.html">TestON.examples.StepParams.StepParams</a></strong>: <em class="summary">Created on 28-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples.Topology-module.html">TestON.examples.Topology</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.Topology.Topology-module.html">TestON.examples.Topology.Topology</a></strong>: <em class="summary">Created on 28-Nov-2012</em> </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.lib-module.html">TestON.lib</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests-module.html">TestON.tests</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.CHOtest-module.html">TestON.tests.CHOtest</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.CHOtest.CHOtest-module.html">TestON.tests.CHOtest.CHOtest</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.FUNCintent-module.html">TestON.tests.FUNCintent</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.FUNCintent.FUNCintent-module.html">TestON.tests.FUNCintent.FUNCintent</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart-module.html">TestON.tests.HAclusterRestart</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-module.html">TestON.tests.HAclusterRestart.HAclusterRestart</a></strong>: <em class="summary">Description: This test is to determine if ONOS can handle
- all of it's nodes restarting</em> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.dependencies-module.html">TestON.tests.HAclusterRestart.dependencies</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html">TestON.tests.HAclusterRestart.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html">TestON.tests.HAclusterRestart.dependencies.obelisk</a></strong> </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart-module.html">TestON.tests.HAminorityRestart</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-module.html">TestON.tests.HAminorityRestart.HAminorityRestart</a></strong>: <em class="summary">Description: This test is to determine if ONOS can handle
- a minority of it's nodes restarting</em> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.dependencies-module.html">TestON.tests.HAminorityRestart.dependencies</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html">TestON.tests.HAminorityRestart.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html">TestON.tests.HAminorityRestart.dependencies.obelisk</a></strong> </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity-module.html">TestON.tests.HAsanity</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.HAsanity-module.html">TestON.tests.HAsanity.HAsanity</a></strong>: <em class="summary">Description: This test is to determine if the HA test setup is
- working correctly.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.dependencies-module.html">TestON.tests.HAsanity.dependencies</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.dependencies.Counters-module.html">TestON.tests.HAsanity.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.dependencies.obelisk-module.html">TestON.tests.HAsanity.dependencies.obelisk</a></strong> </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart-module.html">TestON.tests.HAsingleInstanceRestart</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html">TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart</a></strong>: <em class="summary">Description: This test is to determine if a single
- instance ONOS 'cluster' can handle a restart</em> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html">TestON.tests.HAsingleInstanceRestart.dependencies</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.obelisk</a></strong> </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SAMPscaleTopo-module.html">TestON.tests.SAMPscaleTopo</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html">TestON.tests.SAMPscaleTopo.SAMPscaleTopo</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SAMPstartTemplate-module.html">TestON.tests.SAMPstartTemplate</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html">TestON.tests.SAMPstartTemplate.SAMPstartTemplate</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFcbench-module.html">TestON.tests.SCPFcbench</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFcbench.SCPFcbench-module.html">TestON.tests.SCPFcbench.SCPFcbench</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFflowTp1g-module.html">TestON.tests.SCPFflowTp1g</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html">TestON.tests.SCPFflowTp1g.SCPFflowTp1g</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentEventTp-module.html">TestON.tests.SCPFintentEventTp</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html">TestON.tests.SCPFintentEventTp.SCPFintentEventTp</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentInstallWithdrawLat-module.html">TestON.tests.SCPFintentInstallWithdrawLat</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html">TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentRerouteLat-module.html">TestON.tests.SCPFintentRerouteLat</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html">TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFportLat-module.html">TestON.tests.SCPFportLat</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFportLat.SCPFportLat-module.html">TestON.tests.SCPFportLat.SCPFportLat</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFswitchLat-module.html">TestON.tests.SCPFswitchLat</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html">TestON.tests.SCPFswitchLat.SCPFswitchLat</a></strong> </li>
- </ul>
- </li>
- </ul>
- </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- > Home </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON-pysrc.html b/TestON/Documentation/TestON_Document/TestON-pysrc.html
deleted file mode 100644
index 04032e9..0000000
--- a/TestON/Documentation/TestON_Document/TestON-pysrc.html
+++ /dev/null
@@ -1,121 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- > Home </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- Package TestON
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON-module.html">Package TestON</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- > Home </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin-module.html b/TestON/Documentation/TestON_Document/TestON.bin-module.html
deleted file mode 100644
index ff5ae91..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin-module.html
+++ /dev/null
@@ -1,172 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- Package bin
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package bin</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.bin-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.bin.cli-module.html">TestON.bin.cli</a></strong>: <em class="summary">Created on 20-Dec-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.bin.generatedriver-module.html">TestON.bin.generatedriver</a></strong>: <em class="summary">Created on 11-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.bin.nec-module.html">TestON.bin.nec</a></strong> </li>
- <li> <strong class="uidlink">TestON.bin.pronto</strong> </li>
- <li> <strong class="uidlink"><a href="TestON.bin.updatedriver-module.html">TestON.bin.updatedriver</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.bin.vyatta-module.html">TestON.bin.vyatta</a></strong>: <em class="summary">TestON is free software: you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.</em> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin-pysrc.html b/TestON/Documentation/TestON_Document/TestON.bin-pysrc.html
deleted file mode 100644
index d4e68d3..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin-pysrc.html
+++ /dev/null
@@ -1,122 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- Package bin
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.bin-module.html">Package TestON.bin</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin.cli-module.html b/TestON/Documentation/TestON_Document/TestON.bin.cli-module.html
deleted file mode 100644
index 7dff3fd..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin.cli-module.html
+++ /dev/null
@@ -1,402 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin.cli</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.bin-module.html">Package bin</a> ::
- Module cli
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin.cli-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module cli</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.bin.cli-pysrc.html">source code</a></span></p>
-<p>Created on 20-Dec-2012</p>
-
-<hr />
-<div class="fields"> <p><strong>Author:</strong>
- Anil Kumar (anilkumar.s@paxterrasolutions.com)
- <p>TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published
- by the Free Software Foundation, either version 2 of the License,
- or (at your option) any later version.</p>
- <p>TestON is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.</p>
- <p>You should have received a copy of the GNU General Public
- License along with TestON. If not, see
- <http://www.gnu.org/licenses/>.</p>
- </p>
-</div><!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.bin.cli.CLI-class.html" class="summary-name">CLI</a><br />
- command-line interface to execute the test.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.bin.cli.TestThread-class.html" class="summary-name">TestThread</a><br />
- TestThread class will handle the test execution and will
- communicate with the thread in the do_run.
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Functions</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Functions"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="output"></a><span class="summary-sig-name">output</span>(<span class="summary-sig-arg">msg</span>)</span><br />
- Simply, print the message in console</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#output">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="error"></a><span class="summary-sig-name">error</span>(<span class="summary-sig-arg">msg</span>)</span><br />
- print the error message.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#error">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli-module.html#dictToObj" class="summary-sig-name">dictToObj</a>(<span class="summary-sig-arg">dictionary</span>)</span><br />
- This will facilitates the converting of the dictionary to the object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#dictToObj">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="dump"></a><span class="summary-name">dump</span> = <code title="pprint.PrettyPrinter(indent= 4)">pprint.PrettyPrinter(indent= 4)</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.bin.cli-module.html#introduction" class="summary-name">introduction</a> = <code title="'''TestON is the testing framework
-Developed by Paxterra Solutions (www.paxterrasolutions.com)'''"><code class="variable-quote">'</code><code class="variable-string">TestON is the testing framework \nDeveloped by</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="path"></a><span class="summary-name">path</span> = <code title="'/home/admin/OnosSystemTest/TestON/'"><code class="variable-quote">'</code><code class="variable-string">/home/admin/OnosSystemTest/TestON/</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.bin'"><code class="variable-quote">'</code><code class="variable-string">TestON.bin</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="config_path"></a><span class="summary-name">config_path</span> = <code title="'/home/admin/OnosSystemTest/TestON/config/'"><code class="variable-quote">'</code><code class="variable-string">/home/admin/OnosSystemTest/TestON/config/</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="core_path"></a><span class="summary-name">core_path</span> = <code title="'/home/admin/OnosSystemTest/TestON/core'"><code class="variable-quote">'</code><code class="variable-string">/home/admin/OnosSystemTest/TestON/core</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="drivers_path"></a><span class="summary-name">drivers_path</span> = <code title="'/home/admin/OnosSystemTest/TestON/drivers/'"><code class="variable-quote">'</code><code class="variable-string">/home/admin/OnosSystemTest/TestON/drivers/</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="location"></a><span class="summary-name">location</span> = <code title="'/home/admin/OnosSystemTest/TestON/core'"><code class="variable-quote">'</code><code class="variable-string">/home/admin/OnosSystemTest/TestON/core</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="logs_path"></a><span class="summary-name">logs_path</span> = <code title="'/home/admin/OnosSystemTest/TestON/logs/'"><code class="variable-quote">'</code><code class="variable-string">/home/admin/OnosSystemTest/TestON/logs/</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="tests_path"></a><span class="summary-name">tests_path</span> = <code title="'/home/admin/OnosSystemTest/TestON/tests'"><code class="variable-quote">'</code><code class="variable-string">/home/admin/OnosSystemTest/TestON/tests</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTION DETAILS ==================== -->
-<a name="section-FunctionDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Function Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-FunctionDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="dictToObj"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">dictToObj</span>(<span class="sig-arg">dictionary</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#dictToObj">source code</a></span>
- </td>
- </tr></table>
-
- <p>This will facilitates the converting of the dictionary to the object.
- This method will help to send options as object format to the test.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-VariablesDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="introduction"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">introduction</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-quote">'''</code><code class="variable-string">TestON is the testing framework </code>
-<code class="variable-string">Developed by Paxterra Solutions (www.paxterrasolutions.com)</code><code class="variable-quote">'''</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin.cli-pysrc.html b/TestON/Documentation/TestON_Document/TestON.bin.cli-pysrc.html
deleted file mode 100644
index 3b80751..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin.cli-pysrc.html
+++ /dev/null
@@ -1,956 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin.cli</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.bin-module.html">Package bin</a> ::
- Module cli
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin.cli-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.bin.cli-module.html">Module TestON.bin.cli</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 20-Dec-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">@author: Anil Kumar (anilkumar.s@paxterrasolutions.com)</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"> (at your option) any later version.</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-string">"""</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-string">cli will provide the CLI shell for teston framework.</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-string">A simple command-line interface for TestON.</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-string">The TestON CLI provides a simple console which</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-string">makes it easy to launch the test. For example, the command run will execute the test.</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-string">teston> run test DpctlTest</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-string">Several useful commands are provided.</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-string">"""</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">subprocess</tt> <tt class="py-keyword">import</tt> <tt class="py-name">call</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">cmd</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Cmd</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">os</tt> <tt class="py-keyword">import</tt> <tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.isatty()=TestON.bin.cli.CLI-class.html#isatty"><a title="TestON.bin.cli.CLI.isatty" class="py-name" href="#" onclick="return doclink('link-0', 'isatty', 'link-0');">isatty</a></tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">threading</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">__builtin__</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">pprint</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt id="link-1" class="py-name" targets="Variable TestON.bin.cli.dump=TestON.bin.cli-module.html#dump,Function TestON.core.ast.dump()=TestON.core.ast-module.html#dump,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.dump()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#dump"><a title="TestON.bin.cli.dump
-TestON.core.ast.dump
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.dump" class="py-name" href="#" onclick="return doclink('link-1', 'dump', 'link-1');">dump</a></tt> <tt class="py-op">=</tt> <tt class="py-name">pprint</tt><tt class="py-op">.</tt><tt class="py-name">PrettyPrinter</tt><tt class="py-op">(</tt><tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-name">__builtin__</tt><tt class="py-op">.</tt><tt class="py-name">testthread</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"><tt id="link-2" class="py-name" targets="Variable TestON.bin.cli.introduction=TestON.bin.cli-module.html#introduction"><a title="TestON.bin.cli.introduction" class="py-name" href="#" onclick="return doclink('link-2', 'introduction', 'link-2');">introduction</a></tt> <tt class="py-op">=</tt> <tt class="py-string">"TestON is the testing framework \nDeveloped by Paxterra Solutions (www.paxterrasolutions.com)"</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"><tt class="py-name">__builtin__</tt><tt class="py-op">.</tt><tt class="py-name">COLORS</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"><tt id="link-3" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-3', 'path', 'link-3');">path</a></tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">"/bin$"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-4', 'path', 'link-3');">path</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"><tt class="py-name">sys</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-5', 'path', 'link-3');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">insert</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt id="link-6" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-6', 'path', 'link-3');">path</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name" targets="Package TestON.core=TestON.core-module.html"><a title="TestON.core" class="py-name" href="#" onclick="return doclink('link-7', 'core', 'link-7');">core</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Module TestON.core.teston=TestON.core.teston-module.html"><a title="TestON.core.teston" class="py-name" href="#" onclick="return doclink('link-8', 'teston', 'link-8');">teston</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> </tt>
-<a name="CLI"></a><div id="CLI-def"><a name="L57"></a><tt class="py-lineno"> 57</tt> <a class="py-toggle" href="#" id="CLI-toggle" onclick="return toggle('CLI');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html">CLI</a><tt class="py-op">(</tt> <tt class="py-base-class">threading</tt><tt class="py-op">.</tt><tt class="py-base-class">Thread</tt><tt class="py-op">,</tt><tt class="py-base-class">Cmd</tt><tt class="py-op">,</tt><tt class="py-base-class">object</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="CLI-expanded"><a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-docstring">"command-line interface to execute the test."</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt id="link-9" class="py-name" targets="Variable TestON.bin.cli.CLI.prompt=TestON.bin.cli.CLI-class.html#prompt"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-9', 'prompt', 'link-9');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-string">'teston> '</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> </tt>
-<a name="CLI.__init__"></a><div id="CLI.__init__-def"><a name="L62"></a><tt class="py-lineno"> 62</tt> <a class="py-toggle" href="#" id="CLI.__init__-toggle" onclick="return toggle('CLI.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">teston</tt><tt class="py-op">,</tt> <tt class="py-param">stdin</tt><tt class="py-op">=</tt><tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">stdin</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.__init__-expanded"><a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.core.teston" class="py-name" href="#" onclick="return doclink('link-10', 'teston', 'link-8');">teston</a></tt> <tt class="py-op">=</tt> <tt id="link-11" class="py-name"><a title="TestON.core.teston" class="py-name" href="#" onclick="return doclink('link-11', 'teston', 'link-8');">teston</a></tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_mainevent</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Module TestON.core.Thread=TestON.core.Thread-module.html,Class TestON.core.Thread.Thread=TestON.core.Thread.Thread-class.html"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-12', 'Thread', 'link-12');">Thread</a></tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-13', '__init__', 'link-13');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">main_stop</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">locals</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-string">'test'</tt><tt class="py-op">:</tt> <tt id="link-14" class="py-name"><a title="TestON.core.teston" class="py-name" href="#" onclick="return doclink('link-14', 'teston', 'link-8');">teston</a></tt> <tt class="py-op">}</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stdin</tt> <tt class="py-op">=</tt> <tt class="py-name">stdin</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">Cmd</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-15', '__init__', 'link-13');">__init__</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name" targets="Method TestON.bin.cli.TestThread.pause()=TestON.bin.cli.TestThread-class.html#pause,Method TestON.core.teston.TestON.pause()=TestON.core.teston.TestON-class.html#pause"><a title="TestON.bin.cli.TestThread.pause
-TestON.core.teston.TestON.pause" class="py-name" href="#" onclick="return doclink('link-16', 'pause', 'link-16');">pause</a></tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name" targets="Method TestON.bin.cli.TestThread.stop()=TestON.bin.cli.TestThread-class.html#stop"><a title="TestON.bin.cli.TestThread.stop" class="py-name" href="#" onclick="return doclink('link-17', 'stop', 'link-17');">stop</a></tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">__builtin__</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Module TestON.bin.cli=TestON.bin.cli-module.html,Package TestON.drivers.common.cli=TestON.drivers.common.cli-module.html"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-18', 'cli', 'link-18');">cli</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt> </tt>
-</div><a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> </tt>
-<a name="CLI.emptyline"></a><div id="CLI.emptyline-def"><a name="L75"></a><tt class="py-lineno"> 75</tt> <a class="py-toggle" href="#" id="CLI.emptyline-toggle" onclick="return toggle('CLI.emptyline');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#emptyline">emptyline</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.emptyline-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.emptyline-expanded"><a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-docstring">"Don't repeat last command when you hit return."</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt id="link-19" class="py-name" targets="Variable TestON.bin.cli.CLI.helpStr=TestON.bin.cli.CLI-class.html#helpStr"><a title="TestON.bin.cli.CLI.helpStr" class="py-name" href="#" onclick="return doclink('link-19', 'helpStr', 'link-19');">helpStr</a></tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-string">" teston help"</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-op">)</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_help"></a><div id="CLI.do_help-def"><a name="L83"></a><tt class="py-lineno"> 83</tt> <a class="py-toggle" href="#" id="CLI.do_help-toggle" onclick="return toggle('CLI.do_help');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_help">do_help</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">line</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_help-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_help-expanded"><a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-docstring">"Describe available CLI commands."</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">Cmd</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Method TestON.bin.cli.CLI.do_help()=TestON.bin.cli.CLI-class.html#do_help"><a title="TestON.bin.cli.CLI.do_help" class="py-name" href="#" onclick="return doclink('link-20', 'do_help', 'link-20');">do_help</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">line</tt> <tt class="py-keyword">is</tt> <tt class="py-string">''</tt><tt class="py-op">:</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt id="link-21" class="py-name" targets="Function TestON.bin.cli.output()=TestON.bin.cli-module.html#output"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-21', 'output', 'link-21');">output</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.bin.cli.CLI.helpStr" class="py-name" href="#" onclick="return doclink('link-22', 'helpStr', 'link-19');">helpStr</a></tt> <tt class="py-op">)</tt> </tt>
-</div><a name="CLI.do_run"></a><div id="CLI.do_run-def"><a name="L88"></a><tt class="py-lineno"> 88</tt> <a class="py-toggle" href="#" id="CLI.do_run-toggle" onclick="return toggle('CLI.do_run');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_run">do_run</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">args</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_run-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_run-expanded"><a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"><tt class="py-docstring"> run command will execute the test with following optional command line arguments</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"><tt class="py-docstring"> logdir <directory to store logs in></tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"><tt class="py-docstring"> testcases <list of testcases separated by comma or range of testcases separated by hypen></tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"><tt class="py-docstring"> mail <mail-id or list of mail-ids seperated by comma></tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"><tt class="py-docstring"> example 1, to execute the examples specified in the ~/examples diretory.</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">options</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">options</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method TestON.bin.cli.CLI.parseArgs()=TestON.bin.cli.CLI-class.html#parseArgs"><a title="TestON.bin.cli.CLI.parseArgs" class="py-name" href="#" onclick="return doclink('link-23', 'parseArgs', 'link-23');">parseArgs</a></tt><tt class="py-op">(</tt><tt class="py-name">args</tt><tt class="py-op">,</tt><tt class="py-name">options</tt><tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">options</tt> <tt class="py-op">=</tt> <tt id="link-24" class="py-name" targets="Function TestON.bin.cli.dictToObj()=TestON.bin.cli-module.html#dictToObj"><a title="TestON.bin.cli.dictToObj" class="py-name" href="#" onclick="return doclink('link-24', 'dictToObj', 'link-24');">dictToObj</a></tt><tt class="py-op">(</tt><tt class="py-name">options</tt><tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">testthread</tt><tt class="py-op">:</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">test</tt> <tt class="py-op">=</tt> <tt id="link-25" class="py-name" targets="Class TestON.bin.cli.TestThread=TestON.bin.cli.TestThread-class.html"><a title="TestON.bin.cli.TestThread" class="py-name" href="#" onclick="return doclink('link-25', 'TestThread', 'link-25');">TestThread</a></tt><tt class="py-op">(</tt><tt class="py-name">options</tt><tt class="py-op">)</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">test</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt><tt class="py-op">+</tt> <tt class="py-string">" test execution paused, please resume that before executing to another test"</tt> </tt>
-</div><a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_resume"></a><div id="CLI.do_resume-def"><a name="L106"></a><tt class="py-lineno">106</tt> <a class="py-toggle" href="#" id="CLI.do_resume-toggle" onclick="return toggle('CLI.do_resume');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_resume">do_resume</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">line</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_resume-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_resume-expanded"><a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"><tt class="py-docstring"> resume command will continue the execution of paused test.</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"><tt class="py-docstring"> teston>resume</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"><tt class="py-docstring"> [2013-01-07 23:03:44.640723] [PoxTest] [STEP] 1.1: Checking the host reachability using pingHost</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"><tt class="py-docstring"> 2013-01-07 23:03:44,858 - PoxTest - INFO - Expected Prompt Found</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"><tt class="py-docstring"> ....</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">testthread</tt><tt class="py-op">:</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">testthread</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method TestON.bin.cli.TestThread.play()=TestON.bin.cli.TestThread-class.html#play"><a title="TestON.bin.cli.TestThread.play" class="py-name" href="#" onclick="return doclink('link-26', 'play', 'link-26');">play</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"There is no test to resume"</tt> </tt>
-</div><a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_nextstep"></a><div id="CLI.do_nextstep-def"><a name="L119"></a><tt class="py-lineno">119</tt> <a class="py-toggle" href="#" id="CLI.do_nextstep-toggle" onclick="return toggle('CLI.do_nextstep');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_nextstep">do_nextstep</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">line</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_nextstep-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_nextstep-expanded"><a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"><tt class="py-docstring"> nextstep will execute the next-step of the paused test and</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"><tt class="py-docstring"> it will pause the test after finishing of step.</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"><tt class="py-docstring"> teston> nextstep</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"><tt class="py-docstring"> Will pause the test's execution, after completion of this step.....</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"><tt class="py-docstring"> teston> [2013-01-07 21:24:26.286601] [PoxTest] [STEP] 1.8: Checking the host reachability using pingHost</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"><tt class="py-docstring"> 2013-01-07 21:24:26,455 - PoxTest - INFO - Expected Prompt Found</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"><tt class="py-docstring"> .....</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"><tt class="py-docstring"> teston></tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">testthread</tt><tt class="py-op">:</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-27', 'log', 'link-27');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Executing the nextstep, Will pause test execution, after completion of the step"</tt><tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">testthread</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.bin.cli.TestThread.play" class="py-name" href="#" onclick="return doclink('link-28', 'play', 'link-26');">play</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">.1</tt><tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">testthread</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.bin.cli.TestThread.pause
-TestON.core.teston.TestON.pause" class="py-name" href="#" onclick="return doclink('link-29', 'pause', 'link-16');">pause</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"There is no paused test "</tt> </tt>
-</div><a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_dumpvar"></a><div id="CLI.do_dumpvar-def"><a name="L141"></a><tt class="py-lineno">141</tt> <a class="py-toggle" href="#" id="CLI.do_dumpvar-toggle" onclick="return toggle('CLI.do_dumpvar');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_dumpvar">do_dumpvar</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">line</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_dumpvar-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_dumpvar-expanded"><a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"><tt class="py-docstring"> dumpvar will print all the test data in raw format.</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"><tt class="py-docstring"> usgae :</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"><tt class="py-docstring"> teston>dumpvar main</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"><tt class="py-docstring"> Here 'main' will be the test object.</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"><tt class="py-docstring"> teston>dumpvar params</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"><tt class="py-docstring"> here 'params' will be the parameters specified in the params file.</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"><tt class="py-docstring"> teston>dumpvar topology</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"><tt class="py-docstring"> here 'topology' will be topology specification of the test specified in topo file.</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">testthread</tt><tt class="py-op">:</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">line</tt> <tt class="py-op">==</tt> <tt class="py-string">"main"</tt><tt class="py-op">:</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt id="link-30" class="py-name"><a title="TestON.bin.cli.dump
-TestON.core.ast.dump
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.dump" class="py-name" href="#" onclick="return doclink('link-30', 'dump', 'link-1');">dump</a></tt><tt class="py-op">.</tt><tt class="py-name">pprint</tt><tt class="py-op">(</tt><tt class="py-name">vars</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt id="link-31" class="py-name"><a title="TestON.bin.cli.dump
-TestON.core.ast.dump
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.dump" class="py-name" href="#" onclick="return doclink('link-31', 'dump', 'link-1');">dump</a></tt><tt class="py-op">.</tt><tt class="py-name">pprint</tt><tt class="py-op">(</tt><tt class="py-name">vars</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">line</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">,</tt><tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">e</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"There is no paused test "</tt> </tt>
-</div><a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_currentcase"></a><div id="CLI.do_currentcase-def"><a name="L165"></a><tt class="py-lineno">165</tt> <a class="py-toggle" href="#" id="CLI.do_currentcase-toggle" onclick="return toggle('CLI.do_currentcase');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_currentcase">do_currentcase</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">line</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_currentcase-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_currentcase-expanded"><a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"><tt class="py-docstring"> currentcase will return the current case in the test execution.</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"><tt class="py-docstring"> teston>currentcase</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"><tt class="py-docstring"> Currently executing test case is: 2</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">testthread</tt><tt class="py-op">:</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Currently executing test case is: "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCaseNumber</tt><tt class="py-op">)</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"There is no paused test "</tt> </tt>
-</div><a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_currentstep"></a><div id="CLI.do_currentstep-def"><a name="L179"></a><tt class="py-lineno">179</tt> <a class="py-toggle" href="#" id="CLI.do_currentstep-toggle" onclick="return toggle('CLI.do_currentstep');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_currentstep">do_currentstep</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">line</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_currentstep-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_currentstep-expanded"><a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"><tt class="py-docstring"> currentstep will return the current step in the test execution.</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"><tt class="py-docstring"> teston>currentstep</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"><tt class="py-docstring"> Currently executing test step is: 2.3</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">testthread</tt><tt class="py-op">:</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Currently executing test step is: "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCaseNumber</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">'.'</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">stepCount</tt><tt class="py-op">)</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"There is no paused test "</tt> </tt>
-</div><a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_stop"></a><div id="CLI.do_stop-def"><a name="L192"></a><tt class="py-lineno">192</tt> <a class="py-toggle" href="#" id="CLI.do_stop-toggle" onclick="return toggle('CLI.do_stop');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_stop">do_stop</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">line</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_stop-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_stop-expanded"><a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"><tt class="py-docstring"> Will stop the paused test, if any !</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">testthread</tt><tt class="py-op">:</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">testthread</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.bin.cli.TestThread.stop" class="py-name" href="#" onclick="return doclink('link-32', 'stop', 'link-17');">stop</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'exited by user command'</tt> </tt>
-</div><a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_gettest"></a><div id="CLI.do_gettest-def"><a name="L201"></a><tt class="py-lineno">201</tt> <a class="py-toggle" href="#" id="CLI.do_gettest-toggle" onclick="return toggle('CLI.do_gettest');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_gettest">do_gettest</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">line</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_gettest-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_gettest-expanded"><a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"><tt class="py-docstring"> gettest will return the test name which is under execution or recently executed.</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"><tt class="py-docstring"> Test under execution:</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"><tt class="py-docstring"> teston>gettest</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"><tt class="py-docstring"> Currently executing Test is: PoxTest</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"><tt class="py-docstring"> Test recently executed:</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"><tt class="py-docstring"> Recently executed test is: MininetTest</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">testthread</tt> <tt class="py-op">:</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Currently executing Test is: "</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Recently executed test is: "</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"There is no previously executed Test"</tt> </tt>
-</div><a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_showlog"></a><div id="CLI.do_showlog-def"><a name="L221"></a><tt class="py-lineno">221</tt> <a class="py-toggle" href="#" id="CLI.do_showlog-toggle" onclick="return toggle('CLI.do_showlog');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_showlog">do_showlog</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">line</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_showlog-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_showlog-expanded"><a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"><tt class="py-docstring"> showlog will show the test's Log</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"><tt class="py-docstring"> teston>showlog</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"><tt class="py-docstring"> Last executed test's log is : //home/openflow/TestON/logs/PoxTest_07_Jan_2013_21_42_11/PoxTest_07_Jan_2013_21_42_11.log</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"><tt class="py-docstring"> .....</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"><tt class="py-docstring"> teston>showlog</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"><tt class="py-docstring"> Currently executing Test's log is: /home/openflow/TestON/logs/PoxTest_07_Jan_2013_21_46_58/PoxTest_07_Jan_2013_21_46_58.log</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"><tt class="py-docstring"> .....</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">testthread</tt> <tt class="py-op">:</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Currently executing Test's log is: "</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">LogFileName</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Last executed test's log is : "</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">LogFileName</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-name">logFile</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">LogFileName</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">logFileHandler</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">logFile</tt><tt class="py-op">,</tt> <tt class="py-string">'r'</tt><tt class="py-op">)</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">msg</tt> <tt class="py-keyword">in</tt> <tt class="py-name">logFileHandler</tt><tt class="py-op">.</tt><tt class="py-name">readlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">msg</tt><tt class="py-op">,</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-name">logFileHandler</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"There is no previously executed Test"</tt> </tt>
-</div><a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> </tt>
-<a name="CLI.parseArgs"></a><div id="CLI.parseArgs-def"><a name="L250"></a><tt class="py-lineno">250</tt> <a class="py-toggle" href="#" id="CLI.parseArgs-toggle" onclick="return toggle('CLI.parseArgs');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#parseArgs">parseArgs</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">args</tt><tt class="py-op">,</tt><tt class="py-param">options</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.parseArgs-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.parseArgs-expanded"><a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"><tt class="py-docstring"> This will parse the command line arguments.</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-name">options</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name" targets="Method TestON.bin.cli.CLI.initOptions()=TestON.bin.cli.CLI-class.html#initOptions"><a title="TestON.bin.cli.CLI.initOptions" class="py-name" href="#" onclick="return doclink('link-33', 'initOptions', 'link-33');">initOptions</a></tt><tt class="py-op">(</tt><tt class="py-name">options</tt><tt class="py-op">)</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt><tt class="py-op">,</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt class="py-name">args</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">index</tt> <tt class="py-op">></tt> <tt class="py-number">0</tt> <tt class="py-op">:</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"logdir|mail|example|testdir|testcases|onoscell"</tt><tt class="py-op">,</tt> <tt class="py-name">option</tt><tt class="py-op">,</tt> <tt class="py-name">flags</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt><tt class="py-op">+</tt><tt class="py-number">1</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-name">options</tt><tt class="py-op">[</tt><tt class="py-name">option</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-name">options</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name" targets="Method TestON.bin.cli.CLI.testcasesInRange()=TestON.bin.cli.CLI-class.html#testcasesInRange"><a title="TestON.bin.cli.CLI.testcasesInRange" class="py-name" href="#" onclick="return doclink('link-34', 'testcasesInRange', 'link-34');">testcasesInRange</a></tt><tt class="py-op">(</tt><tt class="py-name">index</tt><tt class="py-op">,</tt><tt class="py-name">option</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">,</tt><tt class="py-name">options</tt><tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-name">options</tt><tt class="py-op">[</tt><tt class="py-string">'testname'</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">option</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IndexError</tt><tt class="py-op">,</tt><tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">e</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">options</tt> </tt>
-</div><a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> </tt>
-<a name="CLI.initOptions"></a><div id="CLI.initOptions-def"><a name="L269"></a><tt class="py-lineno">269</tt> <a class="py-toggle" href="#" id="CLI.initOptions-toggle" onclick="return toggle('CLI.initOptions');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#initOptions">initOptions</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">options</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.initOptions-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.initOptions-expanded"><a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"><tt class="py-docstring"> This will initialize the commandline options.</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-name">options</tt><tt class="py-op">[</tt><tt class="py-string">'logdir'</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-name">options</tt><tt class="py-op">[</tt><tt class="py-string">'mail'</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-name">options</tt><tt class="py-op">[</tt><tt class="py-string">'example'</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-name">options</tt><tt class="py-op">[</tt><tt class="py-string">'testdir'</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-name">options</tt><tt class="py-op">[</tt><tt class="py-string">'testcases'</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-name">options</tt><tt class="py-op">[</tt><tt class="py-string">'onoscell'</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">options</tt> </tt>
-</div><a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> </tt>
-<a name="CLI.testcasesInRange"></a><div id="CLI.testcasesInRange-def"><a name="L281"></a><tt class="py-lineno">281</tt> <a class="py-toggle" href="#" id="CLI.testcasesInRange-toggle" onclick="return toggle('CLI.testcasesInRange');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#testcasesInRange">testcasesInRange</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">index</tt><tt class="py-op">,</tt><tt class="py-param">option</tt><tt class="py-op">,</tt><tt class="py-param">args</tt><tt class="py-op">,</tt><tt class="py-param">options</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.testcasesInRange-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.testcasesInRange-expanded"><a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"><tt class="py-docstring"> This method will handle testcases list,specified in range [1-10].</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"testcases"</tt><tt class="py-op">,</tt><tt class="py-name">option</tt><tt class="py-op">,</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-name">testcases</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"\[|\]"</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"(\d+)\-(\d+)"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">m</tt><tt class="py-op">:</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-name">start_case</tt> <tt class="py-op">=</tt> <tt class="py-name">eval</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-name">end_case</tt> <tt class="py-op">=</tt> <tt class="py-name">eval</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">start_case</tt> <tt class="py-op"><=</tt> <tt class="py-name">end_case</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">start_case</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-name">end_case</tt><tt class="py-op">:</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-name">testcases</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-name">i</tt><tt class="py-op">=</tt> <tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">1</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Please specify testcases properly like 1-5"</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-name">options</tt><tt class="py-op">[</tt><tt class="py-name">option</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">options</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-name">options</tt><tt class="py-op">[</tt><tt class="py-name">option</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">testcases</tt><tt class="py-op">)</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">options</tt> </tt>
-</div><a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> </tt>
-<a name="CLI.cmdloop"></a><div id="CLI.cmdloop-def"><a name="L306"></a><tt class="py-lineno">306</tt> <a class="py-toggle" href="#" id="CLI.cmdloop-toggle" onclick="return toggle('CLI.cmdloop');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#cmdloop">cmdloop</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">intro</tt><tt class="py-op">=</tt><tt id="link-35" class="py-name"><a title="TestON.bin.cli.introduction" class="py-name" href="#" onclick="return doclink('link-35', 'introduction', 'link-2');">introduction</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.cmdloop-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.cmdloop-expanded"><a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt id="link-36" class="py-name"><a title="TestON.bin.cli.introduction" class="py-name" href="#" onclick="return doclink('link-36', 'introduction', 'link-2');">introduction</a></tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt><tt id="link-37" class="py-name" targets="Class TestON.bin.cli.CLI=TestON.bin.cli.CLI-class.html,Class TestON.drivers.common.clidriver.CLI=TestON.drivers.common.clidriver.CLI-class.html"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-37', 'CLI', 'link-37');">CLI</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name" targets="Method TestON.bin.cli.CLI.cmdloop()=TestON.bin.cli.CLI-class.html#cmdloop"><a title="TestON.bin.cli.CLI.cmdloop" class="py-name" href="#" onclick="return doclink('link-38', 'cmdloop', 'link-38');">cmdloop</a></tt><tt class="py-op">(</tt><tt class="py-name">intro</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">postloop</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyboardInterrupt</tt><tt class="py-op">:</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-name">testthread</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.bin.cli.TestThread.pause
-TestON.core.teston.TestON.pause" class="py-name" href="#" onclick="return doclink('link-39', 'pause', 'link-16');">pause</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_echo"></a><div id="CLI.do_echo-def"><a name="L315"></a><tt class="py-lineno">315</tt> <a class="py-toggle" href="#" id="CLI.do_echo-toggle" onclick="return toggle('CLI.do_echo');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_echo">do_echo</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">line</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_echo-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_echo-expanded"><a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"><tt class="py-docstring"> Echoing of given input.</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt id="link-40" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-40', 'output', 'link-21');">output</a></tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_sh"></a><div id="CLI.do_sh-def"><a name="L321"></a><tt class="py-lineno">321</tt> <a class="py-toggle" href="#" id="CLI.do_sh-toggle" onclick="return toggle('CLI.do_sh');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_sh">do_sh</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">line</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_sh-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_sh-expanded"><a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"><tt class="py-docstring"> Run an external shell command</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"><tt class="py-docstring"> sh pwd</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"><tt class="py-docstring"> sh ifconfig etc.</tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-name">call</tt><tt class="py-op">(</tt> <tt class="py-name">line</tt><tt class="py-op">,</tt> <tt class="py-name">shell</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_py"></a><div id="CLI.do_py-def"><a name="L330"></a><tt class="py-lineno">330</tt> <a class="py-toggle" href="#" id="CLI.do_py-toggle" onclick="return toggle('CLI.do_py');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_py">do_py</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">line</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_py-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_py-expanded"><a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"><tt class="py-docstring"> Evaluate a Python expression.</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"><tt class="py-docstring"> py main.log.info("Sample Log Information")</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"><tt class="py-docstring"> 2013-01-07 12:07:26,804 - PoxTest - INFO - Sample Log Information</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-keyword">exec</tt><tt class="py-op">(</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> <tt id="link-41" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-41', 'output', 'link-21');">output</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">'\n'</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_interpret"></a><div id="CLI.do_interpret-def"><a name="L343"></a><tt class="py-lineno">343</tt> <a class="py-toggle" href="#" id="CLI.do_interpret-toggle" onclick="return toggle('CLI.do_interpret');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_interpret">do_interpret</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">line</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_interpret-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_interpret-expanded"><a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"><tt class="py-docstring"> interpret will translate the single line openspeak statement to equivalent python script.</tt> </tt>
-<a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"><tt class="py-docstring"> teston> interpret ASSERT result EQUALS main.TRUE ONPASS "Ping executed successfully" ONFAIL "Ping failed"</tt> </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"><tt class="py-docstring"> utilities.assert_equals(expect=main.TRUE,actual=result,onpass="Ping executed successfully",onfail="Ping failed")</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"> <tt class="py-keyword">from</tt> <tt id="link-42" class="py-name"><a title="TestON.core" class="py-name" href="#" onclick="return doclink('link-42', 'core', 'link-7');">core</a></tt> <tt class="py-keyword">import</tt> <tt id="link-43" class="py-name" targets="Module TestON.core.openspeak=TestON.core.openspeak-module.html"><a title="TestON.core.openspeak" class="py-name" href="#" onclick="return doclink('link-43', 'openspeak', 'link-43');">openspeak</a></tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> <tt class="py-name">ospk</tt> <tt class="py-op">=</tt> <tt id="link-44" class="py-name"><a title="TestON.core.openspeak" class="py-name" href="#" onclick="return doclink('link-44', 'openspeak', 'link-43');">openspeak</a></tt><tt class="py-op">.</tt><tt id="link-45" class="py-name" targets="Class TestON.core.openspeak.OpenSpeak=TestON.core.openspeak.OpenSpeak-class.html"><a title="TestON.core.openspeak.OpenSpeak" class="py-name" href="#" onclick="return doclink('link-45', 'OpenSpeak', 'link-45');">OpenSpeak</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> <tt class="py-name">translated_code</tt> <tt class="py-op">=</tt> <tt class="py-name">ospk</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.interpret()=TestON.core.openspeak.OpenSpeak-class.html#interpret"><a title="TestON.core.openspeak.OpenSpeak.interpret" class="py-name" href="#" onclick="return doclink('link-46', 'interpret', 'link-46');">interpret</a></tt><tt class="py-op">(</tt><tt class="py-name">text</tt><tt class="py-op">=</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">translated_code</tt> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">'Dynamic params are not allowed in single statement translations'</tt> </tt>
-</div><a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_do"></a><div id="CLI.do_do-def"><a name="L359"></a><tt class="py-lineno">359</tt> <a class="py-toggle" href="#" id="CLI.do_do-toggle" onclick="return toggle('CLI.do_do');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_do">do_do</a> <tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">line</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_do-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_do-expanded"><a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"><tt class="py-docstring"> Do will translate and execute the openspeak statement for the paused test.</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"><tt class="py-docstring"> do <OpenSpeak statement></tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">testthread</tt><tt class="py-op">:</tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> <tt class="py-keyword">from</tt> <tt id="link-47" class="py-name"><a title="TestON.core" class="py-name" href="#" onclick="return doclink('link-47', 'core', 'link-7');">core</a></tt> <tt class="py-keyword">import</tt> <tt id="link-48" class="py-name"><a title="TestON.core.openspeak" class="py-name" href="#" onclick="return doclink('link-48', 'openspeak', 'link-43');">openspeak</a></tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"> <tt class="py-name">ospk</tt> <tt class="py-op">=</tt> <tt id="link-49" class="py-name"><a title="TestON.core.openspeak" class="py-name" href="#" onclick="return doclink('link-49', 'openspeak', 'link-43');">openspeak</a></tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="TestON.core.openspeak.OpenSpeak" class="py-name" href="#" onclick="return doclink('link-50', 'OpenSpeak', 'link-45');">OpenSpeak</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> <tt class="py-name">translated_code</tt> <tt class="py-op">=</tt> <tt class="py-name">ospk</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.interpret" class="py-name" href="#" onclick="return doclink('link-51', 'interpret', 'link-46');">interpret</a></tt><tt class="py-op">(</tt><tt class="py-name">text</tt><tt class="py-op">=</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"> <tt class="py-name">eval</tt><tt class="py-op">(</tt><tt class="py-name">translated_code</tt><tt class="py-op">)</tt> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt><tt class="py-name">AttributeError</tt><tt class="py-op">,</tt><tt class="py-name">SyntaxError</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">'Dynamic params are not allowed in single statement translations'</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Do will translate and execute the openspeak statement for the paused test.\nPlease use interpret to translate the OpenSpeak statement."</tt> </tt>
-</div><a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_compile"></a><div id="CLI.do_compile-def"><a name="L375"></a><tt class="py-lineno">375</tt> <a class="py-toggle" href="#" id="CLI.do_compile-toggle" onclick="return toggle('CLI.do_compile');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_compile">do_compile</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">line</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_compile-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_compile-expanded"><a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"><tt class="py-docstring"> compile will translate the openspeak (.ospk) file into TestON test script (python).</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"><tt class="py-docstring"> It will receive the openspeak file path as input and will generate</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"><tt class="py-docstring"> equivalent test-script file in the same directory.</tt> </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"><tt class="py-docstring"> usage:</tt> </tt>
-<a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"><tt class="py-docstring"> -----</tt> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"><tt class="py-docstring"> teston>compile /home/openflow/TestON/PoxTest.ospk</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"><tt class="py-docstring"> Auto-generated test-script file is /home/openflow/TestON/PoxTest.py</tt> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> <tt class="py-keyword">from</tt> <tt id="link-52" class="py-name"><a title="TestON.core" class="py-name" href="#" onclick="return doclink('link-52', 'core', 'link-7');">core</a></tt> <tt class="py-keyword">import</tt> <tt id="link-53" class="py-name"><a title="TestON.core.openspeak" class="py-name" href="#" onclick="return doclink('link-53', 'openspeak', 'link-43');">openspeak</a></tt> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt id="link-54" class="py-name"><a title="TestON.core.openspeak" class="py-name" href="#" onclick="return doclink('link-54', 'openspeak', 'link-43');">openspeak</a></tt> <tt class="py-op">=</tt> <tt id="link-55" class="py-name"><a title="TestON.core.openspeak" class="py-name" href="#" onclick="return doclink('link-55', 'openspeak', 'link-43');">openspeak</a></tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="TestON.core.openspeak.OpenSpeak" class="py-name" href="#" onclick="return doclink('link-56', 'OpenSpeak', 'link-45');">OpenSpeak</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> <tt class="py-name">openspeakfile</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-57', 'path', 'link-3');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">exists</tt><tt class="py-op">(</tt><tt class="py-name">openspeakfile</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> <tt id="link-58" class="py-name"><a title="TestON.core.openspeak" class="py-name" href="#" onclick="return doclink('link-58', 'openspeak', 'link-43');">openspeak</a></tt><tt class="py-op">.</tt><tt id="link-59" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.compiler()=TestON.core.openspeak.OpenSpeak-class.html#compiler"><a title="TestON.core.openspeak.OpenSpeak.compiler" class="py-name" href="#" onclick="return doclink('link-59', 'compiler', 'link-59');">compiler</a></tt><tt class="py-op">(</tt><tt class="py-name">openspeakfile</tt><tt class="py-op">=</tt><tt class="py-name">openspeakfile</tt><tt class="py-op">,</tt><tt class="py-name">writetofile</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Auto-generated test-script file is "</tt><tt class="py-op">+</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"ospk"</tt><tt class="py-op">,</tt><tt class="py-string">"py"</tt><tt class="py-op">,</tt><tt class="py-name">openspeakfile</tt><tt class="py-op">,</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">'There is no such file : '</tt><tt class="py-op">+</tt><tt class="py-name">line</tt> </tt>
-</div><a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_exit"></a><div id="CLI.do_exit-def"><a name="L396"></a><tt class="py-lineno">396</tt> <a class="py-toggle" href="#" id="CLI.do_exit-toggle" onclick="return toggle('CLI.do_exit');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_exit">do_exit</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">_line</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_exit-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_exit-expanded"><a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"> <tt class="py-docstring">"Exit"</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">testthread</tt><tt class="py-op">:</tt> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"> <tt class="py-name">testthread</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="TestON.bin.cli.TestThread.stop" class="py-name" href="#" onclick="return doclink('link-60', 'stop', 'link-17');">stop</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"> </tt>
-<a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-61', 'exit', 'link-61');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'exited by user command'</tt> </tt>
-</div><a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_quit"></a><div id="CLI.do_quit-def"><a name="L405"></a><tt class="py-lineno">405</tt> <a class="py-toggle" href="#" id="CLI.do_quit-toggle" onclick="return toggle('CLI.do_quit');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_quit">do_quit</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">line</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_quit-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_quit-expanded"><a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"> <tt class="py-docstring">"Exit"</tt> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name" targets="Method TestON.bin.cli.CLI.do_exit()=TestON.bin.cli.CLI-class.html#do_exit"><a title="TestON.bin.cli.CLI.do_exit" class="py-name" href="#" onclick="return doclink('link-62', 'do_exit', 'link-62');">do_exit</a></tt><tt class="py-op">(</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_EOF"></a><div id="CLI.do_EOF-def"><a name="L409"></a><tt class="py-lineno">409</tt> <a class="py-toggle" href="#" id="CLI.do_EOF-toggle" onclick="return toggle('CLI.do_EOF');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_EOF">do_EOF</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">line</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_EOF-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_EOF-expanded"><a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> <tt class="py-docstring">"Exit"</tt> </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> <tt id="link-63" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-63', 'output', 'link-21');">output</a></tt><tt class="py-op">(</tt> <tt class="py-string">'\n'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="TestON.bin.cli.CLI.do_exit" class="py-name" href="#" onclick="return doclink('link-64', 'do_exit', 'link-62');">do_exit</a></tt><tt class="py-op">(</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L413"></a><tt class="py-lineno">413</tt> <tt class="py-line"> </tt>
-<a name="CLI.isatty"></a><div id="CLI.isatty-def"><a name="L414"></a><tt class="py-lineno">414</tt> <a class="py-toggle" href="#" id="CLI.isatty-toggle" onclick="return toggle('CLI.isatty');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#isatty">isatty</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.isatty-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.isatty-expanded"><a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"> <tt class="py-docstring">"Is our standard input a tty?"</tt> </tt>
-<a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-65" class="py-name"><a title="TestON.bin.cli.CLI.isatty" class="py-name" href="#" onclick="return doclink('link-65', 'isatty', 'link-0');">isatty</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stdin</tt><tt class="py-op">.</tt><tt class="py-name">fileno</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_source"></a><div id="CLI.do_source-def"><a name="L418"></a><tt class="py-lineno">418</tt> <a class="py-toggle" href="#" id="CLI.do_source-toggle" onclick="return toggle('CLI.do_source');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_source">do_source</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">line</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_source-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_source-expanded"><a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"><tt class="py-docstring"> Read shell commands from an input file and execute them sequentially.</tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"><tt class="py-docstring"> cmdsource.txt :</tt> </tt>
-<a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L423"></a><tt class="py-lineno">423</tt> <tt class="py-line"><tt class="py-docstring"> "pwd</tt> </tt>
-<a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"><tt class="py-docstring"> ls "</tt> </tt>
-<a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"><tt class="py-docstring"> teston>source /home/openflow/cmdsource.txt</tt> </tt>
-<a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"><tt class="py-docstring"> /home/openflow/TestON/bin/</tt> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"><tt class="py-docstring"> cli.py __init__.py</tt> </tt>
-<a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L431"></a><tt class="py-lineno">431</tt> <tt class="py-line"> </tt>
-<a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L433"></a><tt class="py-lineno">433</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">args</tt><tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L434"></a><tt class="py-lineno">434</tt> <tt class="py-line"> <tt id="link-66" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-66', 'error', 'link-66');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">'usage: source <file>\n'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L436"></a><tt class="py-lineno">436</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L437"></a><tt class="py-lineno">437</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">inputFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L439"></a><tt class="py-lineno">439</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">inputFile</tt><tt class="py-op">.</tt><tt class="py-name">readline</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L440"></a><tt class="py-lineno">440</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"> <tt class="py-name">call</tt><tt class="py-op">(</tt> <tt class="py-name">line</tt><tt class="py-op">,</tt> <tt class="py-name">shell</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L443"></a><tt class="py-lineno">443</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IOError</tt><tt class="py-op">:</tt> </tt>
-<a name="L445"></a><tt class="py-lineno">445</tt> <tt class="py-line"> <tt id="link-67" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-67', 'error', 'link-66');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">'error reading file %s\n'</tt> <tt class="py-op">%</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L446"></a><tt class="py-lineno">446</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_updatedriver"></a><div id="CLI.do_updatedriver-def"><a name="L447"></a><tt class="py-lineno">447</tt> <a class="py-toggle" href="#" id="CLI.do_updatedriver-toggle" onclick="return toggle('CLI.do_updatedriver');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_updatedriver">do_updatedriver</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">line</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_updatedriver-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_updatedriver-expanded"><a name="L448"></a><tt class="py-lineno">448</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L449"></a><tt class="py-lineno">449</tt> <tt class="py-line"><tt class="py-docstring"> updatedriver will update the given driver name which exists into mentioned config file.</tt> </tt>
-<a name="L450"></a><tt class="py-lineno">450</tt> <tt class="py-line"><tt class="py-docstring"> It will receive two optional arguments :</tt> </tt>
-<a name="L451"></a><tt class="py-lineno">451</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L452"></a><tt class="py-lineno">452</tt> <tt class="py-line"><tt class="py-docstring"> 1. Config File Path</tt> </tt>
-<a name="L453"></a><tt class="py-lineno">453</tt> <tt class="py-line"><tt class="py-docstring"> 2. Drivers List to be updated.</tt> </tt>
-<a name="L454"></a><tt class="py-lineno">454</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L455"></a><tt class="py-lineno">455</tt> <tt class="py-line"><tt class="py-docstring"> Default : config file = "~/TestON/config/updatedriver" ,</tt> </tt>
-<a name="L456"></a><tt class="py-lineno">456</tt> <tt class="py-line"><tt class="py-docstring"> Driver List = all drivers specified in config file .</tt> </tt>
-<a name="L457"></a><tt class="py-lineno">457</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L458"></a><tt class="py-lineno">458</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L459"></a><tt class="py-lineno">459</tt> <tt class="py-line"> <tt class="py-name">config</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L460"></a><tt class="py-lineno">460</tt> <tt class="py-line"> <tt id="link-68" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-68', 'drivers', 'link-68');">drivers</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L461"></a><tt class="py-lineno">461</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L462"></a><tt class="py-lineno">462</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt><tt class="py-op">,</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt class="py-name">args</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L463"></a><tt class="py-lineno">463</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">option</tt> <tt class="py-op">==</tt> <tt class="py-string">'config'</tt><tt class="py-op">:</tt> </tt>
-<a name="L464"></a><tt class="py-lineno">464</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L465"></a><tt class="py-lineno">465</tt> <tt class="py-line"> <tt class="py-name">config</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt> </tt>
-<a name="L466"></a><tt class="py-lineno">466</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">option</tt> <tt class="py-op">==</tt> <tt class="py-string">'drivers'</tt> <tt class="py-op">:</tt> </tt>
-<a name="L467"></a><tt class="py-lineno">467</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L468"></a><tt class="py-lineno">468</tt> <tt class="py-line"> <tt id="link-69" class="py-name"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-69', 'drivers', 'link-68');">drivers</a></tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt> </tt>
-<a name="L469"></a><tt class="py-lineno">469</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IndexError</tt><tt class="py-op">:</tt> </tt>
-<a name="L470"></a><tt class="py-lineno">470</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L471"></a><tt class="py-lineno">471</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt id="link-70" class="py-name" targets="Module TestON.bin.updatedriver=TestON.bin.updatedriver-module.html"><a title="TestON.bin.updatedriver" class="py-name" href="#" onclick="return doclink('link-70', 'updatedriver', 'link-70');">updatedriver</a></tt> </tt>
-<a name="L472"></a><tt class="py-lineno">472</tt> <tt class="py-line"> <tt class="py-name">converter</tt> <tt class="py-op">=</tt> <tt id="link-71" class="py-name"><a title="TestON.bin.updatedriver" class="py-name" href="#" onclick="return doclink('link-71', 'updatedriver', 'link-70');">updatedriver</a></tt><tt class="py-op">.</tt><tt id="link-72" class="py-name" targets="Class TestON.bin.updatedriver.UpdateDriver=TestON.bin.updatedriver.UpdateDriver-class.html"><a title="TestON.bin.updatedriver.UpdateDriver" class="py-name" href="#" onclick="return doclink('link-72', 'UpdateDriver', 'link-72');">UpdateDriver</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L473"></a><tt class="py-lineno">473</tt> <tt class="py-line"> </tt>
-<a name="L474"></a><tt class="py-lineno">474</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">config</tt> <tt class="py-op">==</tt> <tt class="py-string">''</tt><tt class="py-op">:</tt> </tt>
-<a name="L475"></a><tt class="py-lineno">475</tt> <tt class="py-line"> <tt id="link-73" class="py-name" targets="Variable TestON.bin.cli.location=TestON.bin.cli-module.html#location,Variable TestON.core.teston.location=TestON.core.teston-module.html#location"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-73', 'location', 'link-73');">location</a></tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-74', 'path', 'link-3');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">abspath</tt><tt class="py-op">(</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-75', 'path', 'link-3');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">dirname</tt><tt class="py-op">(</tt> <tt class="py-name">__file__</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L476"></a><tt class="py-lineno">476</tt> <tt class="py-line"> <tt id="link-76" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-76', 'path', 'link-3');">path</a></tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">"(bin)$"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt id="link-77" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-77', 'location', 'link-73');">location</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L477"></a><tt class="py-lineno">477</tt> <tt class="py-line"> <tt class="py-name">config</tt> <tt class="py-op">=</tt> <tt id="link-78" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-78', 'path', 'link-3');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"/config/updatedriver.cfg"</tt> </tt>
-<a name="L478"></a><tt class="py-lineno">478</tt> <tt class="py-line"> <tt class="py-name">configDict</tt> <tt class="py-op">=</tt> <tt class="py-name">converter</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name" targets="Method TestON.bin.updatedriver.UpdateDriver.configparser()=TestON.bin.updatedriver.UpdateDriver-class.html#configparser,Method TestON.core.teston.TestON.configparser()=TestON.core.teston.TestON-class.html#configparser"><a title="TestON.bin.updatedriver.UpdateDriver.configparser
-TestON.core.teston.TestON.configparser" class="py-name" href="#" onclick="return doclink('link-79', 'configparser', 'link-79');">configparser</a></tt><tt class="py-op">(</tt><tt class="py-name">config</tt><tt class="py-op">)</tt> </tt>
-<a name="L479"></a><tt class="py-lineno">479</tt> <tt class="py-line"> </tt>
-<a name="L480"></a><tt class="py-lineno">480</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L481"></a><tt class="py-lineno">481</tt> <tt class="py-line"> <tt class="py-name">converter</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.configparser
-TestON.core.teston.TestON.configparser" class="py-name" href="#" onclick="return doclink('link-80', 'configparser', 'link-79');">configparser</a></tt><tt class="py-op">(</tt><tt class="py-name">config</tt><tt class="py-op">)</tt> </tt>
-<a name="L482"></a><tt class="py-lineno">482</tt> <tt class="py-line"> <tt class="py-name">configDict</tt> <tt class="py-op">=</tt> <tt class="py-name">converter</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.configparser
-TestON.core.teston.TestON.configparser" class="py-name" href="#" onclick="return doclink('link-81', 'configparser', 'link-79');">configparser</a></tt><tt class="py-op">(</tt><tt class="py-name">config</tt><tt class="py-op">)</tt> </tt>
-<a name="L483"></a><tt class="py-lineno">483</tt> <tt class="py-line"> </tt>
-<a name="L484"></a><tt class="py-lineno">484</tt> <tt class="py-line"> </tt>
-<a name="L485"></a><tt class="py-lineno">485</tt> <tt class="py-line"> <tt class="py-name">converter</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name" targets="Method TestON.bin.updatedriver.UpdateDriver.writeDriver()=TestON.bin.updatedriver.UpdateDriver-class.html#writeDriver"><a title="TestON.bin.updatedriver.UpdateDriver.writeDriver" class="py-name" href="#" onclick="return doclink('link-82', 'writeDriver', 'link-82');">writeDriver</a></tt><tt class="py-op">(</tt><tt id="link-83" class="py-name"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-83', 'drivers', 'link-68');">drivers</a></tt><tt class="py-op">)</tt> </tt>
-</div><a name="L486"></a><tt class="py-lineno">486</tt> <tt class="py-line"> </tt>
-<a name="L487"></a><tt class="py-lineno">487</tt> <tt class="py-line"> </tt>
-<a name="L488"></a><tt class="py-lineno">488</tt> <tt class="py-line"> </tt>
-<a name="L489"></a><tt class="py-lineno">489</tt> <tt class="py-line"> </tt>
-<a name="CLI.do_time"></a><div id="CLI.do_time-def"><a name="L490"></a><tt class="py-lineno">490</tt> <a class="py-toggle" href="#" id="CLI.do_time-toggle" onclick="return toggle('CLI.do_time');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#do_time">do_time</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">line</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.do_time-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.do_time-expanded"><a name="L491"></a><tt class="py-lineno">491</tt> <tt class="py-line"> <tt class="py-docstring">"Measure time taken for any command in TestON."</tt> </tt>
-<a name="L492"></a><tt class="py-lineno">492</tt> <tt class="py-line"> <tt class="py-name">start</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L493"></a><tt class="py-lineno">493</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">onecmd</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L494"></a><tt class="py-lineno">494</tt> <tt class="py-line"> <tt class="py-name">elapsed</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">start</tt> </tt>
-<a name="L495"></a><tt class="py-lineno">495</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stdout</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"*** Elapsed time: %0.6f secs\n"</tt> <tt class="py-op">%</tt> <tt class="py-name">elapsed</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L496"></a><tt class="py-lineno">496</tt> <tt class="py-line"> </tt>
-<a name="CLI.default"></a><div id="CLI.default-def"><a name="L497"></a><tt class="py-lineno">497</tt> <a class="py-toggle" href="#" id="CLI.default-toggle" onclick="return toggle('CLI.default');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.CLI-class.html#default">default</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">line</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.default-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.default-expanded"><a name="L498"></a><tt class="py-lineno">498</tt> <tt class="py-line"> <tt class="py-docstring">"""Called on an input line when the command prefix is not recognized."""</tt> </tt>
-<a name="L499"></a><tt class="py-lineno">499</tt> <tt class="py-line"> <tt class="py-name">first</tt><tt class="py-op">,</tt> <tt class="py-name">args</tt><tt class="py-op">,</tt> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">parseline</tt><tt class="py-op">(</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt> </tt>
-<a name="L500"></a><tt class="py-lineno">500</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">args</tt><tt class="py-op">:</tt> </tt>
-<a name="L501"></a><tt class="py-lineno">501</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L502"></a><tt class="py-lineno">502</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt> <tt class="py-keyword">and</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">args</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">0</tt> <tt class="py-keyword">and</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'\n'</tt><tt class="py-op">:</tt> </tt>
-<a name="L503"></a><tt class="py-lineno">503</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L504"></a><tt class="py-lineno">504</tt> <tt class="py-line"> <tt class="py-name">rest</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">' '</tt> <tt class="py-op">)</tt> </tt>
-<a name="L505"></a><tt class="py-lineno">505</tt> <tt class="py-line"> </tt>
-<a name="L506"></a><tt class="py-lineno">506</tt> <tt class="py-line"> <tt id="link-84" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-84', 'error', 'link-66');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">'*** Unknown command: %s\n'</tt> <tt class="py-op">%</tt> <tt class="py-name">first</tt> <tt class="py-op">)</tt> </tt>
-</div></div><a name="L507"></a><tt class="py-lineno">507</tt> <tt class="py-line"> </tt>
-<a name="L508"></a><tt class="py-lineno">508</tt> <tt class="py-line"> </tt>
-<a name="L509"></a><tt class="py-lineno">509</tt> <tt class="py-line"> </tt>
-<a name="TestThread"></a><div id="TestThread-def"><a name="L510"></a><tt class="py-lineno">510</tt> <a class="py-toggle" href="#" id="TestThread-toggle" onclick="return toggle('TestThread');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.bin.cli.TestThread-class.html">TestThread</a><tt class="py-op">(</tt><tt class="py-base-class">threading</tt><tt class="py-op">.</tt><tt class="py-base-class">Thread</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestThread-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="TestThread-expanded"><a name="L511"></a><tt class="py-lineno">511</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L512"></a><tt class="py-lineno">512</tt> <tt class="py-line"><tt class="py-docstring"> TestThread class will handle the test execution and will communicate with the thread in the do_run.</tt> </tt>
-<a name="L513"></a><tt class="py-lineno">513</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="TestThread.__init__"></a><div id="TestThread.__init__-def"><a name="L514"></a><tt class="py-lineno">514</tt> <a class="py-toggle" href="#" id="TestThread.__init__-toggle" onclick="return toggle('TestThread.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.TestThread-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">options</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestThread.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestThread.__init__-expanded"><a name="L515"></a><tt class="py-lineno">515</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_stopevent</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L516"></a><tt class="py-lineno">516</tt> <tt class="py-line"> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-85', 'Thread', 'link-12');">Thread</a></tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-86', '__init__', 'link-13');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L517"></a><tt class="py-lineno">517</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">is_stop</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L518"></a><tt class="py-lineno">518</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt> <tt class="py-op">=</tt> <tt class="py-name">options</tt> </tt>
-<a name="L519"></a><tt class="py-lineno">519</tt> <tt class="py-line"> <tt class="py-name">__builtin__</tt><tt class="py-op">.</tt><tt class="py-name">testthread</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt> </tt>
-</div><a name="L520"></a><tt class="py-lineno">520</tt> <tt class="py-line"> </tt>
-<a name="TestThread.run"></a><div id="TestThread.run-def"><a name="L521"></a><tt class="py-lineno">521</tt> <a class="py-toggle" href="#" id="TestThread.run-toggle" onclick="return toggle('TestThread.run');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.TestThread-class.html#run">run</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestThread.run-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestThread.run-expanded"><a name="L522"></a><tt class="py-lineno">522</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L523"></a><tt class="py-lineno">523</tt> <tt class="py-line"><tt class="py-docstring"> Will execute the test.</tt> </tt>
-<a name="L524"></a><tt class="py-lineno">524</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L525"></a><tt class="py-lineno">525</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">is_stop</tt> <tt class="py-op">:</tt> </tt>
-<a name="L526"></a><tt class="py-lineno">526</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_stopevent</tt><tt class="py-op">.</tt><tt class="py-name">isSet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L527"></a><tt class="py-lineno">527</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">test_on</tt> <tt class="py-op">=</tt> <tt id="link-87" class="py-name" targets="Package TestON=TestON-module.html,Class TestON.core.teston.TestON=TestON.core.teston.TestON-class.html"><a title="TestON
-TestON.core.teston.TestON" class="py-name" href="#" onclick="return doclink('link-87', 'TestON', 'link-87');">TestON</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">)</tt> </tt>
-<a name="L528"></a><tt class="py-lineno">528</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L529"></a><tt class="py-lineno">529</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">test_on</tt><tt class="py-op">.</tt><tt class="py-name">init_result</tt><tt class="py-op">:</tt> </tt>
-<a name="L530"></a><tt class="py-lineno">530</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">test_on</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name" targets="Method TestON.bin.cli.TestThread.run()=TestON.bin.cli.TestThread-class.html#run,Method TestON.core.Thread.Thread.run()=TestON.core.Thread.Thread-class.html#run,Method TestON.core.teston.TestON.run()=TestON.core.teston.TestON-class.html#run,Function TestON.tests.HAclusterRestart.dependencies.obelisk.run()=TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#run,Function TestON.tests.HAminorityRestart.dependencies.obelisk.run()=TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#run,Function TestON.tests.HAsanity.dependencies.obelisk.run()=TestON.tests.HAsanity.dependencies.obelisk-module.html#run,Function TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#run"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-88', 'run', 'link-88');">run</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L531"></a><tt class="py-lineno">531</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">is_stop</tt> <tt class="py-op">:</tt> </tt>
-<a name="L532"></a><tt class="py-lineno">532</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">test_on</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name" targets="Method TestON.core.teston.TestON.cleanup()=TestON.core.teston.TestON-class.html#cleanup"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-89', 'cleanup', 'link-89');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L533"></a><tt class="py-lineno">533</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">is_stop</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L534"></a><tt class="py-lineno">534</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">(</tt><tt class="py-name">KeyboardInterrupt</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L535"></a><tt class="py-lineno">535</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Recevied Interrupt,cleaning-up the logs and drivers before exiting"</tt> </tt>
-<a name="L536"></a><tt class="py-lineno">536</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">test_on</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-90', 'cleanup', 'link-89');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L537"></a><tt class="py-lineno">537</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">is_stop</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L538"></a><tt class="py-lineno">538</tt> <tt class="py-line"> </tt>
-<a name="L539"></a><tt class="py-lineno">539</tt> <tt class="py-line"> <tt class="py-name">__builtin__</tt><tt class="py-op">.</tt><tt class="py-name">testthread</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L540"></a><tt class="py-lineno">540</tt> <tt class="py-line"> </tt>
-<a name="TestThread.pause"></a><div id="TestThread.pause-def"><a name="L541"></a><tt class="py-lineno">541</tt> <a class="py-toggle" href="#" id="TestThread.pause-toggle" onclick="return toggle('TestThread.pause');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.TestThread-class.html#pause">pause</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestThread.pause-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestThread.pause-expanded"><a name="L542"></a><tt class="py-lineno">542</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L543"></a><tt class="py-lineno">543</tt> <tt class="py-line"><tt class="py-docstring"> Will pause the test.</tt> </tt>
-<a name="L544"></a><tt class="py-lineno">544</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L545"></a><tt class="py-lineno">545</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Will pause the test's execution, after completion of this step.....\n\n\n\n"</tt> </tt>
-<a name="L546"></a><tt class="py-lineno">546</tt> <tt class="py-line"> <tt id="link-91" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-91', 'cli', 'link-18');">cli</a></tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.bin.cli.TestThread.pause
-TestON.core.teston.TestON.pause" class="py-name" href="#" onclick="return doclink('link-92', 'pause', 'link-16');">pause</a></tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L547"></a><tt class="py-lineno">547</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_stopevent</tt><tt class="py-op">.</tt><tt class="py-name">set</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L548"></a><tt class="py-lineno">548</tt> <tt class="py-line"> </tt>
-<a name="TestThread.play"></a><div id="TestThread.play-def"><a name="L549"></a><tt class="py-lineno">549</tt> <a class="py-toggle" href="#" id="TestThread.play-toggle" onclick="return toggle('TestThread.play');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.TestThread-class.html#play">play</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestThread.play-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestThread.play-expanded"><a name="L550"></a><tt class="py-lineno">550</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L551"></a><tt class="py-lineno">551</tt> <tt class="py-line"><tt class="py-docstring"> Will resume the paused test.</tt> </tt>
-<a name="L552"></a><tt class="py-lineno">552</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L553"></a><tt class="py-lineno">553</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_stopevent</tt><tt class="py-op">.</tt><tt class="py-name">clear</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L554"></a><tt class="py-lineno">554</tt> <tt class="py-line"> <tt id="link-93" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-93', 'cli', 'link-18');">cli</a></tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="TestON.bin.cli.TestThread.pause
-TestON.core.teston.TestON.pause" class="py-name" href="#" onclick="return doclink('link-94', 'pause', 'link-16');">pause</a></tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L555"></a><tt class="py-lineno">555</tt> <tt class="py-line"> </tt>
-<a name="TestThread.stop"></a><div id="TestThread.stop-def"><a name="L556"></a><tt class="py-lineno">556</tt> <a class="py-toggle" href="#" id="TestThread.stop-toggle" onclick="return toggle('TestThread.stop');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli.TestThread-class.html#stop">stop</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestThread.stop-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestThread.stop-expanded"><a name="L557"></a><tt class="py-lineno">557</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L558"></a><tt class="py-lineno">558</tt> <tt class="py-line"><tt class="py-docstring"> Will stop the test execution.</tt> </tt>
-<a name="L559"></a><tt class="py-lineno">559</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L560"></a><tt class="py-lineno">560</tt> <tt class="py-line"> </tt>
-<a name="L561"></a><tt class="py-lineno">561</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Stopping the test"</tt> </tt>
-<a name="L562"></a><tt class="py-lineno">562</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">is_stop</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L563"></a><tt class="py-lineno">563</tt> <tt class="py-line"> <tt id="link-95" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-95', 'cli', 'link-18');">cli</a></tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.bin.cli.TestThread.stop" class="py-name" href="#" onclick="return doclink('link-96', 'stop', 'link-17');">stop</a></tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L564"></a><tt class="py-lineno">564</tt> <tt class="py-line"> <tt class="py-name">__builtin__</tt><tt class="py-op">.</tt><tt class="py-name">testthread</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-</div></div><a name="L565"></a><tt class="py-lineno">565</tt> <tt class="py-line"> </tt>
-<a name="output"></a><div id="output-def"><a name="L566"></a><tt class="py-lineno">566</tt> <a class="py-toggle" href="#" id="output-toggle" onclick="return toggle('output');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli-module.html#output">output</a><tt class="py-op">(</tt><tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="output-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="output-expanded"><a name="L567"></a><tt class="py-lineno">567</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L568"></a><tt class="py-lineno">568</tt> <tt class="py-line"><tt class="py-docstring"> Simply, print the message in console</tt> </tt>
-<a name="L569"></a><tt class="py-lineno">569</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L570"></a><tt class="py-lineno">570</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">msg</tt> </tt>
-</div><a name="L571"></a><tt class="py-lineno">571</tt> <tt class="py-line"> </tt>
-<a name="error"></a><div id="error-def"><a name="L572"></a><tt class="py-lineno">572</tt> <a class="py-toggle" href="#" id="error-toggle" onclick="return toggle('error');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli-module.html#error">error</a><tt class="py-op">(</tt><tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="error-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="error-expanded"><a name="L573"></a><tt class="py-lineno">573</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L574"></a><tt class="py-lineno">574</tt> <tt class="py-line"><tt class="py-docstring"> print the error message.</tt> </tt>
-<a name="L575"></a><tt class="py-lineno">575</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L576"></a><tt class="py-lineno">576</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">msg</tt> </tt>
-</div><a name="L577"></a><tt class="py-lineno">577</tt> <tt class="py-line"> </tt>
-<a name="dictToObj"></a><div id="dictToObj-def"><a name="L578"></a><tt class="py-lineno">578</tt> <a class="py-toggle" href="#" id="dictToObj-toggle" onclick="return toggle('dictToObj');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.cli-module.html#dictToObj">dictToObj</a><tt class="py-op">(</tt><tt class="py-param">dictionary</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="dictToObj-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="dictToObj-expanded"><a name="L579"></a><tt class="py-lineno">579</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L580"></a><tt class="py-lineno">580</tt> <tt class="py-line"><tt class="py-docstring"> This will facilitates the converting of the dictionary to the object.</tt> </tt>
-<a name="L581"></a><tt class="py-lineno">581</tt> <tt class="py-line"><tt class="py-docstring"> This method will help to send options as object format to the test.</tt> </tt>
-<a name="L582"></a><tt class="py-lineno">582</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L583"></a><tt class="py-lineno">583</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">dictionary</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L584"></a><tt class="py-lineno">584</tt> <tt class="py-line"> <tt class="py-name">dictionary</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt id="link-97" class="py-name"><a title="TestON.bin.cli.dictToObj" class="py-name" href="#" onclick="return doclink('link-97', 'dictToObj', 'link-24');">dictToObj</a></tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">dictionary</tt><tt class="py-op">]</tt> </tt>
-<a name="L585"></a><tt class="py-lineno">585</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">dictionary</tt><tt class="py-op">,</tt> <tt class="py-name">dict</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L586"></a><tt class="py-lineno">586</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">dictionary</tt> </tt>
-<a name="L587"></a><tt class="py-lineno">587</tt> <tt class="py-line"> <tt class="py-keyword">class</tt> <tt class="py-def-name">Convert</tt><tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L588"></a><tt class="py-lineno">588</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L589"></a><tt class="py-lineno">589</tt> <tt class="py-line"> <tt class="py-name">obj</tt> <tt class="py-op">=</tt> <tt class="py-name">Convert</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L590"></a><tt class="py-lineno">590</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">k</tt> <tt class="py-keyword">in</tt> <tt class="py-name">dictionary</tt><tt class="py-op">:</tt> </tt>
-<a name="L591"></a><tt class="py-lineno">591</tt> <tt class="py-line"> <tt class="py-name">obj</tt><tt class="py-op">.</tt><tt class="py-name">__dict__</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-98" class="py-name"><a title="TestON.bin.cli.dictToObj" class="py-name" href="#" onclick="return doclink('link-98', 'dictToObj', 'link-24');">dictToObj</a></tt><tt class="py-op">(</tt><tt class="py-name">dictionary</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L592"></a><tt class="py-lineno">592</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">obj</tt> </tt>
-</div><a name="L593"></a><tt class="py-lineno">593</tt> <tt class="py-line"> </tt>
-<a name="L594"></a><tt class="py-lineno">594</tt> <tt class="py-line"> </tt>
-<a name="L595"></a><tt class="py-lineno">595</tt> <tt class="py-line"><tt class="py-keyword">if</tt> <tt class="py-name">__name__</tt> <tt class="py-op">==</tt> <tt class="py-string">'__main__'</tt><tt class="py-op">:</tt> </tt>
-<a name="L596"></a><tt class="py-lineno">596</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">argv</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L597"></a><tt class="py-lineno">597</tt> <tt class="py-line"> <tt class="py-name">__builtin__</tt><tt class="py-op">.</tt><tt class="py-name">COLORS</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L598"></a><tt class="py-lineno">598</tt> <tt class="py-line"> <tt id="link-99" class="py-name"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-99', 'CLI', 'link-37');">CLI</a></tt><tt class="py-op">(</tt><tt class="py-string">"test"</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">onecmd</tt><tt class="py-op">(</tt><tt class="py-string">' '</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">argv</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L599"></a><tt class="py-lineno">599</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L600"></a><tt class="py-lineno">600</tt> <tt class="py-line"> <tt class="py-name">__builtin__</tt><tt class="py-op">.</tt><tt class="py-name">COLORS</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L601"></a><tt class="py-lineno">601</tt> <tt class="py-line"> <tt id="link-100" class="py-name"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-100', 'CLI', 'link-37');">CLI</a></tt><tt class="py-op">(</tt><tt class="py-string">"test"</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="TestON.bin.cli.CLI.cmdloop" class="py-name" href="#" onclick="return doclink('link-101', 'cmdloop', 'link-38');">cmdloop</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L602"></a><tt class="py-lineno">602</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin.cli.CLI-class.html b/TestON/Documentation/TestON_Document/TestON.bin.cli.CLI-class.html
deleted file mode 100644
index 4e44e3a..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin.cli.CLI-class.html
+++ /dev/null
@@ -1,1312 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin.cli.CLI</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.bin-module.html">Package bin</a> ::
- <a href="TestON.bin.cli-module.html">Module cli</a> ::
- Class CLI
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin.cli.CLI-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class CLI</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_cli" name="class_hierarchy_for_cli">
-<area shape="rect" id="node1" href="TestON.bin.cli.CLI-class.html" title="CLI" alt="" coords="84,118,127,143"/>
-<area shape="rect" id="node2" href="javascript:void(0);" title="cmd.Cmd" alt="" coords="5,62,83,87"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="threading.Thread" alt="" coords="107,62,225,87"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="threading._Verbose" alt="" coords="99,6,233,31"/>
-</map>
- <img src="class_hierarchy_for_cli.gif" alt='' usemap="#class_hierarchy_for_cli" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<p>command-line interface to execute the test.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">teston</span>,
- <span class="summary-sig-arg">stdin</span>=<span class="summary-sig-default">sys.stdin</span>)</span><br />
- This constructor should always be called with keyword arguments.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#emptyline" class="summary-sig-name">emptyline</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Don't repeat last command when you hit return.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.emptyline">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#do_help" class="summary-sig-name">do_help</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- Describe available CLI commands.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_help">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="do_run"></a><span class="summary-sig-name">do_run</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">args</span>)</span><br />
- run command will execute the test with following optional command
- line arguments logdir <directory to store logs in> testcases
- <list of testcases separated by comma or range of testcases
- separated by hypen> mail <mail-id or list of mail-ids seperated
- by comma> example 1, to execute the examples specified in the
- ~/examples diretory.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_run">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#do_resume" class="summary-sig-name">do_resume</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- resume command will continue the execution of paused test.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_resume">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#do_nextstep" class="summary-sig-name">do_nextstep</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- nextstep will execute the next-step of the paused test and it will
- pause the test after finishing of step.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_nextstep">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#do_dumpvar" class="summary-sig-name">do_dumpvar</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- dumpvar will print all the test data in raw format.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_dumpvar">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#do_currentcase" class="summary-sig-name">do_currentcase</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- currentcase will return the current case in the test execution.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_currentcase">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#do_currentstep" class="summary-sig-name">do_currentstep</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- currentstep will return the current step in the test execution.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_currentstep">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="do_stop"></a><span class="summary-sig-name">do_stop</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- Will stop the paused test, if any !</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_stop">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#do_gettest" class="summary-sig-name">do_gettest</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- gettest will return the test name which is under execution or
- recently executed.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_gettest">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#do_showlog" class="summary-sig-name">do_showlog</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- showlog will show the test's Log teston>showlog Last executed
- test's log is :
- //home/openflow/TestON/logs/PoxTest_07_Jan_2013_21_42_11/PoxTest_07_Jan_2013_21_42_11.log
- .....</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_showlog">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="parseArgs"></a><span class="summary-sig-name">parseArgs</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">args</span>,
- <span class="summary-sig-arg">options</span>)</span><br />
- This will parse the command line arguments.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.parseArgs">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="initOptions"></a><span class="summary-sig-name">initOptions</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">options</span>)</span><br />
- This will initialize the commandline options.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.initOptions">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="testcasesInRange"></a><span class="summary-sig-name">testcasesInRange</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">index</span>,
- <span class="summary-sig-arg">option</span>,
- <span class="summary-sig-arg">args</span>,
- <span class="summary-sig-arg">options</span>)</span><br />
- This method will handle testcases list,specified in range [1-10].</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.testcasesInRange">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#cmdloop" class="summary-sig-name">cmdloop</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">intro</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string">TestON is the testing framework \nDeveloped by Paxterra Solut</code><code class="variable-ellipsis">...</code></span>)</span><br />
- Repeatedly issue a prompt, accept input, parse an initial prefix off
- the received input, and dispatch to action methods, passing them the
- remainder of the line as argument.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.cmdloop">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="do_echo"></a><span class="summary-sig-name">do_echo</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- Echoing of given input.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_echo">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="do_sh"></a><span class="summary-sig-name">do_sh</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- Run an external shell command sh pwd sh ifconfig etc.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_sh">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#do_py" class="summary-sig-name">do_py</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- Evaluate a Python expression.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_py">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#do_interpret" class="summary-sig-name">do_interpret</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- interpret will translate the single line openspeak statement to
- equivalent python script.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_interpret">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#do_do" class="summary-sig-name">do_do</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- Do will translate and execute the openspeak statement for the paused
- test.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_do">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#do_compile" class="summary-sig-name">do_compile</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- compile will translate the openspeak (.ospk) file into TestON test
- script (python).</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_compile">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="do_exit"></a><span class="summary-sig-name">do_exit</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">_line</span>)</span><br />
- Exit</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_exit">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="do_quit"></a><span class="summary-sig-name">do_quit</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- Exit</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_quit">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="do_EOF"></a><span class="summary-sig-name">do_EOF</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- Exit</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_EOF">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="isatty"></a><span class="summary-sig-name">isatty</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Is our standard input a tty?</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.isatty">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#do_source" class="summary-sig-name">do_source</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- Read shell commands from an input file and execute them sequentially.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_source">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#do_updatedriver" class="summary-sig-name">do_updatedriver</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- updatedriver will update the given driver name which exists into mentioned config file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_updatedriver">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="do_time"></a><span class="summary-sig-name">do_time</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- Measure time taken for any command in TestON.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_time">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.CLI-class.html#default" class="summary-sig-name">default</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- Called on an input line when the command prefix is not recognized.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.default">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b>:
- <code>__repr__</code>,
- <code>getName</code>,
- <code>isAlive</code>,
- <code>isDaemon</code>,
- <code>is_alive</code>,
- <code>join</code>,
- <code>run</code>,
- <code>setDaemon</code>,
- <code>setName</code>,
- <code>start</code>
- </p>
- <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b> (private):
- <code>_reset_internal_locks</code>,
- <code>_set_daemon</code>,
- <code>_set_ident</code>
- </p></div>
- <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code>threading._Verbose</code></b> (private):
- <code>_note</code>
- </p></div>
- <p class="indent-wrapped-lines"><b>Inherited from <code>cmd.Cmd</code></b>:
- <code>columnize</code>,
- <code>complete</code>,
- <code>complete_help</code>,
- <code>completedefault</code>,
- <code>completenames</code>,
- <code>get_names</code>,
- <code>onecmd</code>,
- <code>parseline</code>,
- <code>postcmd</code>,
- <code>postloop</code>,
- <code>precmd</code>,
- <code>preloop</code>,
- <code>print_topics</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS VARIABLES ==================== -->
-<a name="section-ClassVariables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Class Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-ClassVariables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="prompt"></a><span class="summary-name">prompt</span> = <code title="'teston> '"><code class="variable-quote">'</code><code class="variable-string">teston> </code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="helpStr"></a><span class="summary-name">helpStr</span> = <code title="' teston help'"><code class="variable-quote">'</code><code class="variable-string"> teston help</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>cmd.Cmd</code></b>:
- <code>doc_header</code>,
- <code>doc_leader</code>,
- <code>identchars</code>,
- <code>intro</code>,
- <code>lastcmd</code>,
- <code>misc_header</code>,
- <code>nohelp</code>,
- <code>ruler</code>,
- <code>undoc_header</code>,
- <code>use_rawinput</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b>:
- <code>daemon</code>,
- <code>ident</code>,
- <code>name</code>
- </p>
- <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b> (private):
- <code>_block</code>
- </p></div>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">teston</span>,
- <span class="sig-arg">stdin</span>=<span class="sig-default">sys.stdin</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>This constructor should always be called with keyword arguments.
- Arguments are:</p>
- <p>*group* should be None; reserved for future extension when a
- ThreadGroup class is implemented.</p>
- <p>*target* is the callable object to be invoked by the run() method.
- Defaults to None, meaning nothing is called.</p>
- <p>*name* is the thread name. By default, a unique name is constructed of
- the form "Thread-N" where N is a small decimal number.</p>
- <p>*args* is the argument tuple for the target invocation. Defaults to
- ().</p>
- <p>*kwargs* is a dictionary of keyword arguments for the target
- invocation. Defaults to {}.</p>
- <p>If a subclass overrides the constructor, it must make sure to invoke
- the base class constructor (Thread.__init__()) before doing anything else
- to the thread.</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="emptyline"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">emptyline</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.emptyline">source code</a></span>
- </td>
- </tr></table>
-
- <p>Don't repeat last command when you hit return.</p>
- <dl class="fields">
- <dt>Overrides:
- cmd.Cmd.emptyline
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="do_help"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">do_help</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">line</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_help">source code</a></span>
- </td>
- </tr></table>
-
- <p>Describe available CLI commands.</p>
- <dl class="fields">
- <dt>Overrides:
- cmd.Cmd.do_help
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="do_resume"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">do_resume</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">line</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_resume">source code</a></span>
- </td>
- </tr></table>
-
- <p>resume command will continue the execution of paused test.
- teston>resume [2013-01-07 23:03:44.640723] [PoxTest] [STEP] 1.1:
- Checking the host reachability using pingHost 2013-01-07 23:03:44,858 -
- PoxTest - INFO - Expected Prompt Found ....</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="do_nextstep"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">do_nextstep</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">line</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_nextstep">source code</a></span>
- </td>
- </tr></table>
-
- <p>nextstep will execute the next-step of the paused test and it will
- pause the test after finishing of step.</p>
- <p>teston> nextstep Will pause the test's execution, after completion
- of this step.....</p>
- <p>teston> [2013-01-07 21:24:26.286601] [PoxTest] [STEP] 1.8:
- Checking the host reachability using pingHost 2013-01-07 21:24:26,455 -
- PoxTest - INFO - Expected Prompt Found ..... teston></p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="do_dumpvar"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">do_dumpvar</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">line</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_dumpvar">source code</a></span>
- </td>
- </tr></table>
-
- <p>dumpvar will print all the test data in raw format. usgae :
- teston>dumpvar main Here 'main' will be the test object.</p>
- <p>teston>dumpvar params here 'params' will be the parameters
- specified in the params file.</p>
- <p>teston>dumpvar topology here 'topology' will be topology
- specification of the test specified in topo file.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="do_currentcase"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">do_currentcase</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">line</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_currentcase">source code</a></span>
- </td>
- </tr></table>
-
- <p>currentcase will return the current case in the test execution.</p>
- <p>teston>currentcase Currently executing test case is: 2</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="do_currentstep"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">do_currentstep</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">line</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_currentstep">source code</a></span>
- </td>
- </tr></table>
-
- <p>currentstep will return the current step in the test execution.</p>
- <p>teston>currentstep Currently executing test step is: 2.3</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="do_gettest"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">do_gettest</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">line</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_gettest">source code</a></span>
- </td>
- </tr></table>
-
- <p>gettest will return the test name which is under execution or recently
- executed.</p>
- <p>Test under execution: teston>gettest Currently executing Test is:
- PoxTest</p>
- <p>Test recently executed: Recently executed test is: MininetTest</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="do_showlog"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">do_showlog</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">line</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_showlog">source code</a></span>
- </td>
- </tr></table>
-
- <p>showlog will show the test's Log teston>showlog Last executed
- test's log is :
- //home/openflow/TestON/logs/PoxTest_07_Jan_2013_21_42_11/PoxTest_07_Jan_2013_21_42_11.log
- ..... teston>showlog Currently executing Test's log is:
- /home/openflow/TestON/logs/PoxTest_07_Jan_2013_21_46_58/PoxTest_07_Jan_2013_21_46_58.log
- .....</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="cmdloop"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">cmdloop</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">intro</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string">TestON is the testing framework \nDeveloped by Paxterra Solut</code><code class="variable-ellipsis">...</code></span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.cmdloop">source code</a></span>
- </td>
- </tr></table>
-
- <p>Repeatedly issue a prompt, accept input, parse an initial prefix off
- the received input, and dispatch to action methods, passing them the
- remainder of the line as argument.</p>
- <dl class="fields">
- <dt>Overrides:
- cmd.Cmd.cmdloop
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="do_py"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">do_py</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">line</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_py">source code</a></span>
- </td>
- </tr></table>
-
- <p>Evaluate a Python expression.</p>
- <p>py main.log.info("Sample Log Information") 2013-01-07
- 12:07:26,804 - PoxTest - INFO - Sample Log Information</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="do_interpret"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">do_interpret</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">line</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_interpret">source code</a></span>
- </td>
- </tr></table>
-
- <p>interpret will translate the single line openspeak statement to
- equivalent python script.</p>
- <p>teston> interpret ASSERT result EQUALS main.TRUE ONPASS "Ping
- executed successfully" ONFAIL "Ping failed"
- utilities.assert_equals(expect=main.TRUE,actual=result,onpass="Ping
- executed successfully",onfail="Ping failed")</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="do_do"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">do_do</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">line</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_do">source code</a></span>
- </td>
- </tr></table>
-
- <p>Do will translate and execute the openspeak statement for the paused
- test. do <OpenSpeak statement></p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="do_compile"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">do_compile</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">line</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_compile">source code</a></span>
- </td>
- </tr></table>
-
- <p>compile will translate the openspeak (.ospk) file into TestON test
- script (python). It will receive the openspeak file path as input and
- will generate equivalent test-script file in the same directory.</p>
- <p>usage: ----- teston>compile /home/openflow/TestON/PoxTest.ospk</p>
- <p>Auto-generated test-script file is
- /home/openflow/TestON/PoxTest.py</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="do_source"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">do_source</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">line</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_source">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Read shell commands from an input file and execute them sequentially.
-cmdsource.txt :
-
-"pwd
- ls "
-
-teston>source /home/openflow/cmdsource.txt
-/home/openflow/TestON/bin/
-cli.py __init__.py
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="do_updatedriver"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">do_updatedriver</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">line</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.do_updatedriver">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-updatedriver will update the given driver name which exists into mentioned config file.
-It will receive two optional arguments :
-
-1. Config File Path
-2. Drivers List to be updated.
-
-Default : config file = "~/TestON/config/updatedriver" ,
- Driver List = all drivers specified in config file .
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="default"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">default</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">line</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#CLI.default">source code</a></span>
- </td>
- </tr></table>
-
- <p>Called on an input line when the command prefix is not recognized.</p>
- <dl class="fields">
- <dt>Overrides:
- cmd.Cmd.default
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin.cli.TestThread-class.html b/TestON/Documentation/TestON_Document/TestON.bin.cli.TestThread-class.html
deleted file mode 100644
index 5c29da4..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin.cli.TestThread-class.html
+++ /dev/null
@@ -1,382 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin.cli.TestThread</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.bin-module.html">Package bin</a> ::
- <a href="TestON.bin.cli-module.html">Module cli</a> ::
- Class TestThread
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin.cli.TestThread-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class TestThread</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.bin.cli-pysrc.html#TestThread">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_testthread" name="class_hierarchy_for_testthread">
-<area shape="rect" id="node1" href="TestON.bin.cli.TestThread-class.html" title="TestThread" alt="" coords="28,118,116,143"/>
-<area shape="rect" id="node2" href="javascript:void(0);" title="threading.Thread" alt="" coords="13,62,131,87"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="threading._Verbose" alt="" coords="5,6,139,31"/>
-</map>
- <img src="class_hierarchy_for_testthread.gif" alt='' usemap="#class_hierarchy_for_testthread" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<p>TestThread class will handle the test execution and will communicate
- with the thread in the do_run.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.TestThread-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">options</span>)</span><br />
- This constructor should always be called with keyword arguments.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#TestThread.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.cli.TestThread-class.html#run" class="summary-sig-name">run</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Will execute the test.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#TestThread.run">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="pause"></a><span class="summary-sig-name">pause</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Will pause the test.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#TestThread.pause">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="play"></a><span class="summary-sig-name">play</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Will resume the paused test.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#TestThread.play">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="stop"></a><span class="summary-sig-name">stop</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Will stop the test execution.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.cli-pysrc.html#TestThread.stop">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b>:
- <code>__repr__</code>,
- <code>getName</code>,
- <code>isAlive</code>,
- <code>isDaemon</code>,
- <code>is_alive</code>,
- <code>join</code>,
- <code>setDaemon</code>,
- <code>setName</code>,
- <code>start</code>
- </p>
- <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b> (private):
- <code>_reset_internal_locks</code>,
- <code>_set_daemon</code>,
- <code>_set_ident</code>
- </p></div>
- <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code>threading._Verbose</code></b> (private):
- <code>_note</code>
- </p></div>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b>:
- <code>daemon</code>,
- <code>ident</code>,
- <code>name</code>
- </p>
- <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b> (private):
- <code>_block</code>
- </p></div>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">options</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#TestThread.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>This constructor should always be called with keyword arguments.
- Arguments are:</p>
- <p>*group* should be None; reserved for future extension when a
- ThreadGroup class is implemented.</p>
- <p>*target* is the callable object to be invoked by the run() method.
- Defaults to None, meaning nothing is called.</p>
- <p>*name* is the thread name. By default, a unique name is constructed of
- the form "Thread-N" where N is a small decimal number.</p>
- <p>*args* is the argument tuple for the target invocation. Defaults to
- ().</p>
- <p>*kwargs* is a dictionary of keyword arguments for the target
- invocation. Defaults to {}.</p>
- <p>If a subclass overrides the constructor, it must make sure to invoke
- the base class constructor (Thread.__init__()) before doing anything else
- to the thread.</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="run"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">run</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.cli-pysrc.html#TestThread.run">source code</a></span>
- </td>
- </tr></table>
-
- <p>Will execute the test.</p>
- <dl class="fields">
- <dt>Overrides:
- threading.Thread.run
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin.generatedriver-module.html b/TestON/Documentation/TestON_Document/TestON.bin.generatedriver-module.html
deleted file mode 100644
index d74ead5..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin.generatedriver-module.html
+++ /dev/null
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin.generatedriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.bin-module.html">Package bin</a> ::
- Module generatedriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin.generatedriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module generatedriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.bin.generatedriver-pysrc.html">source code</a></span></p>
-<p>Created on 11-Oct-2012</p>
-
-<hr />
-<div class="fields"> <p><strong>Author:</strong>
- Anil Kumar (anilkumar.s@paxterrasolutions.com),
- <p>TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published
- by the Free Software Foundation, either version 2 of the License,
- or (at your option) any later version.</p>
- <p>TestON is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.</p>
- <p>You should have received a copy of the GNU General Public
- License along with TestON. If not, see
- <http://www.gnu.org/licenses/>.</p>
- </p>
-</div><!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.bin.generatedriver.GenerateDriver-class.html" class="summary-name">GenerateDriver</a><br />
- This will
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.bin'"><code class="variable-quote">'</code><code class="variable-string">TestON.bin</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin.generatedriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.bin.generatedriver-pysrc.html
deleted file mode 100644
index bebeb6f..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin.generatedriver-pysrc.html
+++ /dev/null
@@ -1,468 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin.generatedriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.bin-module.html">Package bin</a> ::
- Module generatedriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin.generatedriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.bin.generatedriver-module.html">Module TestON.bin.generatedriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 11-Oct-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">@authors: Anil Kumar (anilkumar.s@paxterrasolutions.com),</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"> (at your option) any later version.</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">pexpect</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">struct</tt><tt class="py-op">,</tt> <tt class="py-name">fcntl</tt><tt class="py-op">,</tt> <tt class="py-name">os</tt><tt class="py-op">,</tt> <tt class="py-name">sys</tt><tt class="py-op">,</tt> <tt class="py-name">signal</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.core=TestON.core-module.html"><a title="TestON.core" class="py-name" href="#" onclick="return doclink('link-0', 'core', 'link-0');">core</a></tt> <tt class="py-keyword">import</tt> <tt id="link-1" class="py-name" targets="Module TestON.core.xmldict=TestON.core.xmldict-module.html"><a title="TestON.core.xmldict" class="py-name" href="#" onclick="return doclink('link-1', 'xmldict', 'link-1');">xmldict</a></tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="GenerateDriver"></a><div id="GenerateDriver-def"><a name="L28"></a><tt class="py-lineno"> 28</tt> <a class="py-toggle" href="#" id="GenerateDriver-toggle" onclick="return toggle('GenerateDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.bin.generatedriver.GenerateDriver-class.html">GenerateDriver</a><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="GenerateDriver-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="GenerateDriver-expanded"><a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-docstring"> This will</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="GenerateDriver.__init__"></a><div id="GenerateDriver.__init__-def"><a name="L32"></a><tt class="py-lineno"> 32</tt> <a class="py-toggle" href="#" id="GenerateDriver.__init__-toggle" onclick="return toggle('GenerateDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.generatedriver.GenerateDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="GenerateDriver.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="GenerateDriver.__init__-expanded"><a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-2', 'default', 'link-2');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Variable TestON.bin.cli.CLI.prompt=TestON.bin.cli.CLI-class.html#prompt"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-3', 'prompt', 'link-3');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-string">'>'</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">=</tt><tt class="py-string">''</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">command_dictionary</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">config_details</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">last_sub_command</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">commnads_ordered_list</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-name">filePath</tt> <tt class="py-op">=</tt> <tt class="py-string">"generatedriver.cfg"</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configFile</tt> <tt class="py-op">=</tt> <tt class="py-name">filePath</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">xml</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">filePath</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">read</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">config_details</tt> <tt class="py-op">=</tt> <tt id="link-4" class="py-name"><a title="TestON.core.xmldict" class="py-name" href="#" onclick="return doclink('link-4', 'xmldict', 'link-1');">xmldict</a></tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Function TestON.core.xmldict.xml_to_dict()=TestON.core.xmldict-module.html#xml_to_dict"><a title="TestON.core.xmldict.xml_to_dict" class="py-name" href="#" onclick="return doclink('link-5', 'xml_to_dict', 'link-5');">xml_to_dict</a></tt><tt class="py-op">(</tt><tt class="py-name">xml</tt><tt class="py-op">)</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">:</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Error : Config file "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configFile</tt> <tt class="py-op">+</tt> <tt class="py-string">" not defined properly or file path error"</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-6', 'exit', 'link-6');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">config_details</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">device_name</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> </tt>
-<a name="GenerateDriver.connect"></a><div id="GenerateDriver.connect-def"><a name="L51"></a><tt class="py-lineno"> 51</tt> <a class="py-toggle" href="#" id="GenerateDriver.connect-toggle" onclick="return toggle('GenerateDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.generatedriver.GenerateDriver-class.html#connect">connect</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">connectargs</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="GenerateDriver.connect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="GenerateDriver.connect-expanded"><a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"><tt class="py-docstring"> Connection will establish to the remote host using ssh.</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"><tt class="py-docstring"> It will take user_name ,ip_address and password as arguments<br></tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"><tt class="py-docstring"> and will return the handle.</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">]</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">ssh_newkey</tt> <tt class="py-op">=</tt> <tt class="py-string">'Are you sure you want to continue connecting'</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">refused</tt> <tt class="py-op">=</tt> <tt class="py-string">"ssh: connect to host "</tt><tt class="py-op">+</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">+</tt><tt class="py-string">" port 22: Connection refused"</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt><tt class="py-op">:</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt><tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">spawn</tt><tt class="py-op">(</tt><tt class="py-string">'ssh -p '</tt><tt class="py-op">+</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt><tt class="py-op">+</tt><tt class="py-string">' '</tt><tt class="py-op">+</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">+</tt><tt class="py-string">'@'</tt><tt class="py-op">+</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt><tt class="py-name">maxread</tt><tt class="py-op">=</tt><tt class="py-number">50000</tt><tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt><tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">spawn</tt><tt class="py-op">(</tt><tt class="py-string">'ssh '</tt><tt class="py-op">+</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">+</tt><tt class="py-string">'@'</tt><tt class="py-op">+</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt><tt class="py-name">maxread</tt><tt class="py-op">=</tt><tt class="py-number">50000</tt><tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">logfile_handler</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">getcwd</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"/GenerateDriver.log"</tt><tt class="py-op">,</tt><tt class="py-string">"w+"</tt><tt class="py-op">)</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">logfile</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">logfile_handler</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">i</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">ssh_newkey</tt><tt class="py-op">,</tt><tt class="py-string">'password:'</tt><tt class="py-op">,</tt><tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt><tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">,</tt><tt class="py-name">refused</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-number">10</tt><tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt><tt class="py-op">==</tt><tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-7', 'sendline', 'link-7');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">'yes'</tt><tt class="py-op">)</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">i</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">ssh_newkey</tt><tt class="py-op">,</tt><tt class="py-string">'password:'</tt><tt class="py-op">,</tt><tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt><tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt><tt class="py-op">==</tt><tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-8', 'sendline', 'link-7');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt><tt class="py-op">)</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">'>|#|$'</tt><tt class="py-op">)</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt><tt class="py-op">==</tt><tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"ssh: connect to host "</tt><tt class="py-op">+</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">+</tt><tt class="py-string">": Error"</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt><tt class="py-op">==</tt><tt class="py-number">3</tt><tt class="py-op">:</tt> <tt class="py-comment">#timeout</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"ssh: connect to host "</tt><tt class="py-op">+</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">+</tt><tt class="py-string">": Connection timed out"</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt><tt class="py-op">==</tt><tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"ssh: connect to host "</tt><tt class="py-op">+</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">+</tt><tt class="py-string">": Connection refused"</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-9', 'sendline', 'link-7');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"\r"</tt><tt class="py-op">)</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-</div><a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> </tt>
-<a name="GenerateDriver.execute"></a><div id="GenerateDriver.execute-def"><a name="L93"></a><tt class="py-lineno"> 93</tt> <a class="py-toggle" href="#" id="GenerateDriver.execute-toggle" onclick="return toggle('GenerateDriver.execute');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.generatedriver.GenerateDriver-class.html#execute">execute</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">execparams</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="GenerateDriver.execute-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="GenerateDriver.execute-expanded"><a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"><tt class="py-docstring"> This method will execute the command and will check for the expected prompt.</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">defaultPrompt</tt> <tt class="py-op">=</tt> <tt class="py-string">'.*[\$>\#]'</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">execparams</tt><tt class="py-op">:</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">execparams</tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">]</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-10', 'sendline', 'link-7');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">timeoutVar</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-keyword">else</tt> <tt class="py-number">10</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-11', 'prompt', 'link-3');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-string">"byte\s\d+"</tt><tt class="py-op">,</tt> <tt class="py-string">'Command not found.'</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">,</tt><tt class="py-string">"\n:"</tt><tt class="py-op">,</tt><tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeoutVar</tt><tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">index</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-comment">#print "Expected Prompt Found"</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">index</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#send"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-12', 'send', 'link-12');">send</a></tt><tt class="py-op">(</tt><tt class="py-string">"\r"</tt><tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt><tt class="py-string">"Found More screen to go , Sending a key to proceed"</tt><tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">indexMore</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"byte\s\d+"</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-13', 'prompt', 'link-3');">prompt</a></tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeoutVar</tt><tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">indexMore</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Found another More screen to go , Sending a key to proceed"</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-14', 'send', 'link-12');">send</a></tt><tt class="py-op">(</tt><tt class="py-string">"\r"</tt><tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">indexMore</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"byte\s\d+"</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-15', 'prompt', 'link-3');">prompt</a></tt><tt class="py-op">,</tt><tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt><tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeoutVar</tt><tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-comment">#print self.LASTRSP</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">index</tt> <tt class="py-op">==</tt><tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Command not found"</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">index</tt> <tt class="py-op">==</tt><tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Expected Prompt not found , Time Out!!"</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">index</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">sendcontrol</tt><tt class="py-op">(</tt><tt class="py-string">"D"</tt><tt class="py-op">)</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-comment">#print "AA"*89</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">indexMore</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"\n:"</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-16', 'prompt', 'link-3');">prompt</a></tt><tt class="py-op">,</tt><tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt><tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeoutVar</tt><tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">indexMore</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">sendcontrol</tt><tt class="py-op">(</tt><tt class="py-string">"D"</tt><tt class="py-op">)</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">indexMore</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"\n:"</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-17', 'prompt', 'link-3');">prompt</a></tt><tt class="py-op">,</tt><tt class="py-string">".*"</tt><tt class="py-op">,</tt><tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt><tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeoutVar</tt><tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> </tt>
-</div><a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> </tt>
-<a name="GenerateDriver.configure"></a><div id="GenerateDriver.configure-def"><a name="L140"></a><tt class="py-lineno">140</tt> <a class="py-toggle" href="#" id="GenerateDriver.configure-toggle" onclick="return toggle('GenerateDriver.configure');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.generatedriver.GenerateDriver-class.html#configure">configure</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="GenerateDriver.configure-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="GenerateDriver.configure-expanded"><a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"><tt class="py-docstring"> Will start the Configure mode of the device.</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">config_result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.execute()=TestON.bin.generatedriver.GenerateDriver-class.html#execute,Method TestON.drivers.common.clidriver.CLI.execute()=TestON.drivers.common.clidriver.CLI-class.html#execute"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-18', 'execute', 'link-18');">execute</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"configure"</tt><tt class="py-op">,</tt><tt id="link-19" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-19', 'prompt', 'link-3');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">'\#'</tt><tt class="py-op">,</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt><tt class="py-op">)</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">config_result</tt> </tt>
-</div><a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> </tt>
-<a name="GenerateDriver.get_command_help"></a><div id="GenerateDriver.get_command_help-def"><a name="L147"></a><tt class="py-lineno">147</tt> <a class="py-toggle" href="#" id="GenerateDriver.get_command_help-toggle" onclick="return toggle('GenerateDriver.get_command_help');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.generatedriver.GenerateDriver-class.html#get_command_help">get_command_help</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">command</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="GenerateDriver.get_command_help-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="GenerateDriver.get_command_help-expanded"><a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"><tt class="py-docstring"> Will get the help of the Command</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">setecho</tt><tt class="py-op">(</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-name">help_keyword</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">config_details</tt><tt class="py-op">[</tt><tt class="py-string">'device'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">device_name</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'help_keyword'</tt><tt class="py-op">]</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-name">interrupt_key</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">config_details</tt><tt class="py-op">[</tt><tt class="py-string">'device'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">device_name</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'interrupt_key'</tt><tt class="py-op">]</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">command_details</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-20', 'execute', 'link-18');">execute</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">+</tt><tt class="py-string">" "</tt><tt class="py-op">+</tt><tt class="py-name">help_keyword</tt><tt class="py-op">,</tt><tt id="link-21" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-21', 'prompt', 'link-3');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">'\#'</tt><tt class="py-op">,</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-comment">#command_details = self.execute(cmd=command+" "+help_keyword,prompt='\#',timeout=2)</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">sendcontrol</tt><tt class="py-op">(</tt><tt class="py-name">interrupt_key</tt><tt class="py-op">)</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-comment">#print command_details</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">command_details</tt> </tt>
-</div><a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> </tt>
-<a name="GenerateDriver.get_command_details"></a><div id="GenerateDriver.get_command_details-def"><a name="L161"></a><tt class="py-lineno">161</tt> <a class="py-toggle" href="#" id="GenerateDriver.get_command_details-toggle" onclick="return toggle('GenerateDriver.get_command_details');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.generatedriver.GenerateDriver-class.html#get_command_details">get_command_details</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">command</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="GenerateDriver.get_command_details-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="GenerateDriver.get_command_details-expanded"><a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"><tt class="py-docstring"> Will Update the command_dictionary with the available commands details</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-name">temp_dictionary</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-name">command_resulut</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.get_command_help()=TestON.bin.generatedriver.GenerateDriver-class.html#get_command_help"><a title="TestON.bin.generatedriver.GenerateDriver.get_command_help" class="py-name" href="#" onclick="return doclink('link-22', 'get_command_help', 'link-22');">get_command_help</a></tt><tt class="py-op">(</tt><tt class="py-name">command</tt><tt class="py-op">)</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-name">words</tt> <tt class="py-op">=</tt> <tt class="py-name">command_resulut</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">,</tt><tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">e</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">lines</tt> <tt class="py-op">=</tt> <tt class="py-name">command_resulut</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">options_list</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">lines</tt> <tt class="py-op">:</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">value_match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">'[\s|\>|\+|\-|\<]{3}(\<(\w+))\s*'</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">value_match</tt><tt class="py-op">:</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">" Enter Value for "</tt><tt class="py-op">+</tt><tt class="py-name">value_match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-comment">#self.handle.interact()</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">r"\s\s[\w|-]+\s\s"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">match</tt> <tt class="py-op">:</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-name">match_command</tt> <tt class="py-op">=</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">match_command</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-name">options_list</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">match_command</tt><tt class="py-op">)</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-name">temp_dictionary</tt><tt class="py-op">[</tt><tt class="py-name">command</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">options_list</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">command_dictionary</tt><tt class="py-op">[</tt><tt class="py-name">command</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">options_list</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.print_details()=TestON.bin.generatedriver.GenerateDriver-class.html#print_details"><a title="TestON.bin.generatedriver.GenerateDriver.print_details" class="py-name" href="#" onclick="return doclink('link-23', 'print_details', 'link-23');">print_details</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">command_dictionary</tt><tt class="py-op">)</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"temp dir: --------"</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">temp_dictionary</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"-------------"</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">temp_dictionary</tt> </tt>
-</div><a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> </tt>
-<a name="GenerateDriver.print_details"></a><div id="GenerateDriver.print_details-def"><a name="L195"></a><tt class="py-lineno">195</tt> <a class="py-toggle" href="#" id="GenerateDriver.print_details-toggle" onclick="return toggle('GenerateDriver.print_details');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.generatedriver.GenerateDriver-class.html#print_details">print_details</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">command_dictionary</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="GenerateDriver.print_details-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="GenerateDriver.print_details-expanded"><a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"><tt class="py-docstring"> Will print the details in Tree Format</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">commnads_ordered_list</tt> <tt class="py-op">=</tt> <tt class="py-name">command_dictionary</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-comment"># Sorting the output based on the length of the command string</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-name">length</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">commnads_ordered_list</tt> <tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-name">sorted</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-keyword">not</tt> <tt class="py-name">sorted</tt><tt class="py-op">:</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-name">sorted</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">length</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">commnads_ordered_list</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">commnads_ordered_list</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">sorted</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">commnads_ordered_list</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">commnads_ordered_list</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">commnads_ordered_list</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">commnads_ordered_list</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">commnads_ordered_list</tt><tt class="py-op">:</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">key</tt> <tt class="py-op">+</tt><tt class="py-string">"\t "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">command_dictionary</tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"\n\n"</tt> </tt>
-</div><a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> </tt>
-<a name="GenerateDriver.get_details_recursive"></a><div id="GenerateDriver.get_details_recursive-def"><a name="L216"></a><tt class="py-lineno">216</tt> <a class="py-toggle" href="#" id="GenerateDriver.get_details_recursive-toggle" onclick="return toggle('GenerateDriver.get_details_recursive');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.generatedriver.GenerateDriver-class.html#get_details_recursive">get_details_recursive</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">main_comand</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="GenerateDriver.get_details_recursive-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="GenerateDriver.get_details_recursive-expanded"><a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">last_sub_command</tt> <tt class="py-op">=</tt> <tt class="py-name">main_comand</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">main_comand</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">:</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">last_sub_command</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-name">main_result_dcitionary</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.get_command_details()=TestON.bin.generatedriver.GenerateDriver-class.html#get_command_details"><a title="TestON.bin.generatedriver.GenerateDriver.get_command_details" class="py-name" href="#" onclick="return doclink('link-24', 'get_command_details', 'link-24');">get_command_details</a></tt><tt class="py-op">(</tt><tt class="py-name">main_comand</tt><tt class="py-op">)</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main_result_dcitionary</tt> <tt class="py-op">:</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main_result_dcitionary</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt><tt class="py-op">,</tt> <tt class="py-name">each_option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt class="py-name">main_result_dcitionary</tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">config_details</tt><tt class="py-op">[</tt><tt class="py-string">'device'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">device_name</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'end_pattern'</tt><tt class="py-op">]</tt><tt class="py-op">+</tt><tt class="py-string">"|^\.|^\d"</tt><tt class="py-op">,</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main_result_dcitionary</tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Reached the last argument for this "</tt><tt class="py-op">+</tt><tt class="py-name">main_comand</tt><tt class="py-op">+</tt><tt class="py-string">" "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">each_option</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-name">main_result_dcitionary</tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">each_option</tt><tt class="py-op">)</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">last_sub_command</tt> <tt class="py-op">==</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main_result_dcitionary</tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Same command repeating, So Exiting "</tt><tt class="py-op">+</tt><tt class="py-name">main_comand</tt><tt class="py-op">+</tt><tt class="py-string">" "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">each_option</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">main_result_dcitionary</tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">each_option</tt><tt class="py-op">)</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-name">result_dcitionary</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.get_details_recursive()=TestON.bin.generatedriver.GenerateDriver-class.html#get_details_recursive"><a title="TestON.bin.generatedriver.GenerateDriver.get_details_recursive" class="py-name" href="#" onclick="return doclink('link-25', 'get_details_recursive', 'link-25');">get_details_recursive</a></tt><tt class="py-op">(</tt><tt class="py-name">main_comand</tt><tt class="py-op">+</tt><tt class="py-string">" "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">each_option</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-</div><a name="GenerateDriver.create_driver"></a><div id="GenerateDriver.create_driver-def"><a name="L237"></a><tt class="py-lineno">237</tt> <a class="py-toggle" href="#" id="GenerateDriver.create_driver-toggle" onclick="return toggle('GenerateDriver.create_driver');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.generatedriver.GenerateDriver-class.html#create_driver">create_driver</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="GenerateDriver.create_driver-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="GenerateDriver.create_driver-expanded"><a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">device_name</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">driver_file_data</tt> <tt class="py-op">=</tt> <tt class="py-string">'class '</tt><tt class="py-op">+</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt><tt class="py-string">":\n"</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-name">driver_file_data</tt> <tt class="py-op">=</tt> <tt class="py-name">driver_file_data</tt> <tt class="py-op">+</tt> <tt class="py-string">" def __init__( self ):\n"</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">driver_file_data</tt> <tt class="py-op">=</tt> <tt class="py-name">driver_file_data</tt> <tt class="py-op">+</tt> <tt class="py-string">" self.prompt = '(.*)'\n self.timeout = 60 \n\n"</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt><tt class="py-op">,</tt><tt class="py-name">command</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">commnads_ordered_list</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-name">api_data</tt> <tt class="py-op">=</tt> <tt class="py-string">' def '</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-name">command_as_api</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">,</tt><tt class="py-string">"_"</tt> <tt class="py-op">,</tt> <tt class="py-name">command</tt><tt class="py-op">,</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-name">command_as_api</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"\.|\-|\\|\/|\/"</tt><tt class="py-op">,</tt><tt class="py-string">""</tt> <tt class="py-op">,</tt> <tt class="py-name">command_as_api</tt><tt class="py-op">,</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-name">current_letter</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-name">underscore_count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-name">command_temp</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">c</tt> <tt class="py-keyword">in</tt> <tt class="py-name">command_as_api</tt><tt class="py-op">:</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-name">current_letter</tt> <tt class="py-op">=</tt> <tt class="py-name">current_letter</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">c</tt> <tt class="py-op">==</tt> <tt class="py-string">"_"</tt><tt class="py-op">:</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-name">underscore_count</tt> <tt class="py-op">=</tt> <tt class="py-name">underscore_count</tt><tt class="py-op">+</tt><tt class="py-number">1</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-name">underscore_count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">underscore_count</tt> <tt class="py-op">></tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-name">command_temp</tt> <tt class="py-op">=</tt> <tt class="py-name">command_temp</tt> <tt class="py-op">+</tt> <tt class="py-string">""</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">command_temp</tt> <tt class="py-op">=</tt> <tt class="py-name">command_temp</tt> <tt class="py-op">+</tt> <tt class="py-name">c</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">command_temp</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">command_temp</tt><tt class="py-op">)</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"_"</tt><tt class="py-op">:</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-name">command_temp</tt> <tt class="py-op">=</tt> <tt class="py-name">command_temp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">:</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">command_temp</tt><tt class="py-op">)</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-name">command_as_api</tt> <tt class="py-op">=</tt> <tt class="py-name">command_temp</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-comment">#options = ''</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-comment">#for option in self.command_dictionary[command]:</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-comment">#options = options+',' + option</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-comment">#options = re.sub("^\s*,|,$","" , options, 0)</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-name">api_data</tt> <tt class="py-op">=</tt> <tt class="py-name">api_data</tt> <tt class="py-op">+</tt> <tt class="py-name">command_as_api</tt><tt class="py-op">+</tt><tt class="py-string">"(self, *options, **def_args ):\n"</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-name">api_data</tt> <tt class="py-op">=</tt> <tt class="py-name">api_data</tt> <tt class="py-op">+</tt> <tt class="py-string">" '''Possible Options :"</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">command_dictionary</tt><tt class="py-op">[</tt><tt class="py-name">command</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"'''\n"</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-name">api_data</tt> <tt class="py-op">=</tt> <tt class="py-name">api_data</tt> <tt class="py-op">+</tt> <tt class="py-string">" arguments= ''\n"</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-name">api_data</tt> <tt class="py-op">=</tt> <tt class="py-name">api_data</tt> <tt class="py-op">+</tt> <tt class="py-string">" for option in options:\n"</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-name">api_data</tt> <tt class="py-op">=</tt> <tt class="py-name">api_data</tt> <tt class="py-op">+</tt> <tt class="py-string">" arguments = arguments + option +' ' \n"</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-name">api_data</tt> <tt class="py-op">=</tt> <tt class="py-name">api_data</tt> <tt class="py-op">+</tt> <tt class="py-string">" prompt = def_args.setdefault('prompt',self.prompt)\n"</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-name">api_data</tt> <tt class="py-op">=</tt> <tt class="py-name">api_data</tt> <tt class="py-op">+</tt> <tt class="py-string">" timeout = def_args.setdefault('timeout',self.timeout)\n"</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-name">api_data</tt> <tt class="py-op">=</tt> <tt class="py-name">api_data</tt> <tt class="py-op">+</tt> <tt class="py-string">" self.execute( cmd= \""</tt><tt class="py-op">+</tt> <tt class="py-name">command</tt> <tt class="py-op">+</tt> <tt class="py-string">" \"+ arguments, prompt = prompt, timeout = timeout ) \n"</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-name">api_data</tt> <tt class="py-op">=</tt> <tt class="py-name">api_data</tt> <tt class="py-op">+</tt> <tt class="py-string">" return main.TRUE\n"</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-name">driver_file_data</tt> <tt class="py-op">=</tt> <tt class="py-name">driver_file_data</tt> <tt class="py-op">+</tt> <tt class="py-name">api_data</tt> <tt class="py-op">+</tt><tt class="py-string">"\n"</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-name">driver_file</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">getcwd</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"/"</tt><tt class="py-op">+</tt><tt class="py-name">name</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">".py"</tt><tt class="py-op">,</tt> <tt class="py-string">'w'</tt><tt class="py-op">)</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-name">driver_file</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">driver_file_data</tt><tt class="py-op">)</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">driver_file_data</tt> </tt>
-</div><a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> </tt>
-<a name="GenerateDriver.disconnect"></a><div id="GenerateDriver.disconnect-def"><a name="L284"></a><tt class="py-lineno">284</tt> <a class="py-toggle" href="#" id="GenerateDriver.disconnect-toggle" onclick="return toggle('GenerateDriver.disconnect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.generatedriver.GenerateDriver-class.html#disconnect">disconnect</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="GenerateDriver.disconnect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="GenerateDriver.disconnect-expanded"><a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-</div><a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">pexpect</tt> </tt>
-</div><a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"><tt class="py-keyword">if</tt> <tt class="py-name">__name__</tt> <tt class="py-op">==</tt> <tt class="py-string">"__main__"</tt><tt class="py-op">:</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-name">generate</tt> <tt class="py-op">=</tt> <tt id="link-26" class="py-name" targets="Class TestON.bin.generatedriver.GenerateDriver=TestON.bin.generatedriver.GenerateDriver-class.html"><a title="TestON.bin.generatedriver.GenerateDriver" class="py-name" href="#" onclick="return doclink('link-26', 'GenerateDriver', 'link-26');">GenerateDriver</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-name">device_name</tt> <tt class="py-op">=</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">argv</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-name">generate</tt><tt class="py-op">.</tt><tt class="py-name">device_name</tt> <tt class="py-op">=</tt> <tt class="py-name">device_name</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt> <tt class="py-op">=</tt> <tt class="py-name">generate</tt><tt class="py-op">.</tt><tt class="py-name">config_details</tt><tt class="py-op">[</tt><tt class="py-string">'device'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">device_name</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'ip_address'</tt><tt class="py-op">]</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-name">user_name</tt> <tt class="py-op">=</tt> <tt class="py-name">generate</tt><tt class="py-op">.</tt><tt class="py-name">config_details</tt><tt class="py-op">[</tt><tt class="py-string">'device'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">device_name</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'user_name'</tt><tt class="py-op">]</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-name">password</tt> <tt class="py-op">=</tt> <tt class="py-name">generate</tt><tt class="py-op">.</tt><tt class="py-name">config_details</tt><tt class="py-op">[</tt><tt class="py-string">'device'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">device_name</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'password'</tt><tt class="py-op">]</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-name">generate</tt><tt class="py-op">.</tt><tt class="py-name">config_details</tt><tt class="py-op">[</tt><tt class="py-string">'device'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">device_name</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'command'</tt><tt class="py-op">]</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-name">commandlist</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"(\[|\])"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-name">command</tt><tt class="py-op">)</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">commandlist</tt> <tt class="py-op">=</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt><tt class="py-name">eval</tt><tt class="py-op">(</tt><tt class="py-name">command</tt><tt class="py-op">+</tt><tt class="py-string">','</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-name">connect_handle</tt> <tt class="py-op">=</tt> <tt class="py-name">generate</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-27', 'connect', 'link-27');">connect</a></tt><tt class="py-op">(</tt><tt class="py-name">user_name</tt> <tt class="py-op">=</tt> <tt class="py-name">user_name</tt> <tt class="py-op">,</tt><tt class="py-name">ip_address</tt> <tt class="py-op">=</tt> <tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-name">pwd</tt> <tt class="py-op">=</tt> <tt class="py-name">password</tt> <tt class="py-op">,</tt> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">connect_handle</tt> <tt class="py-op">:</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-comment"># generate.configure()</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">root_command</tt> <tt class="py-keyword">in</tt> <tt class="py-name">commandlist</tt> <tt class="py-op">:</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-name">generate</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.get_details_recursive" class="py-name" href="#" onclick="return doclink('link-28', 'get_details_recursive', 'link-25');">get_details_recursive</a></tt><tt class="py-op">(</tt><tt class="py-name">root_command</tt><tt class="py-op">)</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-name">generate</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.create_driver()=TestON.bin.generatedriver.GenerateDriver-class.html#create_driver"><a title="TestON.bin.generatedriver.GenerateDriver.create_driver" class="py-name" href="#" onclick="return doclink('link-29', 'create_driver', 'link-29');">create_driver</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-name">generate</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.disconnect()=TestON.bin.generatedriver.GenerateDriver-class.html#disconnect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#disconnect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#disconnect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#disconnect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#disconnect,Method TestON.drivers.common.clidriver.CLI.disconnect()=TestON.drivers.common.clidriver.CLI-class.html#disconnect"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-30', 'disconnect', 'link-30');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-comment">#generate.get_command_details(main_command)</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Connection Failed to the host"</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin.generatedriver.GenerateDriver-class.html b/TestON/Documentation/TestON_Document/TestON.bin.generatedriver.GenerateDriver-class.html
deleted file mode 100644
index 1e6157e..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin.generatedriver.GenerateDriver-class.html
+++ /dev/null
@@ -1,351 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin.generatedriver.GenerateDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.bin-module.html">Package bin</a> ::
- <a href="TestON.bin.generatedriver-module.html">Module generatedriver</a> ::
- Class GenerateDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin.generatedriver.GenerateDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class GenerateDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.bin.generatedriver-pysrc.html#GenerateDriver">source code</a></span></p>
-<p>This will</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.generatedriver-pysrc.html#GenerateDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.generatedriver.GenerateDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Connection will establish to the remote host using ssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.generatedriver-pysrc.html#GenerateDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="execute"></a><span class="summary-sig-name">execute</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- This method will execute the command and will check for the expected
- prompt.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.generatedriver-pysrc.html#GenerateDriver.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="configure"></a><span class="summary-sig-name">configure</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Will start the Configure mode of the device.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.generatedriver-pysrc.html#GenerateDriver.configure">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="get_command_help"></a><span class="summary-sig-name">get_command_help</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">command</span>)</span><br />
- Will get the help of the Command</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.generatedriver-pysrc.html#GenerateDriver.get_command_help">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="get_command_details"></a><span class="summary-sig-name">get_command_details</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">command</span>)</span><br />
- Will Update the command_dictionary with the available commands
- details</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.generatedriver-pysrc.html#GenerateDriver.get_command_details">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="print_details"></a><span class="summary-sig-name">print_details</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">command_dictionary</span>)</span><br />
- Will print the details in Tree Format</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.generatedriver-pysrc.html#GenerateDriver.print_details">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="get_details_recursive"></a><span class="summary-sig-name">get_details_recursive</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main_comand</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.generatedriver-pysrc.html#GenerateDriver.get_details_recursive">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="create_driver"></a><span class="summary-sig-name">create_driver</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.generatedriver-pysrc.html#GenerateDriver.create_driver">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="disconnect"></a><span class="summary-sig-name">disconnect</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.generatedriver-pysrc.html#GenerateDriver.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.generatedriver-pysrc.html#GenerateDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Connection will establish to the remote host using ssh. It will take
- user_name ,ip_address and password as arguments<br> and will return
- the handle.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin.nec-module.html b/TestON/Documentation/TestON_Document/TestON.bin.nec-module.html
deleted file mode 100644
index 17f87ca..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin.nec-module.html
+++ /dev/null
@@ -1,166 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin.nec</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.bin-module.html">Package bin</a> ::
- Module nec
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin.nec-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module nec</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.bin.nec-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.bin.nec.NEC-class.html" class="summary-name">NEC</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin.nec-pysrc.html b/TestON/Documentation/TestON_Document/TestON.bin.nec-pysrc.html
deleted file mode 100644
index a91ca55..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin.nec-pysrc.html
+++ /dev/null
@@ -1,720 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin.nec</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.bin-module.html">Package bin</a> ::
- Module nec
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin.nec-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.bin.nec-module.html">Module TestON.bin.nec</a></h1>
-<pre class="py-src">
-<a name="NEC"></a><div id="NEC-def"><a name="L1"></a><tt class="py-lineno"> 1</tt> <a class="py-toggle" href="#" id="NEC-toggle" onclick="return toggle('NEC');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html">NEC</a><tt class="py-op">:</tt> </tt>
-</div><div id="NEC-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="NEC-expanded"><a name="NEC.__init__"></a><div id="NEC.__init__-def"><a name="L2"></a><tt class="py-lineno"> 2</tt> <a class="py-toggle" href="#" id="NEC.__init__-toggle" onclick="return toggle('NEC.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.__init__-expanded"><a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Variable TestON.bin.cli.CLI.prompt=TestON.bin.cli.CLI-class.html#prompt"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-0', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-string">'(.*)'</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-number">60</tt> </tt>
-</div><a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"> </tt>
-<a name="NEC.show"></a><div id="NEC.show-def"><a name="L6"></a><tt class="py-lineno"> 6</tt> <a class="py-toggle" href="#" id="NEC.show-toggle" onclick="return toggle('NEC.show');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show">show</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show-expanded"><a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[' access-filter ', ' accounting ', ' acknowledgments ', ' auto-config ', ' axrp ', ' cfm ', ' channel-group ', ' clock ', ' config-lock-status ', ' cpu ', ' dhcp ', ' dot1x ', ' dumpfile ', ' efmoam ', ' environment ', ' file ', ' flash ', ' gsrp ', ' history ', ' igmp-snooping ', ' interfaces ', ' ip ', ' ip-dual ', ' ipv6-dhcp ', ' license ', ' lldp ', ' logging ', ' loop-detection ', ' mac-address-table ', ' mc ', ' memory ', ' mld-snooping ', ' netconf ', ' netstat ', ' ntp ', ' oadp ', ' openflow ', ' port ', ' power ', ' processes ', ' qos ', ' qos-flow ', ' sessions ', ' sflow ', ' spanning-tree ', ' ssh ', ' system ', ' tcpdump ', ' tech-support ', ' track ', ' version ', ' vlan ', ' vrrpstatus ', ' whoami ']'''</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"> <tt id="link-1" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-1', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-2', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.execute()=TestON.bin.generatedriver.GenerateDriver-class.html#execute,Method TestON.drivers.common.clidriver.CLI.execute()=TestON.drivers.common.clidriver.CLI-class.html#execute"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-3', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-4" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-4', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-5" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-5', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_ip"></a><div id="NEC.show_ip-def"><a name="L16"></a><tt class="py-lineno"> 16</tt> <a class="py-toggle" href="#" id="NEC.show_ip-toggle" onclick="return toggle('NEC.show_ip');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_ip">show_ip</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_ip-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_ip-expanded"><a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"> <tt id="link-6" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-6', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-7', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-8', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show ip "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-9" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-9', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-10" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-10', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_mc"></a><div id="NEC.show_mc-def"><a name="L26"></a><tt class="py-lineno"> 26</tt> <a class="py-toggle" href="#" id="NEC.show_mc-toggle" onclick="return toggle('NEC.show_mc');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_mc">show_mc</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_mc-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_mc-expanded"><a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt id="link-11" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-11', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-12', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-13', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show mc "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-14" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-14', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-15" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-15', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_cfm"></a><div id="NEC.show_cfm-def"><a name="L36"></a><tt class="py-lineno"> 36</tt> <a class="py-toggle" href="#" id="NEC.show_cfm-toggle" onclick="return toggle('NEC.show_cfm');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_cfm">show_cfm</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_cfm-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_cfm-expanded"><a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt id="link-16" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-16', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-17', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-18', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show cfm "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-19" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-19', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-20" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-20', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_ntp"></a><div id="NEC.show_ntp-def"><a name="L46"></a><tt class="py-lineno"> 46</tt> <a class="py-toggle" href="#" id="NEC.show_ntp-toggle" onclick="return toggle('NEC.show_ntp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_ntp">show_ntp</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_ntp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_ntp-expanded"><a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt id="link-21" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-21', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-22', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-23', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show ntp "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-24" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-24', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-25" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-25', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_ssh"></a><div id="NEC.show_ssh-def"><a name="L56"></a><tt class="py-lineno"> 56</tt> <a class="py-toggle" href="#" id="NEC.show_ssh-toggle" onclick="return toggle('NEC.show_ssh');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_ssh">show_ssh</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_ssh-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_ssh-expanded"><a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt id="link-26" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-26', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-27', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-28', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show ssh "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-29" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-29', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-30" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-30', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_qos"></a><div id="NEC.show_qos-def"><a name="L66"></a><tt class="py-lineno"> 66</tt> <a class="py-toggle" href="#" id="NEC.show_qos-toggle" onclick="return toggle('NEC.show_qos');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_qos">show_qos</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_qos-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_qos-expanded"><a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt id="link-31" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-31', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-32', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-33', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show qos "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-34" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-34', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-35" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-35', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_cpu"></a><div id="NEC.show_cpu-def"><a name="L76"></a><tt class="py-lineno"> 76</tt> <a class="py-toggle" href="#" id="NEC.show_cpu-toggle" onclick="return toggle('NEC.show_cpu');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_cpu">show_cpu</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_cpu-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_cpu-expanded"><a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt id="link-36" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-36', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-37', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-38', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show cpu "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-39" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-39', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-40" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-40', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_vlan"></a><div id="NEC.show_vlan-def"><a name="L86"></a><tt class="py-lineno"> 86</tt> <a class="py-toggle" href="#" id="NEC.show_vlan-toggle" onclick="return toggle('NEC.show_vlan');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_vlan">show_vlan</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_vlan-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_vlan-expanded"><a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt id="link-41" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-41', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-42', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-43', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show vlan "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-44" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-44', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-45" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-45', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_lldp"></a><div id="NEC.show_lldp-def"><a name="L96"></a><tt class="py-lineno"> 96</tt> <a class="py-toggle" href="#" id="NEC.show_lldp-toggle" onclick="return toggle('NEC.show_lldp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_lldp">show_lldp</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_lldp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_lldp-expanded"><a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt id="link-46" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-46', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-47', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-48', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show lldp "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-49" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-49', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-50" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-50', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_dhcp"></a><div id="NEC.show_dhcp-def"><a name="L106"></a><tt class="py-lineno">106</tt> <a class="py-toggle" href="#" id="NEC.show_dhcp-toggle" onclick="return toggle('NEC.show_dhcp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_dhcp">show_dhcp</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_dhcp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_dhcp-expanded"><a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt id="link-51" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-51', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-52', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-53', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show dhcp "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-54" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-54', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-55" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-55', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_axrp"></a><div id="NEC.show_axrp-def"><a name="L116"></a><tt class="py-lineno">116</tt> <a class="py-toggle" href="#" id="NEC.show_axrp-toggle" onclick="return toggle('NEC.show_axrp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_axrp">show_axrp</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_axrp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_axrp-expanded"><a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt id="link-56" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-56', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-57', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-58', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show axrp "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-59" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-59', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-60" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-60', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_oadp"></a><div id="NEC.show_oadp-def"><a name="L126"></a><tt class="py-lineno">126</tt> <a class="py-toggle" href="#" id="NEC.show_oadp-toggle" onclick="return toggle('NEC.show_oadp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_oadp">show_oadp</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_oadp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_oadp-expanded"><a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt id="link-61" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-61', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-62', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-63', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show oadp "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-64" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-64', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-65" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-65', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_gsrp"></a><div id="NEC.show_gsrp-def"><a name="L136"></a><tt class="py-lineno">136</tt> <a class="py-toggle" href="#" id="NEC.show_gsrp-toggle" onclick="return toggle('NEC.show_gsrp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_gsrp">show_gsrp</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_gsrp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_gsrp-expanded"><a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt id="link-66" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-66', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-67', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-68', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show gsrp "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-69" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-69', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-70" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-70', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_port"></a><div id="NEC.show_port-def"><a name="L146"></a><tt class="py-lineno">146</tt> <a class="py-toggle" href="#" id="NEC.show_port-toggle" onclick="return toggle('NEC.show_port');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_port">show_port</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_port-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_port-expanded"><a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt id="link-71" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-71', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-72', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-73', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show port "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-74" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-74', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-75" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-75', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_file"></a><div id="NEC.show_file-def"><a name="L156"></a><tt class="py-lineno">156</tt> <a class="py-toggle" href="#" id="NEC.show_file-toggle" onclick="return toggle('NEC.show_file');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_file">show_file</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_file-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_file-expanded"><a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt id="link-76" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-76', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-77', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-78', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show file "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-79" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-79', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-80" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-80', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_power"></a><div id="NEC.show_power-def"><a name="L166"></a><tt class="py-lineno">166</tt> <a class="py-toggle" href="#" id="NEC.show_power-toggle" onclick="return toggle('NEC.show_power');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_power">show_power</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_power-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_power-expanded"><a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt id="link-81" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-81', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-82', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-83', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show power "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-84" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-84', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-85" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-85', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_clock"></a><div id="NEC.show_clock-def"><a name="L176"></a><tt class="py-lineno">176</tt> <a class="py-toggle" href="#" id="NEC.show_clock-toggle" onclick="return toggle('NEC.show_clock');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_clock">show_clock</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_clock-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_clock-expanded"><a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt id="link-86" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-86', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-87', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-88', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show clock "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-89" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-89', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-90" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-90', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_dot1x"></a><div id="NEC.show_dot1x-def"><a name="L186"></a><tt class="py-lineno">186</tt> <a class="py-toggle" href="#" id="NEC.show_dot1x-toggle" onclick="return toggle('NEC.show_dot1x');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_dot1x">show_dot1x</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_dot1x-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_dot1x-expanded"><a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt id="link-91" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-91', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-92', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-93', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show dot1x "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-94" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-94', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-95" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-95', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_sflow"></a><div id="NEC.show_sflow-def"><a name="L196"></a><tt class="py-lineno">196</tt> <a class="py-toggle" href="#" id="NEC.show_sflow-toggle" onclick="return toggle('NEC.show_sflow');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_sflow">show_sflow</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_sflow-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_sflow-expanded"><a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt id="link-96" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-96', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-97', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-98', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show sflow "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-99" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-99', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-100" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-100', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_track"></a><div id="NEC.show_track-def"><a name="L206"></a><tt class="py-lineno">206</tt> <a class="py-toggle" href="#" id="NEC.show_track-toggle" onclick="return toggle('NEC.show_track');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_track">show_track</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_track-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_track-expanded"><a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt id="link-101" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-101', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-102', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-103', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show track "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-104" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-104', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-105" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-105', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_flash"></a><div id="NEC.show_flash-def"><a name="L216"></a><tt class="py-lineno">216</tt> <a class="py-toggle" href="#" id="NEC.show_flash-toggle" onclick="return toggle('NEC.show_flash');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_flash">show_flash</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_flash-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_flash-expanded"><a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt id="link-106" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-106', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-107', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-108', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show flash "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-109" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-109', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-110" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-110', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_system"></a><div id="NEC.show_system-def"><a name="L226"></a><tt class="py-lineno">226</tt> <a class="py-toggle" href="#" id="NEC.show_system-toggle" onclick="return toggle('NEC.show_system');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_system">show_system</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_system-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_system-expanded"><a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt id="link-111" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-111', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-112', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-113', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show system "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-114" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-114', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-115" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-115', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_whoami"></a><div id="NEC.show_whoami-def"><a name="L236"></a><tt class="py-lineno">236</tt> <a class="py-toggle" href="#" id="NEC.show_whoami-toggle" onclick="return toggle('NEC.show_whoami');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_whoami">show_whoami</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_whoami-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_whoami-expanded"><a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt id="link-116" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-116', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-117', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-118', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show whoami "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-119" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-119', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-120" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-120', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_efmoam"></a><div id="NEC.show_efmoam-def"><a name="L246"></a><tt class="py-lineno">246</tt> <a class="py-toggle" href="#" id="NEC.show_efmoam-toggle" onclick="return toggle('NEC.show_efmoam');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_efmoam">show_efmoam</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_efmoam-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_efmoam-expanded"><a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt id="link-121" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-121', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-122', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-123', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show efmoam "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-124" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-124', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-125" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-125', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_memory"></a><div id="NEC.show_memory-def"><a name="L256"></a><tt class="py-lineno">256</tt> <a class="py-toggle" href="#" id="NEC.show_memory-toggle" onclick="return toggle('NEC.show_memory');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_memory">show_memory</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_memory-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_memory-expanded"><a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt id="link-126" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-126', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-127', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-128', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show memory "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-129" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-129', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-130" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-130', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_tcpdump"></a><div id="NEC.show_tcpdump-def"><a name="L266"></a><tt class="py-lineno">266</tt> <a class="py-toggle" href="#" id="NEC.show_tcpdump-toggle" onclick="return toggle('NEC.show_tcpdump');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_tcpdump">show_tcpdump</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_tcpdump-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_tcpdump-expanded"><a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt id="link-131" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-131', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-132', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-133', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show tcpdump "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-134" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-134', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-135" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-135', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_history"></a><div id="NEC.show_history-def"><a name="L276"></a><tt class="py-lineno">276</tt> <a class="py-toggle" href="#" id="NEC.show_history-toggle" onclick="return toggle('NEC.show_history');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_history">show_history</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_history-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_history-expanded"><a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt id="link-136" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-136', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-137', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-138', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show history "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-139" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-139', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-140" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-140', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_logging"></a><div id="NEC.show_logging-def"><a name="L286"></a><tt class="py-lineno">286</tt> <a class="py-toggle" href="#" id="NEC.show_logging-toggle" onclick="return toggle('NEC.show_logging');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_logging">show_logging</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_logging-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_logging-expanded"><a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt id="link-141" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-141', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-142', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-143', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show logging "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-144" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-144', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-145" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-145', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_license"></a><div id="NEC.show_license-def"><a name="L296"></a><tt class="py-lineno">296</tt> <a class="py-toggle" href="#" id="NEC.show_license-toggle" onclick="return toggle('NEC.show_license');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_license">show_license</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_license-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_license-expanded"><a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt id="link-146" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-146', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-147', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-148" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-148', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show license "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-149" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-149', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-150" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-150', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_netstat"></a><div id="NEC.show_netstat-def"><a name="L306"></a><tt class="py-lineno">306</tt> <a class="py-toggle" href="#" id="NEC.show_netstat-toggle" onclick="return toggle('NEC.show_netstat');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_netstat">show_netstat</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_netstat-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_netstat-expanded"><a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt id="link-151" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-151', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-152', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-153', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show netstat "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-154" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-154', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-155" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-155', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_version"></a><div id="NEC.show_version-def"><a name="L316"></a><tt class="py-lineno">316</tt> <a class="py-toggle" href="#" id="NEC.show_version-toggle" onclick="return toggle('NEC.show_version');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_version">show_version</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_version-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_version-expanded"><a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt id="link-156" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-156', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-157', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-158" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-158', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show version "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-159" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-159', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-160" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-160', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_netconf"></a><div id="NEC.show_netconf-def"><a name="L326"></a><tt class="py-lineno">326</tt> <a class="py-toggle" href="#" id="NEC.show_netconf-toggle" onclick="return toggle('NEC.show_netconf');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_netconf">show_netconf</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_netconf-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_netconf-expanded"><a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt id="link-161" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-161', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-162', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-163" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-163', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show netconf "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-164" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-164', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-165" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-165', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_ipdual"></a><div id="NEC.show_ipdual-def"><a name="L336"></a><tt class="py-lineno">336</tt> <a class="py-toggle" href="#" id="NEC.show_ipdual-toggle" onclick="return toggle('NEC.show_ipdual');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_ipdual">show_ipdual</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_ipdual-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_ipdual-expanded"><a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> <tt id="link-166" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-166', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-167', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-168', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show ip-dual "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-169" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-169', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-170" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-170', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_sessions"></a><div id="NEC.show_sessions-def"><a name="L346"></a><tt class="py-lineno">346</tt> <a class="py-toggle" href="#" id="NEC.show_sessions-toggle" onclick="return toggle('NEC.show_sessions');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_sessions">show_sessions</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_sessions-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_sessions-expanded"><a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"> <tt id="link-171" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-171', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-172" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-172', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-173', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show sessions "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-174" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-174', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-175" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-175', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_qosflow"></a><div id="NEC.show_qosflow-def"><a name="L356"></a><tt class="py-lineno">356</tt> <a class="py-toggle" href="#" id="NEC.show_qosflow-toggle" onclick="return toggle('NEC.show_qosflow');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_qosflow">show_qosflow</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_qosflow-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_qosflow-expanded"><a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> <tt id="link-176" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-176', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-177" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-177', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-178" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-178', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show qos-flow "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-179" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-179', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-180" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-180', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_openflow"></a><div id="NEC.show_openflow-def"><a name="L366"></a><tt class="py-lineno">366</tt> <a class="py-toggle" href="#" id="NEC.show_openflow-toggle" onclick="return toggle('NEC.show_openflow');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_openflow">show_openflow</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_openflow-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_openflow-expanded"><a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt id="link-181" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-181', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-182" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-182', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-183" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-183', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show openflow "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-184" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-184', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-185" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-185', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_dumpfile"></a><div id="NEC.show_dumpfile-def"><a name="L376"></a><tt class="py-lineno">376</tt> <a class="py-toggle" href="#" id="NEC.show_dumpfile-toggle" onclick="return toggle('NEC.show_dumpfile');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_dumpfile">show_dumpfile</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_dumpfile-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_dumpfile-expanded"><a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"> <tt id="link-186" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-186', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-187" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-187', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-188" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-188', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show dumpfile "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-189" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-189', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-190" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-190', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_ipv6dhcp"></a><div id="NEC.show_ipv6dhcp-def"><a name="L386"></a><tt class="py-lineno">386</tt> <a class="py-toggle" href="#" id="NEC.show_ipv6dhcp-toggle" onclick="return toggle('NEC.show_ipv6dhcp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_ipv6dhcp">show_ipv6dhcp</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_ipv6dhcp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_ipv6dhcp-expanded"><a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> <tt id="link-191" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-191', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-192" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-192', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-193" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-193', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show ipv6-dhcp "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-194" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-194', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-195" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-195', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_processes"></a><div id="NEC.show_processes-def"><a name="L396"></a><tt class="py-lineno">396</tt> <a class="py-toggle" href="#" id="NEC.show_processes-toggle" onclick="return toggle('NEC.show_processes');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_processes">show_processes</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_processes-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_processes-expanded"><a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"> <tt id="link-196" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-196', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-197" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-197', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-198" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-198', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show processes "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-199" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-199', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-200" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-200', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_vrrpstatus"></a><div id="NEC.show_vrrpstatus-def"><a name="L406"></a><tt class="py-lineno">406</tt> <a class="py-toggle" href="#" id="NEC.show_vrrpstatus-toggle" onclick="return toggle('NEC.show_vrrpstatus');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_vrrpstatus">show_vrrpstatus</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_vrrpstatus-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_vrrpstatus-expanded"><a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L409"></a><tt class="py-lineno">409</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> <tt id="link-201" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-201', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-202" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-202', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L413"></a><tt class="py-lineno">413</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-203" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-203', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show vrrpstatus "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-204" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-204', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-205" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-205', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L414"></a><tt class="py-lineno">414</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_interfaces"></a><div id="NEC.show_interfaces-def"><a name="L416"></a><tt class="py-lineno">416</tt> <a class="py-toggle" href="#" id="NEC.show_interfaces-toggle" onclick="return toggle('NEC.show_interfaces');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_interfaces">show_interfaces</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_interfaces-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_interfaces-expanded"><a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"> <tt id="link-206" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-206', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-207" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-207', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L423"></a><tt class="py-lineno">423</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-208" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-208', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-209" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-209', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-210" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-210', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_environment"></a><div id="NEC.show_environment-def"><a name="L426"></a><tt class="py-lineno">426</tt> <a class="py-toggle" href="#" id="NEC.show_environment-toggle" onclick="return toggle('NEC.show_environment');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_environment">show_environment</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_environment-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_environment-expanded"><a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L431"></a><tt class="py-lineno">431</tt> <tt class="py-line"> <tt id="link-211" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-211', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-212" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-212', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L433"></a><tt class="py-lineno">433</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-213" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-213', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show environment "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-214" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-214', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-215" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-215', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L434"></a><tt class="py-lineno">434</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_autoconfig"></a><div id="NEC.show_autoconfig-def"><a name="L436"></a><tt class="py-lineno">436</tt> <a class="py-toggle" href="#" id="NEC.show_autoconfig-toggle" onclick="return toggle('NEC.show_autoconfig');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_autoconfig">show_autoconfig</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_autoconfig-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_autoconfig-expanded"><a name="L437"></a><tt class="py-lineno">437</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L439"></a><tt class="py-lineno">439</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L440"></a><tt class="py-lineno">440</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"> <tt id="link-216" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-216', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-217" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-217', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L443"></a><tt class="py-lineno">443</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-218" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-218', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show auto-config "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-219" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-219', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-220" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-220', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L445"></a><tt class="py-lineno">445</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_techsupport"></a><div id="NEC.show_techsupport-def"><a name="L446"></a><tt class="py-lineno">446</tt> <a class="py-toggle" href="#" id="NEC.show_techsupport-toggle" onclick="return toggle('NEC.show_techsupport');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_techsupport">show_techsupport</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_techsupport-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_techsupport-expanded"><a name="L447"></a><tt class="py-lineno">447</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L448"></a><tt class="py-lineno">448</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L449"></a><tt class="py-lineno">449</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L450"></a><tt class="py-lineno">450</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L451"></a><tt class="py-lineno">451</tt> <tt class="py-line"> <tt id="link-221" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-221', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-222" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-222', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L452"></a><tt class="py-lineno">452</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L453"></a><tt class="py-lineno">453</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-223" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-223', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show tech-support "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-224" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-224', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-225" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-225', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L454"></a><tt class="py-lineno">454</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L455"></a><tt class="py-lineno">455</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_mldsnooping"></a><div id="NEC.show_mldsnooping-def"><a name="L456"></a><tt class="py-lineno">456</tt> <a class="py-toggle" href="#" id="NEC.show_mldsnooping-toggle" onclick="return toggle('NEC.show_mldsnooping');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_mldsnooping">show_mldsnooping</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_mldsnooping-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_mldsnooping-expanded"><a name="L457"></a><tt class="py-lineno">457</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L458"></a><tt class="py-lineno">458</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L459"></a><tt class="py-lineno">459</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L460"></a><tt class="py-lineno">460</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L461"></a><tt class="py-lineno">461</tt> <tt class="py-line"> <tt id="link-226" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-226', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-227" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-227', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L462"></a><tt class="py-lineno">462</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L463"></a><tt class="py-lineno">463</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-228" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-228', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show mld-snooping "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-229" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-229', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-230" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-230', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L464"></a><tt class="py-lineno">464</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L465"></a><tt class="py-lineno">465</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_igmpsnooping"></a><div id="NEC.show_igmpsnooping-def"><a name="L466"></a><tt class="py-lineno">466</tt> <a class="py-toggle" href="#" id="NEC.show_igmpsnooping-toggle" onclick="return toggle('NEC.show_igmpsnooping');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_igmpsnooping">show_igmpsnooping</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_igmpsnooping-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_igmpsnooping-expanded"><a name="L467"></a><tt class="py-lineno">467</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L468"></a><tt class="py-lineno">468</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L469"></a><tt class="py-lineno">469</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L470"></a><tt class="py-lineno">470</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L471"></a><tt class="py-lineno">471</tt> <tt class="py-line"> <tt id="link-231" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-231', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-232" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-232', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L472"></a><tt class="py-lineno">472</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L473"></a><tt class="py-lineno">473</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-233" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-233', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show igmp-snooping "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-234" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-234', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-235" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-235', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L474"></a><tt class="py-lineno">474</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L475"></a><tt class="py-lineno">475</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_channelgroup"></a><div id="NEC.show_channelgroup-def"><a name="L476"></a><tt class="py-lineno">476</tt> <a class="py-toggle" href="#" id="NEC.show_channelgroup-toggle" onclick="return toggle('NEC.show_channelgroup');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_channelgroup">show_channelgroup</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_channelgroup-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_channelgroup-expanded"><a name="L477"></a><tt class="py-lineno">477</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L478"></a><tt class="py-lineno">478</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L479"></a><tt class="py-lineno">479</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L480"></a><tt class="py-lineno">480</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L481"></a><tt class="py-lineno">481</tt> <tt class="py-line"> <tt id="link-236" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-236', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-237" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-237', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L482"></a><tt class="py-lineno">482</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L483"></a><tt class="py-lineno">483</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-238" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-238', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show channel-group "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-239" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-239', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-240" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-240', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L484"></a><tt class="py-lineno">484</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L485"></a><tt class="py-lineno">485</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_spanningtree"></a><div id="NEC.show_spanningtree-def"><a name="L486"></a><tt class="py-lineno">486</tt> <a class="py-toggle" href="#" id="NEC.show_spanningtree-toggle" onclick="return toggle('NEC.show_spanningtree');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_spanningtree">show_spanningtree</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_spanningtree-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_spanningtree-expanded"><a name="L487"></a><tt class="py-lineno">487</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L488"></a><tt class="py-lineno">488</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L489"></a><tt class="py-lineno">489</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L490"></a><tt class="py-lineno">490</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L491"></a><tt class="py-lineno">491</tt> <tt class="py-line"> <tt id="link-241" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-241', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-242" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-242', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L492"></a><tt class="py-lineno">492</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L493"></a><tt class="py-lineno">493</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-243" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-243', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show spanning-tree "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-244" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-244', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-245" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-245', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L494"></a><tt class="py-lineno">494</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L495"></a><tt class="py-lineno">495</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_loopdetection"></a><div id="NEC.show_loopdetection-def"><a name="L496"></a><tt class="py-lineno">496</tt> <a class="py-toggle" href="#" id="NEC.show_loopdetection-toggle" onclick="return toggle('NEC.show_loopdetection');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_loopdetection">show_loopdetection</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_loopdetection-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_loopdetection-expanded"><a name="L497"></a><tt class="py-lineno">497</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L498"></a><tt class="py-lineno">498</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L499"></a><tt class="py-lineno">499</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L500"></a><tt class="py-lineno">500</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L501"></a><tt class="py-lineno">501</tt> <tt class="py-line"> <tt id="link-246" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-246', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-247" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-247', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L502"></a><tt class="py-lineno">502</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L503"></a><tt class="py-lineno">503</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-248" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-248', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show loop-detection "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-249" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-249', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-250" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-250', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L504"></a><tt class="py-lineno">504</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L505"></a><tt class="py-lineno">505</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_acknowledgments"></a><div id="NEC.show_acknowledgments-def"><a name="L506"></a><tt class="py-lineno">506</tt> <a class="py-toggle" href="#" id="NEC.show_acknowledgments-toggle" onclick="return toggle('NEC.show_acknowledgments');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_acknowledgments">show_acknowledgments</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_acknowledgments-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_acknowledgments-expanded"><a name="L507"></a><tt class="py-lineno">507</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[' interface ']'''</tt> </tt>
-<a name="L508"></a><tt class="py-lineno">508</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L509"></a><tt class="py-lineno">509</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L510"></a><tt class="py-lineno">510</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L511"></a><tt class="py-lineno">511</tt> <tt class="py-line"> <tt id="link-251" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-251', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-252" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-252', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L512"></a><tt class="py-lineno">512</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L513"></a><tt class="py-lineno">513</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-253" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-253', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show acknowledgments "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-254" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-254', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-255" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-255', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L514"></a><tt class="py-lineno">514</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L515"></a><tt class="py-lineno">515</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_macaddresstable"></a><div id="NEC.show_macaddresstable-def"><a name="L516"></a><tt class="py-lineno">516</tt> <a class="py-toggle" href="#" id="NEC.show_macaddresstable-toggle" onclick="return toggle('NEC.show_macaddresstable');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_macaddresstable">show_macaddresstable</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_macaddresstable-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_macaddresstable-expanded"><a name="L517"></a><tt class="py-lineno">517</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L518"></a><tt class="py-lineno">518</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L519"></a><tt class="py-lineno">519</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L520"></a><tt class="py-lineno">520</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L521"></a><tt class="py-lineno">521</tt> <tt class="py-line"> <tt id="link-256" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-256', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-257" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-257', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L522"></a><tt class="py-lineno">522</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L523"></a><tt class="py-lineno">523</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-258" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-258', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show mac-address-table "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-259" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-259', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-260" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-260', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L524"></a><tt class="py-lineno">524</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L525"></a><tt class="py-lineno">525</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_configlockstatus"></a><div id="NEC.show_configlockstatus-def"><a name="L526"></a><tt class="py-lineno">526</tt> <a class="py-toggle" href="#" id="NEC.show_configlockstatus-toggle" onclick="return toggle('NEC.show_configlockstatus');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_configlockstatus">show_configlockstatus</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_configlockstatus-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_configlockstatus-expanded"><a name="L527"></a><tt class="py-lineno">527</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L528"></a><tt class="py-lineno">528</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L529"></a><tt class="py-lineno">529</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L530"></a><tt class="py-lineno">530</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L531"></a><tt class="py-lineno">531</tt> <tt class="py-line"> <tt id="link-261" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-261', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-262" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-262', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L532"></a><tt class="py-lineno">532</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L533"></a><tt class="py-lineno">533</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-263" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-263', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show config-lock-status "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-264" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-264', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-265" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-265', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L534"></a><tt class="py-lineno">534</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L535"></a><tt class="py-lineno">535</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_acknowledgments_interface"></a><div id="NEC.show_acknowledgments_interface-def"><a name="L536"></a><tt class="py-lineno">536</tt> <a class="py-toggle" href="#" id="NEC.show_acknowledgments_interface-toggle" onclick="return toggle('NEC.show_acknowledgments_interface');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.nec.NEC-class.html#show_acknowledgments_interface">show_acknowledgments_interface</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_acknowledgments_interface-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_acknowledgments_interface-expanded"><a name="L537"></a><tt class="py-lineno">537</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L538"></a><tt class="py-lineno">538</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L539"></a><tt class="py-lineno">539</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L540"></a><tt class="py-lineno">540</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L541"></a><tt class="py-lineno">541</tt> <tt class="py-line"> <tt id="link-266" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-266', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-267" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-267', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L542"></a><tt class="py-lineno">542</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L543"></a><tt class="py-lineno">543</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-268" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-268', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show acknowledgments interface "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-269" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-269', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-270" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-270', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L544"></a><tt class="py-lineno">544</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div></div><a name="L545"></a><tt class="py-lineno">545</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin.nec.NEC-class.html b/TestON/Documentation/TestON_Document/TestON.bin.nec.NEC-class.html
deleted file mode 100644
index 8904282..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin.nec.NEC-class.html
+++ /dev/null
@@ -1,1188 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin.nec.NEC</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.bin-module.html">Package bin</a> ::
- <a href="TestON.bin.nec-module.html">Module nec</a> ::
- Class NEC
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin.nec.NEC-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class NEC</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show"></a><span class="summary-sig-name">show</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[' access-filter ', ' accounting ', '
- acknowledgments ', ' auto-config ', ' axrp ', ' cfm ', '
- channel-group ', ' clock ', ' config-lock-status ', ' cpu ', '
- dhcp ', ' dot1x ', ' dumpfile ', ' efmoam ', ' environment
- ', ' file ', ' flash ', ' gsrp ', ' history ', '
- igmp-snooping ', ' interfaces ', ' ip ', ' ip-dual ', '
- ipv6-dhcp ', ' license ', ' lldp ', ' logging ', '
- loop-detection ', ' mac-address-table ', ' mc ', ' memory ', '
- mld-snooping ', ' netconf ', ' netstat ', ' ntp ', ' oadp ',
- ' openflow ', ' port ', ' power ', ' processes ', ' qos ',
- ' qos-flow ', ' sessions ', ' sflow ', ' spanning-tree ', '
- ssh ', ' system ', ' tcpdump ', ' tech-support ', ' track ',
- ' version ', ' vlan ', ' vrrpstatus ', ' whoami ']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_ip"></a><span class="summary-sig-name">show_ip</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_ip">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_mc"></a><span class="summary-sig-name">show_mc</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_mc">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_cfm"></a><span class="summary-sig-name">show_cfm</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_cfm">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_ntp"></a><span class="summary-sig-name">show_ntp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_ntp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_ssh"></a><span class="summary-sig-name">show_ssh</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_ssh">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_qos"></a><span class="summary-sig-name">show_qos</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_qos">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_cpu"></a><span class="summary-sig-name">show_cpu</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_cpu">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_vlan"></a><span class="summary-sig-name">show_vlan</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_vlan">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_lldp"></a><span class="summary-sig-name">show_lldp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_lldp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_dhcp"></a><span class="summary-sig-name">show_dhcp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_dhcp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_axrp"></a><span class="summary-sig-name">show_axrp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_axrp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_oadp"></a><span class="summary-sig-name">show_oadp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_oadp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_gsrp"></a><span class="summary-sig-name">show_gsrp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_gsrp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_port"></a><span class="summary-sig-name">show_port</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_port">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_file"></a><span class="summary-sig-name">show_file</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_file">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_power"></a><span class="summary-sig-name">show_power</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_power">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_clock"></a><span class="summary-sig-name">show_clock</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_clock">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_dot1x"></a><span class="summary-sig-name">show_dot1x</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_dot1x">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_sflow"></a><span class="summary-sig-name">show_sflow</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_sflow">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_track"></a><span class="summary-sig-name">show_track</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_track">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_flash"></a><span class="summary-sig-name">show_flash</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_flash">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_system"></a><span class="summary-sig-name">show_system</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_system">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_whoami"></a><span class="summary-sig-name">show_whoami</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_whoami">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_efmoam"></a><span class="summary-sig-name">show_efmoam</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_efmoam">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_memory"></a><span class="summary-sig-name">show_memory</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_memory">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_tcpdump"></a><span class="summary-sig-name">show_tcpdump</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_tcpdump">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_history"></a><span class="summary-sig-name">show_history</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_history">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_logging"></a><span class="summary-sig-name">show_logging</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_logging">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_license"></a><span class="summary-sig-name">show_license</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_license">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_netstat"></a><span class="summary-sig-name">show_netstat</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_netstat">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_version"></a><span class="summary-sig-name">show_version</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_version">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_netconf"></a><span class="summary-sig-name">show_netconf</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_netconf">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_ipdual"></a><span class="summary-sig-name">show_ipdual</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_ipdual">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_sessions"></a><span class="summary-sig-name">show_sessions</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_sessions">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_qosflow"></a><span class="summary-sig-name">show_qosflow</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_qosflow">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_openflow"></a><span class="summary-sig-name">show_openflow</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_openflow">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_dumpfile"></a><span class="summary-sig-name">show_dumpfile</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_dumpfile">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_ipv6dhcp"></a><span class="summary-sig-name">show_ipv6dhcp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_ipv6dhcp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_processes"></a><span class="summary-sig-name">show_processes</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_processes">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_vrrpstatus"></a><span class="summary-sig-name">show_vrrpstatus</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_vrrpstatus">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces"></a><span class="summary-sig-name">show_interfaces</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_interfaces">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_environment"></a><span class="summary-sig-name">show_environment</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_environment">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_autoconfig"></a><span class="summary-sig-name">show_autoconfig</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_autoconfig">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_techsupport"></a><span class="summary-sig-name">show_techsupport</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_techsupport">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_mldsnooping"></a><span class="summary-sig-name">show_mldsnooping</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_mldsnooping">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_igmpsnooping"></a><span class="summary-sig-name">show_igmpsnooping</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_igmpsnooping">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_channelgroup"></a><span class="summary-sig-name">show_channelgroup</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_channelgroup">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_spanningtree"></a><span class="summary-sig-name">show_spanningtree</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_spanningtree">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_loopdetection"></a><span class="summary-sig-name">show_loopdetection</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_loopdetection">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_acknowledgments"></a><span class="summary-sig-name">show_acknowledgments</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[' interface ']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_acknowledgments">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_macaddresstable"></a><span class="summary-sig-name">show_macaddresstable</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_macaddresstable">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_configlockstatus"></a><span class="summary-sig-name">show_configlockstatus</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_configlockstatus">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_acknowledgments_interface"></a><span class="summary-sig-name">show_acknowledgments_interface</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.nec-pysrc.html#NEC.show_acknowledgments_interface">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin.updatedriver-module.html b/TestON/Documentation/TestON_Document/TestON.bin.updatedriver-module.html
deleted file mode 100644
index 8d01ceb..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin.updatedriver-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin.updatedriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.bin-module.html">Package bin</a> ::
- Module updatedriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin.updatedriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module updatedriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.bin.updatedriver.UpdateDriver-class.html" class="summary-name">UpdateDriver</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.bin'"><code class="variable-quote">'</code><code class="variable-string">TestON.bin</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin.updatedriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.bin.updatedriver-pysrc.html
deleted file mode 100644
index ef80be5..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin.updatedriver-pysrc.html
+++ /dev/null
@@ -1,498 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin.updatedriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.bin-module.html">Package bin</a> ::
- Module updatedriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin.updatedriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.bin.updatedriver-module.html">Module TestON.bin.updatedriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">inspect</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.core=TestON.core-module.html"><a title="TestON.core" class="py-name" href="#" onclick="return doclink('link-0', 'core', 'link-0');">core</a></tt> <tt class="py-keyword">import</tt> <tt id="link-1" class="py-name" targets="Module TestON.core.xmldict=TestON.core.xmldict-module.html"><a title="TestON.core.xmldict" class="py-name" href="#" onclick="return doclink('link-1', 'xmldict', 'link-1');">xmldict</a></tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-string">'''</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-string">@author: Raghav Kashyap (raghavkashyap@paxterrasolutions.com)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-string"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-string"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-string"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-string"> (at your option) any later version.</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-string"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-string"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-string"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-string"> GNU General Public License for more details.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-string"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-string"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-string">'''</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="UpdateDriver"></a><div id="UpdateDriver-def"><a name="L26"></a><tt class="py-lineno"> 26</tt> <a class="py-toggle" href="#" id="UpdateDriver-toggle" onclick="return toggle('UpdateDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.bin.updatedriver.UpdateDriver-class.html">UpdateDriver</a><tt class="py-op">:</tt> </tt>
-</div><div id="UpdateDriver-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="UpdateDriver-expanded"><a name="UpdateDriver.__init__"></a><div id="UpdateDriver.__init__-def"><a name="L27"></a><tt class="py-lineno"> 27</tt> <a class="py-toggle" href="#" id="UpdateDriver.__init__-toggle" onclick="return toggle('UpdateDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.updatedriver.UpdateDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="UpdateDriver.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="UpdateDriver.__init__-expanded"><a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-2', 'default', 'link-2');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configFile</tt> <tt class="py-op">=</tt> <tt class="py-string">"/home/openflow/TestON/config/ofadriver.cfg"</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">methodDict</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fileDict</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-</div><a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> </tt>
-<a name="UpdateDriver.getmethods"></a><div id="UpdateDriver.getmethods-def"><a name="L34"></a><tt class="py-lineno"> 34</tt> <a class="py-toggle" href="#" id="UpdateDriver.getmethods-toggle" onclick="return toggle('UpdateDriver.getmethods');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.updatedriver.UpdateDriver-class.html#getmethods">getmethods</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">modulePath</tt><tt class="py-op">,</tt><tt class="py-param">Class</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="UpdateDriver.getmethods-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="UpdateDriver.getmethods-expanded"><a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> This will get the list of methods in given module or class.</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> It accepts the module path and class name. If there is no</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"> class name then it has be mentioned as None.</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-name">methodList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">moduleList</tt> <tt class="py-op">=</tt> <tt class="py-name">modulePath</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"/"</tt><tt class="py-op">)</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">newModule</tt> <tt class="py-op">=</tt> <tt class="py-string">"."</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Message : Method list is being obatined , Please wait ..."</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">Class</tt> <tt class="py-op">:</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">Module</tt> <tt class="py-op">=</tt> <tt class="py-name">__import__</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">globals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">locals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-name">Class</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">ClassList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">x</tt><tt class="py-op">.</tt><tt class="py-name">__name__</tt> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">Module</tt><tt class="py-op">.</tt><tt class="py-name">__dict__</tt><tt class="py-op">.</tt><tt class="py-name">values</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-keyword">if</tt> <tt class="py-name">inspect</tt><tt class="py-op">.</tt><tt class="py-name">isclass</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ClassList</tt> <tt class="py-op">=</tt> <tt class="py-name">ClassList</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">Class</tt> <tt class="py-op">=</tt> <tt class="py-name">vars</tt><tt class="py-op">(</tt><tt class="py-name">Module</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">Class</tt><tt class="py-op">]</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">methodList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">x</tt><tt class="py-op">.</tt><tt class="py-name">__name__</tt> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">Class</tt><tt class="py-op">.</tt><tt class="py-name">__dict__</tt><tt class="py-op">.</tt><tt class="py-name">values</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-keyword">if</tt> <tt class="py-name">inspect</tt><tt class="py-op">.</tt><tt class="py-name">isfunction</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">Module</tt> <tt class="py-op">=</tt> <tt class="py-name">__import__</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">globals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">locals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt><tt class="py-op">[</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">methodList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">x</tt><tt class="py-op">.</tt><tt class="py-name">__name__</tt> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">Module</tt><tt class="py-op">.</tt><tt class="py-name">__dict__</tt><tt class="py-op">.</tt><tt class="py-name">values</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-keyword">if</tt> <tt class="py-name">inspect</tt><tt class="py-op">.</tt><tt class="py-name">isfunction</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">ClassList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">x</tt><tt class="py-op">.</tt><tt class="py-name">__name__</tt> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">Module</tt><tt class="py-op">.</tt><tt class="py-name">__dict__</tt><tt class="py-op">.</tt><tt class="py-name">values</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-keyword">if</tt> <tt class="py-name">inspect</tt><tt class="py-op">.</tt><tt class="py-name">isclass</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ClassList</tt> <tt class="py-op">=</tt> <tt class="py-name">ClassList</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">:</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Error : "</tt> <tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">exc_info</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">method</tt> <tt class="py-op">=</tt> <tt class="py-name">methodList</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">method</tt> </tt>
-</div><a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> </tt>
-<a name="UpdateDriver.echo"></a><div id="UpdateDriver.echo-def"><a name="L63"></a><tt class="py-lineno"> 63</tt> <a class="py-toggle" href="#" id="UpdateDriver.echo-toggle" onclick="return toggle('UpdateDriver.echo');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.updatedriver.UpdateDriver-class.html#echo">echo</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="UpdateDriver.echo-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="UpdateDriver.echo-expanded"><a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Echoing !!!!!!"</tt> </tt>
-</div><a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> </tt>
-<a name="UpdateDriver.getargs"></a><div id="UpdateDriver.getargs-def"><a name="L66"></a><tt class="py-lineno"> 66</tt> <a class="py-toggle" href="#" id="UpdateDriver.getargs-toggle" onclick="return toggle('UpdateDriver.getargs');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.updatedriver.UpdateDriver-class.html#getargs">getargs</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">moduleName</tt><tt class="py-op">,</tt><tt class="py-param">className</tt><tt class="py-op">,</tt><tt class="py-param">method</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="UpdateDriver.getargs-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="UpdateDriver.getargs-expanded"><a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"><tt class="py-docstring"> This will return the list of arguments in a method of python module of class.</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"><tt class="py-docstring"> It accepts method list as an argument.</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Message : Argument list is being obtained for each method"</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">methodArgsDict</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">className</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">moduleList</tt> <tt class="py-op">=</tt> <tt class="py-name">moduleName</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"."</tt><tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt><tt class="py-op">,</tt><tt class="py-name">name</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt class="py-name">method</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">Module</tt> <tt class="py-op">=</tt> <tt class="py-name">__import__</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">globals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">locals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt><tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">names</tt> <tt class="py-op">=</tt> <tt class="py-name">vars</tt><tt class="py-op">(</tt><tt class="py-name">Module</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">name</tt><tt class="py-op">]</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">:</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Message : method '"</tt> <tt class="py-op">+</tt> <tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">"'does not exists,Continued with including it. "</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">argumentList</tt> <tt class="py-op">=</tt> <tt class="py-name">inspect</tt><tt class="py-op">.</tt><tt class="py-name">getargspec</tt><tt class="py-op">(</tt><tt class="py-name">names</tt><tt class="py-op">)</tt> <tt class="py-comment">#inspect.getargvalues(name)</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">methodArgsDict</tt><tt class="py-op">[</tt><tt class="py-name">name</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">argumentList</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">moduleList</tt> <tt class="py-op">=</tt> <tt class="py-name">moduleName</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"."</tt><tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt><tt class="py-op">,</tt><tt class="py-name">name</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt class="py-name">method</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">Module</tt> <tt class="py-op">=</tt> <tt class="py-name">__import__</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">globals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">locals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-name">className</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">Class</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">Module</tt><tt class="py-op">,</tt> <tt class="py-name">className</tt><tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">names</tt> <tt class="py-op">=</tt> <tt class="py-name">vars</tt><tt class="py-op">(</tt><tt class="py-name">Class</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">name</tt><tt class="py-op">]</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt> <tt class="py-op">:</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Message : method '"</tt> <tt class="py-op">+</tt> <tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">"'does not exists,Continued with include it."</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">argumentList</tt> <tt class="py-op">=</tt> <tt class="py-name">inspect</tt><tt class="py-op">.</tt><tt class="py-name">getargspec</tt><tt class="py-op">(</tt><tt class="py-name">names</tt><tt class="py-op">)</tt> <tt class="py-comment">#inspect.getargvalues(name)</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">methodArgsDict</tt><tt class="py-op">[</tt><tt class="py-name">name</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">argumentList</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">methodArgsDict</tt> </tt>
-</div><a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> </tt>
-<a name="UpdateDriver.configparser"></a><div id="UpdateDriver.configparser-def"><a name="L100"></a><tt class="py-lineno">100</tt> <a class="py-toggle" href="#" id="UpdateDriver.configparser-toggle" onclick="return toggle('UpdateDriver.configparser');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.updatedriver.UpdateDriver-class.html#configparser">configparser</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">fileName</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="UpdateDriver.configparser-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="UpdateDriver.configparser-expanded"><a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"><tt class="py-docstring"> It will parse the config file (ofa.cfg) and return as dictionary</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">matchFileName</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">r'(.*)\.cfg'</tt><tt class="py-op">,</tt> <tt class="py-name">fileName</tt><tt class="py-op">,</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">M</tt> <tt class="py-op">|</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">I</tt><tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">matchFileName</tt><tt class="py-op">:</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configFile</tt> <tt class="py-op">=</tt> <tt class="py-name">fileName</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-name">xml</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">fileName</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">read</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt> <tt class="py-op">=</tt> <tt id="link-3" class="py-name"><a title="TestON.core.xmldict" class="py-name" href="#" onclick="return doclink('link-3', 'xmldict', 'link-1');">xmldict</a></tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Function TestON.core.xmldict.xml_to_dict()=TestON.core.xmldict-module.html#xml_to_dict"><a title="TestON.core.xmldict.xml_to_dict" class="py-name" href="#" onclick="return doclink('link-4', 'xml_to_dict', 'link-4');">xml_to_dict</a></tt><tt class="py-op">(</tt><tt class="py-name">xml</tt><tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">:</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Error : Config file "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configFile</tt> <tt class="py-op">+</tt> <tt class="py-string">" not defined properly or file path error"</tt> </tt>
-</div><a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> </tt>
-<a name="UpdateDriver.getList"></a><div id="UpdateDriver.getList-def"><a name="L116"></a><tt class="py-lineno">116</tt> <a class="py-toggle" href="#" id="UpdateDriver.getList-toggle" onclick="return toggle('UpdateDriver.getList');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.updatedriver.UpdateDriver-class.html#getList">getList</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="UpdateDriver.getList-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="UpdateDriver.getList-expanded"><a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"><tt class="py-docstring"> This method will maintain the hash with module->class->methodList or</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"><tt class="py-docstring"> module -> methodList .It will return the same Hash.</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">classList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">moduleList</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'modules'</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">,</tt><tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Error : Module Does not Exists"</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">e</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt><tt class="py-op">,</tt><tt class="py-name">value</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">modulePath</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'modules'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">value</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'path'</tt><tt class="py-op">]</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">moduleName</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'modules'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">value</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'name'</tt><tt class="py-op">]</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">pathList</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'modules'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">value</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'set-path'</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-5', 'path', 'link-5');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-name">pathList</tt><tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt> <tt class="py-op">:</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Error : No System Path is given "</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">Class</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'modules'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">value</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'classes'</tt><tt class="py-op">]</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">:</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">Class</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">Class</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt> <tt class="py-op">:</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">methodList</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.bin.updatedriver.UpdateDriver.getmethods()=TestON.bin.updatedriver.UpdateDriver-class.html#getmethods"><a title="TestON.bin.updatedriver.UpdateDriver.getmethods" class="py-name" href="#" onclick="return doclink('link-6', 'getmethods', 'link-6');">getmethods</a></tt><tt class="py-op">(</tt><tt class="py-name">modulePath</tt><tt class="py-op">,</tt><tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">methodDict</tt><tt class="py-op">[</tt><tt class="py-name">moduleName</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">methodList</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.bin.updatedriver.UpdateDriver.method_ignoreList()=TestON.bin.updatedriver.UpdateDriver-class.html#method_ignoreList"><a title="TestON.bin.updatedriver.UpdateDriver.method_ignoreList" class="py-name" href="#" onclick="return doclink('link-7', 'method_ignoreList', 'link-7');">method_ignoreList</a></tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">,</tt><tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.bin.updatedriver.UpdateDriver.getMethodArgsHash()=TestON.bin.updatedriver.UpdateDriver-class.html#getMethodArgsHash"><a title="TestON.bin.updatedriver.UpdateDriver.getMethodArgsHash" class="py-name" href="#" onclick="return doclink('link-8', 'getMethodArgsHash', 'link-8');">getMethodArgsHash</a></tt><tt class="py-op">(</tt><tt class="py-name">moduleName</tt><tt class="py-op">,</tt><tt class="py-name">value</tt><tt class="py-op">,</tt><tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">classList</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'modules'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">value</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'classes'</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">indx</tt><tt class="py-op">,</tt><tt class="py-name">className</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt class="py-name">classList</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">className</tt> <tt class="py-op">==</tt> <tt class="py-string">'ignore-list'</tt> <tt class="py-op">:</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-name">methodList</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.getmethods" class="py-name" href="#" onclick="return doclink('link-9', 'getmethods', 'link-6');">getmethods</a></tt><tt class="py-op">(</tt><tt class="py-name">modulePath</tt><tt class="py-op">,</tt><tt class="py-name">className</tt><tt class="py-op">)</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">methodDict</tt><tt class="py-op">[</tt><tt class="py-name">moduleName</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-name">className</tt> <tt class="py-op">:</tt> <tt class="py-name">methodList</tt><tt class="py-op">}</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.method_ignoreList" class="py-name" href="#" onclick="return doclink('link-10', 'method_ignoreList', 'link-7');">method_ignoreList</a></tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">,</tt><tt class="py-name">className</tt><tt class="py-op">)</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Method TestON.bin.updatedriver.UpdateDriver.class_ignoreList()=TestON.bin.updatedriver.UpdateDriver-class.html#class_ignoreList"><a title="TestON.bin.updatedriver.UpdateDriver.class_ignoreList" class="py-name" href="#" onclick="return doclink('link-11', 'class_ignoreList', 'link-11');">class_ignoreList</a></tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.getMethodArgsHash" class="py-name" href="#" onclick="return doclink('link-12', 'getMethodArgsHash', 'link-8');">getMethodArgsHash</a></tt><tt class="py-op">(</tt><tt class="py-name">moduleName</tt><tt class="py-op">,</tt><tt class="py-name">value</tt><tt class="py-op">,</tt><tt class="py-name">className</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> </tt>
-<a name="UpdateDriver.class_ignoreList"></a><div id="UpdateDriver.class_ignoreList-def"><a name="L160"></a><tt class="py-lineno">160</tt> <a class="py-toggle" href="#" id="UpdateDriver.class_ignoreList-toggle" onclick="return toggle('UpdateDriver.class_ignoreList');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.updatedriver.UpdateDriver-class.html#class_ignoreList">class_ignoreList</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">module</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="UpdateDriver.class_ignoreList-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="UpdateDriver.class_ignoreList-expanded"><a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"><tt class="py-docstring"> It removes the ignored classes for each module mention in ofadriver.cfg</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt id="link-13" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.class_ignoreList" class="py-name" href="#" onclick="return doclink('link-13', 'class_ignoreList', 'link-11');">class_ignoreList</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'modules'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">module</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'classes'</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt> <tt class="py-op">:</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt id="link-14" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.class_ignoreList" class="py-name" href="#" onclick="return doclink('link-14', 'class_ignoreList', 'link-11');">class_ignoreList</a></tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'modules'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">module</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'classes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'ignore-list'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt> <tt class="py-op">:</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Message : No Class Ignore List present"</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">True</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">moduleName</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'modules'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">module</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'name'</tt><tt class="py-op">]</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt><tt class="py-op">,</tt><tt class="py-name">className</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt id="link-15" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.class_ignoreList" class="py-name" href="#" onclick="return doclink('link-15', 'class_ignoreList', 'link-11');">class_ignoreList</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">className</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">methodDict</tt><tt class="py-op">[</tt><tt class="py-name">moduleName</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">methodDict</tt><tt class="py-op">[</tt><tt class="py-name">moduleName</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">className</tt><tt class="py-op">]</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">methodDict</tt> </tt>
-</div><a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> </tt>
-<a name="UpdateDriver.method_ignoreList"></a><div id="UpdateDriver.method_ignoreList-def"><a name="L182"></a><tt class="py-lineno">182</tt> <a class="py-toggle" href="#" id="UpdateDriver.method_ignoreList-toggle" onclick="return toggle('UpdateDriver.method_ignoreList');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.updatedriver.UpdateDriver-class.html#method_ignoreList">method_ignoreList</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">module</tt><tt class="py-op">,</tt><tt class="py-param">className</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="UpdateDriver.method_ignoreList-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="UpdateDriver.method_ignoreList-expanded"><a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"><tt class="py-docstring"> It removes the ignored methods of each module or class mentioned in ofadriver.cfg.</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt id="link-16" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.method_ignoreList" class="py-name" href="#" onclick="return doclink('link-16', 'method_ignoreList', 'link-7');">method_ignoreList</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">className</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt> <tt class="py-op">:</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt id="link-17" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.method_ignoreList" class="py-name" href="#" onclick="return doclink('link-17', 'method_ignoreList', 'link-7');">method_ignoreList</a></tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'modules'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">module</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'methods'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'ignore-list'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">:</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt id="link-18" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.method_ignoreList" class="py-name" href="#" onclick="return doclink('link-18', 'method_ignoreList', 'link-7');">method_ignoreList</a></tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'modules'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">module</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'classes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">className</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'methods'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'ignore-list'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">:</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt> <tt class="py-op">:</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Message : No Ignore-List Exists , proceeding for looking add method"</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Method TestON.bin.updatedriver.UpdateDriver.add_method()=TestON.bin.updatedriver.UpdateDriver-class.html#add_method"><a title="TestON.bin.updatedriver.UpdateDriver.add_method" class="py-name" href="#" onclick="return doclink('link-19', 'add_method', 'link-19');">add_method</a></tt><tt class="py-op">(</tt><tt class="py-name">module</tt><tt class="py-op">,</tt><tt class="py-name">className</tt><tt class="py-op">)</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">True</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-name">moduleName</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'modules'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">module</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'name'</tt><tt class="py-op">]</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-comment">#import pprint</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-comment">#pprint.pprint(self.methodDict[moduleName])</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt><tt class="py-op">,</tt> <tt class="py-name">method</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt id="link-20" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.method_ignoreList" class="py-name" href="#" onclick="return doclink('link-20', 'method_ignoreList', 'link-7');">method_ignoreList</a></tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">className</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt> <tt class="py-op">:</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">methodDict</tt><tt class="py-op">[</tt><tt class="py-name">moduleName</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">method</tt><tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-comment">#pprint.pprint(self.methodDict)</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">ValueError</tt><tt class="py-op">:</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Message : Method "</tt> <tt class="py-op">+</tt> <tt class="py-name">method</tt> <tt class="py-op">+</tt> <tt class="py-string">"Does not exist in module "</tt> <tt class="py-op">+</tt> <tt class="py-name">moduleName</tt> <tt class="py-op">+</tt> <tt class="py-string">", Continue to rest execution"</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">method</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">methodDict</tt><tt class="py-op">[</tt><tt class="py-name">moduleName</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">className</tt><tt class="py-op">]</tt> <tt class="py-op">:</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">methodDict</tt><tt class="py-op">[</tt><tt class="py-name">moduleName</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">className</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">method</tt><tt class="py-op">)</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.add_method" class="py-name" href="#" onclick="return doclink('link-21', 'add_method', 'link-19');">add_method</a></tt><tt class="py-op">(</tt><tt class="py-name">module</tt><tt class="py-op">,</tt><tt class="py-name">className</tt><tt class="py-op">)</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">methodDict</tt> </tt>
-</div><a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> </tt>
-<a name="UpdateDriver.add_method"></a><div id="UpdateDriver.add_method-def"><a name="L222"></a><tt class="py-lineno">222</tt> <a class="py-toggle" href="#" id="UpdateDriver.add_method-toggle" onclick="return toggle('UpdateDriver.add_method');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.updatedriver.UpdateDriver-class.html#add_method">add_method</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">module</tt><tt class="py-op">,</tt><tt class="py-param">className</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="UpdateDriver.add_method-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="UpdateDriver.add_method-expanded"><a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"><tt class="py-docstring"> This will add the methods(mentioned in ofadriver.cfg file) into method list if it doesnot exists in list.</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-name">method_List</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">className</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt> <tt class="py-op">:</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-name">method_List</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'modules'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">module</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'methods'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'add-list'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">:</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-name">method_List</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'modules'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">module</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'classes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">className</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'methods'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'add-list'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">:</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt> <tt class="py-op">:</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Message : No Add-List Exists , Proceeding with all available methods"</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">True</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-name">moduleName</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'modules'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">module</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'name'</tt><tt class="py-op">]</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt><tt class="py-op">,</tt> <tt class="py-name">method</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt class="py-name">method_List</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">className</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt> <tt class="py-op">:</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">methodDict</tt><tt class="py-op">[</tt><tt class="py-name">moduleName</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">methodDict</tt><tt class="py-op">[</tt><tt class="py-name">moduleName</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">method</tt><tt class="py-op">)</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">methodDict</tt><tt class="py-op">[</tt><tt class="py-name">moduleName</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">className</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">methodDict</tt><tt class="py-op">[</tt><tt class="py-name">moduleName</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">className</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">method</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> </tt>
-<a name="UpdateDriver.getMethodArgsHash"></a><div id="UpdateDriver.getMethodArgsHash-def"><a name="L251"></a><tt class="py-lineno">251</tt> <a class="py-toggle" href="#" id="UpdateDriver.getMethodArgsHash-toggle" onclick="return toggle('UpdateDriver.getMethodArgsHash');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.updatedriver.UpdateDriver-class.html#getMethodArgsHash">getMethodArgsHash</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">moduleName</tt><tt class="py-op">,</tt><tt class="py-param">module</tt><tt class="py-op">,</tt><tt class="py-param">className</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="UpdateDriver.getMethodArgsHash-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="UpdateDriver.getMethodArgsHash-expanded"><a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"><tt class="py-docstring"> This will maintain a Hash of class->method->argumentsList</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-name">modulePath</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'modules'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">module</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'path'</tt><tt class="py-op">]</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">moduleList</tt> <tt class="py-op">=</tt> <tt class="py-name">modulePath</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"/"</tt><tt class="py-op">)</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-name">newModule</tt> <tt class="py-op">=</tt> <tt class="py-string">"."</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">className</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt> <tt class="py-op">:</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">methodArgs</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Method TestON.bin.updatedriver.UpdateDriver.getargs()=TestON.bin.updatedriver.UpdateDriver-class.html#getargs"><a title="TestON.bin.updatedriver.UpdateDriver.getargs" class="py-name" href="#" onclick="return doclink('link-22', 'getargs', 'link-22');">getargs</a></tt><tt class="py-op">(</tt><tt class="py-name">newModule</tt><tt class="py-op">,</tt><tt class="py-name">None</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">methodDict</tt><tt class="py-op">[</tt><tt class="py-name">moduleName</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fileDict</tt><tt class="py-op">[</tt><tt class="py-name">moduleName</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">methodArgs</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-name">methodArgs</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.getargs" class="py-name" href="#" onclick="return doclink('link-23', 'getargs', 'link-22');">getargs</a></tt><tt class="py-op">(</tt><tt class="py-name">newModule</tt><tt class="py-op">,</tt><tt class="py-name">className</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">methodDict</tt><tt class="py-op">[</tt><tt class="py-name">moduleName</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">className</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fileDict</tt><tt class="py-op">[</tt><tt class="py-name">className</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">methodArgs</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fileDict</tt> </tt>
-</div><a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> </tt>
-<a name="UpdateDriver.appendDriver"></a><div id="UpdateDriver.appendDriver-def"><a name="L266"></a><tt class="py-lineno">266</tt> <a class="py-toggle" href="#" id="UpdateDriver.appendDriver-toggle" onclick="return toggle('UpdateDriver.appendDriver');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.updatedriver.UpdateDriver-class.html#appendDriver">appendDriver</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">fileName</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="UpdateDriver.appendDriver-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="UpdateDriver.appendDriver-expanded"><a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"><tt class="py-docstring"> This will append the given driver file with methods along with arguments.</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-name">matchFileName</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">r'(.*)\.py'</tt><tt class="py-op">,</tt> <tt class="py-name">fileName</tt><tt class="py-op">,</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">M</tt> <tt class="py-op">|</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">I</tt><tt class="py-op">)</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">matchFileName</tt><tt class="py-op">:</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-name">fileHandle</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Message : Writing Driver file at "</tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-name">fileHandle</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">fileName</tt><tt class="py-op">,</tt><tt class="py-string">"a"</tt><tt class="py-op">)</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-name">content</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt><tt class="py-op">,</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fileDict</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">ind</tt><tt class="py-op">,</tt> <tt class="py-name">method</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fileDict</tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">method</tt> <tt class="py-op">==</tt> <tt class="py-string">"__init__"</tt> <tt class="py-op">:</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-string">","</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fileDict</tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">method</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-name">content</tt> <tt class="py-op">=</tt> <tt class="py-name">content</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">4</tt> <tt class="py-op">+</tt> <tt class="py-string">"def "</tt> <tt class="py-op">+</tt> <tt class="py-name">method</tt> <tt class="py-op">+</tt> <tt class="py-string">"(self,"</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt> <tt class="py-op">+</tt> <tt class="py-string">") :"</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-name">content</tt> <tt class="py-op">=</tt> <tt class="py-name">content</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">8</tt> <tt class="py-op">+</tt> <tt class="py-string">"return "</tt> <tt class="py-op">+</tt> <tt class="py-name">key</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">method</tt> <tt class="py-op">+</tt> <tt class="py-string">"("</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt> <tt class="py-op">+</tt> <tt class="py-string">")\n"</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt> <tt class="py-op">:</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-name">fileHandle</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">content</tt><tt class="py-op">)</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-name">fileHandle</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">content</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">:</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Error : Driver file "</tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt> <tt class="py-op">+</tt> <tt class="py-string">"does not exists"</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Error : File name "</tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt> <tt class="py-op">+</tt> <tt class="py-string">"is not python module"</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> </tt>
-<a name="UpdateDriver.writeDriver"></a><div id="UpdateDriver.writeDriver-def"><a name="L300"></a><tt class="py-lineno">300</tt> <a class="py-toggle" href="#" id="UpdateDriver.writeDriver-toggle" onclick="return toggle('UpdateDriver.writeDriver');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.updatedriver.UpdateDriver-class.html#writeDriver">writeDriver</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">driver</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="UpdateDriver.writeDriver-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="UpdateDriver.writeDriver-expanded"><a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"><tt class="py-docstring"> This will accept the List of driver name and write those drivers if no driver name is specified</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"><tt class="py-docstring"> then it will write all of the driver specified in the ofadriver.cfg.</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method TestON.bin.updatedriver.UpdateDriver.printHeader()=TestON.bin.updatedriver.UpdateDriver-class.html#printHeader"><a title="TestON.bin.updatedriver.UpdateDriver.printHeader" class="py-name" href="#" onclick="return doclink('link-24', 'printHeader', 'link-24');">printHeader</a></tt><tt class="py-op">(</tt><tt class="py-name">driver</tt><tt class="py-op">)</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt id="link-25" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-25', 'drivers', 'link-25');">drivers</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-name">commaMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">,</tt> <tt class="py-name">driver</tt><tt class="py-op">,</tt> <tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">commaMatch</tt><tt class="py-op">:</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt id="link-26" class="py-name"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-26', 'drivers', 'link-25');">drivers</a></tt> <tt class="py-op">=</tt> <tt class="py-name">driver</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt id="link-27" class="py-name"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-27', 'drivers', 'link-25');">drivers</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">driver</tt><tt class="py-op">)</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driverList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-28" class="py-name"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-28', 'drivers', 'link-25');">drivers</a></tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt><tt class="py-op">,</tt> <tt class="py-name">driverName</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt> <tt class="py-op">=</tt> <tt class="py-name">driverName</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Method TestON.bin.updatedriver.UpdateDriver.getList()=TestON.bin.updatedriver.UpdateDriver-class.html#getList"><a title="TestON.bin.updatedriver.UpdateDriver.getList" class="py-name" href="#" onclick="return doclink('link-29', 'getList', 'link-29');">getList</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">result</tt> <tt class="py-op">:</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method TestON.bin.updatedriver.UpdateDriver.getDriverPath()=TestON.bin.updatedriver.UpdateDriver-class.html#getDriverPath,Method TestON.core.teston.TestON.getDriverPath()=TestON.core.teston.TestON-class.html#getDriverPath"><a title="TestON.bin.updatedriver.UpdateDriver.getDriverPath
-TestON.core.teston.TestON.getDriverPath" class="py-name" href="#" onclick="return doclink('link-30', 'getDriverPath', 'link-30');">getDriverPath</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Method TestON.bin.updatedriver.UpdateDriver.appendDriver()=TestON.bin.updatedriver.UpdateDriver-class.html#appendDriver"><a title="TestON.bin.updatedriver.UpdateDriver.appendDriver" class="py-name" href="#" onclick="return doclink('link-31', 'appendDriver', 'link-31');">appendDriver</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driverPath</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt> <tt class="py-op">+</tt> <tt class="py-string">".py"</tt><tt class="py-op">)</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driverList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driverPath</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt> <tt class="py-op">+</tt> <tt class="py-string">".py"</tt><tt class="py-op">)</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt><tt class="py-op">,</tt> <tt class="py-name">driverName</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt id="link-32" class="py-name"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-32', 'drivers', 'link-25');">drivers</a></tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt> <tt class="py-op">=</tt> <tt class="py-name">driverName</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.getList" class="py-name" href="#" onclick="return doclink('link-33', 'getList', 'link-29');">getList</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">result</tt> <tt class="py-op">:</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.getDriverPath
-TestON.core.teston.TestON.getDriverPath" class="py-name" href="#" onclick="return doclink('link-34', 'getDriverPath', 'link-30');">getDriverPath</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.bin.updatedriver.UpdateDriver.appendDriver" class="py-name" href="#" onclick="return doclink('link-35', 'appendDriver', 'link-31');">appendDriver</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driverPath</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt> <tt class="py-op">+</tt> <tt class="py-string">".py"</tt><tt class="py-op">)</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driverList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driverPath</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt> <tt class="py-op">+</tt> <tt class="py-string">".py"</tt><tt class="py-op">)</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"="</tt> <tt class="py-op">*</tt> <tt class="py-number">90</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">30</tt> <tt class="py-op">+</tt> <tt class="py-string">"Output Driver File :"</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">",\n"</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driverList</tt><tt class="py-op">)</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"="</tt> <tt class="py-op">*</tt> <tt class="py-number">90</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">True</tt> </tt>
-</div><a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> </tt>
-<a name="UpdateDriver.getDriverPath"></a><div id="UpdateDriver.getDriverPath-def"><a name="L343"></a><tt class="py-lineno">343</tt> <a class="py-toggle" href="#" id="UpdateDriver.getDriverPath-toggle" onclick="return toggle('UpdateDriver.getDriverPath');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.updatedriver.UpdateDriver-class.html#getDriverPath">getDriverPath</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="UpdateDriver.getDriverPath-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="UpdateDriver.getDriverPath-expanded"><a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"><tt class="py-docstring"> It will set the driver path and returns it.If driver path is not specified then it will take</tt> </tt>
-<a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"><tt class="py-docstring"> default path (/lib/updatedriver/).</tt> </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driverPath</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driverPath</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt><tt class="py-op">[</tt><tt class="py-string">'config-driver'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'importTypes'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'driver-path'</tt><tt class="py-op">]</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">:</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"> <tt id="link-36" class="py-name" targets="Variable TestON.bin.cli.location=TestON.bin.cli-module.html#location,Variable TestON.core.teston.location=TestON.core.teston-module.html#location"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-36', 'location', 'link-36');">location</a></tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-37', 'path', 'link-5');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">abspath</tt><tt class="py-op">(</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-38', 'path', 'link-5');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">dirname</tt><tt class="py-op">(</tt> <tt class="py-name">__file__</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> <tt id="link-39" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-39', 'path', 'link-5');">path</a></tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">"(bin)$"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt id="link-40" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-40', 'location', 'link-36');">location</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driverPath</tt> <tt class="py-op">=</tt> <tt id="link-41" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-41', 'path', 'link-5');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"/lib/updatedriver/"</tt> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driverPath</tt> </tt>
-</div><a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> </tt>
-<a name="UpdateDriver.printHeader"></a><div id="UpdateDriver.printHeader-def"><a name="L359"></a><tt class="py-lineno">359</tt> <a class="py-toggle" href="#" id="UpdateDriver.printHeader-toggle" onclick="return toggle('UpdateDriver.printHeader');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.updatedriver.UpdateDriver-class.html#printHeader">printHeader</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">driver</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="UpdateDriver.printHeader-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="UpdateDriver.printHeader-expanded"><a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-name">content</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">10</tt> <tt class="py-op">+</tt><tt class="py-string">"="</tt> <tt class="py-op">*</tt> <tt class="py-number">90</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"> <tt class="py-name">content</tt> <tt class="py-op">=</tt> <tt class="py-name">content</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">30</tt> <tt class="py-op">+</tt> <tt class="py-string">"*-- Welcome to Updated Driver --*\n"</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> <tt class="py-name">content</tt> <tt class="py-op">=</tt> <tt class="py-name">content</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">10</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">10</tt> <tt class="py-op">+</tt> <tt class="py-string">"Config File : "</tt> <tt class="py-op">+</tt> <tt class="py-string">"/home/openflow/TestON/config/ofadriver.py"</tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> <tt class="py-name">content</tt> <tt class="py-op">=</tt> <tt class="py-name">content</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">10</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">10</tt> <tt class="py-op">+</tt> <tt class="py-string">"Drivers Name : "</tt> <tt class="py-op">+</tt> <tt class="py-name">driver</tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">content</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">10</tt> <tt class="py-op">+</tt> <tt class="py-string">"="</tt> <tt class="py-op">*</tt> <tt class="py-number">90</tt> </tt>
-</div></div><a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin.updatedriver.UpdateDriver-class.html b/TestON/Documentation/TestON_Document/TestON.bin.updatedriver.UpdateDriver-class.html
deleted file mode 100644
index 1ef06b1..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin.updatedriver.UpdateDriver-class.html
+++ /dev/null
@@ -1,461 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin.updatedriver.UpdateDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.bin-module.html">Package bin</a> ::
- <a href="TestON.bin.updatedriver-module.html">Module updatedriver</a> ::
- Class UpdateDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin.updatedriver.UpdateDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class UpdateDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.updatedriver.UpdateDriver-class.html#getmethods" class="summary-sig-name">getmethods</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">modulePath</span>,
- <span class="summary-sig-arg">Class</span>)</span><br />
- This will get the list of methods in given module or class.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver.getmethods">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="echo"></a><span class="summary-sig-name">echo</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver.echo">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.bin.updatedriver.UpdateDriver-class.html#getargs" class="summary-sig-name">getargs</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">moduleName</span>,
- <span class="summary-sig-arg">className</span>,
- <span class="summary-sig-arg">method</span>)</span><br />
- This will return the list of arguments in a method of python module
- of class.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver.getargs">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="configparser"></a><span class="summary-sig-name">configparser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">fileName</span>)</span><br />
- It will parse the config file (ofa.cfg) and return as dictionary</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver.configparser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getList"></a><span class="summary-sig-name">getList</span>(<span class="summary-sig-arg">self</span>)</span><br />
- This method will maintain the hash with
- module->class->methodList or module -> methodList .It will
- return the same Hash.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver.getList">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="class_ignoreList"></a><span class="summary-sig-name">class_ignoreList</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">module</span>)</span><br />
- It removes the ignored classes for each module mention in
- ofadriver.cfg</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver.class_ignoreList">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="method_ignoreList"></a><span class="summary-sig-name">method_ignoreList</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">module</span>,
- <span class="summary-sig-arg">className</span>)</span><br />
- It removes the ignored methods of each module or class mentioned in
- ofadriver.cfg.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver.method_ignoreList">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="add_method"></a><span class="summary-sig-name">add_method</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">module</span>,
- <span class="summary-sig-arg">className</span>)</span><br />
- This will add the methods(mentioned in ofadriver.cfg file) into
- method list if it doesnot exists in list.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver.add_method">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getMethodArgsHash"></a><span class="summary-sig-name">getMethodArgsHash</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">moduleName</span>,
- <span class="summary-sig-arg">module</span>,
- <span class="summary-sig-arg">className</span>)</span><br />
- This will maintain a Hash of class->method->argumentsList</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver.getMethodArgsHash">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="appendDriver"></a><span class="summary-sig-name">appendDriver</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">fileName</span>)</span><br />
- This will append the given driver file with methods along with
- arguments.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver.appendDriver">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="writeDriver"></a><span class="summary-sig-name">writeDriver</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">driver</span>)</span><br />
- This will accept the List of driver name and write those drivers if
- no driver name is specified then it will write all of the driver
- specified in the ofadriver.cfg.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver.writeDriver">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getDriverPath"></a><span class="summary-sig-name">getDriverPath</span>(<span class="summary-sig-arg">self</span>)</span><br />
- It will set the driver path and returns it.If driver path is not
- specified then it will take default path (/lib/updatedriver/).</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver.getDriverPath">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="printHeader"></a><span class="summary-sig-name">printHeader</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">driver</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver.printHeader">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="getmethods"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getmethods</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">modulePath</span>,
- <span class="sig-arg">Class</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver.getmethods">source code</a></span>
- </td>
- </tr></table>
-
- <p>This will get the list of methods in given module or class. It accepts
- the module path and class name. If there is no class name then it has be
- mentioned as None.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getargs"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getargs</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">moduleName</span>,
- <span class="sig-arg">className</span>,
- <span class="sig-arg">method</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.bin.updatedriver-pysrc.html#UpdateDriver.getargs">source code</a></span>
- </td>
- </tr></table>
-
- <p>This will return the list of arguments in a method of python module of
- class. It accepts method list as an argument.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin.vyatta-module.html b/TestON/Documentation/TestON_Document/TestON.bin.vyatta-module.html
deleted file mode 100644
index 9ad995f..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin.vyatta-module.html
+++ /dev/null
@@ -1,177 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin.vyatta</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.bin-module.html">Package bin</a> ::
- Module vyatta
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin.vyatta-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module vyatta</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.bin.vyatta-pysrc.html">source code</a></span></p>
-<p>TestON is free software: you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by the
- Free Software Foundation, either version 2 of the License, or (at your
- option) any later version.</p>
- <p>TestON is distributed in the hope that it will be useful, but WITHOUT
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
- more details.</p>
- <p>You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.bin.vyatta.Vyatta-class.html" class="summary-name">Vyatta</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin.vyatta-pysrc.html b/TestON/Documentation/TestON_Document/TestON.bin.vyatta-pysrc.html
deleted file mode 100644
index 6bd1e90..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin.vyatta-pysrc.html
+++ /dev/null
@@ -1,891 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin.vyatta</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.bin-module.html">Package bin</a> ::
- Module vyatta
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin.vyatta-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.bin.vyatta-module.html">Module TestON.bin.vyatta</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"> (at your option) any later version.</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="Vyatta"></a><div id="Vyatta-def"><a name="L18"></a><tt class="py-lineno"> 18</tt> <a class="py-toggle" href="#" id="Vyatta-toggle" onclick="return toggle('Vyatta');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="Vyatta-expanded"><a name="Vyatta.__init__"></a><div id="Vyatta.__init__-def"><a name="L19"></a><tt class="py-lineno"> 19</tt> <a class="py-toggle" href="#" id="Vyatta.__init__-toggle" onclick="return toggle('Vyatta.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.__init__-expanded"><a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Variable TestON.bin.cli.CLI.prompt=TestON.bin.cli.CLI-class.html#prompt"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-0', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-string">'(.*)'</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-number">60</tt> </tt>
-</div><a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces"></a><div id="Vyatta.show_interfaces-def"><a name="L23"></a><tt class="py-lineno"> 23</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces-toggle" onclick="return toggle('Vyatta.show_interfaces');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces">show_interfaces</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces-expanded"><a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['ethernet', 'loopback']'''</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt id="link-1" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-1', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-2', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.execute()=TestON.bin.generatedriver.GenerateDriver-class.html#execute,Method TestON.drivers.common.clidriver.CLI.execute()=TestON.drivers.common.clidriver.CLI-class.html#execute"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-3', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-4" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-4', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-5" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-5', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet"></a><div id="Vyatta.set_interfaces_ethernet-def"><a name="L33"></a><tt class="py-lineno"> 33</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet">set_interfaces_ethernet</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet-expanded"><a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['eth0', 'eth1']'''</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt id="link-6" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-6', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-7', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-8', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-9" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-9', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-10" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-10', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_loopback"></a><div id="Vyatta.show_interfaces_loopback-def"><a name="L43"></a><tt class="py-lineno"> 43</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_loopback-toggle" onclick="return toggle('Vyatta.show_interfaces_loopback');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_loopback">show_interfaces_loopback</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_loopback-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_loopback-expanded"><a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['lo']'''</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt id="link-11" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-11', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-12', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-13', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces loopback "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-14" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-14', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-15" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-15', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet"></a><div id="Vyatta.show_interfaces_ethernet-def"><a name="L53"></a><tt class="py-lineno"> 53</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet">show_interfaces_ethernet</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet-expanded"><a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['eth0', 'eth1']'''</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt id="link-16" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-16', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-17', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-18', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-19" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-19', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-20" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-20', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_loopback_lo"></a><div id="Vyatta.show_interfaces_loopback_lo-def"><a name="L63"></a><tt class="py-lineno"> 63</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_loopback_lo-toggle" onclick="return toggle('Vyatta.show_interfaces_loopback_lo');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_loopback_lo">show_interfaces_loopback_lo</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_loopback_lo-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_loopback_lo-expanded"><a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt id="link-21" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-21', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-22', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-23', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces loopback lo "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-24" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-24', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-25" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-25', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0"></a><div id="Vyatta.set_interfaces_ethernet_eth0-def"><a name="L73"></a><tt class="py-lineno"> 73</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0">set_interfaces_ethernet_eth0</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0-expanded"><a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['address', 'bond-group', 'bridge-group', 'description', 'dhcpv6-options', 'DHCPv6', 'disable', 'disable-flow-control', 'Disable', 'disable-link-detect', 'Ignore', 'duplex', 'firewall', 'hw-id', 'ip', 'ipv6', 'mac', 'mirror', 'mtu', 'policy', 'pppoe']'''</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt id="link-26" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-26', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-27', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-28', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-29" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-29', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-30" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-30', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth1"></a><div id="Vyatta.show_interfaces_ethernet_eth1-def"><a name="L83"></a><tt class="py-lineno"> 83</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth1-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1">show_interfaces_ethernet_eth1</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth1-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth1-expanded"><a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['address', 'duplex', 'hw-id', 'smp_affinity', 'speed']'''</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt id="link-31" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-31', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-32', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-33', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth1 "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-34" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-34', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-35" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-35', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth0"></a><div id="Vyatta.show_interfaces_ethernet_eth0-def"><a name="L93"></a><tt class="py-lineno"> 93</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth0-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth0');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0">show_interfaces_ethernet_eth0</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth0-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth0-expanded"><a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['duplex', 'hw-id', 'smp_affinity', 'speed']'''</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt id="link-36" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-36', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-37', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-38', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth0 "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-39" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-39', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-40" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-40', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_ip"></a><div id="Vyatta.set_interfaces_ethernet_eth0_ip-def"><a name="L103"></a><tt class="py-lineno">103</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_ip-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_ip');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip">set_interfaces_ethernet_eth0_ip</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_ip-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_ip-expanded"><a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['enable-proxy-arp', 'Enable', 'ospf', 'rip']'''</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt id="link-41" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-41', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-42', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-43', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 ip "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-44" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-44', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-45" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-45', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_hwid"></a><div id="Vyatta.set_interfaces_ethernet_eth0_hwid-def"><a name="L113"></a><tt class="py-lineno">113</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_hwid-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_hwid');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_hwid">set_interfaces_ethernet_eth0_hwid</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_hwid-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_hwid-expanded"><a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['Media']'''</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt id="link-46" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-46', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-47', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-48', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 hw-id "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-49" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-49', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-50" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-50', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_DHCPv6"></a><div id="Vyatta.set_interfaces_ethernet_eth0_DHCPv6-def"><a name="L123"></a><tt class="py-lineno">123</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_DHCPv6-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_DHCPv6');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_DHCPv6">set_interfaces_ethernet_eth0_DHCPv6</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_DHCPv6-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_DHCPv6-expanded"><a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt id="link-51" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-51', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-52', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-53', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 DHCPv6 "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-54" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-54', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-55" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-55', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_duplex"></a><div id="Vyatta.set_interfaces_ethernet_eth0_duplex-def"><a name="L133"></a><tt class="py-lineno">133</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_duplex-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_duplex');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_duplex">set_interfaces_ethernet_eth0_duplex</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_duplex-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_duplex-expanded"><a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['auto', 'half', 'full']'''</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt id="link-56" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-56', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-57', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-58', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 duplex "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-59" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-59', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-60" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-60', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth1_hwid"></a><div id="Vyatta.show_interfaces_ethernet_eth1_hwid-def"><a name="L143"></a><tt class="py-lineno">143</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth1_hwid-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth1_hwid');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_hwid">show_interfaces_ethernet_eth1_hwid</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth1_hwid-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth1_hwid-expanded"><a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt id="link-61" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-61', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-62', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-63', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth1 hw-id "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-64" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-64', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-65" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-65', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth0_speed"></a><div id="Vyatta.show_interfaces_ethernet_eth0_speed-def"><a name="L153"></a><tt class="py-lineno">153</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth0_speed-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth0_speed');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_speed">show_interfaces_ethernet_eth0_speed</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth0_speed-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth0_speed-expanded"><a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['auto']'''</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt id="link-66" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-66', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-67', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-68', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth0 speed "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-69" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-69', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-70" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-70', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth1_speed"></a><div id="Vyatta.show_interfaces_ethernet_eth1_speed-def"><a name="L163"></a><tt class="py-lineno">163</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth1_speed-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth1_speed');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_speed">show_interfaces_ethernet_eth1_speed</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth1_speed-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth1_speed-expanded"><a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['auto']'''</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt id="link-71" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-71', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-72', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-73', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth1 speed "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-74" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-74', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-75" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-75', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth0_hwid"></a><div id="Vyatta.show_interfaces_ethernet_eth0_hwid-def"><a name="L173"></a><tt class="py-lineno">173</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth0_hwid-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth0_hwid');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_hwid">show_interfaces_ethernet_eth0_hwid</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth0_hwid-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth0_hwid-expanded"><a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt id="link-76" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-76', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-77', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-78', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth0 hw-id "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-79" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-79', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-80" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-80', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_Ignore"></a><div id="Vyatta.set_interfaces_ethernet_eth0_Ignore-def"><a name="L183"></a><tt class="py-lineno">183</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_Ignore-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_Ignore');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_Ignore">set_interfaces_ethernet_eth0_Ignore</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_Ignore-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_Ignore-expanded"><a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt id="link-81" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-81', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-82', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-83', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 Ignore "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-84" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-84', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-85" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-85', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth1_duplex"></a><div id="Vyatta.show_interfaces_ethernet_eth1_duplex-def"><a name="L193"></a><tt class="py-lineno">193</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth1_duplex-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth1_duplex');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_duplex">show_interfaces_ethernet_eth1_duplex</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth1_duplex-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth1_duplex-expanded"><a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['auto']'''</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt id="link-86" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-86', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-87', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-88', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth1 duplex "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-89" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-89', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-90" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-90', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth0_duplex"></a><div id="Vyatta.show_interfaces_ethernet_eth0_duplex-def"><a name="L203"></a><tt class="py-lineno">203</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth0_duplex-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth0_duplex');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_duplex">show_interfaces_ethernet_eth0_duplex</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth0_duplex-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth0_duplex-expanded"><a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['auto']'''</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt id="link-91" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-91', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-92', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-93', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth0 duplex "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-94" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-94', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-95" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-95', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_ip_ospf"></a><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf-def"><a name="L213"></a><tt class="py-lineno">213</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_ip_ospf');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf">set_interfaces_ethernet_eth0_ip_ospf</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf-expanded"><a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['authentication', 'OSPF', 'bandwidth', 'cost', 'dead-interval', 'Interval', 'hello-interval', 'Interval', 'mtu-ignore', 'network', 'priority', 'retransmit-interval', 'Interval', 'transmit-delay', 'Link']'''</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt id="link-96" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-96', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-97', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-98', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 ip ospf "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-99" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-99', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-100" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-100', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_Disable"></a><div id="Vyatta.set_interfaces_ethernet_eth0_Disable-def"><a name="L223"></a><tt class="py-lineno">223</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_Disable-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_Disable');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_Disable">set_interfaces_ethernet_eth0_Disable</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_Disable-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_Disable-expanded"><a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt id="link-101" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-101', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-102', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-103', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 Disable "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-104" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-104', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-105" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-105', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_disable"></a><div id="Vyatta.set_interfaces_ethernet_eth0_disable-def"><a name="L233"></a><tt class="py-lineno">233</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_disable-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_disable');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_disable">set_interfaces_ethernet_eth0_disable</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_disable-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_disable-expanded"><a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt id="link-106" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-106', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-107', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-108', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 disable "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-109" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-109', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-110" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-110', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_address"></a><div id="Vyatta.set_interfaces_ethernet_eth0_address-def"><a name="L243"></a><tt class="py-lineno">243</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_address-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_address');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_address">set_interfaces_ethernet_eth0_address</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_address-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_address-expanded"><a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt id="link-111" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-111', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-112', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-113', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 address "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-114" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-114', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-115" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-115', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_firewall"></a><div id="Vyatta.set_interfaces_ethernet_eth0_firewall-def"><a name="L253"></a><tt class="py-lineno">253</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_firewall-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_firewall');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall">set_interfaces_ethernet_eth0_firewall</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall-expanded"><a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['in', 'local', 'out']'''</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt id="link-116" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-116', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-117', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-118', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 firewall "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-119" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-119', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-120" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-120', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth1_address"></a><div id="Vyatta.show_interfaces_ethernet_eth1_address-def"><a name="L263"></a><tt class="py-lineno">263</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth1_address-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth1_address');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_address">show_interfaces_ethernet_eth1_address</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth1_address-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth1_address-expanded"><a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['192.168.56.81/24']'''</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt id="link-121" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-121', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-122', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-123', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth1 address "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-124" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-124', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-125" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-125', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_ip_Enable"></a><div id="Vyatta.set_interfaces_ethernet_eth0_ip_Enable-def"><a name="L273"></a><tt class="py-lineno">273</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_ip_Enable-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_ip_Enable');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_Enable">set_interfaces_ethernet_eth0_ip_Enable</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_Enable-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_Enable-expanded"><a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt id="link-126" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-126', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-127', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-128', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 ip Enable "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-129" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-129', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-130" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-130', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_bondgroup"></a><div id="Vyatta.set_interfaces_ethernet_eth0_bondgroup-def"><a name="L283"></a><tt class="py-lineno">283</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_bondgroup-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_bondgroup');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_bondgroup">set_interfaces_ethernet_eth0_bondgroup</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_bondgroup-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_bondgroup-expanded"><a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt id="link-131" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-131', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-132', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-133', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 bond-group "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-134" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-134', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-135" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-135', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_duplex_half"></a><div id="Vyatta.set_interfaces_ethernet_eth0_duplex_half-def"><a name="L293"></a><tt class="py-lineno">293</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_duplex_half-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_duplex_half');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_duplex_half">set_interfaces_ethernet_eth0_duplex_half</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_duplex_half-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_duplex_half-expanded"><a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt id="link-136" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-136', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-137', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-138', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 duplex half "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-139" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-139', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-140" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-140', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_firewall_in"></a><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_in-def"><a name="L303"></a><tt class="py-lineno">303</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_firewall_in-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_firewall_in');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_in">set_interfaces_ethernet_eth0_firewall_in</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_in-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_in-expanded"><a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['ipv6-name', 'name']'''</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt id="link-141" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-141', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-142', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-143', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 firewall in "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-144" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-144', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-145" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-145', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth1_speed_auto"></a><div id="Vyatta.show_interfaces_ethernet_eth1_speed_auto-def"><a name="L313"></a><tt class="py-lineno">313</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth1_speed_auto-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth1_speed_auto');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_speed_auto">show_interfaces_ethernet_eth1_speed_auto</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth1_speed_auto-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth1_speed_auto-expanded"><a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt id="link-146" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-146', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-147', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-148" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-148', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth1 speed auto "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-149" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-149', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-150" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-150', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_description"></a><div id="Vyatta.set_interfaces_ethernet_eth0_description-def"><a name="L323"></a><tt class="py-lineno">323</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_description-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_description');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_description">set_interfaces_ethernet_eth0_description</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_description-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_description-expanded"><a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt id="link-151" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-151', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-152', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-153', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 description "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-154" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-154', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-155" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-155', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth0_speed_auto"></a><div id="Vyatta.show_interfaces_ethernet_eth0_speed_auto-def"><a name="L333"></a><tt class="py-lineno">333</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth0_speed_auto-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth0_speed_auto');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_speed_auto">show_interfaces_ethernet_eth0_speed_auto</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth0_speed_auto-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth0_speed_auto-expanded"><a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> <tt id="link-156" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-156', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-157', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-158" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-158', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth0 speed auto "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-159" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-159', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-160" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-160', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_hwid_Media"></a><div id="Vyatta.set_interfaces_ethernet_eth0_hwid_Media-def"><a name="L343"></a><tt class="py-lineno">343</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_hwid_Media-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_hwid_Media');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_hwid_Media">set_interfaces_ethernet_eth0_hwid_Media</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_hwid_Media-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_hwid_Media-expanded"><a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt id="link-161" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-161', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-162', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-163" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-163', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 hw-id Media "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-164" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-164', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-165" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-165', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_duplex_auto"></a><div id="Vyatta.set_interfaces_ethernet_eth0_duplex_auto-def"><a name="L353"></a><tt class="py-lineno">353</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_duplex_auto-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_duplex_auto');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_duplex_auto">set_interfaces_ethernet_eth0_duplex_auto</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_duplex_auto-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_duplex_auto-expanded"><a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> <tt id="link-166" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-166', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-167', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-168', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 duplex auto "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-169" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-169', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-170" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-170', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_duplex_full"></a><div id="Vyatta.set_interfaces_ethernet_eth0_duplex_full-def"><a name="L363"></a><tt class="py-lineno">363</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_duplex_full-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_duplex_full');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_duplex_full">set_interfaces_ethernet_eth0_duplex_full</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_duplex_full-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_duplex_full-expanded"><a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> <tt id="link-171" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-171', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-172" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-172', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-173', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 duplex full "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-174" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-174', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-175" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-175', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth0_duplex_auto"></a><div id="Vyatta.show_interfaces_ethernet_eth0_duplex_auto-def"><a name="L373"></a><tt class="py-lineno">373</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth0_duplex_auto-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth0_duplex_auto');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_duplex_auto">show_interfaces_ethernet_eth0_duplex_auto</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth0_duplex_auto-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth0_duplex_auto-expanded"><a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"> <tt id="link-176" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-176', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-177" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-177', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-178" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-178', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth0 duplex auto "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-179" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-179', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-180" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-180', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_OSPF"></a><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_OSPF-def"><a name="L383"></a><tt class="py-lineno">383</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_OSPF-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_ip_ospf_OSPF');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_OSPF">set_interfaces_ethernet_eth0_ip_ospf_OSPF</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_OSPF-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_OSPF-expanded"><a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt id="link-181" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-181', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-182" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-182', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-183" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-183', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 ip ospf OSPF "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-184" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-184', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-185" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-185', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_firewall_out"></a><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_out-def"><a name="L393"></a><tt class="py-lineno">393</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_firewall_out-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_firewall_out');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_out">set_interfaces_ethernet_eth0_firewall_out</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_out-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_out-expanded"><a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['ipv6-name', 'name']'''</tt> </tt>
-<a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L396"></a><tt class="py-lineno">396</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"> <tt id="link-186" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-186', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-187" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-187', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-188" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-188', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 firewall out "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-189" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-189', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-190" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-190', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_bridgegroup"></a><div id="Vyatta.set_interfaces_ethernet_eth0_bridgegroup-def"><a name="L403"></a><tt class="py-lineno">403</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_bridgegroup-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_bridgegroup');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_bridgegroup">set_interfaces_ethernet_eth0_bridgegroup</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_bridgegroup-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_bridgegroup-expanded"><a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['bridge', 'cost', 'priority']'''</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"> <tt id="link-191" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-191', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-192" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-192', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L409"></a><tt class="py-lineno">409</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-193" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-193', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 bridge-group "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-194" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-194', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-195" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-195', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth1_duplex_auto"></a><div id="Vyatta.show_interfaces_ethernet_eth1_duplex_auto-def"><a name="L413"></a><tt class="py-lineno">413</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth1_duplex_auto-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth1_duplex_auto');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_duplex_auto">show_interfaces_ethernet_eth1_duplex_auto</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth1_duplex_auto-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth1_duplex_auto-expanded"><a name="L414"></a><tt class="py-lineno">414</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"> <tt id="link-196" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-196', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-197" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-197', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-198" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-198', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth1 duplex auto "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-199" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-199', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-200" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-200', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_cost"></a><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_cost-def"><a name="L423"></a><tt class="py-lineno">423</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_cost-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_ip_ospf_cost');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_cost">set_interfaces_ethernet_eth0_ip_ospf_cost</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_cost-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_cost-expanded"><a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"> <tt id="link-201" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-201', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-202" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-202', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-203" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-203', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 ip ospf cost "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-204" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-204', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-205" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-205', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L431"></a><tt class="py-lineno">431</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth0_smp_affinity"></a><div id="Vyatta.show_interfaces_ethernet_eth0_smp_affinity-def"><a name="L433"></a><tt class="py-lineno">433</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth0_smp_affinity-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth0_smp_affinity');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_smp_affinity">show_interfaces_ethernet_eth0_smp_affinity</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth0_smp_affinity-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth0_smp_affinity-expanded"><a name="L434"></a><tt class="py-lineno">434</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['auto']'''</tt> </tt>
-<a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L436"></a><tt class="py-lineno">436</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L437"></a><tt class="py-lineno">437</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"> <tt id="link-206" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-206', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-207" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-207', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L439"></a><tt class="py-lineno">439</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L440"></a><tt class="py-lineno">440</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-208" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-208', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth0 smp_affinity "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-209" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-209', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-210" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-210', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth1_smp_affinity"></a><div id="Vyatta.show_interfaces_ethernet_eth1_smp_affinity-def"><a name="L443"></a><tt class="py-lineno">443</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth1_smp_affinity-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth1_smp_affinity');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_smp_affinity">show_interfaces_ethernet_eth1_smp_affinity</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth1_smp_affinity-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth1_smp_affinity-expanded"><a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['auto']'''</tt> </tt>
-<a name="L445"></a><tt class="py-lineno">445</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L446"></a><tt class="py-lineno">446</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L447"></a><tt class="py-lineno">447</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L448"></a><tt class="py-lineno">448</tt> <tt class="py-line"> <tt id="link-211" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-211', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-212" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-212', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L449"></a><tt class="py-lineno">449</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L450"></a><tt class="py-lineno">450</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-213" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-213', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth1 smp_affinity "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-214" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-214', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-215" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-215', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L451"></a><tt class="py-lineno">451</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L452"></a><tt class="py-lineno">452</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_firewall_local"></a><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_local-def"><a name="L453"></a><tt class="py-lineno">453</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_firewall_local-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_firewall_local');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_local">set_interfaces_ethernet_eth0_firewall_local</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_local-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_local-expanded"><a name="L454"></a><tt class="py-lineno">454</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['ipv6-name', 'name']'''</tt> </tt>
-<a name="L455"></a><tt class="py-lineno">455</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L456"></a><tt class="py-lineno">456</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L457"></a><tt class="py-lineno">457</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L458"></a><tt class="py-lineno">458</tt> <tt class="py-line"> <tt id="link-216" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-216', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-217" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-217', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L459"></a><tt class="py-lineno">459</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L460"></a><tt class="py-lineno">460</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-218" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-218', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 firewall local "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-219" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-219', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-220" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-220', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L461"></a><tt class="py-lineno">461</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L462"></a><tt class="py-lineno">462</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options"></a><div id="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options-def"><a name="L463"></a><tt class="py-lineno">463</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_dhcpv6options');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_dhcpv6options">set_interfaces_ethernet_eth0_dhcpv6options</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options-expanded"><a name="L464"></a><tt class="py-lineno">464</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['parameters-only', 'Acquire', 'temporary']'''</tt> </tt>
-<a name="L465"></a><tt class="py-lineno">465</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L466"></a><tt class="py-lineno">466</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L467"></a><tt class="py-lineno">467</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L468"></a><tt class="py-lineno">468</tt> <tt class="py-line"> <tt id="link-221" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-221', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-222" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-222', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L469"></a><tt class="py-lineno">469</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L470"></a><tt class="py-lineno">470</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-223" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-223', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 dhcpv6-options "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-224" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-224', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-225" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-225', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L471"></a><tt class="py-lineno">471</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L472"></a><tt class="py-lineno">472</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_firewall_in_name"></a><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_in_name-def"><a name="L473"></a><tt class="py-lineno">473</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_firewall_in_name-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_firewall_in_name');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_in_name">set_interfaces_ethernet_eth0_firewall_in_name</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_in_name-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_in_name-expanded"><a name="L474"></a><tt class="py-lineno">474</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L475"></a><tt class="py-lineno">475</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L476"></a><tt class="py-lineno">476</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L477"></a><tt class="py-lineno">477</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L478"></a><tt class="py-lineno">478</tt> <tt class="py-line"> <tt id="link-226" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-226', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-227" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-227', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L479"></a><tt class="py-lineno">479</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L480"></a><tt class="py-lineno">480</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-228" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-228', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 firewall in name "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-229" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-229', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-230" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-230', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L481"></a><tt class="py-lineno">481</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L482"></a><tt class="py-lineno">482</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_bridgegroup_cost"></a><div id="Vyatta.set_interfaces_ethernet_eth0_bridgegroup_cost-def"><a name="L483"></a><tt class="py-lineno">483</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_bridgegroup_cost-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_bridgegroup_cost');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_bridgegroup_cost">set_interfaces_ethernet_eth0_bridgegroup_cost</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_bridgegroup_cost-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_bridgegroup_cost-expanded"><a name="L484"></a><tt class="py-lineno">484</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L485"></a><tt class="py-lineno">485</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L486"></a><tt class="py-lineno">486</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L487"></a><tt class="py-lineno">487</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L488"></a><tt class="py-lineno">488</tt> <tt class="py-line"> <tt id="link-231" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-231', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-232" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-232', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L489"></a><tt class="py-lineno">489</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L490"></a><tt class="py-lineno">490</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-233" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-233', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 bridge-group cost "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-234" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-234', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-235" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-235', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L491"></a><tt class="py-lineno">491</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L492"></a><tt class="py-lineno">492</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_firewall_out_name"></a><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_out_name-def"><a name="L493"></a><tt class="py-lineno">493</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_firewall_out_name-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_firewall_out_name');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_out_name">set_interfaces_ethernet_eth0_firewall_out_name</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_out_name-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_out_name-expanded"><a name="L494"></a><tt class="py-lineno">494</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L495"></a><tt class="py-lineno">495</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L496"></a><tt class="py-lineno">496</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L497"></a><tt class="py-lineno">497</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L498"></a><tt class="py-lineno">498</tt> <tt class="py-line"> <tt id="link-236" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-236', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-237" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-237', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L499"></a><tt class="py-lineno">499</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L500"></a><tt class="py-lineno">500</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-238" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-238', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 firewall out name "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-239" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-239', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-240" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-240', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L501"></a><tt class="py-lineno">501</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L502"></a><tt class="py-lineno">502</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_bandwidth"></a><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_bandwidth-def"><a name="L503"></a><tt class="py-lineno">503</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_bandwidth-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_ip_ospf_bandwidth');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_bandwidth">set_interfaces_ethernet_eth0_ip_ospf_bandwidth</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_bandwidth-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_bandwidth-expanded"><a name="L504"></a><tt class="py-lineno">504</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L505"></a><tt class="py-lineno">505</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L506"></a><tt class="py-lineno">506</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L507"></a><tt class="py-lineno">507</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L508"></a><tt class="py-lineno">508</tt> <tt class="py-line"> <tt id="link-241" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-241', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-242" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-242', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L509"></a><tt class="py-lineno">509</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L510"></a><tt class="py-lineno">510</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-243" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-243', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 ip ospf bandwidth "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-244" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-244', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-245" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-245', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L511"></a><tt class="py-lineno">511</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L512"></a><tt class="py-lineno">512</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth0_smp_affinity_auto"></a><div id="Vyatta.show_interfaces_ethernet_eth0_smp_affinity_auto-def"><a name="L513"></a><tt class="py-lineno">513</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth0_smp_affinity_auto-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth0_smp_affinity_auto');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_smp_affinity_auto">show_interfaces_ethernet_eth0_smp_affinity_auto</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth0_smp_affinity_auto-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth0_smp_affinity_auto-expanded"><a name="L514"></a><tt class="py-lineno">514</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L515"></a><tt class="py-lineno">515</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L516"></a><tt class="py-lineno">516</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L517"></a><tt class="py-lineno">517</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L518"></a><tt class="py-lineno">518</tt> <tt class="py-line"> <tt id="link-246" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-246', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-247" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-247', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L519"></a><tt class="py-lineno">519</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L520"></a><tt class="py-lineno">520</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-248" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-248', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth0 smp_affinity auto "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-249" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-249', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-250" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-250', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L521"></a><tt class="py-lineno">521</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L522"></a><tt class="py-lineno">522</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.show_interfaces_ethernet_eth1_smp_affinity_auto"></a><div id="Vyatta.show_interfaces_ethernet_eth1_smp_affinity_auto-def"><a name="L523"></a><tt class="py-lineno">523</tt> <a class="py-toggle" href="#" id="Vyatta.show_interfaces_ethernet_eth1_smp_affinity_auto-toggle" onclick="return toggle('Vyatta.show_interfaces_ethernet_eth1_smp_affinity_auto');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_smp_affinity_auto">show_interfaces_ethernet_eth1_smp_affinity_auto</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.show_interfaces_ethernet_eth1_smp_affinity_auto-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.show_interfaces_ethernet_eth1_smp_affinity_auto-expanded"><a name="L524"></a><tt class="py-lineno">524</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L525"></a><tt class="py-lineno">525</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L526"></a><tt class="py-lineno">526</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L527"></a><tt class="py-lineno">527</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L528"></a><tt class="py-lineno">528</tt> <tt class="py-line"> <tt id="link-251" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-251', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-252" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-252', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L529"></a><tt class="py-lineno">529</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L530"></a><tt class="py-lineno">530</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-253" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-253', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"show interfaces ethernet eth1 smp_affinity auto "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-254" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-254', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-255" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-255', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L531"></a><tt class="py-lineno">531</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L532"></a><tt class="py-lineno">532</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_ip_enableproxyarp"></a><div id="Vyatta.set_interfaces_ethernet_eth0_ip_enableproxyarp-def"><a name="L533"></a><tt class="py-lineno">533</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_ip_enableproxyarp-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_ip_enableproxyarp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_enableproxyarp">set_interfaces_ethernet_eth0_ip_enableproxyarp</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_enableproxyarp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_enableproxyarp-expanded"><a name="L534"></a><tt class="py-lineno">534</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L535"></a><tt class="py-lineno">535</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L536"></a><tt class="py-lineno">536</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L537"></a><tt class="py-lineno">537</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L538"></a><tt class="py-lineno">538</tt> <tt class="py-line"> <tt id="link-256" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-256', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-257" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-257', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L539"></a><tt class="py-lineno">539</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L540"></a><tt class="py-lineno">540</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-258" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-258', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 ip enable-proxy-arp "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-259" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-259', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-260" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-260', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L541"></a><tt class="py-lineno">541</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L542"></a><tt class="py-lineno">542</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_disablelinkdetect"></a><div id="Vyatta.set_interfaces_ethernet_eth0_disablelinkdetect-def"><a name="L543"></a><tt class="py-lineno">543</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_disablelinkdetect-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_disablelinkdetect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_disablelinkdetect">set_interfaces_ethernet_eth0_disablelinkdetect</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_disablelinkdetect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_disablelinkdetect-expanded"><a name="L544"></a><tt class="py-lineno">544</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L545"></a><tt class="py-lineno">545</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L546"></a><tt class="py-lineno">546</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L547"></a><tt class="py-lineno">547</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L548"></a><tt class="py-lineno">548</tt> <tt class="py-line"> <tt id="link-261" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-261', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-262" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-262', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L549"></a><tt class="py-lineno">549</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L550"></a><tt class="py-lineno">550</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-263" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-263', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 disable-link-detect "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-264" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-264', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-265" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-265', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L551"></a><tt class="py-lineno">551</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L552"></a><tt class="py-lineno">552</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_firewall_local_name"></a><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_local_name-def"><a name="L553"></a><tt class="py-lineno">553</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_firewall_local_name-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_firewall_local_name');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_local_name">set_interfaces_ethernet_eth0_firewall_local_name</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_local_name-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_local_name-expanded"><a name="L554"></a><tt class="py-lineno">554</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L555"></a><tt class="py-lineno">555</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L556"></a><tt class="py-lineno">556</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L557"></a><tt class="py-lineno">557</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L558"></a><tt class="py-lineno">558</tt> <tt class="py-line"> <tt id="link-266" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-266', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-267" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-267', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L559"></a><tt class="py-lineno">559</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L560"></a><tt class="py-lineno">560</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-268" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-268', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 firewall local name "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-269" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-269', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-270" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-270', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L561"></a><tt class="py-lineno">561</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L562"></a><tt class="py-lineno">562</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_bridgegroup_bridge"></a><div id="Vyatta.set_interfaces_ethernet_eth0_bridgegroup_bridge-def"><a name="L563"></a><tt class="py-lineno">563</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_bridgegroup_bridge-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_bridgegroup_bridge');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_bridgegroup_bridge">set_interfaces_ethernet_eth0_bridgegroup_bridge</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_bridgegroup_bridge-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_bridgegroup_bridge-expanded"><a name="L564"></a><tt class="py-lineno">564</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L565"></a><tt class="py-lineno">565</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L566"></a><tt class="py-lineno">566</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L567"></a><tt class="py-lineno">567</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L568"></a><tt class="py-lineno">568</tt> <tt class="py-line"> <tt id="link-271" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-271', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-272" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-272', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L569"></a><tt class="py-lineno">569</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L570"></a><tt class="py-lineno">570</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-273" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-273', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 bridge-group bridge "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-274" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-274', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-275" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-275', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L571"></a><tt class="py-lineno">571</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L572"></a><tt class="py-lineno">572</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_disableflowcontrol"></a><div id="Vyatta.set_interfaces_ethernet_eth0_disableflowcontrol-def"><a name="L573"></a><tt class="py-lineno">573</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_disableflowcontrol-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_disableflowcontrol');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_disableflowcontrol">set_interfaces_ethernet_eth0_disableflowcontrol</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_disableflowcontrol-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_disableflowcontrol-expanded"><a name="L574"></a><tt class="py-lineno">574</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L575"></a><tt class="py-lineno">575</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L576"></a><tt class="py-lineno">576</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L577"></a><tt class="py-lineno">577</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L578"></a><tt class="py-lineno">578</tt> <tt class="py-line"> <tt id="link-276" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-276', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-277" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-277', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L579"></a><tt class="py-lineno">579</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L580"></a><tt class="py-lineno">580</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-278" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-278', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 disable-flow-control "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-279" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-279', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-280" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-280', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L581"></a><tt class="py-lineno">581</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L582"></a><tt class="py-lineno">582</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_bridgegroup_priority"></a><div id="Vyatta.set_interfaces_ethernet_eth0_bridgegroup_priority-def"><a name="L583"></a><tt class="py-lineno">583</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_bridgegroup_priority-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_bridgegroup_priority');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_bridgegroup_priority">set_interfaces_ethernet_eth0_bridgegroup_priority</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_bridgegroup_priority-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_bridgegroup_priority-expanded"><a name="L584"></a><tt class="py-lineno">584</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L585"></a><tt class="py-lineno">585</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L586"></a><tt class="py-lineno">586</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L587"></a><tt class="py-lineno">587</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L588"></a><tt class="py-lineno">588</tt> <tt class="py-line"> <tt id="link-281" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-281', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-282" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-282', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L589"></a><tt class="py-lineno">589</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L590"></a><tt class="py-lineno">590</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-283" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-283', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 bridge-group priority "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-284" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-284', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-285" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-285', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L591"></a><tt class="py-lineno">591</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L592"></a><tt class="py-lineno">592</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_firewall_in_ipv6name"></a><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_in_ipv6name-def"><a name="L593"></a><tt class="py-lineno">593</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_firewall_in_ipv6name-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_firewall_in_ipv6name');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_in_ipv6name">set_interfaces_ethernet_eth0_firewall_in_ipv6name</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_in_ipv6name-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_in_ipv6name-expanded"><a name="L594"></a><tt class="py-lineno">594</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L595"></a><tt class="py-lineno">595</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L596"></a><tt class="py-lineno">596</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L597"></a><tt class="py-lineno">597</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L598"></a><tt class="py-lineno">598</tt> <tt class="py-line"> <tt id="link-286" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-286', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-287" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-287', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L599"></a><tt class="py-lineno">599</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L600"></a><tt class="py-lineno">600</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-288" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-288', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 firewall in ipv6-name "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-289" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-289', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-290" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-290', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L601"></a><tt class="py-lineno">601</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L602"></a><tt class="py-lineno">602</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_Acquire"></a><div id="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_Acquire-def"><a name="L603"></a><tt class="py-lineno">603</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_Acquire-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_Acquire');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_dhcpv6options_Acquire">set_interfaces_ethernet_eth0_dhcpv6options_Acquire</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_Acquire-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_Acquire-expanded"><a name="L604"></a><tt class="py-lineno">604</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L605"></a><tt class="py-lineno">605</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L606"></a><tt class="py-lineno">606</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L607"></a><tt class="py-lineno">607</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L608"></a><tt class="py-lineno">608</tt> <tt class="py-line"> <tt id="link-291" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-291', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-292" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-292', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L609"></a><tt class="py-lineno">609</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L610"></a><tt class="py-lineno">610</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-293" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-293', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 dhcpv6-options Acquire "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-294" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-294', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-295" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-295', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L611"></a><tt class="py-lineno">611</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L612"></a><tt class="py-lineno">612</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_firewall_out_ipv6name"></a><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_out_ipv6name-def"><a name="L613"></a><tt class="py-lineno">613</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_firewall_out_ipv6name-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_firewall_out_ipv6name');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_out_ipv6name">set_interfaces_ethernet_eth0_firewall_out_ipv6name</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_out_ipv6name-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_out_ipv6name-expanded"><a name="L614"></a><tt class="py-lineno">614</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L615"></a><tt class="py-lineno">615</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L616"></a><tt class="py-lineno">616</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L617"></a><tt class="py-lineno">617</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L618"></a><tt class="py-lineno">618</tt> <tt class="py-line"> <tt id="link-296" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-296', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-297" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-297', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L619"></a><tt class="py-lineno">619</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L620"></a><tt class="py-lineno">620</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-298" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-298', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 firewall out ipv6-name "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-299" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-299', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-300" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-300', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L621"></a><tt class="py-lineno">621</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L622"></a><tt class="py-lineno">622</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication"></a><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication-def"><a name="L623"></a><tt class="py-lineno">623</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_authentication">set_interfaces_ethernet_eth0_ip_ospf_authentication</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication-expanded"><a name="L624"></a><tt class="py-lineno">624</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['md5', 'plaintext-password', 'Plain']'''</tt> </tt>
-<a name="L625"></a><tt class="py-lineno">625</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L626"></a><tt class="py-lineno">626</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L627"></a><tt class="py-lineno">627</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L628"></a><tt class="py-lineno">628</tt> <tt class="py-line"> <tt id="link-301" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-301', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-302" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-302', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L629"></a><tt class="py-lineno">629</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L630"></a><tt class="py-lineno">630</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-303" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-303', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 ip ospf authentication "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-304" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-304', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-305" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-305', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L631"></a><tt class="py-lineno">631</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L632"></a><tt class="py-lineno">632</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_firewall_local_ipv6name"></a><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_local_ipv6name-def"><a name="L633"></a><tt class="py-lineno">633</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_firewall_local_ipv6name-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_firewall_local_ipv6name');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_local_ipv6name">set_interfaces_ethernet_eth0_firewall_local_ipv6name</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_local_ipv6name-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_firewall_local_ipv6name-expanded"><a name="L634"></a><tt class="py-lineno">634</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L635"></a><tt class="py-lineno">635</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L636"></a><tt class="py-lineno">636</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L637"></a><tt class="py-lineno">637</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L638"></a><tt class="py-lineno">638</tt> <tt class="py-line"> <tt id="link-306" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-306', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-307" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-307', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L639"></a><tt class="py-lineno">639</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L640"></a><tt class="py-lineno">640</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-308" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-308', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 firewall local ipv6-name "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-309" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-309', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-310" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-310', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L641"></a><tt class="py-lineno">641</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L642"></a><tt class="py-lineno">642</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_temporary"></a><div id="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_temporary-def"><a name="L643"></a><tt class="py-lineno">643</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_temporary-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_temporary');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_dhcpv6options_temporary">set_interfaces_ethernet_eth0_dhcpv6options_temporary</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_temporary-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_temporary-expanded"><a name="L644"></a><tt class="py-lineno">644</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L645"></a><tt class="py-lineno">645</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L646"></a><tt class="py-lineno">646</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L647"></a><tt class="py-lineno">647</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L648"></a><tt class="py-lineno">648</tt> <tt class="py-line"> <tt id="link-311" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-311', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-312" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-312', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L649"></a><tt class="py-lineno">649</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L650"></a><tt class="py-lineno">650</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-313" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-313', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 dhcpv6-options temporary "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-314" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-314', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-315" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-315', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L651"></a><tt class="py-lineno">651</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L652"></a><tt class="py-lineno">652</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_md5"></a><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_md5-def"><a name="L653"></a><tt class="py-lineno">653</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_md5-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_md5');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_authentication_md5">set_interfaces_ethernet_eth0_ip_ospf_authentication_md5</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_md5-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_md5-expanded"><a name="L654"></a><tt class="py-lineno">654</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :['key-id']'''</tt> </tt>
-<a name="L655"></a><tt class="py-lineno">655</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L656"></a><tt class="py-lineno">656</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L657"></a><tt class="py-lineno">657</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L658"></a><tt class="py-lineno">658</tt> <tt class="py-line"> <tt id="link-316" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-316', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-317" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-317', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L659"></a><tt class="py-lineno">659</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L660"></a><tt class="py-lineno">660</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-318" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-318', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 ip ospf authentication md5 "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-319" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-319', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-320" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-320', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L661"></a><tt class="py-lineno">661</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L662"></a><tt class="py-lineno">662</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_Plain"></a><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_Plain-def"><a name="L663"></a><tt class="py-lineno">663</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_Plain-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_Plain');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_authentication_Plain">set_interfaces_ethernet_eth0_ip_ospf_authentication_Plain</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_Plain-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_Plain-expanded"><a name="L664"></a><tt class="py-lineno">664</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L665"></a><tt class="py-lineno">665</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L666"></a><tt class="py-lineno">666</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L667"></a><tt class="py-lineno">667</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L668"></a><tt class="py-lineno">668</tt> <tt class="py-line"> <tt id="link-321" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-321', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-322" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-322', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L669"></a><tt class="py-lineno">669</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L670"></a><tt class="py-lineno">670</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-323" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-323', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 ip ospf authentication Plain "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-324" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-324', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-325" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-325', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L671"></a><tt class="py-lineno">671</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L672"></a><tt class="py-lineno">672</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_parametersonly"></a><div id="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_parametersonly-def"><a name="L673"></a><tt class="py-lineno">673</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_parametersonly-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_parametersonly');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_dhcpv6options_parametersonly">set_interfaces_ethernet_eth0_dhcpv6options_parametersonly</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_parametersonly-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_parametersonly-expanded"><a name="L674"></a><tt class="py-lineno">674</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L675"></a><tt class="py-lineno">675</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L676"></a><tt class="py-lineno">676</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L677"></a><tt class="py-lineno">677</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L678"></a><tt class="py-lineno">678</tt> <tt class="py-line"> <tt id="link-326" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-326', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-327" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-327', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L679"></a><tt class="py-lineno">679</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L680"></a><tt class="py-lineno">680</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-328" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-328', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 dhcpv6-options parameters-only "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-329" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-329', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-330" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-330', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L681"></a><tt class="py-lineno">681</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L682"></a><tt class="py-lineno">682</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_md5_keyid"></a><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_md5_keyid-def"><a name="L683"></a><tt class="py-lineno">683</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_md5_keyid-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_md5_keyid');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_authentication_md5_keyid">set_interfaces_ethernet_eth0_ip_ospf_authentication_md5_keyid</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_md5_keyid-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_md5_keyid-expanded"><a name="L684"></a><tt class="py-lineno">684</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L685"></a><tt class="py-lineno">685</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L686"></a><tt class="py-lineno">686</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L687"></a><tt class="py-lineno">687</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L688"></a><tt class="py-lineno">688</tt> <tt class="py-line"> <tt id="link-331" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-331', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-332" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-332', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L689"></a><tt class="py-lineno">689</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L690"></a><tt class="py-lineno">690</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-333" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-333', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 ip ospf authentication md5 key-id "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-334" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-334', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-335" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-335', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L691"></a><tt class="py-lineno">691</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L692"></a><tt class="py-lineno">692</tt> <tt class="py-line"> </tt>
-<a name="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_plaintextpassword"></a><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_plaintextpassword-def"><a name="L693"></a><tt class="py-lineno">693</tt> <a class="py-toggle" href="#" id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_plaintextpassword-toggle" onclick="return toggle('Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_plaintextpassword');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_authentication_plaintextpassword">set_interfaces_ethernet_eth0_ip_ospf_authentication_plaintextpassword</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_plaintextpassword-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_plaintextpassword-expanded"><a name="L694"></a><tt class="py-lineno">694</tt> <tt class="py-line"> <tt class="py-docstring">'''Possible Options :[]'''</tt> </tt>
-<a name="L695"></a><tt class="py-lineno">695</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L696"></a><tt class="py-lineno">696</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L697"></a><tt class="py-lineno">697</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt><tt class="py-string">' '</tt> </tt>
-<a name="L698"></a><tt class="py-lineno">698</tt> <tt class="py-line"> <tt id="link-336" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-336', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'prompt'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-337" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-337', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L699"></a><tt class="py-lineno">699</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt><tt class="py-string">'timeout'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L700"></a><tt class="py-lineno">700</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-338" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-338', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt> <tt class="py-string">"set interfaces ethernet eth0 ip ospf authentication plaintext-password "</tt><tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-339" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-339', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt id="link-340" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-340', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L701"></a><tt class="py-lineno">701</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div></div><a name="L702"></a><tt class="py-lineno">702</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.bin.vyatta.Vyatta-class.html b/TestON/Documentation/TestON_Document/TestON.bin.vyatta.Vyatta-class.html
deleted file mode 100644
index ec6d673..0000000
--- a/TestON/Documentation/TestON_Document/TestON.bin.vyatta.Vyatta-class.html
+++ /dev/null
@@ -1,1450 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.bin.vyatta.Vyatta</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.bin-module.html">Package bin</a> ::
- <a href="TestON.bin.vyatta-module.html">Module vyatta</a> ::
- Class Vyatta
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.bin.vyatta.Vyatta-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Vyatta</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces"></a><span class="summary-sig-name">show_interfaces</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['ethernet', 'loopback']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet"></a><span class="summary-sig-name">set_interfaces_ethernet</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['eth0', 'eth1']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_loopback"></a><span class="summary-sig-name">show_interfaces_loopback</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['lo']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_loopback">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet"></a><span class="summary-sig-name">show_interfaces_ethernet</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['eth0', 'eth1']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_loopback_lo"></a><span class="summary-sig-name">show_interfaces_loopback_lo</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_loopback_lo">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['address', 'bond-group', 'bridge-group',
- 'description', 'dhcpv6-options', 'DHCPv6', 'disable',
- 'disable-flow-control', 'Disable', 'disable-link-detect', 'Ignore',
- 'duplex', 'firewall', 'hw-id', 'ip', 'ipv6', 'mac', 'mirror', 'mtu',
- 'policy', 'pppoe']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth1"></a><span class="summary-sig-name">show_interfaces_ethernet_eth1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['address', 'duplex', 'hw-id', 'smp_affinity',
- 'speed']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth0"></a><span class="summary-sig-name">show_interfaces_ethernet_eth0</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['duplex', 'hw-id', 'smp_affinity', 'speed']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth0">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_ip"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_ip</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['enable-proxy-arp', 'Enable', 'ospf', 'rip']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_ip">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_hwid"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_hwid</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['Media']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_hwid">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_DHCPv6"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_DHCPv6</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_DHCPv6">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_duplex"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_duplex</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['auto', 'half', 'full']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_duplex">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth1_hwid"></a><span class="summary-sig-name">show_interfaces_ethernet_eth1_hwid</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth1_hwid">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth0_speed"></a><span class="summary-sig-name">show_interfaces_ethernet_eth0_speed</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['auto']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth0_speed">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth1_speed"></a><span class="summary-sig-name">show_interfaces_ethernet_eth1_speed</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['auto']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth1_speed">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth0_hwid"></a><span class="summary-sig-name">show_interfaces_ethernet_eth0_hwid</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth0_hwid">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_Ignore"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_Ignore</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_Ignore">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth1_duplex"></a><span class="summary-sig-name">show_interfaces_ethernet_eth1_duplex</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['auto']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth1_duplex">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth0_duplex"></a><span class="summary-sig-name">show_interfaces_ethernet_eth0_duplex</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['auto']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth0_duplex">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_ip_ospf"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_ip_ospf</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['authentication', 'OSPF', 'bandwidth', 'cost',
- 'dead-interval', 'Interval', 'hello-interval', 'Interval',
- 'mtu-ignore', 'network', 'priority', 'retransmit-interval',
- 'Interval', 'transmit-delay', 'Link']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_ip_ospf">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_Disable"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_Disable</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_Disable">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_disable"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_disable</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_disable">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_address"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_address</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_address">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_firewall"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_firewall</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['in', 'local', 'out']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_firewall">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth1_address"></a><span class="summary-sig-name">show_interfaces_ethernet_eth1_address</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['192.168.56.81/24']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth1_address">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_ip_Enable"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_ip_Enable</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_ip_Enable">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_bondgroup"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_bondgroup</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_bondgroup">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_duplex_half"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_duplex_half</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_duplex_half">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_firewall_in"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_firewall_in</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['ipv6-name', 'name']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_firewall_in">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth1_speed_auto"></a><span class="summary-sig-name">show_interfaces_ethernet_eth1_speed_auto</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth1_speed_auto">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_description"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_description</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_description">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth0_speed_auto"></a><span class="summary-sig-name">show_interfaces_ethernet_eth0_speed_auto</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth0_speed_auto">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_hwid_Media"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_hwid_Media</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_hwid_Media">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_duplex_auto"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_duplex_auto</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_duplex_auto">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_duplex_full"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_duplex_full</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_duplex_full">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth0_duplex_auto"></a><span class="summary-sig-name">show_interfaces_ethernet_eth0_duplex_auto</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth0_duplex_auto">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_ip_ospf_OSPF"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_ip_ospf_OSPF</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_ip_ospf_OSPF">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_firewall_out"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_firewall_out</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['ipv6-name', 'name']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_firewall_out">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_bridgegroup"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_bridgegroup</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['bridge', 'cost', 'priority']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_bridgegroup">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth1_duplex_auto"></a><span class="summary-sig-name">show_interfaces_ethernet_eth1_duplex_auto</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth1_duplex_auto">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_ip_ospf_cost"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_ip_ospf_cost</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_ip_ospf_cost">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth0_smp_affinity"></a><span class="summary-sig-name">show_interfaces_ethernet_eth0_smp_affinity</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['auto']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth0_smp_affinity">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth1_smp_affinity"></a><span class="summary-sig-name">show_interfaces_ethernet_eth1_smp_affinity</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['auto']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth1_smp_affinity">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_firewall_local"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_firewall_local</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['ipv6-name', 'name']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_firewall_local">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_dhcpv6options"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_dhcpv6options</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['parameters-only', 'Acquire', 'temporary']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_dhcpv6options">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_firewall_in_name"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_firewall_in_name</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_firewall_in_name">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_bridgegroup_cost"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_bridgegroup_cost</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_bridgegroup_cost">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_firewall_out_name"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_firewall_out_name</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_firewall_out_name">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_ip_ospf_bandwidth"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_ip_ospf_bandwidth</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_ip_ospf_bandwidth">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth0_smp_affinity_auto"></a><span class="summary-sig-name">show_interfaces_ethernet_eth0_smp_affinity_auto</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth0_smp_affinity_auto">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces_ethernet_eth1_smp_affinity_auto"></a><span class="summary-sig-name">show_interfaces_ethernet_eth1_smp_affinity_auto</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.show_interfaces_ethernet_eth1_smp_affinity_auto">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_ip_enableproxyarp"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_ip_enableproxyarp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_ip_enableproxyarp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_disablelinkdetect"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_disablelinkdetect</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_disablelinkdetect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_firewall_local_name"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_firewall_local_name</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_firewall_local_name">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_bridgegroup_bridge"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_bridgegroup_bridge</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_bridgegroup_bridge">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_disableflowcontrol"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_disableflowcontrol</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_disableflowcontrol">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_bridgegroup_priority"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_bridgegroup_priority</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_bridgegroup_priority">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_firewall_in_ipv6name"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_firewall_in_ipv6name</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_firewall_in_ipv6name">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_dhcpv6options_Acquire"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_dhcpv6options_Acquire</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_Acquire">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_firewall_out_ipv6name"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_firewall_out_ipv6name</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_firewall_out_ipv6name">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_ip_ospf_authentication"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_ip_ospf_authentication</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['md5', 'plaintext-password', 'Plain']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_firewall_local_ipv6name"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_firewall_local_ipv6name</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_firewall_local_ipv6name">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_dhcpv6options_temporary"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_dhcpv6options_temporary</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_temporary">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_ip_ospf_authentication_md5"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_ip_ospf_authentication_md5</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :['key-id']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_md5">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_ip_ospf_authentication_Plain"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_ip_ospf_authentication_Plain</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_Plain">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_dhcpv6options_parametersonly"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_dhcpv6options_parametersonly</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_parametersonly">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_ip_ospf_authentication_md5_keyid"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_ip_ospf_authentication_md5_keyid</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_md5_keyid">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_interfaces_ethernet_eth0_ip_ospf_authentication_plaintextpassword"></a><span class="summary-sig-name">set_interfaces_ethernet_eth0_ip_ospf_authentication_plaintextpassword</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.bin.vyatta-pysrc.html#Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_plaintextpassword">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core-module.html b/TestON/Documentation/TestON_Document/TestON.core-module.html
deleted file mode 100644
index 52a490f..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core-module.html
+++ /dev/null
@@ -1,176 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- Package core
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package core</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.core.Thread-module.html">TestON.core.Thread</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.core.ast-module.html">TestON.core.ast</a></strong>: <em class="summary">ast
-~~~</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.dicttoobject-module.html">TestON.core.dicttoobject</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.core.iniparser-module.html">TestON.core.iniparser</a></strong>: <em class="summary">Created on 07-Jan-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.jsonparser-module.html">TestON.core.jsonparser</a></strong>: <em class="summary">Created on 07-Jan-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.logger-module.html">TestON.core.logger</a></strong>: <em class="summary">Created on 07-Jan-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.openspeak-module.html">TestON.core.openspeak</a></strong>: <em class="summary">Created on 20-Dec-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.teston-module.html">TestON.core.teston</a></strong>: <em class="summary">Created on 22-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.testparser-module.html">TestON.core.testparser</a></strong>: <em class="summary">Created on 26-Dec-2012</em> </li>
- <li> <strong class="uidlink">TestON.core.utilities</strong> </li>
- <li> <strong class="uidlink"><a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a></strong>: <em class="summary">Created on 03-Dec-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.xmlparser-module.html">TestON.core.xmlparser</a></strong>: <em class="summary">Created on 07-Jan-2013</em> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core-pysrc.html b/TestON/Documentation/TestON_Document/TestON.core-pysrc.html
deleted file mode 100644
index 40feb1b..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core-pysrc.html
+++ /dev/null
@@ -1,122 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- Package core
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.core-module.html">Package TestON.core</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.Thread-module.html b/TestON/Documentation/TestON_Document/TestON.core.Thread-module.html
deleted file mode 100644
index f5d3aef..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.Thread-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.Thread</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module Thread
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.Thread-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module Thread</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.Thread-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.core.Thread.Thread-class.html" class="summary-name">Thread</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.core'"><code class="variable-quote">'</code><code class="variable-string">TestON.core</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.Thread-pysrc.html b/TestON/Documentation/TestON_Document/TestON.core.Thread-pysrc.html
deleted file mode 100644
index 1233440..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.Thread-pysrc.html
+++ /dev/null
@@ -1,212 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.Thread</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module Thread
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.Thread-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.core.Thread-module.html">Module TestON.core.Thread</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">threading</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"> </tt>
-<a name="Thread"></a><div id="Thread-def"><a name="L5"></a><tt class="py-lineno"> 5</tt> <a class="py-toggle" href="#" id="Thread-toggle" onclick="return toggle('Thread');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.core.Thread.Thread-class.html">Thread</a><tt class="py-op">(</tt> <tt class="py-base-class">threading</tt><tt class="py-op">.</tt><tt class="py-base-class">Thread</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Thread-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="Thread-expanded"><a name="Thread.__init__"></a><div id="Thread.__init__-def"><a name="L6"></a><tt class="py-lineno"> 6</tt> <a class="py-toggle" href="#" id="Thread.__init__-toggle" onclick="return toggle('Thread.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.Thread.Thread-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">target</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">threadID</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-param">args</tt><tt class="py-op">=</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"> <tt class="py-param">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt><tt class="py-op">}</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Thread.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="Thread.__init__-expanded"><a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-0" class="py-name" targets="Module TestON.core.Thread=TestON.core.Thread-module.html,Class TestON.core.Thread.Thread=TestON.core.Thread.Thread-class.html"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-0', 'Thread', 'link-0');">Thread</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-1', '__init__', 'link-1');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">threadID</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">name</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">target</tt> <tt class="py-op">=</tt> <tt class="py-name">target</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">kwargs</tt> <tt class="py-op">=</tt> <tt class="py-name">kwargs</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"> </tt>
-<a name="Thread.run"></a><div id="Thread.run-def"><a name="L16"></a><tt class="py-lineno">16</tt> <a class="py-toggle" href="#" id="Thread.run-toggle" onclick="return toggle('Thread.run');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.Thread.Thread-class.html#run">run</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Thread.run-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="Thread.run-expanded"><a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">target</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">target</tt><tt class="py-op">(</tt> <tt class="py-op">*</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">args</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">kwargs</tt> <tt class="py-op">)</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"ThreadID:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">", Name:"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">"- something went wrong with "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">target</tt><tt class="py-op">.</tt><tt class="py-name">im_class</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">target</tt><tt class="py-op">.</tt><tt class="py-name">im_func</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" method: "</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">e</tt> </tt>
-</div></div><a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.Thread.Thread-class.html b/TestON/Documentation/TestON_Document/TestON.core.Thread.Thread-class.html
deleted file mode 100644
index 6e0bcd3..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.Thread.Thread-class.html
+++ /dev/null
@@ -1,341 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.Thread.Thread</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- <a href="TestON.core.Thread-module.html">Module Thread</a> ::
- Class Thread
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.Thread.Thread-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Thread</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.Thread-pysrc.html#Thread">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_thread" name="class_hierarchy_for_thread">
-<area shape="rect" id="node1" href="TestON.core.Thread.Thread-class.html" title="Thread" alt="" coords="41,118,103,143"/>
-<area shape="rect" id="node2" href="javascript:void(0);" title="threading.Thread" alt="" coords="13,62,131,87"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="threading._Verbose" alt="" coords="5,6,139,31"/>
-</map>
- <img src="class_hierarchy_for_thread.gif" alt='' usemap="#class_hierarchy_for_thread" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.Thread.Thread-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">target</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">threadID</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">name</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string"></code><code class="variable-quote">'</code></span>,
- <span class="summary-sig-arg">args</span>=<span class="summary-sig-default"><code class="variable-group">(</code><code class="variable-group">)</code></span>,
- <span class="summary-sig-arg">kwargs</span>=<span class="summary-sig-default"><code class="variable-group">{</code><code class="variable-group">}</code></span>)</span><br />
- This constructor should always be called with keyword arguments.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.Thread-pysrc.html#Thread.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.Thread.Thread-class.html#run" class="summary-sig-name">run</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Method representing the thread's activity.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.Thread-pysrc.html#Thread.run">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b>:
- <code>__repr__</code>,
- <code>getName</code>,
- <code>isAlive</code>,
- <code>isDaemon</code>,
- <code>is_alive</code>,
- <code>join</code>,
- <code>setDaemon</code>,
- <code>setName</code>,
- <code>start</code>
- </p>
- <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b> (private):
- <code>_reset_internal_locks</code>,
- <code>_set_daemon</code>,
- <code>_set_ident</code>
- </p></div>
- <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code>threading._Verbose</code></b> (private):
- <code>_note</code>
- </p></div>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b>:
- <code>daemon</code>,
- <code>ident</code>,
- <code>name</code>
- </p>
- <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b> (private):
- <code>_block</code>
- </p></div>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">target</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">threadID</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">name</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string"></code><code class="variable-quote">'</code></span>,
- <span class="sig-arg">args</span>=<span class="sig-default"><code class="variable-group">(</code><code class="variable-group">)</code></span>,
- <span class="sig-arg">kwargs</span>=<span class="sig-default"><code class="variable-group">{</code><code class="variable-group">}</code></span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.Thread-pysrc.html#Thread.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>This constructor should always be called with keyword arguments.
- Arguments are:</p>
- <p>*group* should be None; reserved for future extension when a
- ThreadGroup class is implemented.</p>
- <p>*target* is the callable object to be invoked by the run() method.
- Defaults to None, meaning nothing is called.</p>
- <p>*name* is the thread name. By default, a unique name is constructed of
- the form "Thread-N" where N is a small decimal number.</p>
- <p>*args* is the argument tuple for the target invocation. Defaults to
- ().</p>
- <p>*kwargs* is a dictionary of keyword arguments for the target
- invocation. Defaults to {}.</p>
- <p>If a subclass overrides the constructor, it must make sure to invoke
- the base class constructor (Thread.__init__()) before doing anything else
- to the thread.</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="run"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">run</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.Thread-pysrc.html#Thread.run">source code</a></span>
- </td>
- </tr></table>
-
- <p>Method representing the thread's activity.</p>
- <p>You may override this method in a subclass. The standard run() method
- invokes the callable object passed to the object's constructor as the
- target argument, if any, with sequential and keyword arguments taken from
- the args and kwargs arguments, respectively.</p>
- <dl class="fields">
- <dt>Overrides:
- threading.Thread.run
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.ast-module.html b/TestON/Documentation/TestON_Document/TestON.core.ast-module.html
deleted file mode 100644
index be751f9..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.ast-module.html
+++ /dev/null
@@ -1,597 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.ast</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module ast
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.ast-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module ast</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.ast-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-ast
-~~~
-
-The `ast` module helps Python applications to process trees of the Python
-abstract syntax grammar. The abstract syntax itself might change with
-each Python release; this module helps to find out programmatically what
-the current grammar looks like and allows modifications of it.
-
-An abstract syntax tree can be generated by passing `ast.PyCF_ONLY_AST` as
-a flag to the `compile()` builtin function or by using the `parse()`
-function from this module. The result will be a tree of objects whose
-classes all inherit from `ast.AST`.
-
-A modified abstract syntax tree can be compiled into a Python code object
-using the built-in `compile()` function.
-
-Additionally various helper functions are provided that make working with
-the trees simpler. The main intention of the helper functions and this
-module in general is to provide an easy to use interface for libraries
-that work tightly with the python syntax (template engines for example).
-
-
-:copyright: Copyright 2008 by Armin Ronacher.
-:license: Python License.
-
-</pre>
-
-<hr />
-<div class="fields"> <p><strong>Version:</strong>
- 82160
- </p>
-</div><!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.core.ast.NodeVisitor-class.html" class="summary-name">NodeVisitor</a><br />
- A node visitor base class that walks the abstract syntax tree and
- calls a visitor function for every node found.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.core.ast.NodeTransformer-class.html" class="summary-name">NodeTransformer</a><br />
- A :class:`NodeVisitor` subclass that walks the abstract syntax tree
- and allows modification of nodes.
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Functions</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Functions"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.ast-module.html#parse" class="summary-sig-name">parse</a>(<span class="summary-sig-arg">source</span>,
- <span class="summary-sig-arg">filename</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string"><unknown></code><code class="variable-quote">'</code></span>,
- <span class="summary-sig-arg">mode</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string">exec</code><code class="variable-quote">'</code></span>)</span><br />
- Parse the source into an AST node.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.ast-pysrc.html#parse">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.ast-module.html#literal_eval" class="summary-sig-name">literal_eval</a>(<span class="summary-sig-arg">node_or_string</span>)</span><br />
- Safely evaluate an expression node or a string containing a Python
- expression.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.ast-pysrc.html#literal_eval">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.ast-module.html#dump" class="summary-sig-name">dump</a>(<span class="summary-sig-arg">node</span>,
- <span class="summary-sig-arg">annotate_fields</span>=<span class="summary-sig-default">True</span>,
- <span class="summary-sig-arg">include_attributes</span>=<span class="summary-sig-default">False</span>)</span><br />
- Return a formatted dump of the tree in *node*.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.ast-pysrc.html#dump">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="copy_location"></a><span class="summary-sig-name">copy_location</span>(<span class="summary-sig-arg">new_node</span>,
- <span class="summary-sig-arg">old_node</span>)</span><br />
- Copy source location (`lineno` and `col_offset` attributes) from
- *old_node* to *new_node* if possible, and return *new_node*.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.ast-pysrc.html#copy_location">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.ast-module.html#fix_missing_locations" class="summary-sig-name">fix_missing_locations</a>(<span class="summary-sig-arg">node</span>)</span><br />
- When you compile a node tree with compile(), the compiler expects
- lineno and col_offset attributes for every node that supports them.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.ast-pysrc.html#fix_missing_locations">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.ast-module.html#increment_lineno" class="summary-sig-name">increment_lineno</a>(<span class="summary-sig-arg">node</span>,
- <span class="summary-sig-arg">n</span>=<span class="summary-sig-default">1</span>)</span><br />
- Increment the line number of each node in the tree starting at *node*
- by *n*.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.ast-pysrc.html#increment_lineno">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="iter_fields"></a><span class="summary-sig-name">iter_fields</span>(<span class="summary-sig-arg">node</span>)</span><br />
- Yield a tuple of ``(fieldname, value)`` for each field in
- ``node._fields`` that is present on *node*.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.ast-pysrc.html#iter_fields">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="iter_child_nodes"></a><span class="summary-sig-name">iter_child_nodes</span>(<span class="summary-sig-arg">node</span>)</span><br />
- Yield all direct child nodes of *node*, that is, all fields that are
- nodes and all items of fields that are lists of nodes.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.ast-pysrc.html#iter_child_nodes">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.ast-module.html#get_docstring" class="summary-sig-name">get_docstring</a>(<span class="summary-sig-arg">node</span>,
- <span class="summary-sig-arg">clean</span>=<span class="summary-sig-default">True</span>)</span><br />
- Return the docstring for the given node or None if no docstring can
- be found.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.ast-pysrc.html#get_docstring">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.ast-module.html#walk" class="summary-sig-name">walk</a>(<span class="summary-sig-arg">node</span>)</span><br />
- Recursively yield all descendant nodes in the tree starting at *node*
- (including *node* itself), in no specified order.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.ast-pysrc.html#walk">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="PyCF_ONLY_AST"></a><span class="summary-name">PyCF_ONLY_AST</span> = <code title="1024">1024</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.core'"><code class="variable-quote">'</code><code class="variable-string">TestON.core</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTION DETAILS ==================== -->
-<a name="section-FunctionDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Function Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-FunctionDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="parse"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">parse</span>(<span class="sig-arg">source</span>,
- <span class="sig-arg">filename</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string"><unknown></code><code class="variable-quote">'</code></span>,
- <span class="sig-arg">mode</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string">exec</code><code class="variable-quote">'</code></span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.ast-pysrc.html#parse">source code</a></span>
- </td>
- </tr></table>
-
- <p>Parse the source into an AST node. Equivalent to compile(source,
- filename, mode, PyCF_ONLY_AST).</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="literal_eval"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">literal_eval</span>(<span class="sig-arg">node_or_string</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.ast-pysrc.html#literal_eval">source code</a></span>
- </td>
- </tr></table>
-
- <p>Safely evaluate an expression node or a string containing a Python
- expression. The string or node provided may only consist of the
- following Python literal structures: strings, numbers, tuples, lists,
- dicts, booleans, and None.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="dump"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">dump</span>(<span class="sig-arg">node</span>,
- <span class="sig-arg">annotate_fields</span>=<span class="sig-default">True</span>,
- <span class="sig-arg">include_attributes</span>=<span class="sig-default">False</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.ast-pysrc.html#dump">source code</a></span>
- </td>
- </tr></table>
-
- <p>Return a formatted dump of the tree in *node*. This is mainly useful
- for debugging purposes. The returned string will show the names and the
- values for fields. This makes the code impossible to evaluate, so if
- evaluation is wanted *annotate_fields* must be set to False. Attributes
- such as line numbers and column offsets are not dumped by default. If
- this is wanted, *include_attributes* can be set to True.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="fix_missing_locations"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">fix_missing_locations</span>(<span class="sig-arg">node</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.ast-pysrc.html#fix_missing_locations">source code</a></span>
- </td>
- </tr></table>
-
- <p>When you compile a node tree with compile(), the compiler expects
- lineno and col_offset attributes for every node that supports them. This
- is rather tedious to fill in for generated nodes, so this helper adds
- these attributes recursively where not already set, by setting them to
- the values of the parent node. It works recursively starting at
- *node*.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="increment_lineno"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">increment_lineno</span>(<span class="sig-arg">node</span>,
- <span class="sig-arg">n</span>=<span class="sig-default">1</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.ast-pysrc.html#increment_lineno">source code</a></span>
- </td>
- </tr></table>
-
- <p>Increment the line number of each node in the tree starting at *node*
- by *n*. This is useful to "move code" to a different location
- in a file.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="get_docstring"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_docstring</span>(<span class="sig-arg">node</span>,
- <span class="sig-arg">clean</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.ast-pysrc.html#get_docstring">source code</a></span>
- </td>
- </tr></table>
-
- <p>Return the docstring for the given node or None if no docstring can be
- found. If the node provided does not have docstrings a TypeError will be
- raised.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="walk"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">walk</span>(<span class="sig-arg">node</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.ast-pysrc.html#walk">source code</a></span>
- </td>
- </tr></table>
-
- <p>Recursively yield all descendant nodes in the tree starting at *node*
- (including *node* itself), in no specified order. This is useful if you
- only want to modify nodes in place and don't care about the context.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.ast-pysrc.html b/TestON/Documentation/TestON_Document/TestON.core.ast-pysrc.html
deleted file mode 100644
index 4da8dcc..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.ast-pysrc.html
+++ /dev/null
@@ -1,436 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.ast</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module ast
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.ast-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.core.ast-module.html">Module TestON.core.ast</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># -*- coding: utf-8 -*-</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring"> ast</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"> ~~~</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"> The `ast` module helps Python applications to process trees of the Python</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> abstract syntax grammar. The abstract syntax itself might change with</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> each Python release; this module helps to find out programmatically what</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> the current grammar looks like and allows modifications of it.</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"> An abstract syntax tree can be generated by passing `ast.PyCF_ONLY_AST` as</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"> a flag to the `compile()` builtin function or by using the `parse()`</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"> function from this module. The result will be a tree of objects whose</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"> classes all inherit from `ast.AST`.</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"> A modified abstract syntax tree can be compiled into a Python code object</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"> using the built-in `compile()` function.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring"> Additionally various helper functions are provided that make working with</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"> the trees simpler. The main intention of the helper functions and this</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring"> module in general is to provide an easy to use interface for libraries</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring"> that work tightly with the python syntax (template engines for example).</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-docstring"> :copyright: Copyright 2008 by Armin Ronacher.</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-docstring"> :license: Python License.</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">_ast</tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">_ast</tt> <tt class="py-keyword">import</tt> <tt class="py-name">__version__</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> </tt>
-<a name="parse"></a><div id="parse-def"><a name="L32"></a><tt class="py-lineno"> 32</tt> <a class="py-toggle" href="#" id="parse-toggle" onclick="return toggle('parse');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.ast-module.html#parse">parse</a><tt class="py-op">(</tt><tt class="py-param">source</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">=</tt><tt class="py-string">'<unknown>'</tt><tt class="py-op">,</tt> <tt class="py-param">mode</tt><tt class="py-op">=</tt><tt class="py-string">'exec'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="parse-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="parse-expanded"><a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-docstring"> Parse the source into an AST node.</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"> Equivalent to compile(source, filename, mode, PyCF_ONLY_AST).</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">compile</tt><tt class="py-op">(</tt><tt class="py-name">source</tt><tt class="py-op">,</tt> <tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-name">mode</tt><tt class="py-op">,</tt> <tt id="link-0" class="py-name" targets="Variable TestON.core.ast.PyCF_ONLY_AST=TestON.core.ast-module.html#PyCF_ONLY_AST"><a title="TestON.core.ast.PyCF_ONLY_AST" class="py-name" href="#" onclick="return doclink('link-0', 'PyCF_ONLY_AST', 'link-0');">PyCF_ONLY_AST</a></tt><tt class="py-op">)</tt> </tt>
-</div><a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> </tt>
-<a name="literal_eval"></a><div id="literal_eval-def"><a name="L40"></a><tt class="py-lineno"> 40</tt> <a class="py-toggle" href="#" id="literal_eval-toggle" onclick="return toggle('literal_eval');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.ast-module.html#literal_eval">literal_eval</a><tt class="py-op">(</tt><tt class="py-param">node_or_string</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="literal_eval-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="literal_eval-expanded"><a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring"> Safely evaluate an expression node or a string containing a Python</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-docstring"> expression. The string or node provided may only consist of the following</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring"> Python literal structures: strings, numbers, tuples, lists, dicts, booleans,</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> and None.</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">_safe_names</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-string">'None'</tt><tt class="py-op">:</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-string">'True'</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt><tt class="py-op">,</tt> <tt class="py-string">'False'</tt><tt class="py-op">:</tt> <tt class="py-name">False</tt><tt class="py-op">}</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node_or_string</tt><tt class="py-op">,</tt> <tt class="py-name">basestring</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">node_or_string</tt> <tt class="py-op">=</tt> <tt id="link-1" class="py-name" targets="Function TestON.core.ast.parse()=TestON.core.ast-module.html#parse,Method TestON.core.iniparser.iniparser.parse()=TestON.core.iniparser.iniparser-class.html#parse,Method TestON.core.xmlparser.xmlparser.parse()=TestON.core.xmlparser.xmlparser-class.html#parse"><a title="TestON.core.ast.parse
-TestON.core.iniparser.iniparser.parse
-TestON.core.xmlparser.xmlparser.parse" class="py-name" href="#" onclick="return doclink('link-1', 'parse', 'link-1');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">node_or_string</tt><tt class="py-op">,</tt> <tt class="py-name">mode</tt><tt class="py-op">=</tt><tt class="py-string">'eval'</tt><tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node_or_string</tt><tt class="py-op">,</tt> <tt class="py-name">Expression</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">node_or_string</tt> <tt class="py-op">=</tt> <tt class="py-name">node_or_string</tt><tt class="py-op">.</tt><tt class="py-name">body</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">_convert</tt><tt class="py-op">(</tt><tt class="py-param">node</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-name">Str</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">s</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-name">Num</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">n</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-name">Tuple</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">tuple</tt><tt class="py-op">(</tt><tt class="py-name">map</tt><tt class="py-op">(</tt><tt class="py-name">_convert</tt><tt class="py-op">,</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">elts</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-name">List</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt><tt class="py-name">map</tt><tt class="py-op">(</tt><tt class="py-name">_convert</tt><tt class="py-op">,</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">elts</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-name">Dict</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">dict</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">_convert</tt><tt class="py-op">(</tt><tt class="py-name">k</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">_convert</tt><tt class="py-op">(</tt><tt class="py-name">v</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">k</tt><tt class="py-op">,</tt> <tt class="py-name">v</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-keyword">in</tt> <tt class="py-name">zip</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">,</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">values</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-name">Name</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">id</tt> <tt class="py-keyword">in</tt> <tt class="py-name">_safe_names</tt><tt class="py-op">:</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">_safe_names</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">id</tt><tt class="py-op">]</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-name">BinOp</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">op</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">Add</tt><tt class="py-op">,</tt> <tt class="py-name">Sub</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">right</tt><tt class="py-op">,</tt> <tt class="py-name">Num</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">right</tt><tt class="py-op">.</tt><tt class="py-name">n</tt><tt class="py-op">,</tt> <tt class="py-name">complex</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">left</tt><tt class="py-op">,</tt> <tt class="py-name">Num</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">left</tt><tt class="py-op">.</tt><tt class="py-name">n</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">int</tt><tt class="py-op">,</tt> <tt class="py-name">long</tt><tt class="py-op">,</tt> <tt class="py-name">float</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">left</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">left</tt><tt class="py-op">.</tt><tt class="py-name">n</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">right</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">right</tt><tt class="py-op">.</tt><tt class="py-name">n</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">op</tt><tt class="py-op">,</tt> <tt class="py-name">Add</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">left</tt> <tt class="py-op">+</tt> <tt class="py-name">right</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">left</tt> <tt class="py-op">-</tt> <tt class="py-name">right</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">ValueError</tt><tt class="py-op">(</tt><tt class="py-string">'malformed string'</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">_convert</tt><tt class="py-op">(</tt><tt class="py-name">node_or_string</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> </tt>
-<a name="dump"></a><div id="dump-def"><a name="L83"></a><tt class="py-lineno"> 83</tt> <a class="py-toggle" href="#" id="dump-toggle" onclick="return toggle('dump');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.ast-module.html#dump">dump</a><tt class="py-op">(</tt><tt class="py-param">node</tt><tt class="py-op">,</tt> <tt class="py-param">annotate_fields</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> <tt class="py-param">include_attributes</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="dump-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="dump-expanded"><a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"><tt class="py-docstring"> Return a formatted dump of the tree in *node*. This is mainly useful for</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"><tt class="py-docstring"> debugging purposes. The returned string will show the names and the values</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"><tt class="py-docstring"> for fields. This makes the code impossible to evaluate, so if evaluation is</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"><tt class="py-docstring"> wanted *annotate_fields* must be set to False. Attributes such as line</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"><tt class="py-docstring"> numbers and column offsets are not dumped by default. If this is wanted,</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"><tt class="py-docstring"> *include_attributes* can be set to True.</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">_format</tt><tt class="py-op">(</tt><tt class="py-param">node</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-name">AST</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">fields</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">(</tt><tt class="py-name">a</tt><tt class="py-op">,</tt> <tt class="py-name">_format</tt><tt class="py-op">(</tt><tt class="py-name">b</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">a</tt><tt class="py-op">,</tt> <tt class="py-name">b</tt> <tt class="py-keyword">in</tt> <tt id="link-2" class="py-name" targets="Function TestON.core.ast.iter_fields()=TestON.core.ast-module.html#iter_fields"><a title="TestON.core.ast.iter_fields" class="py-name" href="#" onclick="return doclink('link-2', 'iter_fields', 'link-2');">iter_fields</a></tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">rv</tt> <tt class="py-op">=</tt> <tt class="py-string">'%s(%s'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">__class__</tt><tt class="py-op">.</tt><tt class="py-name">__name__</tt><tt class="py-op">,</tt> <tt class="py-string">', '</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-string">'%s=%s'</tt> <tt class="py-op">%</tt> <tt class="py-name">field</tt> <tt class="py-keyword">for</tt> <tt class="py-name">field</tt> <tt class="py-keyword">in</tt> <tt class="py-name">fields</tt><tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">annotate_fields</tt> <tt class="py-keyword">else</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">b</tt> <tt class="py-keyword">for</tt> <tt class="py-name">a</tt><tt class="py-op">,</tt> <tt class="py-name">b</tt> <tt class="py-keyword">in</tt> <tt class="py-name">fields</tt><tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">include_attributes</tt> <tt class="py-keyword">and</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">_attributes</tt><tt class="py-op">:</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">rv</tt> <tt class="py-op">+=</tt> <tt class="py-name">fields</tt> <tt class="py-keyword">and</tt> <tt class="py-string">', '</tt> <tt class="py-keyword">or</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">rv</tt> <tt class="py-op">+=</tt> <tt class="py-string">', '</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-string">'%s=%s'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">a</tt><tt class="py-op">,</tt> <tt class="py-name">_format</tt><tt class="py-op">(</tt><tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-name">a</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">a</tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">_attributes</tt><tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">rv</tt> <tt class="py-op">+</tt> <tt class="py-string">')'</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'[%s]'</tt> <tt class="py-op">%</tt> <tt class="py-string">', '</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">_format</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-name">AST</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">TypeError</tt><tt class="py-op">(</tt><tt class="py-string">'expected AST, got %r'</tt> <tt class="py-op">%</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">__class__</tt><tt class="py-op">.</tt><tt class="py-name">__name__</tt><tt class="py-op">)</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">_format</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> </tt>
-<a name="copy_location"></a><div id="copy_location-def"><a name="L113"></a><tt class="py-lineno">113</tt> <a class="py-toggle" href="#" id="copy_location-toggle" onclick="return toggle('copy_location');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.ast-module.html#copy_location">copy_location</a><tt class="py-op">(</tt><tt class="py-param">new_node</tt><tt class="py-op">,</tt> <tt class="py-param">old_node</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="copy_location-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="copy_location-expanded"><a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"><tt class="py-docstring"> Copy source location (`lineno` and `col_offset` attributes) from</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"><tt class="py-docstring"> *old_node* to *new_node* if possible, and return *new_node*.</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">attr</tt> <tt class="py-keyword">in</tt> <tt class="py-string">'lineno'</tt><tt class="py-op">,</tt> <tt class="py-string">'col_offset'</tt><tt class="py-op">:</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">attr</tt> <tt class="py-keyword">in</tt> <tt class="py-name">old_node</tt><tt class="py-op">.</tt><tt class="py-name">_attributes</tt> <tt class="py-keyword">and</tt> <tt class="py-name">attr</tt> <tt class="py-keyword">in</tt> <tt class="py-name">new_node</tt><tt class="py-op">.</tt><tt class="py-name">_attributes</tt> \ </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-name">hasattr</tt><tt class="py-op">(</tt><tt class="py-name">old_node</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">setattr</tt><tt class="py-op">(</tt><tt class="py-name">new_node</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">,</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">old_node</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">new_node</tt> </tt>
-</div><a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> </tt>
-<a name="fix_missing_locations"></a><div id="fix_missing_locations-def"><a name="L125"></a><tt class="py-lineno">125</tt> <a class="py-toggle" href="#" id="fix_missing_locations-toggle" onclick="return toggle('fix_missing_locations');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.ast-module.html#fix_missing_locations">fix_missing_locations</a><tt class="py-op">(</tt><tt class="py-param">node</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="fix_missing_locations-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="fix_missing_locations-expanded"><a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"><tt class="py-docstring"> When you compile a node tree with compile(), the compiler expects lineno and</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"><tt class="py-docstring"> col_offset attributes for every node that supports them. This is rather</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"><tt class="py-docstring"> tedious to fill in for generated nodes, so this helper adds these attributes</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"><tt class="py-docstring"> recursively where not already set, by setting them to the values of the</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"><tt class="py-docstring"> parent node. It works recursively starting at *node*.</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">_fix</tt><tt class="py-op">(</tt><tt class="py-param">node</tt><tt class="py-op">,</tt> <tt class="py-param">lineno</tt><tt class="py-op">,</tt> <tt class="py-param">col_offset</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">'lineno'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">_attributes</tt><tt class="py-op">:</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">hasattr</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-string">'lineno'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">lineno</tt> <tt class="py-op">=</tt> <tt class="py-name">lineno</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-name">lineno</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">lineno</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">'col_offset'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">_attributes</tt><tt class="py-op">:</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">hasattr</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-string">'col_offset'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">col_offset</tt> <tt class="py-op">=</tt> <tt class="py-name">col_offset</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-name">col_offset</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">col_offset</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">child</tt> <tt class="py-keyword">in</tt> <tt id="link-3" class="py-name" targets="Function TestON.core.ast.iter_child_nodes()=TestON.core.ast-module.html#iter_child_nodes"><a title="TestON.core.ast.iter_child_nodes" class="py-name" href="#" onclick="return doclink('link-3', 'iter_child_nodes', 'link-3');">iter_child_nodes</a></tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">_fix</tt><tt class="py-op">(</tt><tt class="py-name">child</tt><tt class="py-op">,</tt> <tt class="py-name">lineno</tt><tt class="py-op">,</tt> <tt class="py-name">col_offset</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-name">_fix</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">node</tt> </tt>
-</div><a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> </tt>
-<a name="increment_lineno"></a><div id="increment_lineno-def"><a name="L150"></a><tt class="py-lineno">150</tt> <a class="py-toggle" href="#" id="increment_lineno-toggle" onclick="return toggle('increment_lineno');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.ast-module.html#increment_lineno">increment_lineno</a><tt class="py-op">(</tt><tt class="py-param">node</tt><tt class="py-op">,</tt> <tt class="py-param">n</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="increment_lineno-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="increment_lineno-expanded"><a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"><tt class="py-docstring"> Increment the line number of each node in the tree starting at *node* by *n*.</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"><tt class="py-docstring"> This is useful to "move code" to a different location in a file.</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">child</tt> <tt class="py-keyword">in</tt> <tt id="link-4" class="py-name" targets="Function TestON.core.ast.walk()=TestON.core.ast-module.html#walk"><a title="TestON.core.ast.walk" class="py-name" href="#" onclick="return doclink('link-4', 'walk', 'link-4');">walk</a></tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">'lineno'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">child</tt><tt class="py-op">.</tt><tt class="py-name">_attributes</tt><tt class="py-op">:</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">child</tt><tt class="py-op">.</tt><tt class="py-name">lineno</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">child</tt><tt class="py-op">,</tt> <tt class="py-string">'lineno'</tt><tt class="py-op">,</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">n</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">node</tt> </tt>
-</div><a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> </tt>
-<a name="iter_fields"></a><div id="iter_fields-def"><a name="L161"></a><tt class="py-lineno">161</tt> <a class="py-toggle" href="#" id="iter_fields-toggle" onclick="return toggle('iter_fields');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.ast-module.html#iter_fields">iter_fields</a><tt class="py-op">(</tt><tt class="py-param">node</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="iter_fields-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="iter_fields-expanded"><a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"><tt class="py-docstring"> Yield a tuple of ``(fieldname, value)`` for each field in ``node._fields``</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"><tt class="py-docstring"> that is present on *node*.</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">field</tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">_fields</tt><tt class="py-op">:</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-keyword">yield</tt> <tt class="py-name">field</tt><tt class="py-op">,</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-name">field</tt><tt class="py-op">)</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> </tt>
-<a name="iter_child_nodes"></a><div id="iter_child_nodes-def"><a name="L173"></a><tt class="py-lineno">173</tt> <a class="py-toggle" href="#" id="iter_child_nodes-toggle" onclick="return toggle('iter_child_nodes');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.ast-module.html#iter_child_nodes">iter_child_nodes</a><tt class="py-op">(</tt><tt class="py-param">node</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="iter_child_nodes-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="iter_child_nodes-expanded"><a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"><tt class="py-docstring"> Yield all direct child nodes of *node*, that is, all fields that are nodes</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"><tt class="py-docstring"> and all items of fields that are lists of nodes.</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">name</tt><tt class="py-op">,</tt> <tt class="py-name">field</tt> <tt class="py-keyword">in</tt> <tt id="link-5" class="py-name"><a title="TestON.core.ast.iter_fields" class="py-name" href="#" onclick="return doclink('link-5', 'iter_fields', 'link-2');">iter_fields</a></tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">field</tt><tt class="py-op">,</tt> <tt class="py-name">AST</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-keyword">yield</tt> <tt class="py-name">field</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">field</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">field</tt><tt class="py-op">:</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">,</tt> <tt class="py-name">AST</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-keyword">yield</tt> <tt class="py-name">item</tt> </tt>
-</div><a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> </tt>
-<a name="get_docstring"></a><div id="get_docstring-def"><a name="L187"></a><tt class="py-lineno">187</tt> <a class="py-toggle" href="#" id="get_docstring-toggle" onclick="return toggle('get_docstring');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.ast-module.html#get_docstring">get_docstring</a><tt class="py-op">(</tt><tt class="py-param">node</tt><tt class="py-op">,</tt> <tt class="py-param">clean</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="get_docstring-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="get_docstring-expanded"><a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"><tt class="py-docstring"> Return the docstring for the given node or None if no docstring can</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"><tt class="py-docstring"> be found. If the node provided does not have docstrings a TypeError</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"><tt class="py-docstring"> will be raised.</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">FunctionDef</tt><tt class="py-op">,</tt> <tt class="py-name">ClassDef</tt><tt class="py-op">,</tt> <tt class="py-name">Module</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">TypeError</tt><tt class="py-op">(</tt><tt class="py-string">"%r can't have docstrings"</tt> <tt class="py-op">%</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">__class__</tt><tt class="py-op">.</tt><tt class="py-name">__name__</tt><tt class="py-op">)</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">body</tt> <tt class="py-keyword">and</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">body</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">Expr</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">body</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">,</tt> <tt class="py-name">Str</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">clean</tt><tt class="py-op">:</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">inspect</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">inspect</tt><tt class="py-op">.</tt><tt class="py-name">cleandoc</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">body</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">.</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">body</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">.</tt><tt class="py-name">s</tt> </tt>
-</div><a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> </tt>
-<a name="walk"></a><div id="walk-def"><a name="L203"></a><tt class="py-lineno">203</tt> <a class="py-toggle" href="#" id="walk-toggle" onclick="return toggle('walk');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.ast-module.html#walk">walk</a><tt class="py-op">(</tt><tt class="py-param">node</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="walk-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="walk-expanded"><a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"><tt class="py-docstring"> Recursively yield all descendant nodes in the tree starting at *node*</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"><tt class="py-docstring"> (including *node* itself), in no specified order. This is useful if you</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"><tt class="py-docstring"> only want to modify nodes in place and don't care about the context.</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-keyword">from</tt> <tt class="py-name">collections</tt> <tt class="py-keyword">import</tt> <tt class="py-name">deque</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">todo</tt> <tt class="py-op">=</tt> <tt class="py-name">deque</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">todo</tt><tt class="py-op">:</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">=</tt> <tt class="py-name">todo</tt><tt class="py-op">.</tt><tt class="py-name">popleft</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-name">todo</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt id="link-6" class="py-name"><a title="TestON.core.ast.iter_child_nodes" class="py-name" href="#" onclick="return doclink('link-6', 'iter_child_nodes', 'link-3');">iter_child_nodes</a></tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-keyword">yield</tt> <tt class="py-name">node</tt> </tt>
-</div><a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> </tt>
-<a name="NodeVisitor"></a><div id="NodeVisitor-def"><a name="L217"></a><tt class="py-lineno">217</tt> <a class="py-toggle" href="#" id="NodeVisitor-toggle" onclick="return toggle('NodeVisitor');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.core.ast.NodeVisitor-class.html">NodeVisitor</a><tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NodeVisitor-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="NodeVisitor-expanded"><a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"><tt class="py-docstring"> A node visitor base class that walks the abstract syntax tree and calls a</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"><tt class="py-docstring"> visitor function for every node found. This function may return a value</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"><tt class="py-docstring"> which is forwarded by the `visit` method.</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"><tt class="py-docstring"> This class is meant to be subclassed, with the subclass adding visitor</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"><tt class="py-docstring"> methods.</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"><tt class="py-docstring"> Per default the visitor functions for the nodes are ``'visit_'`` +</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"><tt class="py-docstring"> class name of the node. So a `TryFinally` node visit function would</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"><tt class="py-docstring"> be `visit_TryFinally`. This behavior can be changed by overriding</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"><tt class="py-docstring"> the `visit` method. If no visitor function exists for a node</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"><tt class="py-docstring"> (return value `None`) the `generic_visit` visitor is used instead.</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"><tt class="py-docstring"> Don't use the `NodeVisitor` if you want to apply changes to nodes during</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"><tt class="py-docstring"> traversing. For this a special visitor exists (`NodeTransformer`) that</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"><tt class="py-docstring"> allows modifications.</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> </tt>
-<a name="NodeVisitor.visit"></a><div id="NodeVisitor.visit-def"><a name="L237"></a><tt class="py-lineno">237</tt> <a class="py-toggle" href="#" id="NodeVisitor.visit-toggle" onclick="return toggle('NodeVisitor.visit');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.ast.NodeVisitor-class.html#visit">visit</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">node</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NodeVisitor.visit-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NodeVisitor.visit-expanded"><a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-docstring">"""Visit a node."""</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">method</tt> <tt class="py-op">=</tt> <tt class="py-string">'visit_'</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">__class__</tt><tt class="py-op">.</tt><tt class="py-name">__name__</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-name">visitor</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">method</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.core.ast.NodeTransformer.generic_visit()=TestON.core.ast.NodeTransformer-class.html#generic_visit,Method TestON.core.ast.NodeVisitor.generic_visit()=TestON.core.ast.NodeVisitor-class.html#generic_visit"><a title="TestON.core.ast.NodeTransformer.generic_visit
-TestON.core.ast.NodeVisitor.generic_visit" class="py-name" href="#" onclick="return doclink('link-7', 'generic_visit', 'link-7');">generic_visit</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">visitor</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> </tt>
-<a name="NodeVisitor.generic_visit"></a><div id="NodeVisitor.generic_visit-def"><a name="L243"></a><tt class="py-lineno">243</tt> <a class="py-toggle" href="#" id="NodeVisitor.generic_visit-toggle" onclick="return toggle('NodeVisitor.generic_visit');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.ast.NodeVisitor-class.html#generic_visit">generic_visit</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">node</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NodeVisitor.generic_visit-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NodeVisitor.generic_visit-expanded"><a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-docstring">"""Called if no explicit visitor function exists for a node."""</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">field</tt><tt class="py-op">,</tt> <tt class="py-name">value</tt> <tt class="py-keyword">in</tt> <tt id="link-8" class="py-name"><a title="TestON.core.ast.iter_fields" class="py-name" href="#" onclick="return doclink('link-8', 'iter_fields', 'link-2');">iter_fields</a></tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">value</tt><tt class="py-op">:</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">,</tt> <tt class="py-name">AST</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.core.ast.NodeVisitor.visit()=TestON.core.ast.NodeVisitor-class.html#visit"><a title="TestON.core.ast.NodeVisitor.visit" class="py-name" href="#" onclick="return doclink('link-9', 'visit', 'link-9');">visit</a></tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">,</tt> <tt class="py-name">AST</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.core.ast.NodeVisitor.visit" class="py-name" href="#" onclick="return doclink('link-10', 'visit', 'link-9');">visit</a></tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> </tt>
-<a name="NodeTransformer"></a><div id="NodeTransformer-def"><a name="L254"></a><tt class="py-lineno">254</tt> <a class="py-toggle" href="#" id="NodeTransformer-toggle" onclick="return toggle('NodeTransformer');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.core.ast.NodeTransformer-class.html">NodeTransformer</a><tt class="py-op">(</tt><tt class="py-base-class">NodeVisitor</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NodeTransformer-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="NodeTransformer-expanded"><a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"><tt class="py-docstring"> A :class:`NodeVisitor` subclass that walks the abstract syntax tree and</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"><tt class="py-docstring"> allows modification of nodes.</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"><tt class="py-docstring"> The `NodeTransformer` will walk the AST and use the return value of the</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"><tt class="py-docstring"> visitor methods to replace or remove the old node. If the return value of</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"><tt class="py-docstring"> the visitor method is ``None``, the node will be removed from its location,</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"><tt class="py-docstring"> otherwise it is replaced with the return value. The return value may be the</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"><tt class="py-docstring"> original node in which case no replacement takes place.</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"><tt class="py-docstring"> Here is an example transformer that rewrites all occurrences of name lookups</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"><tt class="py-docstring"> (``foo``) to ``data['foo']``::</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"><tt class="py-docstring"> class RewriteName(NodeTransformer):</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"><tt class="py-docstring"> def visit_Name(self, node):</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"><tt class="py-docstring"> return copy_location(Subscript(</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"><tt class="py-docstring"> value=Name(id='data', ctx=Load()),</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"><tt class="py-docstring"> slice=Index(value=Str(s=node.id)),</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"><tt class="py-docstring"> ctx=node.ctx</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"><tt class="py-docstring"> ), node)</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"><tt class="py-docstring"> Keep in mind that if the node you're operating on has child nodes you must</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"><tt class="py-docstring"> either transform the child nodes yourself or call the :meth:`generic_visit`</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"><tt class="py-docstring"> method for the node first.</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"><tt class="py-docstring"> For nodes that were part of a collection of statements (that applies to all</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"><tt class="py-docstring"> statement nodes), the visitor may also return a list of nodes rather than</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"><tt class="py-docstring"> just a single node.</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"><tt class="py-docstring"> Usually you use the transformer like this::</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"><tt class="py-docstring"> node = YourTransformer().visit(node)</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> </tt>
-<a name="NodeTransformer.generic_visit"></a><div id="NodeTransformer.generic_visit-def"><a name="L290"></a><tt class="py-lineno">290</tt> <a class="py-toggle" href="#" id="NodeTransformer.generic_visit-toggle" onclick="return toggle('NodeTransformer.generic_visit');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.ast.NodeTransformer-class.html#generic_visit">generic_visit</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">node</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NodeTransformer.generic_visit-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NodeTransformer.generic_visit-expanded"><a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">field</tt><tt class="py-op">,</tt> <tt class="py-name">old_value</tt> <tt class="py-keyword">in</tt> <tt id="link-11" class="py-name"><a title="TestON.core.ast.iter_fields" class="py-name" href="#" onclick="return doclink('link-11', 'iter_fields', 'link-2');">iter_fields</a></tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-name">old_value</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-name">field</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">old_value</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-name">new_values</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">value</tt> <tt class="py-keyword">in</tt> <tt class="py-name">old_value</tt><tt class="py-op">:</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">,</tt> <tt class="py-name">AST</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.core.ast.NodeVisitor.visit" class="py-name" href="#" onclick="return doclink('link-12', 'visit', 'link-9');">visit</a></tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">value</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-keyword">not</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">,</tt> <tt class="py-name">AST</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">new_values</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-name">new_values</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-name">old_value</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">new_values</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">old_value</tt><tt class="py-op">,</tt> <tt class="py-name">AST</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-name">new_node</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.core.ast.NodeVisitor.visit" class="py-name" href="#" onclick="return doclink('link-13', 'visit', 'link-9');">visit</a></tt><tt class="py-op">(</tt><tt class="py-name">old_value</tt><tt class="py-op">)</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">new_node</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-name">delattr</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-name">field</tt><tt class="py-op">)</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-name">setattr</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">,</tt> <tt class="py-name">field</tt><tt class="py-op">,</tt> <tt class="py-name">new_node</tt><tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">node</tt> </tt>
-</div></div><a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.ast.NodeTransformer-class.html b/TestON/Documentation/TestON_Document/TestON.core.ast.NodeTransformer-class.html
deleted file mode 100644
index b9eae29..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.ast.NodeTransformer-class.html
+++ /dev/null
@@ -1,298 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.ast.NodeTransformer</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- <a href="TestON.core.ast-module.html">Module ast</a> ::
- Class NodeTransformer
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.ast.NodeTransformer-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class NodeTransformer</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.ast-pysrc.html#NodeTransformer">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_nodetransf" name="class_hierarchy_for_nodetransf">
-<area shape="rect" id="node1" href="TestON.core.ast.NodeTransformer-class.html" title="NodeTransformer" alt="" coords="5,62,128,87"/>
-<area shape="rect" id="node2" href="TestON.core.ast.NodeVisitor-class.html" title="NodeVisitor" alt="" coords="21,6,112,31"/>
-</map>
- <img src="class_hierarchy_for_nodetransf.gif" alt='' usemap="#class_hierarchy_for_nodetransf" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<p>A :class:`NodeVisitor` subclass that walks the abstract syntax tree
- and allows modification of nodes.</p>
- <p>The `NodeTransformer` will walk the AST and use the return value of
- the visitor methods to replace or remove the old node. If the return
- value of the visitor method is ``None``, the node will be removed from
- its location, otherwise it is replaced with the return value. The return
- value may be the original node in which case no replacement takes
- place.</p>
- <p>Here is an example transformer that rewrites all occurrences of name
- lookups (``foo``) to ``data['foo']``:</p>
-<pre class="literalblock">
- class RewriteName(NodeTransformer):
-
- def visit_Name(self, node):
- return copy_location(Subscript(
- value=Name(id='data', ctx=Load()),
- slice=Index(value=Str(s=node.id)),
- ctx=node.ctx
- ), node)
-</pre>
- <p>Keep in mind that if the node you're operating on has child nodes you
- must either transform the child nodes yourself or call the
- :meth:`generic_visit` method for the node first.</p>
- <p>For nodes that were part of a collection of statements (that applies
- to all statement nodes), the visitor may also return a list of nodes
- rather than just a single node.</p>
- <p>Usually you use the transformer like this:</p>
-<pre class="literalblock">
- node = YourTransformer().visit(node)
-</pre>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.ast.NodeTransformer-class.html#generic_visit" class="summary-sig-name">generic_visit</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">node</span>)</span><br />
- Called if no explicit visitor function exists for a node.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.ast-pysrc.html#NodeTransformer.generic_visit">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="visit"></a><span class="summary-sig-name">visit</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">node</span>)</span><br />
- Visit a node.
- <em>(Inherited from <a href="TestON.core.ast.NodeVisitor-class.html">TestON.core.ast.NodeVisitor</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.ast-pysrc.html#NodeVisitor.visit">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="generic_visit"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">generic_visit</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">node</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.ast-pysrc.html#NodeTransformer.generic_visit">source code</a></span>
- </td>
- </tr></table>
-
- <p>Called if no explicit visitor function exists for a node.</p>
- <dl class="fields">
- <dt>Overrides:
- <a href="TestON.core.ast.NodeVisitor-class.html#generic_visit">NodeVisitor.generic_visit</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.ast.NodeVisitor-class.html b/TestON/Documentation/TestON_Document/TestON.core.ast.NodeVisitor-class.html
deleted file mode 100644
index d73e8a4..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.ast.NodeVisitor-class.html
+++ /dev/null
@@ -1,237 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.ast.NodeVisitor</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- <a href="TestON.core.ast-module.html">Module ast</a> ::
- Class NodeVisitor
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.ast.NodeVisitor-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class NodeVisitor</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.ast-pysrc.html#NodeVisitor">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_nodevisito" name="class_hierarchy_for_nodevisito">
-<area shape="rect" id="node1" href="TestON.core.ast.NodeTransformer-class.html" title="NodeTransformer" alt="" coords="5,62,128,87"/>
-<area shape="rect" id="node2" href="TestON.core.ast.NodeVisitor-class.html" title="NodeVisitor" alt="" coords="21,6,112,31"/>
-</map>
- <img src="class_hierarchy_for_nodevisito.gif" alt='' usemap="#class_hierarchy_for_nodevisito" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<p>A node visitor base class that walks the abstract syntax tree and
- calls a visitor function for every node found. This function may return
- a value which is forwarded by the `visit` method.</p>
- <p>This class is meant to be subclassed, with the subclass adding visitor
- methods.</p>
- <p>Per default the visitor functions for the nodes are ``'visit_'`` +
- class name of the node. So a `TryFinally` node visit function would be
- `visit_TryFinally`. This behavior can be changed by overriding the
- `visit` method. If no visitor function exists for a node (return value
- `None`) the `generic_visit` visitor is used instead.</p>
- <p>Don't use the `NodeVisitor` if you want to apply changes to nodes
- during traversing. For this a special visitor exists (`NodeTransformer`)
- that allows modifications.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="visit"></a><span class="summary-sig-name">visit</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">node</span>)</span><br />
- Visit a node.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.ast-pysrc.html#NodeVisitor.visit">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="generic_visit"></a><span class="summary-sig-name">generic_visit</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">node</span>)</span><br />
- Called if no explicit visitor function exists for a node.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.ast-pysrc.html#NodeVisitor.generic_visit">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.dicttoobject-module.html b/TestON/Documentation/TestON_Document/TestON.core.dicttoobject-module.html
deleted file mode 100644
index 12875a1..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.dicttoobject-module.html
+++ /dev/null
@@ -1,166 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.dicttoobject</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module dicttoobject
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.dicttoobject-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module dicttoobject</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.dicttoobject-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.core.dicttoobject.DictToObject-class.html" class="summary-name">DictToObject</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.dicttoobject-pysrc.html b/TestON/Documentation/TestON_Document/TestON.core.dicttoobject-pysrc.html
deleted file mode 100644
index cc71eea..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.dicttoobject-pysrc.html
+++ /dev/null
@@ -1,252 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.dicttoobject</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module dicttoobject
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.dicttoobject-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.core.dicttoobject-module.html">Module TestON.core.dicttoobject</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"> </tt>
-<a name="DictToObject"></a><div id="DictToObject-def"><a name="L3"></a><tt class="py-lineno"> 3</tt> <a class="py-toggle" href="#" id="DictToObject-toggle" onclick="return toggle('DictToObject');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.core.dicttoobject.DictToObject-class.html">DictToObject</a><tt class="py-op">(</tt> <tt class="py-base-class">dict</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DictToObject-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="DictToObject-expanded"><a name="DictToObject.__init__"></a><div id="DictToObject.__init__-def"><a name="L4"></a><tt class="py-lineno"> 4</tt> <a class="py-toggle" href="#" id="DictToObject.__init__-toggle" onclick="return toggle('DictToObject.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.dicttoobject.DictToObject-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DictToObject.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="DictToObject.__init__-expanded"><a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-0" class="py-name" targets="Class TestON.core.dicttoobject.DictToObject=TestON.core.dicttoobject.DictToObject-class.html"><a title="TestON.core.dicttoobject.DictToObject" class="py-name" href="#" onclick="return doclink('link-0', 'DictToObject', 'link-0');">DictToObject</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-1', '__init__', 'link-1');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">data</tt><tt class="py-op">:</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.core.dicttoobject.DictToObject.__update()=TestON.core.dicttoobject.DictToObject-class.html#__update"><a title="TestON.core.dicttoobject.DictToObject.__update" class="py-name" href="#" onclick="return doclink('link-2', '__update', 'link-2');">__update</a></tt><tt class="py-op">(</tt> <tt class="py-name">data</tt><tt class="py-op">,</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> </tt>
-<a name="DictToObject.__update"></a><div id="DictToObject.__update-def"><a name="L9"></a><tt class="py-lineno"> 9</tt> <a class="py-toggle" href="#" id="DictToObject.__update-toggle" onclick="return toggle('DictToObject.__update');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.dicttoobject.DictToObject-class.html#__update">__update</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">,</tt> <tt class="py-param">did</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DictToObject.__update-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="DictToObject.__update-expanded"><a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"> <tt class="py-name">dataid</tt> <tt class="py-op">=</tt> <tt class="py-name">id</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"> <tt class="py-name">did</tt><tt class="py-op">[</tt> <tt class="py-name">dataid</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">k</tt> <tt class="py-keyword">in</tt> <tt class="py-name">data</tt><tt class="py-op">:</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"> <tt class="py-name">dkid</tt> <tt class="py-op">=</tt> <tt class="py-name">id</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">did</tt><tt class="py-op">.</tt><tt class="py-name">has_key</tt><tt class="py-op">(</tt><tt class="py-name">dkid</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">did</tt><tt class="py-op">[</tt><tt class="py-name">dkid</tt><tt class="py-op">]</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt id="link-3" class="py-name"><a title="TestON.core.dicttoobject.DictToObject" class="py-name" href="#" onclick="return doclink('link-3', 'DictToObject', 'link-0');">DictToObject</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">dict</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"> <tt class="py-name">obj</tt> <tt class="py-op">=</tt> <tt id="link-4" class="py-name"><a title="TestON.core.dicttoobject.DictToObject" class="py-name" href="#" onclick="return doclink('link-4', 'DictToObject', 'link-0');">DictToObject</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"> <tt class="py-name">obj</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="TestON.core.dicttoobject.DictToObject.__update" class="py-name" href="#" onclick="return doclink('link-5', '__update', 'link-2');">__update</a></tt><tt class="py-op">(</tt> <tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">did</tt> <tt class="py-op">)</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">obj</tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> <tt class="py-name">obj</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> </tt>
-</div><a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> </tt>
-<a name="DictToObject.__getattr__"></a><div id="DictToObject.__getattr__-def"><a name="L27"></a><tt class="py-lineno">27</tt> <a class="py-toggle" href="#" id="DictToObject.__getattr__-toggle" onclick="return toggle('DictToObject.__getattr__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.dicttoobject.DictToObject-class.html#__getattr__">__getattr__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DictToObject.__getattr__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="DictToObject.__getattr__-expanded"><a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-name">key</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> </tt>
-<a name="DictToObject.__setattr__"></a><div id="DictToObject.__setattr__-def"><a name="L30"></a><tt class="py-lineno">30</tt> <a class="py-toggle" href="#" id="DictToObject.__setattr__-toggle" onclick="return toggle('DictToObject.__setattr__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.dicttoobject.DictToObject-class.html#__setattr__">__setattr__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">,</tt> <tt class="py-param">value</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DictToObject.__setattr__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="DictToObject.__setattr__-expanded"><a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">,</tt><tt class="py-name">dict</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-6" class="py-name"><a title="TestON.core.dicttoobject.DictToObject" class="py-name" href="#" onclick="return doclink('link-6', 'DictToObject', 'link-0');">DictToObject</a></tt><tt class="py-op">(</tt> <tt class="py-name">value</tt> <tt class="py-op">)</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">value</tt> </tt>
-</div><a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> </tt>
-<a name="DictToObject.update"></a><div id="DictToObject.update-def"><a name="L36"></a><tt class="py-lineno">36</tt> <a class="py-toggle" href="#" id="DictToObject.update-toggle" onclick="return toggle('DictToObject.update');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.dicttoobject.DictToObject-class.html#update">update</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DictToObject.update-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="DictToObject.update-expanded"><a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">obj</tt> <tt class="py-keyword">in</tt> <tt class="py-name">args</tt><tt class="py-op">:</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">k</tt> <tt class="py-keyword">in</tt> <tt class="py-name">obj</tt><tt class="py-op">:</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">dict</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-7" class="py-name"><a title="TestON.core.dicttoobject.DictToObject" class="py-name" href="#" onclick="return doclink('link-7', 'DictToObject', 'link-0');">DictToObject</a></tt><tt class="py-op">(</tt> <tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt> </tt>
-</div><a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> </tt>
-<a name="DictToObject.merge"></a><div id="DictToObject.merge-def"><a name="L45"></a><tt class="py-lineno">45</tt> <a class="py-toggle" href="#" id="DictToObject.merge-toggle" onclick="return toggle('DictToObject.merge');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.dicttoobject.DictToObject-class.html#merge">merge</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DictToObject.merge-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="DictToObject.merge-expanded"><a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">obj</tt> <tt class="py-keyword">in</tt> <tt class="py-name">args</tt><tt class="py-op">:</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">k</tt> <tt class="py-keyword">in</tt> <tt class="py-name">obj</tt><tt class="py-op">:</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">has_key</tt><tt class="py-op">(</tt><tt class="py-name">k</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">list</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">+=</tt> <tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt id="link-8" class="py-name"><a title="TestON.core.dicttoobject.DictToObject" class="py-name" href="#" onclick="return doclink('link-8', 'DictToObject', 'link-0');">DictToObject</a></tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">Object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.core.dicttoobject.DictToObject.merge()=TestON.core.dicttoobject.DictToObject-class.html#merge"><a title="TestON.core.dicttoobject.DictToObject.merge" class="py-name" href="#" onclick="return doclink('link-9', 'merge', 'link-9');">merge</a></tt><tt class="py-op">(</tt> <tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt id="link-10" class="py-name"><a title="TestON.core.dicttoobject.DictToObject" class="py-name" href="#" onclick="return doclink('link-10', 'DictToObject', 'link-0');">DictToObject</a></tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">dict</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.core.dicttoobject.DictToObject.merge" class="py-name" href="#" onclick="return doclink('link-11', 'merge', 'link-9');">merge</a></tt><tt class="py-op">(</tt> <tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L59"></a><tt class="py-lineno">59</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L60"></a><tt class="py-lineno">60</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">]</tt> </tt>
-<a name="L61"></a><tt class="py-lineno">61</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L62"></a><tt class="py-lineno">62</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">dict</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L63"></a><tt class="py-lineno">63</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-12" class="py-name"><a title="TestON.core.dicttoobject.DictToObject" class="py-name" href="#" onclick="return doclink('link-12', 'DictToObject', 'link-0');">DictToObject</a></tt><tt class="py-op">(</tt> <tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno">64</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L65"></a><tt class="py-lineno">65</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">]</tt> </tt>
-<a name="L66"></a><tt class="py-lineno">66</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt> </tt>
-</div></div><a name="L67"></a><tt class="py-lineno">67</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.dicttoobject.DictToObject-class.html b/TestON/Documentation/TestON_Document/TestON.core.dicttoobject.DictToObject-class.html
deleted file mode 100644
index 3b0d9f2..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.dicttoobject.DictToObject-class.html
+++ /dev/null
@@ -1,452 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.dicttoobject.DictToObject</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- <a href="TestON.core.dicttoobject-module.html">Module dicttoobject</a> ::
- Class DictToObject
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.dicttoobject.DictToObject-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class DictToObject</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.dicttoobject-pysrc.html#DictToObject">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_dicttoobje" name="class_hierarchy_for_dicttoobje">
-<area shape="rect" id="node1" href="TestON.core.dicttoobject.DictToObject-class.html" title="DictToObject" alt="" coords="5,62,104,87"/>
-<area shape="rect" id="node2" href="javascript:void(0);" title="dict" alt="" coords="33,6,76,31"/>
-</map>
- <img src="class_hierarchy_for_dicttoobje.gif" alt='' usemap="#class_hierarchy_for_dicttoobje" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><pre class="literalblock">
-new empty dictionary
-
-</pre></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.dicttoobject.DictToObject-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">data</span>=<span class="summary-sig-default">None</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.dicttoobject-pysrc.html#DictToObject.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__update"></a><span class="summary-sig-name">__update</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">data</span>,
- <span class="summary-sig-arg">did</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.dicttoobject-pysrc.html#DictToObject.__update">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__getattr__"></a><span class="summary-sig-name">__getattr__</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">key</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.dicttoobject-pysrc.html#DictToObject.__getattr__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.dicttoobject.DictToObject-class.html#__setattr__" class="summary-sig-name">__setattr__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">key</span>,
- <span class="summary-sig-arg">value</span>)</span><br />
- x.__setattr__('name', value) <==> x.name = value</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.dicttoobject-pysrc.html#DictToObject.__setattr__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">None</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.dicttoobject.DictToObject-class.html#update" class="summary-sig-name">update</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*args</span>)</span><br />
- Update D from dict/iterable E and F.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.dicttoobject-pysrc.html#DictToObject.update">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="merge"></a><span class="summary-sig-name">merge</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*args</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.dicttoobject-pysrc.html#DictToObject.merge">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>dict</code></b>:
- <code>__cmp__</code>,
- <code>__contains__</code>,
- <code>__delitem__</code>,
- <code>__eq__</code>,
- <code>__ge__</code>,
- <code>__getattribute__</code>,
- <code>__getitem__</code>,
- <code>__gt__</code>,
- <code>__iter__</code>,
- <code>__le__</code>,
- <code>__len__</code>,
- <code>__lt__</code>,
- <code>__ne__</code>,
- <code>__new__</code>,
- <code>__repr__</code>,
- <code>__setitem__</code>,
- <code>__sizeof__</code>,
- <code>clear</code>,
- <code>copy</code>,
- <code>fromkeys</code>,
- <code>get</code>,
- <code>has_key</code>,
- <code>items</code>,
- <code>iteritems</code>,
- <code>iterkeys</code>,
- <code>itervalues</code>,
- <code>keys</code>,
- <code>pop</code>,
- <code>popitem</code>,
- <code>setdefault</code>,
- <code>values</code>,
- <code>viewitems</code>,
- <code>viewkeys</code>,
- <code>viewvalues</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS VARIABLES ==================== -->
-<a name="section-ClassVariables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Class Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-ClassVariables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>dict</code></b>:
- <code>__hash__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">data</span>=<span class="sig-default">None</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.dicttoobject-pysrc.html#DictToObject.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Returns: <pre class="literalblock">
-new empty dictionary
-
-</pre></dt>
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__setattr__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__setattr__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">key</span>,
- <span class="sig-arg">value</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.dicttoobject-pysrc.html#DictToObject.__setattr__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__setattr__('name', value) <==> x.name = value</p>
- <dl class="fields">
- <dt>Overrides:
- object.__setattr__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="update"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">update</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">*args</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.dicttoobject-pysrc.html#DictToObject.update">source code</a></span>
- </td>
- </tr></table>
-
- <p>Update D from dict/iterable E and F. If E present and has a .keys()
- method, does: for k in E: D[k] = E[k] If E present and lacks .keys()
- method, does: for (k, v) in E: D[k] = v In either case, this is
- followed by: for k in F: D[k] = F[k]</p>
- <dl class="fields">
- <dt>Returns: None</dt>
- <dt>Overrides:
- dict.update
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.iniparser-module.html b/TestON/Documentation/TestON_Document/TestON.core.iniparser-module.html
deleted file mode 100644
index e3213c0..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.iniparser-module.html
+++ /dev/null
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.iniparser</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module iniparser
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.iniparser-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module iniparser</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.iniparser-pysrc.html">source code</a></span></p>
-<p>Created on 07-Jan-2013</p>
-
-<hr />
-<div class="fields"> <p><strong>Author:</strong>
- Raghav Kashyap(raghavkashyap@paxterrasolutions.com)
- <p>TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published
- by the Free Software Foundation, either version 2 of the License,
- or (at your option) any later version.</p>
- <p>TestON is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.</p>
- <p>You should have received a copy of the GNU General Public
- License along with TestON. If not, see
- <http://www.gnu.org/licenses/>.</p>
- </p>
-</div><!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.core.iniparser.iniparser-class.html" class="summary-name">iniparser</a><br />
- Manages authoring, parsing and execution of the test.
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.core'"><code class="variable-quote">'</code><code class="variable-string">TestON.core</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.iniparser-pysrc.html b/TestON/Documentation/TestON_Document/TestON.core.iniparser-pysrc.html
deleted file mode 100644
index 070c791..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.iniparser-pysrc.html
+++ /dev/null
@@ -1,206 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.iniparser</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module iniparser
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.iniparser-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.core.iniparser-module.html">Module TestON.core.iniparser</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 07-Jan-2013</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">@author: Raghav Kashyap(raghavkashyap@paxterrasolutions.com)</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-docstring"> (at your option) any later version.</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">configobj</tt> <tt class="py-keyword">import</tt> <tt class="py-name">ConfigObj</tt> </tt>
-<a name="iniparser"></a><div id="iniparser-def"><a name="L25"></a><tt class="py-lineno">25</tt> <a class="py-toggle" href="#" id="iniparser-toggle" onclick="return toggle('iniparser');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.core.iniparser.iniparser-class.html">iniparser</a><tt class="py-op">:</tt> </tt>
-</div><div id="iniparser-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="iniparser-expanded"><a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"><tt class="py-docstring"> Manages authoring, parsing and execution of the test. Sub components are</tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"><tt class="py-docstring"> Test-Topology parser</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"><tt class="py-docstring"> Module that parses the test from plain English and topology</tt> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"><tt class="py-docstring"> from a specification file and prepares for execution.</tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"><tt class="py-docstring"> Test sequencer</tt> </tt>
-<a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"><tt class="py-docstring"> Module that executes the tests case by case,</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"><tt class="py-docstring"> step by step adding ability for step by step pause and debug later.</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"><tt class="py-docstring"> Object loader</tt> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"><tt class="py-docstring"> Module that connects and loads all the component connection objects</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"><tt class="py-docstring"> for access in the test</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="iniparser.__init__"></a><div id="iniparser.__init__-def"><a name="L38"></a><tt class="py-lineno">38</tt> <a class="py-toggle" href="#" id="iniparser.__init__-toggle" onclick="return toggle('iniparser.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.iniparser.iniparser-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="iniparser.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="iniparser.__init__-expanded"><a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> </tt>
-<a name="iniparser.parse"></a><div id="iniparser.parse-def"><a name="L41"></a><tt class="py-lineno">41</tt> <a class="py-toggle" href="#" id="iniparser.parse-toggle" onclick="return toggle('iniparser.parse');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.iniparser.iniparser-class.html#parse">parse</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">fileName</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="iniparser.parse-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="iniparser.parse-expanded"><a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"><tt class="py-docstring"> This will parse the params or topo or cfg file and return content in the file as Dictionary</tt> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fileName</tt> <tt class="py-op">=</tt> <tt class="py-name">fileName</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-name">matchFileName</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">r'(.*)\.(params|topo)'</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fileName</tt><tt class="py-op">,</tt><tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">M</tt><tt class="py-op">|</tt><tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">I</tt><tt class="py-op">)</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">matchFileName</tt><tt class="py-op">:</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> <tt class="py-name">parsedInfo</tt> <tt class="py-op">=</tt> <tt class="py-name">ConfigObj</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fileName</tt><tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">parsedInfo</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"There is no such file to parse "</tt><tt class="py-op">+</tt><tt class="py-name">fileName</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-number">0</tt> </tt>
-</div><a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> </tt>
-<a name="iniparser.parseParams"></a><div id="iniparser.parseParams-def"><a name="L56"></a><tt class="py-lineno">56</tt> <a class="py-toggle" href="#" id="iniparser.parseParams-toggle" onclick="return toggle('iniparser.parseParams');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.iniparser.iniparser-class.html#parseParams">parseParams</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">paramsPath</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="iniparser.parseParams-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="iniparser.parseParams-expanded"><a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"><tt class="py-docstring"> It will take the params file path and will return the params dictionary</tt> </tt>
-<a name="L59"></a><tt class="py-lineno">59</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L60"></a><tt class="py-lineno">60</tt> <tt class="py-line"> </tt>
-<a name="L61"></a><tt class="py-lineno">61</tt> <tt class="py-line"> <tt class="py-name">paramsPath</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"\."</tt><tt class="py-op">,</tt><tt class="py-string">"/"</tt><tt class="py-op">,</tt><tt class="py-name">paramsPath</tt><tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno">62</tt> <tt class="py-line"> <tt class="py-name">paramsPath</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"tests|examples"</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">,</tt><tt class="py-name">paramsPath</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno">63</tt> <tt class="py-line"> <tt class="py-comment">#print main.tests_path+"/"+paramsPath+".params"</tt> </tt>
-<a name="L64"></a><tt class="py-lineno">64</tt> <tt class="py-line"> <tt class="py-name">params</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Function TestON.core.ast.parse()=TestON.core.ast-module.html#parse,Method TestON.core.iniparser.iniparser.parse()=TestON.core.iniparser.iniparser-class.html#parse,Method TestON.core.xmlparser.xmlparser.parse()=TestON.core.xmlparser.xmlparser-class.html#parse"><a title="TestON.core.ast.parse
-TestON.core.iniparser.iniparser.parse
-TestON.core.xmlparser.xmlparser.parse" class="py-name" href="#" onclick="return doclink('link-1', 'parse', 'link-1');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Variable TestON.bin.cli.tests_path=TestON.bin.cli-module.html#tests_path,Variable TestON.core.teston.tests_path=TestON.core.teston-module.html#tests_path"><a title="TestON.bin.cli.tests_path
-TestON.core.teston.tests_path" class="py-name" href="#" onclick="return doclink('link-2', 'tests_path', 'link-2');">tests_path</a></tt><tt class="py-op">+</tt><tt class="py-name">paramsPath</tt><tt class="py-op">+</tt><tt class="py-string">".params"</tt><tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno">65</tt> <tt class="py-line"> <tt class="py-name">paramsAsString</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">params</tt><tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno">66</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">eval</tt><tt class="py-op">(</tt><tt class="py-name">paramsAsString</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L67"></a><tt class="py-lineno">67</tt> <tt class="py-line"> </tt>
-<a name="iniparser.parseTopology"></a><div id="iniparser.parseTopology-def"><a name="L68"></a><tt class="py-lineno">68</tt> <a class="py-toggle" href="#" id="iniparser.parseTopology-toggle" onclick="return toggle('iniparser.parseTopology');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.iniparser.iniparser-class.html#parseTopology">parseTopology</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">topologyPath</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="iniparser.parseTopology-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="iniparser.parseTopology-expanded"><a name="L69"></a><tt class="py-lineno">69</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L70"></a><tt class="py-lineno">70</tt> <tt class="py-line"><tt class="py-docstring"> It will take topology file path and will return topology dictionary</tt> </tt>
-<a name="L71"></a><tt class="py-lineno">71</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L72"></a><tt class="py-lineno">72</tt> <tt class="py-line"> <tt class="py-name">topologyPath</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"\."</tt><tt class="py-op">,</tt><tt class="py-string">"/"</tt><tt class="py-op">,</tt><tt class="py-name">topologyPath</tt><tt class="py-op">)</tt> </tt>
-<a name="L73"></a><tt class="py-lineno">73</tt> <tt class="py-line"> <tt class="py-name">topologyPath</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"tests|examples"</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">,</tt><tt class="py-name">topologyPath</tt><tt class="py-op">)</tt> </tt>
-<a name="L74"></a><tt class="py-lineno">74</tt> <tt class="py-line"> <tt id="link-3" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#topology,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topology"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-3', 'topology', 'link-3');">topology</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name"><a title="TestON.core.ast.parse
-TestON.core.iniparser.iniparser.parse
-TestON.core.xmlparser.xmlparser.parse" class="py-name" href="#" onclick="return doclink('link-4', 'parse', 'link-1');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="TestON.bin.cli.tests_path
-TestON.core.teston.tests_path" class="py-name" href="#" onclick="return doclink('link-5', 'tests_path', 'link-2');">tests_path</a></tt><tt class="py-op">+</tt><tt class="py-string">"/"</tt><tt class="py-op">+</tt><tt class="py-name">topologyPath</tt><tt class="py-op">+</tt><tt class="py-string">".topo"</tt><tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno">75</tt> <tt class="py-line"> <tt class="py-name">topoAsString</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-6" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-6', 'topology', 'link-3');">topology</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno">76</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">eval</tt><tt class="py-op">(</tt><tt class="py-name">topoAsString</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L77"></a><tt class="py-lineno">77</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.iniparser.iniparser-class.html b/TestON/Documentation/TestON_Document/TestON.core.iniparser.iniparser-class.html
deleted file mode 100644
index 5fc804a..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.iniparser.iniparser-class.html
+++ /dev/null
@@ -1,214 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.iniparser.iniparser</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- <a href="TestON.core.iniparser-module.html">Module iniparser</a> ::
- Class iniparser
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.iniparser.iniparser-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class iniparser</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.iniparser-pysrc.html#iniparser">source code</a></span></p>
-<p>Manages authoring, parsing and execution of the test. Sub components
- are Test-Topology parser Module that parses the test from plain English
- and topology from a specification file and prepares for execution. Test
- sequencer Module that executes the tests case by case, step by step
- adding ability for step by step pause and debug later. Object loader
- Module that connects and loads all the component connection objects for
- access in the test</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.iniparser-pysrc.html#iniparser.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="parse"></a><span class="summary-sig-name">parse</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">fileName</span>)</span><br />
- This will parse the params or topo or cfg file and return content in
- the file as Dictionary</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.iniparser-pysrc.html#iniparser.parse">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="parseParams"></a><span class="summary-sig-name">parseParams</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">paramsPath</span>)</span><br />
- It will take the params file path and will return the params
- dictionary</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.iniparser-pysrc.html#iniparser.parseParams">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="parseTopology"></a><span class="summary-sig-name">parseTopology</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">topologyPath</span>)</span><br />
- It will take topology file path and will return topology dictionary</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.iniparser-pysrc.html#iniparser.parseTopology">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.jsonparser-module.html b/TestON/Documentation/TestON_Document/TestON.core.jsonparser-module.html
deleted file mode 100644
index ea08f06..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.jsonparser-module.html
+++ /dev/null
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.jsonparser</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module jsonparser
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.jsonparser-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module jsonparser</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.jsonparser-pysrc.html">source code</a></span></p>
-<p>Created on 07-Jan-2013</p>
-
-<hr />
-<div class="fields"> <p><strong>Author:</strong>
- Raghav Kashyap(raghavkashyap@paxterrasolutions.com)
- <p>TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published
- by the Free Software Foundation, either version 2 of the License,
- or (at your option) any later version.</p>
- <p>TestON is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.</p>
- <p>You should have received a copy of the GNU General Public
- License along with TestON. If not, see
- <http://www.gnu.org/licenses/>.</p>
- </p>
-</div><!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.core.jsonparser.JsonParser-class.html" class="summary-name">JsonParser</a><br />
- Module that parses the response Json to Dictionary and Vice versa.
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.core'"><code class="variable-quote">'</code><code class="variable-string">TestON.core</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.jsonparser-pysrc.html b/TestON/Documentation/TestON_Document/TestON.core.jsonparser-pysrc.html
deleted file mode 100644
index 93a00aa..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.jsonparser-pysrc.html
+++ /dev/null
@@ -1,177 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.jsonparser</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module jsonparser
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.jsonparser-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.core.jsonparser-module.html">Module TestON.core.jsonparser</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 07-Jan-2013</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">@author: Raghav Kashyap(raghavkashyap@paxterrasolutions.com)</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-docstring"> (at your option) any later version.</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="JsonParser"></a><div id="JsonParser-def"><a name="L25"></a><tt class="py-lineno">25</tt> <a class="py-toggle" href="#" id="JsonParser-toggle" onclick="return toggle('JsonParser');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.core.jsonparser.JsonParser-class.html">JsonParser</a><tt class="py-op">:</tt> </tt>
-</div><div id="JsonParser-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="JsonParser-expanded"><a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"><tt class="py-docstring"> Module that parses the response Json to Dictionary and Vice versa.</tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="JsonParser.__init__"></a><div id="JsonParser.__init__-def"><a name="L29"></a><tt class="py-lineno">29</tt> <a class="py-toggle" href="#" id="JsonParser.__init__-toggle" onclick="return toggle('JsonParser.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.jsonparser.JsonParser-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="JsonParser.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="JsonParser.__init__-expanded"><a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"> </tt>
-<a name="JsonParser.response_parse"></a><div id="JsonParser.response_parse-def"><a name="L32"></a><tt class="py-lineno">32</tt> <a class="py-toggle" href="#" id="JsonParser.response_parse-toggle" onclick="return toggle('JsonParser.response_parse');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.jsonparser.JsonParser-class.html#response_parse">response_parse</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">json_response</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="JsonParser.response_parse-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="JsonParser.response_parse-expanded"><a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"><tt class="py-docstring"> This will parse the json formatted string and return content as Dictionary</tt> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> <tt class="py-name">response_dict</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-name">response_dict</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">json_response</tt><tt class="py-op">)</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-2', 'error', 'link-2');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">"Json Parser is unable to parse the string"</tt><tt class="py-op">)</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response_dict</tt> </tt>
-</div><a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt class="py-string">'''</tt> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"><tt class="py-string"> def dict_json(self,response_dict):</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"><tt class="py-string"> # This will parse the Python Dictionary and return content as Json string.</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"><tt class="py-string"> json_response = {}</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"><tt class="py-string"> try :</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"><tt class="py-string"> json_response = json.dumps(response_dict)</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"><tt class="py-string"> except Exception:</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"><tt class="py-string"> main.log.error("Json Parser is unable to parse the string")</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"><tt class="py-string"> return json_response</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"><tt class="py-string"> '''</tt> </tt>
-</div><a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.jsonparser.JsonParser-class.html b/TestON/Documentation/TestON_Document/TestON.core.jsonparser.JsonParser-class.html
deleted file mode 100644
index 068b21f..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.jsonparser.JsonParser-class.html
+++ /dev/null
@@ -1,171 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.jsonparser.JsonParser</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- <a href="TestON.core.jsonparser-module.html">Module jsonparser</a> ::
- Class JsonParser
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.jsonparser.JsonParser-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class JsonParser</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.jsonparser-pysrc.html#JsonParser">source code</a></span></p>
-<p>Module that parses the response Json to Dictionary and Vice versa.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.jsonparser-pysrc.html#JsonParser.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="response_parse"></a><span class="summary-sig-name">response_parse</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">json_response</span>)</span><br />
- This will parse the json formatted string and return content as
- Dictionary</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.jsonparser-pysrc.html#JsonParser.response_parse">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.logger-module.html b/TestON/Documentation/TestON_Document/TestON.core.logger-module.html
deleted file mode 100644
index 0a0303e..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.logger-module.html
+++ /dev/null
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.logger</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module logger
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.logger-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module logger</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.logger-pysrc.html">source code</a></span></p>
-<p>Created on 07-Jan-2013</p>
-
-<hr />
-<div class="fields"> <p><strong>Author:</strong>
- Raghav Kashyap(raghavkashyap@paxterrasolutions.com)
- <p>TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published
- by the Free Software Foundation, either version 2 of the License,
- or (at your option) any later version.</p>
- <p>TestON is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.</p>
- <p>You should have received a copy of the GNU General Public
- License along with TestON. If not, see
- <http://www.gnu.org/licenses/>.</p>
- </p>
-</div><!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.core.logger.Logger-class.html" class="summary-name">Logger</a><br />
- Add continuous logs and reports of the test.
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.core'"><code class="variable-quote">'</code><code class="variable-string">TestON.core</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.logger-pysrc.html b/TestON/Documentation/TestON_Document/TestON.core.logger-pysrc.html
deleted file mode 100644
index 48c469c..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.logger-pysrc.html
+++ /dev/null
@@ -1,451 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.logger</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module logger
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.logger-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.core.logger-module.html">Module TestON.core.logger</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 07-Jan-2013</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">@author: Raghav Kashyap(raghavkashyap@paxterrasolutions.com)</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"> (at your option) any later version.</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">logging</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">datetime</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="Logger"></a><div id="Logger-def"><a name="L27"></a><tt class="py-lineno"> 27</tt> <a class="py-toggle" href="#" id="Logger-toggle" onclick="return toggle('Logger');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.core.logger.Logger-class.html">Logger</a><tt class="py-op">:</tt> </tt>
-</div><div id="Logger-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="Logger-expanded"><a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-docstring"> Add continuous logs and reports of the test.</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-docstring"> @author: Raghav Kashyap(raghavkashyap@paxterrasolutions.com)</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="Logger._printHeader"></a><div id="Logger._printHeader-def"><a name="L33"></a><tt class="py-lineno"> 33</tt> <a class="py-toggle" href="#" id="Logger._printHeader-toggle" onclick="return toggle('Logger._printHeader');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.logger.Logger-class.html#_printHeader">_printHeader</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">main</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="Logger._printHeader-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Logger._printHeader-expanded"><a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"> Log's header will be append to the Log file</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">logmsg</tt> <tt class="py-op">=</tt> <tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">32</tt><tt class="py-op">+</tt><tt class="py-string">"+----------------+\n"</tt> <tt class="py-op">+</tt><tt class="py-string">"-"</tt> <tt class="py-op">*</tt> <tt class="py-number">30</tt><tt class="py-op">+</tt><tt class="py-string">" { Script And Files } "</tt><tt class="py-op">+</tt><tt class="py-string">"-"</tt> <tt class="py-op">*</tt> <tt class="py-number">30</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> <tt class="py-op">+</tt><tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">32</tt><tt class="py-op">+</tt><tt class="py-string">"+----------------+\n"</tt><tt class="py-op">;</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-name">logmsg</tt> <tt class="py-op">=</tt> <tt class="py-name">logmsg</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n\tScript Log File : "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">LogFileName</tt> <tt class="py-op">+</tt> <tt class="py-string">""</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">logmsg</tt> <tt class="py-op">=</tt> <tt class="py-name">logmsg</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n\tReport Log File : "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ReportFileName</tt> <tt class="py-op">+</tt> <tt class="py-string">""</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">component</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">logmsg</tt> <tt class="py-op">=</tt> <tt class="py-name">logmsg</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n\t"</tt><tt class="py-op">+</tt><tt class="py-name">component</tt><tt class="py-op">+</tt><tt class="py-string">" Session Log : "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt><tt class="py-op">+</tt><tt class="py-string">"/"</tt><tt class="py-op">+</tt><tt class="py-name">component</tt><tt class="py-op">+</tt><tt class="py-string">".session"</tt> <tt class="py-op">+</tt> <tt class="py-string">""</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">logmsg</tt> <tt class="py-op">=</tt> <tt class="py-name">logmsg</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n\tTest Script :"</tt> <tt class="py-op">+</tt> <tt id="link-0" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-0', 'path', 'link-0');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"Tests/"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">".py"</tt><tt class="py-op">+</tt> <tt class="py-string">""</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-name">logmsg</tt> <tt class="py-op">=</tt> <tt class="py-name">logmsg</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n\tTest Params : "</tt> <tt class="py-op">+</tt> <tt id="link-1" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-1', 'path', 'link-0');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"Tests/"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">".params"</tt> <tt class="py-op">+</tt> <tt class="py-string">""</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">logmsg</tt> <tt class="py-op">=</tt> <tt class="py-name">logmsg</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n\tTopology : "</tt> <tt class="py-op">+</tt> <tt id="link-2" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-2', 'path', 'link-0');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"Tests/"</tt> <tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">".topo"</tt> <tt class="py-op">+</tt> <tt class="py-string">""</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">logmsg</tt> <tt class="py-op">=</tt> <tt class="py-name">logmsg</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">30</tt><tt class="py-op">+</tt><tt class="py-string">"+"</tt> <tt class="py-op">+</tt><tt class="py-string">"-"</tt> <tt class="py-op">*</tt> <tt class="py-number">18</tt><tt class="py-op">+</tt><tt class="py-string">"+"</tt> <tt class="py-op">+</tt><tt class="py-string">"\n"</tt> <tt class="py-op">+</tt><tt class="py-string">"-"</tt> <tt class="py-op">*</tt> <tt class="py-number">27</tt><tt class="py-op">+</tt><tt class="py-string">" { Script Exec Params } "</tt><tt class="py-op">+</tt><tt class="py-string">"-"</tt> <tt class="py-op">*</tt> <tt class="py-number">27</tt> <tt class="py-op">+</tt><tt class="py-string">"\n"</tt> <tt class="py-op">+</tt><tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">30</tt> <tt class="py-op">+</tt><tt class="py-string">"+"</tt><tt class="py-op">+</tt><tt class="py-string">"-"</tt> <tt class="py-op">*</tt> <tt class="py-number">18</tt> <tt class="py-op">+</tt><tt class="py-string">"+\n"</tt><tt class="py-op">;</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">values</tt> <tt class="py-op">=</tt> <tt class="py-string">"\n\t"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">)</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">values</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">,</tt> <tt class="py-string">"\n\t"</tt><tt class="py-op">,</tt> <tt class="py-name">values</tt><tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">values</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"{"</tt><tt class="py-op">,</tt> <tt class="py-string">"\n\t"</tt><tt class="py-op">,</tt> <tt class="py-name">values</tt><tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">values</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"}"</tt><tt class="py-op">,</tt> <tt class="py-string">"\n\t"</tt><tt class="py-op">,</tt> <tt class="py-name">values</tt><tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">logmsg</tt> <tt class="py-op">=</tt> <tt class="py-name">logmsg</tt> <tt class="py-op">+</tt> <tt class="py-name">values</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">logmsg</tt> <tt class="py-op">=</tt> <tt class="py-name">logmsg</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n\n"</tt><tt class="py-op">+</tt><tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">31</tt><tt class="py-op">+</tt><tt class="py-string">"+---------------+\n"</tt> <tt class="py-op">+</tt><tt class="py-string">"-"</tt> <tt class="py-op">*</tt> <tt class="py-number">29</tt><tt class="py-op">+</tt><tt class="py-string">" { Components Used } "</tt> <tt class="py-op">+</tt><tt class="py-string">"-"</tt> <tt class="py-op">*</tt> <tt class="py-number">29</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">31</tt><tt class="py-op">+</tt><tt class="py-string">"+---------------+\n"</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">component_list</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">component_list</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-comment"># Listing the components in the order of test_target component should be first.</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">dict</tt><tt class="py-op">:</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">test_target</tt> <tt class="py-op">==</tt> <tt class="py-name">key</tt> <tt class="py-op">:</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">component_list</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">key</tt><tt class="py-op">+</tt><tt class="py-string">"-Test Target"</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">component_list</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">component_list</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">index</tt><tt class="py-op">==</tt><tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">component_list</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">logmsg</tt><tt class="py-op">+=</tt><tt class="py-string">"\t"</tt><tt class="py-op">+</tt><tt class="py-name">component_list</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">index</tt> <tt class="py-op">></tt> <tt class="py-number">0</tt> <tt class="py-op">:</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">logmsg</tt><tt class="py-op">+=</tt><tt class="py-string">"\t"</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">component_list</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">logmsg</tt> <tt class="py-op">=</tt> <tt class="py-name">logmsg</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n\n"</tt><tt class="py-op">+</tt><tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">30</tt><tt class="py-op">+</tt><tt class="py-string">"+--------+\n"</tt> <tt class="py-op">+</tt><tt class="py-string">"-"</tt> <tt class="py-op">*</tt> <tt class="py-number">28</tt><tt class="py-op">+</tt><tt class="py-string">" { Topology } "</tt><tt class="py-op">+</tt><tt class="py-string">"-"</tt> <tt class="py-op">*</tt> <tt class="py-number">28</tt> <tt class="py-op">+</tt><tt class="py-string">"\n"</tt> <tt class="py-op">+</tt><tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">30</tt><tt class="py-op">+</tt><tt class="py-string">"+--------+\n"</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">values</tt> <tt class="py-op">=</tt> <tt class="py-string">"\n\t"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#topology,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topology"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-3', 'topology', 'link-3');">topology</a></tt><tt class="py-op">[</tt><tt class="py-string">'COMPONENT'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">values</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">,</tt> <tt class="py-string">"\n\t"</tt><tt class="py-op">,</tt> <tt class="py-name">values</tt><tt class="py-op">)</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">values</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"{"</tt><tt class="py-op">,</tt> <tt class="py-string">"\n\t"</tt><tt class="py-op">,</tt> <tt class="py-name">values</tt><tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">values</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"}"</tt><tt class="py-op">,</tt> <tt class="py-string">"\n\t"</tt><tt class="py-op">,</tt> <tt class="py-name">values</tt><tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">logmsg</tt> <tt class="py-op">=</tt> <tt class="py-name">logmsg</tt> <tt class="py-op">+</tt> <tt class="py-name">values</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">logmsg</tt> <tt class="py-op">=</tt> <tt class="py-name">logmsg</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"-"</tt> <tt class="py-op">*</tt> <tt class="py-number">60</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-comment"># enter into log file all headers</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">logfile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">LogFileName</tt><tt class="py-op">,</tt><tt class="py-string">"w+"</tt><tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">logfile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt> <tt class="py-op">(</tt><tt class="py-name">logmsg</tt><tt class="py-op">)</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">logmsg</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logHeader</tt> <tt class="py-op">=</tt> <tt class="py-name">logmsg</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">logfile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-comment">#enter into report file all headers</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">reportFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ReportFileName</tt><tt class="py-op">,</tt><tt class="py-string">"w+"</tt><tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">reportFile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">logmsg</tt><tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">reportFile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-comment">#Sumamry file header</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">currentTime</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">STARTTIME</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt><tt class="py-string">"%d %b %Y %H:%M:%S"</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">summaryFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">SummaryFileName</tt><tt class="py-op">,</tt> <tt class="py-string">"w+"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">summaryFile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">" at "</tt> <tt class="py-op">+</tt> <tt class="py-name">currentTime</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">summaryFile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-comment">#wiki file header</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">currentTime</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">STARTTIME</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt><tt class="py-string">"%d %b %Y %H:%M:%S"</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">wikiFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">WikiFileName</tt><tt class="py-op">,</tt> <tt class="py-string">"w+"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">wikiFile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">" at "</tt> <tt class="py-op">+</tt> <tt class="py-name">currentTime</tt> <tt class="py-op">+</tt> <tt class="py-string">"<p></p>\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">wikiFile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> </tt>
-<a name="Logger.initlog"></a><div id="Logger.initlog-def"><a name="L103"></a><tt class="py-lineno">103</tt> <a class="py-toggle" href="#" id="Logger.initlog-toggle" onclick="return toggle('Logger.initlog');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.logger.Logger-class.html#initlog">initlog</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">main</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Logger.initlog-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Logger.initlog-expanded"><a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"><tt class="py-docstring"> Initialise all the log handles.</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Method TestON.core.teston.TestON._getTest()=TestON.core.teston.TestON-class.html#_getTest"><a title="TestON.core.teston.TestON._getTest" class="py-name" href="#" onclick="return doclink('link-4', '_getTest', 'link-4');">_getTest</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">STARTTIME</tt> <tt class="py-op">=</tt> <tt class="py-name">datetime</tt><tt class="py-op">.</tt><tt class="py-name">datetime</tt><tt class="py-op">.</tt><tt class="py-name">now</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">currentTime</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"-|\s|:|\."</tt><tt class="py-op">,</tt> <tt class="py-string">"_"</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">STARTTIME</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt><tt class="py-string">"%d %b %Y %H:%M:%S"</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt><tt class="py-op">:</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt><tt class="py-op">+</tt> <tt class="py-string">"/"</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">"_"</tt> <tt class="py-op">+</tt> <tt class="py-name">currentTime</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Variable TestON.bin.cli.logs_path=TestON.bin.cli-module.html#logs_path,Variable TestON.core.teston.logs_path=TestON.core.teston-module.html#logs_path"><a title="TestON.bin.cli.logs_path
-TestON.core.teston.logs_path" class="py-name" href="#" onclick="return doclink('link-5', 'logs_path', 'link-5');">logs_path</a></tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">"_"</tt> <tt class="py-op">+</tt> <tt class="py-name">currentTime</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">mkdir</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt><tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">LogFileName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">"_"</tt> <tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">currentTime</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">".log"</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ReportFileName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">"_"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">currentTime</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">".rpt"</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">WikiFileName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">"Wiki.txt"</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">SummaryFileName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">"Summary.txt"</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">JenkinsCSV</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">".csv"</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-comment">#### Add log-level - Report</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">addLevelName</tt><tt class="py-op">(</tt><tt class="py-number">9</tt><tt class="py-op">,</tt> <tt class="py-string">"REPORT"</tt><tt class="py-op">)</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">addLevelName</tt><tt class="py-op">(</tt><tt class="py-number">7</tt><tt class="py-op">,</tt> <tt class="py-string">"EXACT"</tt><tt class="py-op">)</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">addLevelName</tt><tt class="py-op">(</tt><tt class="py-number">11</tt><tt class="py-op">,</tt> <tt class="py-string">"CASE"</tt><tt class="py-op">)</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">addLevelName</tt><tt class="py-op">(</tt><tt class="py-number">12</tt><tt class="py-op">,</tt> <tt class="py-string">"STEP"</tt><tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-6', 'log', 'link-6');">log</a></tt> <tt class="py-op">=</tt> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">getLogger</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt><tt class="py-op">)</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">report</tt><tt class="py-op">(</tt><tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"><tt class="py-docstring"> Will append the report message to the logs.</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-7', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt class="py-number">9</tt><tt class="py-op">,</tt><tt class="py-name">msg</tt><tt class="py-op">,</tt><tt class="py-string">"OpenFlowAutoMattion"</tt><tt class="py-op">,</tt><tt class="py-string">"OFAutoMation"</tt><tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">currentTime</tt> <tt class="py-op">=</tt> <tt class="py-name">datetime</tt><tt class="py-op">.</tt><tt class="py-name">datetime</tt><tt class="py-op">.</tt><tt class="py-name">now</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">currentTime</tt> <tt class="py-op">=</tt> <tt class="py-name">currentTime</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt><tt class="py-string">"%d %b %Y %H:%M:%S"</tt><tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">newmsg</tt> <tt class="py-op">=</tt> <tt class="py-string">"\n[REPORT] "</tt> <tt class="py-op">+</tt><tt class="py-string">"["</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">currentTime</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"] "</tt><tt class="py-op">+</tt><tt class="py-name">msg</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">newmsg</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">reportFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ReportFileName</tt><tt class="py-op">,</tt><tt class="py-string">"a+"</tt><tt class="py-op">)</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">reportFile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">newmsg</tt><tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">reportFile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-8', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt> <tt class="py-op">=</tt> <tt class="py-name">report</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">summary</tt><tt class="py-op">(</tt> <tt class="py-param">msg</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"><tt class="py-docstring"> Will append the message to the txt file for the summary.</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt class="py-number">6</tt><tt class="py-op">,</tt><tt class="py-name">msg</tt><tt class="py-op">,</tt><tt class="py-string">"OpenFlowAutoMattion"</tt><tt class="py-op">,</tt><tt class="py-string">"OFAutoMation"</tt><tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">summaryFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">SummaryFileName</tt><tt class="py-op">,</tt><tt class="py-string">"a+"</tt><tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">summaryFile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">summaryFile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-10', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.summary()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#summary"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.summary" class="py-name" href="#" onclick="return doclink('link-11', 'summary', 'link-11');">summary</a></tt> <tt class="py-op">=</tt> <tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.summary" class="py-name" href="#" onclick="return doclink('link-12', 'summary', 'link-11');">summary</a></tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-param">msg</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"><tt class="py-docstring"> Will append the message to the txt file for the wiki.</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-13', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt class="py-number">6</tt><tt class="py-op">,</tt><tt class="py-name">msg</tt><tt class="py-op">,</tt><tt class="py-string">"OpenFlowAutoMattion"</tt><tt class="py-op">,</tt><tt class="py-string">"OFAutoMation"</tt><tt class="py-op">)</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">wikiFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">WikiFileName</tt><tt class="py-op">,</tt><tt class="py-string">"a+"</tt><tt class="py-op">)</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">wikiFile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">wikiFile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-14', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt> <tt class="py-op">=</tt> <tt class="py-name">wiki</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">exact</tt><tt class="py-op">(</tt><tt class="py-param">exmsg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"><tt class="py-docstring"> Will append the raw formatted message to the logs</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-15', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt class="py-number">7</tt><tt class="py-op">,</tt><tt class="py-name">exmsg</tt><tt class="py-op">,</tt><tt class="py-string">"OpenFlowAutoMattion"</tt><tt class="py-op">,</tt><tt class="py-string">"OFAutoMation"</tt><tt class="py-op">)</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">reportFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ReportFileName</tt><tt class="py-op">,</tt><tt class="py-string">"a+"</tt><tt class="py-op">)</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">reportFile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">exmsg</tt><tt class="py-op">)</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">reportFile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">logfile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">LogFileName</tt><tt class="py-op">,</tt><tt class="py-string">"a"</tt><tt class="py-op">)</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">logfile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"\n"</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">exmsg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt><tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">logfile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">exmsg</tt> </tt>
-</div><a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-16', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exact</tt> <tt class="py-op">=</tt> <tt class="py-name">exact</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">case</tt><tt class="py-op">(</tt><tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"><tt class="py-docstring"> Format of the case type log defined here.</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-17', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt class="py-number">9</tt><tt class="py-op">,</tt><tt class="py-name">msg</tt><tt class="py-op">,</tt><tt class="py-string">"OpenFlowAutoMattion"</tt><tt class="py-op">,</tt><tt class="py-string">"OFAutoMation"</tt><tt class="py-op">)</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-name">currentTime</tt> <tt class="py-op">=</tt> <tt class="py-name">datetime</tt><tt class="py-op">.</tt><tt class="py-name">datetime</tt><tt class="py-op">.</tt><tt class="py-name">now</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-name">newmsg</tt> <tt class="py-op">=</tt> <tt class="py-string">"["</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">currentTime</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"] "</tt> <tt class="py-op">+</tt> <tt class="py-string">"["</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt><tt class="py-op">+</tt><tt class="py-string">"] "</tt> <tt class="py-op">+</tt> <tt class="py-string">"[CASE] "</tt> <tt class="py-op">+</tt><tt class="py-name">msg</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-name">logfile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">LogFileName</tt><tt class="py-op">,</tt><tt class="py-string">"a"</tt><tt class="py-op">)</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">logfile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"\n"</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">newmsg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt><tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-name">logfile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">newmsg</tt> </tt>
-</div><a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-18', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-19', 'case', 'link-19');">case</a></tt> <tt class="py-op">=</tt> <tt id="link-20" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-20', 'case', 'link-19');">case</a></tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">step</tt><tt class="py-op">(</tt><tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"><tt class="py-docstring"> Format of the step type log defined here.</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-21', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt class="py-number">9</tt><tt class="py-op">,</tt><tt class="py-name">msg</tt><tt class="py-op">,</tt><tt class="py-string">"OpenFlowAutoMattion"</tt><tt class="py-op">,</tt><tt class="py-string">"OFAutoMation"</tt><tt class="py-op">)</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-name">currentTime</tt> <tt class="py-op">=</tt> <tt class="py-name">datetime</tt><tt class="py-op">.</tt><tt class="py-name">datetime</tt><tt class="py-op">.</tt><tt class="py-name">now</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-name">newmsg</tt> <tt class="py-op">=</tt> <tt class="py-string">"["</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">currentTime</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"] "</tt> <tt class="py-op">+</tt> <tt class="py-string">"["</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt><tt class="py-op">+</tt><tt class="py-string">"] "</tt> <tt class="py-op">+</tt> <tt class="py-string">"[STEP] "</tt> <tt class="py-op">+</tt><tt class="py-name">msg</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-name">logfile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">LogFileName</tt><tt class="py-op">,</tt><tt class="py-string">"a"</tt><tt class="py-op">)</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-name">logfile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"\n"</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">newmsg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt><tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-name">logfile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">newmsg</tt> </tt>
-</div><a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-22', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-23', 'step', 'link-23');">step</a></tt> <tt class="py-op">=</tt> <tt id="link-24" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-24', 'step', 'link-23');">step</a></tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">LogFileHandler</tt> <tt class="py-op">=</tt> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">FileHandler</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">LogFileName</tt><tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name" targets="Method TestON.core.logger.Logger._printHeader()=TestON.core.logger.Logger-class.html#_printHeader"><a title="TestON.core.logger.Logger._printHeader" class="py-name" href="#" onclick="return doclink('link-25', '_printHeader', 'link-25');">_printHeader</a></tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">)</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-comment">### initializing logging module and settig log level</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-26', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">setLevel</tt><tt class="py-op">(</tt><tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">INFO</tt><tt class="py-op">)</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-27', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">setLevel</tt><tt class="py-op">(</tt><tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">DEBUG</tt><tt class="py-op">)</tt> <tt class="py-comment"># Temporary</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">LogFileHandler</tt><tt class="py-op">.</tt><tt class="py-name">setLevel</tt><tt class="py-op">(</tt><tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">INFO</tt><tt class="py-op">)</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-comment"># create console handler with a higher log level</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ConsoleHandler</tt> <tt class="py-op">=</tt> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">StreamHandler</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ConsoleHandler</tt><tt class="py-op">.</tt><tt class="py-name">setLevel</tt><tt class="py-op">(</tt><tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">INFO</tt><tt class="py-op">)</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ConsoleHandler</tt><tt class="py-op">.</tt><tt class="py-name">setLevel</tt><tt class="py-op">(</tt><tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">DEBUG</tt><tt class="py-op">)</tt> <tt class="py-comment">#Temporary</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-comment"># create formatter and add it to the handlers</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-comment">#formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-keyword">class</tt> <tt class="py-def-name">MyFormatter</tt><tt class="py-op">(</tt> <tt class="py-base-class">logging</tt><tt class="py-op">.</tt><tt class="py-base-class">Formatter</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-name">colors</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-string">'cyan'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[96m'</tt><tt class="py-op">,</tt> <tt class="py-string">'purple'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[95m'</tt><tt class="py-op">,</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-string">'blue'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[94m'</tt><tt class="py-op">,</tt> <tt class="py-string">'green'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[92m'</tt><tt class="py-op">,</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-string">'yellow'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[93m'</tt><tt class="py-op">,</tt> <tt class="py-string">'red'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[91m'</tt><tt class="py-op">,</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-string">'end'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[0m'</tt> <tt class="py-op">}</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-name">FORMATS</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-string">'DEFAULT'</tt><tt class="py-op">:</tt> <tt class="py-string">'%(asctime)s - %(name)s - %(levelname)s - %(message)s'</tt><tt class="py-op">}</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">COLORS</tt><tt class="py-op">:</tt> <tt class="py-comment"># NOTE:colors will only be loaded if command is run from one line</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-comment"># IE: './cli.py run testname'</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-comment"># This is to prevent issues with Jenkins parsing</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Make colors configurable</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-name">levels</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> <tt class="py-op">:</tt> <tt class="py-name">colors</tt><tt class="py-op">[</tt><tt class="py-string">'red'</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-name">FORMATS</tt><tt class="py-op">[</tt><tt class="py-string">'DEFAULT'</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-name">colors</tt><tt class="py-op">[</tt><tt class="py-string">'end'</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">WARN</tt> <tt class="py-op">:</tt> <tt class="py-name">colors</tt><tt class="py-op">[</tt><tt class="py-string">'yellow'</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">FORMATS</tt><tt class="py-op">[</tt><tt class="py-string">'DEFAULT'</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-name">colors</tt><tt class="py-op">[</tt><tt class="py-string">'end'</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">DEBUG</tt> <tt class="py-op">:</tt> <tt class="py-name">colors</tt><tt class="py-op">[</tt><tt class="py-string">'purple'</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-name">FORMATS</tt><tt class="py-op">[</tt><tt class="py-string">'DEFAULT'</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-name">colors</tt><tt class="py-op">[</tt><tt class="py-string">'end'</tt><tt class="py-op">]</tt> <tt class="py-op">}</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-name">FORMATS</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name" targets="Method TestON.core.dicttoobject.DictToObject.update()=TestON.core.dicttoobject.DictToObject-class.html#update,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#update"><a title="TestON.core.dicttoobject.DictToObject.update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update" class="py-name" href="#" onclick="return doclink('link-28', 'update', 'link-28');">update</a></tt><tt class="py-op">(</tt> <tt class="py-name">levels</tt> <tt class="py-op">)</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">format</tt><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">record</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_fmt</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">FORMATS</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-name">record</tt><tt class="py-op">.</tt><tt class="py-name">levelno</tt><tt class="py-op">,</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">FORMATS</tt><tt class="py-op">[</tt> <tt class="py-string">'DEFAULT'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">Formatter</tt><tt class="py-op">.</tt><tt class="py-name">format</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">record</tt> <tt class="py-op">)</tt> </tt>
-</div></div><a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-name">formatter</tt> <tt class="py-op">=</tt> <tt class="py-name">MyFormatter</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ConsoleHandler</tt><tt class="py-op">.</tt><tt class="py-name">setFormatter</tt><tt class="py-op">(</tt><tt class="py-name">formatter</tt><tt class="py-op">)</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">LogFileHandler</tt><tt class="py-op">.</tt><tt class="py-name">setFormatter</tt><tt class="py-op">(</tt><tt class="py-name">formatter</tt><tt class="py-op">)</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-comment"># add the handlers to logger</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-29', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">addHandler</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ConsoleHandler</tt><tt class="py-op">)</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-30', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">addHandler</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">LogFileHandler</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> </tt>
-<a name="Logger.testSummary"></a><div id="Logger.testSummary-def"><a name="L258"></a><tt class="py-lineno">258</tt> <a class="py-toggle" href="#" id="Logger.testSummary-toggle" onclick="return toggle('Logger.testSummary');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.logger.Logger-class.html#testSummary">testSummary</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">main</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Logger.testSummary-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Logger.testSummary-expanded"><a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"><tt class="py-docstring"> testSummary will take care about the Summary of test.</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ENDTIME</tt> <tt class="py-op">=</tt> <tt class="py-name">datetime</tt><tt class="py-op">.</tt><tt class="py-name">datetime</tt><tt class="py-op">.</tt><tt class="py-name">now</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">EXECTIME</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ENDTIME</tt> <tt class="py-op">-</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">STARTTIME</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_PASS</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_SUCCESS</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_SUCCESS</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_PASS</tt><tt class="py-op">*</tt><tt class="py-number">100</tt><tt class="py-op">)</tt><tt class="py-op">/</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_RUN</tt><tt class="py-op">)</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_RUN</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_EXECPERCENT</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_EXECPERCENT</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_RUN</tt><tt class="py-op">*</tt><tt class="py-number">100</tt><tt class="py-op">)</tt><tt class="py-op">/</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_PLANNED</tt><tt class="py-op">)</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-name">testResult</tt> <tt class="py-op">=</tt> <tt class="py-string">"\n\n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">37</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-string">"\tTest Execution Summary\n"</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">37</tt><tt class="py-op">+</tt><tt class="py-string">" \n"</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-name">testResult</tt> <tt class="py-op">=</tt> <tt class="py-name">testResult</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n Test Start : "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">STARTTIME</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt><tt class="py-string">"%d %b %Y %H:%M:%S"</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-name">testResult</tt> <tt class="py-op">=</tt> <tt class="py-name">testResult</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n Test End : "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ENDTIME</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt><tt class="py-string">"%d %b %Y %H:%M:%S"</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-name">testResult</tt> <tt class="py-op">=</tt> <tt class="py-name">testResult</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n Execution Time : "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">EXECTIME</tt><tt class="py-op">)</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-name">testResult</tt> <tt class="py-op">=</tt> <tt class="py-name">testResult</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n Total tests planned : "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_PLANNED</tt><tt class="py-op">)</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-name">testResult</tt> <tt class="py-op">=</tt> <tt class="py-name">testResult</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n Total tests RUN : "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_RUN</tt><tt class="py-op">)</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-name">testResult</tt> <tt class="py-op">=</tt> <tt class="py-name">testResult</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n Total Pass : "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_PASS</tt><tt class="py-op">)</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-name">testResult</tt> <tt class="py-op">=</tt> <tt class="py-name">testResult</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n Total Fail : "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_FAIL</tt><tt class="py-op">)</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-name">testResult</tt> <tt class="py-op">=</tt> <tt class="py-name">testResult</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n Total No Result : "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_NORESULT</tt><tt class="py-op">)</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-name">testResult</tt> <tt class="py-op">=</tt> <tt class="py-name">testResult</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n Success Percentage : "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_SUCCESS</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"%"</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-name">testResult</tt> <tt class="py-op">=</tt> <tt class="py-name">testResult</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n Execution Result : "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_EXECPERCENT</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"%"</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-comment">#main.log.report(testResult)</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testResult</tt> <tt class="py-op">=</tt> <tt class="py-name">testResult</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-31', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exact</tt><tt class="py-op">(</tt><tt class="py-name">testResult</tt><tt class="py-op">)</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-comment">##CSV output needed for Jenkin's plot plugin</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-comment">#NOTE: the elements were orded based on the colors assigned to the data</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-name">logfile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">JenkinsCSV</tt> <tt class="py-op">,</tt><tt class="py-string">"w"</tt><tt class="py-op">)</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-name">logfile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt><tt class="py-string">'Tests Failed'</tt><tt class="py-op">,</tt> <tt class="py-string">'Tests Passed'</tt><tt class="py-op">,</tt> <tt class="py-string">'Tests Planned'</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-name">logfile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_FAIL</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_PASS</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_PLANNED</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-name">logfile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> </tt>
-<a name="Logger.updateCaseResults"></a><div id="Logger.updateCaseResults-def"><a name="L296"></a><tt class="py-lineno">296</tt> <a class="py-toggle" href="#" id="Logger.updateCaseResults-toggle" onclick="return toggle('Logger.updateCaseResults');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.logger.Logger-class.html#updateCaseResults">updateCaseResults</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">main</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Logger.updateCaseResults-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Logger.updateCaseResults-expanded"><a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"><tt class="py-docstring"> Update the case result based on the steps execution and asserting each step in the test-case</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt id="link-32" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-32', 'case', 'link-19');">case</a></tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCaseNumber</tt><tt class="py-op">)</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">currentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testCaseResult</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt id="link-33" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-33', 'case', 'link-19');">case</a></tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">currentResult</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_RUN</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_RUN</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_NORESULT</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_NORESULT</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-34', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exact</tt><tt class="py-op">(</tt><tt class="py-string">"\n "</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">29</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n Result: No Assertion Called \n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">29</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-string">"Case "</tt><tt class="py-op">+</tt><tt id="link-35" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-35', 'case', 'link-19');">case</a></tt><tt class="py-op">+</tt><tt class="py-string">": "</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCase</tt><tt class="py-op">+</tt><tt class="py-string">" - No Result"</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">currentResult</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_RUN</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_RUN</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_PASS</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_PASS</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-36', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exact</tt><tt class="py-op">(</tt><tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">29</tt><tt class="py-op">+</tt><tt class="py-string">"\n Result: Pass \n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">29</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-string">"Case "</tt><tt class="py-op">+</tt><tt id="link-37" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-37', 'case', 'link-19');">case</a></tt><tt class="py-op">+</tt><tt class="py-string">": "</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCase</tt><tt class="py-op">+</tt><tt class="py-string">" - PASS"</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">currentResult</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_RUN</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_RUN</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_FAIL</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_FAIL</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-38', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exact</tt><tt class="py-op">(</tt><tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">29</tt><tt class="py-op">+</tt><tt class="py-string">"\n Result: Failed \n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">29</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-string">"Case "</tt><tt class="py-op">+</tt><tt id="link-39" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-39', 'case', 'link-19');">case</a></tt><tt class="py-op">+</tt><tt class="py-string">": "</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCase</tt><tt class="py-op">+</tt><tt class="py-string">" - FAIL"</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-40', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-41" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-41', 'error', 'link-41');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">" Unknown result of case "</tt> <tt class="py-op">+</tt> <tt id="link-42" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-42', 'case', 'link-19');">case</a></tt> <tt class="py-op">+</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-string">". Result was: "</tt> <tt class="py-op">+</tt> <tt class="py-name">currentResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-string">"Case "</tt><tt class="py-op">+</tt><tt id="link-43" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-43', 'case', 'link-19');">case</a></tt><tt class="py-op">+</tt><tt class="py-string">": "</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCase</tt><tt class="py-op">+</tt><tt class="py-string">" - ERROR"</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-44', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-string">"<h3>"</tt> <tt class="py-op">+</tt> <tt class="py-name">line</tt> <tt class="py-op">+</tt> <tt class="py-string">"</h3>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-45', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.summary" class="py-name" href="#" onclick="return doclink('link-46', 'summary', 'link-11');">summary</a></tt><tt class="py-op">(</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt> </tt>
-</div></div><a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.logger.Logger-class.html b/TestON/Documentation/TestON_Document/TestON.core.logger.Logger-class.html
deleted file mode 100644
index 68254ac..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.logger.Logger-class.html
+++ /dev/null
@@ -1,213 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.logger.Logger</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- <a href="TestON.core.logger-module.html">Module logger</a> ::
- Class Logger
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.logger.Logger-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Logger</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.logger-pysrc.html#Logger">source code</a></span></p>
-<p>Add continuous logs and reports of the test.</p>
-
-<hr />
-<div class="fields"> <p><strong>Author:</strong>
- Raghav Kashyap(raghavkashyap@paxterrasolutions.com)
- </p>
-</div><!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="_printHeader"></a><span class="summary-sig-name">_printHeader</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Log's header will be append to the Log file</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.logger-pysrc.html#Logger._printHeader">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="initlog"></a><span class="summary-sig-name">initlog</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Initialise all the log handles.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.logger-pysrc.html#Logger.initlog">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="testSummary"></a><span class="summary-sig-name">testSummary</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- testSummary will take care about the Summary of test.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.logger-pysrc.html#Logger.testSummary">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="updateCaseResults"></a><span class="summary-sig-name">updateCaseResults</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Update the case result based on the steps execution and asserting
- each step in the test-case</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.logger-pysrc.html#Logger.updateCaseResults">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.openspeak-module.html b/TestON/Documentation/TestON_Document/TestON.core.openspeak-module.html
deleted file mode 100644
index 6c035d0..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.openspeak-module.html
+++ /dev/null
@@ -1,182 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.openspeak</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module openspeak
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.openspeak-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module openspeak</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.openspeak-pysrc.html">source code</a></span></p>
-<p>Created on 20-Dec-2012</p>
-
-<hr />
-<div class="fields"> <p><strong>Author:</strong>
- Raghav Kashyap(raghavkashyap@paxterrasolutions.com)
- <p>TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published
- by the Free Software Foundation, either version 2 of the License,
- or (at your option) any later version.</p>
- <p>TestON is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.</p>
- <p>You should have received a copy of the GNU General Public
- License along with TestON. If not, see
- <http://www.gnu.org/licenses/>.</p>
- </p>
-</div><!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.core.openspeak.OpenSpeak-class.html" class="summary-name">OpenSpeak</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.core'"><code class="variable-quote">'</code><code class="variable-string">TestON.core</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.openspeak-pysrc.html b/TestON/Documentation/TestON_Document/TestON.core.openspeak-pysrc.html
deleted file mode 100644
index c30ddce..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.openspeak-pysrc.html
+++ /dev/null
@@ -1,939 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.openspeak</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module openspeak
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.openspeak-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.core.openspeak-module.html">Module TestON.core.openspeak</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 20-Dec-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">@author: Raghav Kashyap(raghavkashyap@paxterrasolutions.com)</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"> (at your option) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">inspect</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak"></a><div id="OpenSpeak-def"><a name="L27"></a><tt class="py-lineno"> 27</tt> <a class="py-toggle" href="#" id="OpenSpeak-toggle" onclick="return toggle('OpenSpeak');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="OpenSpeak-expanded"><a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.__init__"></a><div id="OpenSpeak.__init__-def"><a name="L29"></a><tt class="py-lineno"> 29</tt> <a class="py-toggle" href="#" id="OpenSpeak.__init__-toggle" onclick="return toggle('OpenSpeak.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.__init__-expanded"><a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentStep</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">grtrOrLssr</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-</div><a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.compiler"></a><div id="OpenSpeak.compiler-def"><a name="L35"></a><tt class="py-lineno"> 35</tt> <a class="py-toggle" href="#" id="OpenSpeak.compiler-toggle" onclick="return toggle('OpenSpeak.compiler');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#compiler">compiler</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">compileParameters</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.compiler-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.compiler-expanded"><a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> This method will parse the openspeak file and will write to a python module with the equivalent translations.</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"> It can accept OpenSpeak syntax in string or an OpenSpeak file as an input parameter.</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"> Translated form can be written into python module if attribute "WRITETOFILE" is set to 1.</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.parse_args()=TestON.core.openspeak.OpenSpeak-class.html#parse_args"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-1', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"OPENSPEAKFILE"</tt><tt class="py-op">,</tt><tt class="py-string">"TEXT"</tt><tt class="py-op">,</tt><tt class="py-string">"WRITETOFILE"</tt><tt class="py-op">,</tt><tt class="py-string">"FILEHANDLE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">compileParameters</tt><tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-name">Test</tt> <tt class="py-op">=</tt> <tt class="py-string">"Mininet"</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"WRITETOFILE"</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"WRITETOFILE"</tt><tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"WRITETOFILE"</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-number">1</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentStep</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentCase</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-comment">## here Open Speak file will be parsed by each line and translated.</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPENSPEAKFILE"</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt><tt class="py-name">None</tt> <tt class="py-keyword">and</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"TEXT"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt><tt class="py-name">None</tt> <tt class="py-keyword">and</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"FILEHANDLE"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">openspeakfile</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPENSPEAKFILE"</tt><tt class="py-op">]</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">openSpeakFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPENSPEAKFILE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-string">"r"</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">readlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPENSPEAKFILE"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt><tt class="py-name">None</tt> <tt class="py-keyword">and</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"TEXT"</tt><tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"FILEHANDLE"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">openSpeakFile</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"TEXT"</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"FILEHANDLE"</tt><tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPENSPEAKFILE"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt><tt class="py-name">None</tt> <tt class="py-keyword">and</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"TEXT"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt><tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">openSpeakFile</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"FILEHANDLE"</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">readlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">outputFile</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">testName</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"\/(.*)\.ospk$"</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">openspeakfile</tt><tt class="py-op">,</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">testName</tt> <tt class="py-op">=</tt> <tt class="py-name">testName</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">testName</tt> <tt class="py-op">=</tt> <tt class="py-name">testName</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"/"</tt><tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">testName</tt> <tt class="py-op">=</tt> <tt class="py-name">testName</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">testName</tt><tt class="py-op">)</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">outputFile</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-string">"\nclass "</tt> <tt class="py-op">+</tt> <tt class="py-name">testName</tt> <tt class="py-op">+</tt> <tt class="py-string">" :"</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">outputFile</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">4</tt> <tt class="py-op">+</tt> <tt class="py-string">"def __init__(self) :"</tt><tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">outputFile</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">8</tt> <tt class="py-op">+</tt> <tt class="py-string">"self.default = \'\'"</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">index</tt> <tt class="py-op"><</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">openSpeakFile</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">ifelseMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"\s+IF|\s+ELSE|\s+ELIF"</tt><tt class="py-op">,</tt><tt class="py-name">openSpeakFile</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">openSpeakFile</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">repeatMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"\s*REPEAT"</tt><tt class="py-op">,</tt> <tt class="py-name">openSpeakFile</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ifelseMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.verify_and_translate()=TestON.core.openspeak.OpenSpeak-class.html#verify_and_translate"><a title="TestON.core.openspeak.OpenSpeak.verify_and_translate" class="py-name" href="#" onclick="return doclink('link-2', 'verify_and_translate', 'link-2');">verify_and_translate</a></tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">initialSpaces</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">lstrip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">outLoopSpace</tt> <tt class="py-op">=</tt> <tt class="py-name">initialSpaces</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">nextLine</tt> <tt class="py-op">=</tt> <tt class="py-name">openSpeakFile</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">nextinitialSpaces</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">nextLine</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">nextLine</tt><tt class="py-op">.</tt><tt class="py-name">lstrip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">nextinitialSpaces</tt> <tt class="py-op">></tt> <tt class="py-name">initialSpaces</tt> <tt class="py-op">:</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">elseMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"\s*ELSE|\s*ELIF"</tt><tt class="py-op">,</tt><tt class="py-name">nextLine</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">elseMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">result</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.verify_and_translate" class="py-name" href="#" onclick="return doclink('link-3', 'verify_and_translate', 'link-2');">verify_and_translate</a></tt><tt class="py-op">(</tt><tt class="py-name">nextLine</tt><tt class="py-op">)</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">nextLine</tt> <tt class="py-op">=</tt> <tt class="py-name">openSpeakFile</tt><tt class="py-op">[</tt><tt class="py-name">index</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">nextinitialSpaces</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">nextLine</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">nextLine</tt><tt class="py-op">.</tt><tt class="py-name">lstrip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IndexError</tt><tt class="py-op">:</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">repeatMatch</tt><tt class="py-op">:</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.verify_and_translate" class="py-name" href="#" onclick="return doclink('link-4', 'verify_and_translate', 'link-2');">verify_and_translate</a></tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">endMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"\s*END"</tt><tt class="py-op">,</tt><tt class="py-name">openSpeakFile</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-keyword">not</tt> <tt class="py-name">endMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">result</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.verify_and_translate" class="py-name" href="#" onclick="return doclink('link-5', 'verify_and_translate', 'link-2');">verify_and_translate</a></tt><tt class="py-op">(</tt><tt class="py-name">openSpeakFile</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IndexError</tt> <tt class="py-op">:</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.verify_and_translate" class="py-name" href="#" onclick="return doclink('link-6', 'verify_and_translate', 'link-2');">verify_and_translate</a></tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">outputFile</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"WRITETOFILE"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">testscript</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"ospk"</tt><tt class="py-op">,</tt><tt class="py-string">"py"</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">openspeakfile</tt><tt class="py-op">,</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">testScript</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">testscript</tt><tt class="py-op">,</tt><tt class="py-string">"w"</tt><tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">lines</tt> <tt class="py-keyword">in</tt> <tt class="py-name">outputFile</tt> <tt class="py-op">:</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">testScript</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">lines</tt><tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-name">testScript</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.verify_and_translate"></a><div id="OpenSpeak.verify_and_translate-def"><a name="L123"></a><tt class="py-lineno">123</tt> <a class="py-toggle" href="#" id="OpenSpeak.verify_and_translate-toggle" onclick="return toggle('OpenSpeak.verify_and_translate');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#verify_and_translate">verify_and_translate</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">line</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.verify_and_translate-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.verify_and_translate-expanded"><a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"><tt class="py-docstring"> It will accept the each line and calls the suitable API to conver into pyton equivalent syntax .</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"><tt class="py-docstring"> It will return the translated python syntax .</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">lineSpace</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"^\s+"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">initialSpaces</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">lstrip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"^\s+"</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> <tt class="py-keyword">if</tt> <tt class="py-name">lineSpace</tt> <tt class="py-keyword">else</tt> <tt class="py-name">line</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">4</tt> <tt class="py-keyword">if</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">inspect</tt><tt class="py-op">.</tt><tt class="py-name">stack</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">3</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-string">"compiler"</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"\n"</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">indent</tt> <tt class="py-op">=</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-number">4</tt> <tt class="py-op">+</tt> <tt class="py-number">4</tt> <tt class="py-op">*</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt><tt class="py-op">)</tt> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">></tt> <tt class="py-number">0</tt> <tt class="py-keyword">else</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">4</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">caseMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"^CASE\s+(\d+)"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">nameMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"^NAME\s+\"(.*)\""</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-name">commentMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"^COMMENT\s+\"(.*)\""</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">stepMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"^STEP\s+\"(.*)\""</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">connectMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"^CONNECT\s+(\w+)\s+USING\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">disconnectMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"^DISCONNECT\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">ondoMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"^ON\s+(.*)\s+DO\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">storeMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"^STORE\s+(.*)\s+IN\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">variableMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"^(.*)\s+=\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-name">assertMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"^ASSERT\s+(\w+)\s+(.*)\s+(.*)\s+ONPASS\s+(.*)\s+ONFAIL\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">logMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"^(ERROR|INFO|DEBUG|CRITICAL|REPORT|EXACT|WARN)\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-name">ifloop</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"IF\s+(\w+)\s*(..|\w+)\s*(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">elseloopMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"ELSE\s*$"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">elifloop</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"ELSE\sIF\s+(\w+)\s*(..|\w+)\s*(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-name">forloopMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"\s*REPEAT\s+(/d+)\s+TIMES"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">experimentalMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"EXPERIMENTAL\s+MODE\s+(\w+)"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-name">repeatMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"\s*REPEAT\s+(\d+)\s+TIMES"</tt><tt class="py-op">,</tt> <tt class="py-name">line</tt><tt class="py-op">,</tt> <tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">response_pasrse</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"\s*PARSE\s+(\w+)\s+AS\s+(\w+)\s+INTO\s+(\w+)"</tt><tt class="py-op">,</tt> <tt class="py-name">line</tt><tt class="py-op">,</tt> <tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">caseMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentStep</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentCase</tt> <tt class="py-op">=</tt> <tt class="py-string">"CASE"</tt> <tt class="py-op">+</tt> <tt class="py-name">caseMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_case_block()=TestON.core.openspeak.OpenSpeak-class.html#translate_case_block"><a title="TestON.core.openspeak.OpenSpeak.translate_case_block" class="py-name" href="#" onclick="return doclink('link-7', 'translate_case_block', 'link-7');">translate_case_block</a></tt><tt class="py-op">(</tt><tt class="py-name">casenumber</tt><tt class="py-op">=</tt><tt class="py-name">caseMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">repeatMatch</tt><tt class="py-op">:</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_repeat()=TestON.core.openspeak.OpenSpeak-class.html#translate_repeat"><a title="TestON.core.openspeak.OpenSpeak.translate_repeat" class="py-name" href="#" onclick="return doclink('link-8', 'translate_repeat', 'link-8');">translate_repeat</a></tt><tt class="py-op">(</tt><tt class="py-name">repeat</tt><tt class="py-op">=</tt><tt class="py-name">repeatMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">nameMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_testcase_name()=TestON.core.openspeak.OpenSpeak-class.html#translate_testcase_name"><a title="TestON.core.openspeak.OpenSpeak.translate_testcase_name" class="py-name" href="#" onclick="return doclink('link-9', 'translate_testcase_name', 'link-9');">translate_testcase_name</a></tt><tt class="py-op">(</tt><tt class="py-name">testname</tt><tt class="py-op">=</tt><tt class="py-name">nameMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">commentMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_comment()=TestON.core.openspeak.OpenSpeak-class.html#translate_comment"><a title="TestON.core.openspeak.OpenSpeak.translate_comment" class="py-name" href="#" onclick="return doclink('link-10', 'translate_comment', 'link-10');">translate_comment</a></tt><tt class="py-op">(</tt><tt class="py-name">comment</tt><tt class="py-op">=</tt><tt class="py-name">commentMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">stepMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentStep</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentStep</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_step()=TestON.core.openspeak.OpenSpeak-class.html#translate_step"><a title="TestON.core.openspeak.OpenSpeak.translate_step" class="py-name" href="#" onclick="return doclink('link-11', 'translate_step', 'link-11');">translate_step</a></tt><tt class="py-op">(</tt><tt id="link-12" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-12', 'step', 'link-12');">step</a></tt><tt class="py-op">=</tt><tt class="py-name">stepMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">connectMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_connect()=TestON.core.openspeak.OpenSpeak-class.html#translate_connect"><a title="TestON.core.openspeak.OpenSpeak.translate_connect" class="py-name" href="#" onclick="return doclink('link-13', 'translate_connect', 'link-13');">translate_connect</a></tt><tt class="py-op">(</tt><tt class="py-name">component</tt><tt class="py-op">=</tt><tt class="py-name">connectMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt><tt class="py-name">connectMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">disconnectMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_disconnect()=TestON.core.openspeak.OpenSpeak-class.html#translate_disconnect"><a title="TestON.core.openspeak.OpenSpeak.translate_disconnect" class="py-name" href="#" onclick="return doclink('link-14', 'translate_disconnect', 'link-14');">translate_disconnect</a></tt><tt class="py-op">(</tt><tt class="py-name">component</tt><tt class="py-op">=</tt><tt class="py-name">disconnectMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ondoMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_onDOAs()=TestON.core.openspeak.OpenSpeak-class.html#translate_onDOAs"><a title="TestON.core.openspeak.OpenSpeak.translate_onDOAs" class="py-name" href="#" onclick="return doclink('link-15', 'translate_onDOAs', 'link-15');">translate_onDOAs</a></tt><tt class="py-op">(</tt><tt class="py-name">component</tt><tt class="py-op">=</tt><tt class="py-name">ondoMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">,</tt><tt class="py-name">action</tt><tt class="py-op">=</tt><tt class="py-name">ondoMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">storeMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_store()=TestON.core.openspeak.OpenSpeak-class.html#translate_store"><a title="TestON.core.openspeak.OpenSpeak.translate_store" class="py-name" href="#" onclick="return doclink('link-16', 'translate_store', 'link-16');">translate_store</a></tt><tt class="py-op">(</tt><tt class="py-name">variable</tt><tt class="py-op">=</tt><tt class="py-name">storeMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">value</tt><tt class="py-op">=</tt><tt class="py-name">storeMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">variableMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_store" class="py-name" href="#" onclick="return doclink('link-17', 'translate_store', 'link-16');">translate_store</a></tt><tt class="py-op">(</tt><tt class="py-name">variable</tt><tt class="py-op">=</tt><tt class="py-name">variableMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-name">value</tt><tt class="py-op">=</tt><tt class="py-name">variableMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">assertMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_assertion()=TestON.core.openspeak.OpenSpeak-class.html#translate_assertion"><a title="TestON.core.openspeak.OpenSpeak.translate_assertion" class="py-name" href="#" onclick="return doclink('link-18', 'translate_assertion', 'link-18');">translate_assertion</a></tt><tt class="py-op">(</tt><tt class="py-name">leftvalue</tt><tt class="py-op">=</tt><tt class="py-name">assertMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-name">operator</tt><tt class="py-op">=</tt><tt class="py-name">assertMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-name">rightvalue</tt><tt class="py-op">=</tt><tt class="py-name">assertMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">3</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-name">assertMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">4</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt id="link-19" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-19', 'onfail', 'link-19');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-name">assertMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">logMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_logs()=TestON.core.openspeak.OpenSpeak-class.html#translate_logs"><a title="TestON.core.openspeak.OpenSpeak.translate_logs" class="py-name" href="#" onclick="return doclink('link-20', 'translate_logs', 'link-20');">translate_logs</a></tt><tt class="py-op">(</tt><tt class="py-name">loglevel</tt><tt class="py-op">=</tt><tt class="py-name">logMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-name">message</tt><tt class="py-op">=</tt><tt class="py-name">logMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ifloop</tt> <tt class="py-op">:</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">initSpace</tt> <tt class="py-op">=</tt> <tt class="py-name">initialSpaces</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">operand</tt> <tt class="py-op">=</tt> <tt class="py-name">ifloop</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">operator</tt> <tt class="py-op">=</tt> <tt class="py-name">ifloop</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt class="py-name">ifloop</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">3</tt><tt class="py-op">)</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-string">"if "</tt> <tt class="py-op">+</tt> <tt class="py-name">operand</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_if_else_operator()=TestON.core.openspeak.OpenSpeak-class.html#translate_if_else_operator"><a title="TestON.core.openspeak.OpenSpeak.translate_if_else_operator" class="py-name" href="#" onclick="return doclink('link-21', 'translate_if_else_operator', 'link-21');">translate_if_else_operator</a></tt><tt class="py-op">(</tt><tt class="py-name">conditionoperator</tt><tt class="py-op">=</tt><tt class="py-name">operator</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">value</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">experimentalMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_experimental_mode()=TestON.core.openspeak.OpenSpeak-class.html#translate_experimental_mode"><a title="TestON.core.openspeak.OpenSpeak.translate_experimental_mode" class="py-name" href="#" onclick="return doclink('link-22', 'translate_experimental_mode', 'link-22');">translate_experimental_mode</a></tt><tt class="py-op">(</tt><tt class="py-name">mode</tt><tt class="py-op">=</tt><tt class="py-name">experimentalMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">elseloopMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">initialSpaces</tt> <tt class="py-op">==</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">initSpace</tt> <tt class="py-keyword">or</tt> <tt class="py-name">initialSpaces</tt> <tt class="py-op">==</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">outLoopSpace</tt><tt class="py-op">:</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-string">"else :"</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">indent</tt> <tt class="py-op">=</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-number">4</tt> <tt class="py-op">+</tt> <tt class="py-number">4</tt> <tt class="py-op">*</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-string">"else :"</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">elifloop</tt> <tt class="py-op">:</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">operand</tt> <tt class="py-op">=</tt> <tt class="py-name">elifloop</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-name">operator</tt> <tt class="py-op">=</tt> <tt class="py-name">elifloop</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt class="py-name">elifloop</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">3</tt><tt class="py-op">)</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">initialSpaces</tt> <tt class="py-op">==</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">initSpace</tt> <tt class="py-keyword">or</tt> <tt class="py-name">initialSpaces</tt> <tt class="py-op">==</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">outLoopSpace</tt><tt class="py-op">:</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-string">"elif "</tt> <tt class="py-op">+</tt> <tt class="py-name">operand</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_if_else_operator" class="py-name" href="#" onclick="return doclink('link-23', 'translate_if_else_operator', 'link-21');">translate_if_else_operator</a></tt><tt class="py-op">(</tt><tt class="py-name">conditionoperator</tt><tt class="py-op">=</tt><tt class="py-name">operator</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">value</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-name">indent</tt> <tt class="py-op">=</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-number">4</tt> <tt class="py-op">+</tt> <tt class="py-number">4</tt> <tt class="py-op">*</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-string">"elif "</tt> <tt class="py-op">+</tt> <tt class="py-name">operand</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_if_else_operator" class="py-name" href="#" onclick="return doclink('link-24', 'translate_if_else_operator', 'link-21');">translate_if_else_operator</a></tt><tt class="py-op">(</tt><tt class="py-name">conditionoperator</tt><tt class="py-op">=</tt><tt class="py-name">operator</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">value</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">response_pasrse</tt> <tt class="py-op">:</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-name">output_string</tt> <tt class="py-op">=</tt> <tt class="py-name">response_pasrse</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-name">req_format</tt> <tt class="py-op">=</tt> <tt class="py-name">response_pasrse</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-name">store_in</tt> <tt class="py-op">=</tt> <tt class="py-name">response_pasrse</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">3</tt><tt class="py-op">)</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">indent</tt> <tt class="py-op">+</tt> <tt class="py-name">store_in</tt> <tt class="py-op">+</tt><tt class="py-string">'= main.response_parser('</tt><tt class="py-op">+</tt><tt class="py-name">output_string</tt><tt class="py-op">+</tt><tt class="py-string">",\""</tt><tt class="py-op">+</tt><tt class="py-name">req_format</tt><tt class="py-op">+</tt><tt class="py-string">"\")"</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_repeat"></a><div id="OpenSpeak.translate_repeat-def"><a name="L233"></a><tt class="py-lineno">233</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_repeat-toggle" onclick="return toggle('OpenSpeak.translate_repeat');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_repeat">translate_repeat</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">repeatStatement</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_repeat-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_repeat-expanded"><a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"><tt class="py-docstring"> this will transalte the repeat statement into a python equivalen while loop</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-25', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"REPEAT"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">repeatStatement</tt><tt class="py-op">)</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">"i = 0"</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">8</tt> <tt class="py-op">+</tt><tt class="py-string">"while i<"</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"REPEAT"</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" :"</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_if_else_operator"></a><div id="OpenSpeak.translate_if_else_operator-def"><a name="L245"></a><tt class="py-lineno">245</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_if_else_operator-toggle" onclick="return toggle('OpenSpeak.translate_if_else_operator');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_if_else_operator">translate_if_else_operator</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">loopBlock</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_if_else_operator-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_if_else_operator-expanded"><a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"><tt class="py-docstring"> This method will translate if-else loop block into its equivalent python code.</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"><tt class="py-docstring"> Whole loop block will be passed into loopBlock List.</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"><tt class="py-docstring"> It returns the transalted reuslt as a string.</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-26', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"CONDITIONOPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">loopBlock</tt><tt class="py-op">)</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-comment"># process the loopBlock List translate all statements underlying the given loop block</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-name">equalsMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"EQUALS$|==\s*$"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"CONDITIONOPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-name">greaterMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"GREATER\s+THAN$|>\s*$"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"CONDITIONOPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">lesserMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"LESSER\s+THAN$|<\s*$"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"CONDITIONOPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-name">greaterEqualMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"GREATER\s+THAN\s+OR\s+EQUALS$|>=\s*$"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"CONDITIONOPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-name">lesserEqualMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"LESSER\s+THAN\s+OR\s+EQUALS$|<=\s*$"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"CONDITIONOPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">equalsMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">" == "</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">greaterMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">" > "</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">lesserMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">" < "</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">greaterEqualMatch</tt><tt class="py-op">:</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">" >= "</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">lesserEqualMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">" <= "</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"\n Error: Given Operator is not listed "</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_experimental_mode"></a><div id="OpenSpeak.translate_experimental_mode-def"><a name="L274"></a><tt class="py-lineno">274</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_experimental_mode-toggle" onclick="return toggle('OpenSpeak.translate_experimental_mode');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_experimental_mode">translate_experimental_mode</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">modeType</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_experimental_mode-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_experimental_mode-expanded"><a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"><tt class="py-docstring"> This API will translate statment EXPERIMENTAL MODE ON/OFF into python equivalent.</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"><tt class="py-docstring"> It will return the transalted value.</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-27', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"MODE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">modeType</tt><tt class="py-op">)</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-name">ONmatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"\s*ON"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MODE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-name">OFFmatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"\sOFF"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MODE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ONmatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">"main.EXPERIMENTAL_MODE = main.TRUE"</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">OFFmatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">"main.EXPERIMENTAL_MODE = main.FALSE"</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.interpret"></a><div id="OpenSpeak.interpret-def"><a name="L291"></a><tt class="py-lineno">291</tt> <a class="py-toggle" href="#" id="OpenSpeak.interpret-toggle" onclick="return toggle('OpenSpeak.interpret');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#interpret">interpret</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">interpetParameters</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.interpret-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.interpret-expanded"><a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"><tt class="py-docstring"> This method will accept the OpenSpeak syntax into a string and will return</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"><tt class="py-docstring"> a python equivalent translations statement</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-28', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"TEXT"</tt><tt class="py-op">,</tt><tt class="py-string">"WRITETOFILE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">interpetParameters</tt><tt class="py-op">)</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-comment">## here Open Speak syntax will be translated into python equivalent.</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.verify_and_translate" class="py-name" href="#" onclick="return doclink('link-29', 'verify_and_translate', 'link-2');">verify_and_translate</a></tt><tt class="py-op">(</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"TEXT"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">lineSpace</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"^\s+"</tt><tt class="py-op">,</tt><tt class="py-name">resultString</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"^\s+"</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">,</tt><tt class="py-name">resultString</tt><tt class="py-op">)</tt> <tt class="py-keyword">if</tt> <tt class="py-name">lineSpace</tt> <tt class="py-keyword">else</tt> <tt class="py-name">resultString</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_logs"></a><div id="OpenSpeak.translate_logs-def"><a name="L306"></a><tt class="py-lineno">306</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_logs-toggle" onclick="return toggle('OpenSpeak.translate_logs');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_logs">translate_logs</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">logStatement</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_logs-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_logs-expanded"><a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"><tt class="py-docstring"> This will translate the OpenSpeak log message statements into python equivalent</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"><tt class="py-docstring"> to resultString and returns resultString</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-30', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"LOGLEVEL"</tt><tt class="py-op">,</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">logStatement</tt><tt class="py-op">)</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-comment"># convert the statement here</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-name">message</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_log_message()=TestON.core.openspeak.OpenSpeak-class.html#translate_log_message"><a title="TestON.core.openspeak.OpenSpeak.translate_log_message" class="py-name" href="#" onclick="return doclink('link-31', 'translate_log_message', 'link-31');">translate_log_message</a></tt><tt class="py-op">(</tt><tt class="py-name">message</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"LOGLEVEL"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"INFO"</tt> <tt class="py-op">:</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"main.log.info("</tt> <tt class="py-op">+</tt> <tt class="py-name">message</tt> <tt class="py-op">+</tt> <tt class="py-string">")"</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"LOGLEVEL"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"ERROR"</tt> <tt class="py-op">:</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"main.log.error("</tt> <tt class="py-op">+</tt> <tt class="py-name">message</tt> <tt class="py-op">+</tt> <tt class="py-string">")"</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"LOGLEVEL"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEBUG"</tt> <tt class="py-op">:</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"main.log.debug("</tt> <tt class="py-op">+</tt> <tt class="py-name">message</tt> <tt class="py-op">+</tt> <tt class="py-string">")"</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"LOGLEVEL"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"REPORT"</tt> <tt class="py-op">:</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"main.log.report("</tt> <tt class="py-op">+</tt> <tt class="py-name">message</tt> <tt class="py-op">+</tt> <tt class="py-string">")"</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"LOGLEVEL"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"CRITICAL"</tt> <tt class="py-op">:</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"main.log.critical("</tt> <tt class="py-op">+</tt> <tt class="py-name">message</tt> <tt class="py-op">+</tt> <tt class="py-string">")"</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"LOGLEVEL"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"WARN"</tt> <tt class="py-op">:</tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"main.log.warn("</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">")"</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"LOGLEVEL"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"EXACT"</tt> <tt class="py-op">:</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"main.log.exact("</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">")"</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_log_message"></a><div id="OpenSpeak.translate_log_message-def"><a name="L333"></a><tt class="py-lineno">333</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_log_message-toggle" onclick="return toggle('OpenSpeak.translate_log_message');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_log_message">translate_log_message</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">messageStatement</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_log_message-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_log_message-expanded"><a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"><tt class="py-docstring"> This API will translate log messages if it is a string or Variable or combination</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"><tt class="py-docstring"> of string and variable.</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"><tt class="py-docstring"> It will return the analysed and translate message.</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-32', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">messageStatement</tt><tt class="py-op">)</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> <tt class="py-name">paramsMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"PARAMS\[(.*)\]|STEP\[(.*)\]|TOPO\[(.*)\]|CASE\[(.*)\]|LAST_RESULT|LAST_RESPONSE"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> <tt class="py-name">stringMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"\s*\"(.*)\"\s*$"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-name">stringWidVariableMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"\"(.*)\"\s+\+\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-name">varRefMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"\<(\w+)\>"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">paramsMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_parameters()=TestON.core.openspeak.OpenSpeak-class.html#translate_parameters"><a title="TestON.core.openspeak.OpenSpeak.translate_parameters" class="py-name" href="#" onclick="return doclink('link-33', 'translate_parameters', 'link-33');">translate_parameters</a></tt><tt class="py-op">(</tt><tt class="py-name">parameters</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">stringMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">stringWidVariableMatch</tt><tt class="py-op">:</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"> <tt class="py-name">quoteWord</tt> <tt class="py-op">=</tt> <tt class="py-name">stringWidVariableMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> <tt class="py-name">variableRef</tt> <tt class="py-op">=</tt> <tt class="py-name">stringWidVariableMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"> <tt class="py-name">varMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"PARAMS\[(.*)\]|STEP\[(.*)\]|TOPO\[(.*)\]|CASE\[(.*)\]"</tt><tt class="py-op">,</tt><tt class="py-name">variableRef</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> <tt class="py-name">varRefMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"\<(\w+)\>"</tt><tt class="py-op">,</tt><tt class="py-name">variableRef</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">varMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"\""</tt> <tt class="py-op">+</tt> <tt class="py-name">quoteWord</tt> <tt class="py-op">+</tt> <tt class="py-string">"\""</tt> <tt class="py-op">+</tt> <tt class="py-string">" + "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_parameters" class="py-name" href="#" onclick="return doclink('link-34', 'translate_parameters', 'link-33');">translate_parameters</a></tt><tt class="py-op">(</tt><tt class="py-name">parameters</tt><tt class="py-op">=</tt><tt class="py-name">variableRef</tt><tt class="py-op">)</tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">varRefMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"\""</tt> <tt class="py-op">+</tt> <tt class="py-name">quoteWord</tt> <tt class="py-op">+</tt> <tt class="py-string">"\""</tt> <tt class="py-op">+</tt> <tt class="py-string">" + "</tt> <tt class="py-op">+</tt> <tt class="py-name">varRefMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">varRefMatch</tt><tt class="py-op">:</tt> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">varRefMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"\nError : Syntax error , Not defined way to give log message"</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_assertion"></a><div id="OpenSpeak.translate_assertion-def"><a name="L366"></a><tt class="py-lineno">366</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_assertion-toggle" onclick="return toggle('OpenSpeak.translate_assertion');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_assertion">translate_assertion</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">assertStatement</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_assertion-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_assertion-expanded"><a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"><tt class="py-docstring"> This will translate the ASSERT <value1> <COMPARISON OPERATOR> <value2> into python</tt> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"><tt class="py-docstring"> equivalent to resultString and returns resultString</tt> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-35', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"LEFTVALUE"</tt><tt class="py-op">,</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">,</tt><tt class="py-string">"RIGHTVALUE"</tt><tt class="py-op">,</tt><tt class="py-string">"ONPASS"</tt><tt class="py-op">,</tt><tt class="py-string">"ONFAIL"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">assertStatement</tt><tt class="py-op">)</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"> <tt class="py-comment"># convert the statement here</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> <tt class="py-name">notOperatorMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"NOT\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"> <tt class="py-name">notOperatorSymbMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"\!(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"> <tt class="py-name">operator</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt class="py-name">lastresultMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"LAST_RESULT"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"RIGHTVALUE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"> <tt class="py-name">lastresponseMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"LAST_RESPONSE"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"RIGHTVALUE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">lastresultMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"> <tt class="py-name">operator</tt> <tt class="py-op">=</tt> <tt class="py-string">"main.last_result"</tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">lastresponseMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"> <tt class="py-name">operator</tt> <tt class="py-op">=</tt> <tt class="py-string">"main.last_response"</tt> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"> <tt class="py-name">operator</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"RIGHTVALUE"</tt><tt class="py-op">]</tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">""</tt> <tt class="py-op">:</tt> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"\n Error : Operator has not been specified !!!"</tt> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">notOperatorMatch</tt> <tt class="py-keyword">or</tt> <tt class="py-name">notOperatorSymbMatch</tt><tt class="py-op">:</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> <tt class="py-name">operators</tt> <tt class="py-op">=</tt> <tt class="py-name">notOperatorMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-keyword">if</tt> <tt class="py-name">notOperatorMatch</tt> <tt class="py-keyword">else</tt> <tt class="py-name">notOperatorSymbMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> <tt class="py-name">operators</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_operator()=TestON.core.openspeak.OpenSpeak-class.html#translate_operator"><a title="TestON.core.openspeak.OpenSpeak.translate_operator" class="py-name" href="#" onclick="return doclink('link-36', 'translate_operator', 'link-36');">translate_operator</a></tt><tt class="py-op">(</tt><tt class="py-name">operator</tt><tt class="py-op">=</tt><tt class="py-name">operators</tt><tt class="py-op">)</tt> </tt>
-<a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">grtrOrLssr</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt> <tt class="py-op">:</tt> </tt>
-<a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"utilities.assert_not_"</tt> <tt class="py-op">+</tt> <tt class="py-name">operators</tt> <tt class="py-op">+</tt> <tt class="py-string">"(expect="</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_response_result()=TestON.core.openspeak.OpenSpeak-class.html#translate_response_result"><a title="TestON.core.openspeak.OpenSpeak.translate_response_result" class="py-name" href="#" onclick="return doclink('link-37', 'translate_response_result', 'link-37');">translate_response_result</a></tt><tt class="py-op">(</tt><tt class="py-name">operator</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"RIGHTVALUE"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">",actual="</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_response_result" class="py-name" href="#" onclick="return doclink('link-38', 'translate_response_result', 'link-37');">translate_response_result</a></tt><tt class="py-op">(</tt><tt class="py-name">operator</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"LEFTVALUE"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"> <tt class="py-string">",onpass="</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_assertMessage()=TestON.core.openspeak.OpenSpeak-class.html#translate_assertMessage"><a title="TestON.core.openspeak.OpenSpeak.translate_assertMessage" class="py-name" href="#" onclick="return doclink('link-39', 'translate_assertMessage', 'link-39');">translate_assertMessage</a></tt><tt class="py-op">(</tt><tt class="py-name">message</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ONPASS"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L396"></a><tt class="py-lineno">396</tt> <tt class="py-line"> <tt class="py-string">",onfail="</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_assertMessage" class="py-name" href="#" onclick="return doclink('link-40', 'translate_assertMessage', 'link-39');">translate_assertMessage</a></tt><tt class="py-op">(</tt><tt class="py-name">message</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ONFAIL"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">")"</tt> </tt>
-<a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"utilities.assert_not_"</tt> <tt class="py-op">+</tt> <tt class="py-name">operators</tt> <tt class="py-op">+</tt> <tt class="py-string">"(expect="</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_response_result" class="py-name" href="#" onclick="return doclink('link-41', 'translate_response_result', 'link-37');">translate_response_result</a></tt><tt class="py-op">(</tt><tt class="py-name">operator</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"LEFTVALUE"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">",actual="</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_response_result" class="py-name" href="#" onclick="return doclink('link-42', 'translate_response_result', 'link-37');">translate_response_result</a></tt><tt class="py-op">(</tt><tt class="py-name">operator</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"RIGHTVALUE"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"> <tt class="py-string">",onpass="</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_assertMessage" class="py-name" href="#" onclick="return doclink('link-43', 'translate_assertMessage', 'link-39');">translate_assertMessage</a></tt><tt class="py-op">(</tt><tt class="py-name">message</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ONPASS"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"> <tt class="py-string">",onfail="</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_assertMessage" class="py-name" href="#" onclick="return doclink('link-44', 'translate_assertMessage', 'link-39');">translate_assertMessage</a></tt><tt class="py-op">(</tt><tt class="py-name">message</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ONFAIL"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">")"</tt> </tt>
-<a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"> <tt class="py-name">operators</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_operator" class="py-name" href="#" onclick="return doclink('link-45', 'translate_operator', 'link-36');">translate_operator</a></tt><tt class="py-op">(</tt><tt class="py-name">operator</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">grtrOrLssr</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt> <tt class="py-op">:</tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"utilities.assert_"</tt> <tt class="py-op">+</tt> <tt class="py-name">operators</tt> <tt class="py-op">+</tt> <tt class="py-string">"(expect="</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_response_result" class="py-name" href="#" onclick="return doclink('link-46', 'translate_response_result', 'link-37');">translate_response_result</a></tt><tt class="py-op">(</tt><tt class="py-name">operator</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"RIGHTVALUE"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"> <tt class="py-string">",actual="</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_response_result" class="py-name" href="#" onclick="return doclink('link-47', 'translate_response_result', 'link-37');">translate_response_result</a></tt><tt class="py-op">(</tt><tt class="py-name">operator</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"LEFTVALUE"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L409"></a><tt class="py-lineno">409</tt> <tt class="py-line"> <tt class="py-string">",onpass="</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_assertMessage" class="py-name" href="#" onclick="return doclink('link-48', 'translate_assertMessage', 'link-39');">translate_assertMessage</a></tt><tt class="py-op">(</tt><tt class="py-name">message</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ONPASS"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> <tt class="py-string">",onfail="</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_assertMessage" class="py-name" href="#" onclick="return doclink('link-49', 'translate_assertMessage', 'link-39');">translate_assertMessage</a></tt><tt class="py-op">(</tt><tt class="py-name">message</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ONFAIL"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">")"</tt> </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"utilities.assert_"</tt> <tt class="py-op">+</tt> <tt class="py-name">operators</tt> <tt class="py-op">+</tt> <tt class="py-string">"(expect="</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L413"></a><tt class="py-lineno">413</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_response_result" class="py-name" href="#" onclick="return doclink('link-50', 'translate_response_result', 'link-37');">translate_response_result</a></tt><tt class="py-op">(</tt><tt class="py-name">operator</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"LEFTVALUE"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L414"></a><tt class="py-lineno">414</tt> <tt class="py-line"> <tt class="py-string">",actual="</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_response_result" class="py-name" href="#" onclick="return doclink('link-51', 'translate_response_result', 'link-37');">translate_response_result</a></tt><tt class="py-op">(</tt><tt class="py-name">operator</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"RIGHTVALUE"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"> <tt class="py-string">",onpass="</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_assertMessage" class="py-name" href="#" onclick="return doclink('link-52', 'translate_assertMessage', 'link-39');">translate_assertMessage</a></tt><tt class="py-op">(</tt><tt class="py-name">message</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ONPASS"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"> <tt class="py-string">",onfail="</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_assertMessage" class="py-name" href="#" onclick="return doclink('link-53', 'translate_assertMessage', 'link-39');">translate_assertMessage</a></tt><tt class="py-op">(</tt><tt class="py-name">message</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ONFAIL"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">")"</tt> </tt>
-<a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"> </tt>
-<a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"> </tt>
-<a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_response_result"></a><div id="OpenSpeak.translate_response_result-def"><a name="L421"></a><tt class="py-lineno">421</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_response_result-toggle" onclick="return toggle('OpenSpeak.translate_response_result');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_response_result">translate_response_result</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">operatorStatement</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_response_result-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_response_result-expanded"><a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L423"></a><tt class="py-lineno">423</tt> <tt class="py-line"><tt class="py-docstring"> It will translate the LAST_RESPONSE or LAST_RESULT statement into its equivalent.</tt> </tt>
-<a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"><tt class="py-docstring"> It returns the translate form in resulString.</tt> </tt>
-<a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-54', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">operatorStatement</tt><tt class="py-op">)</tt> </tt>
-<a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"> <tt class="py-name">lastResultMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"LAST_RESULT"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"> <tt class="py-name">lastResponseMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"LAST_RESPONSE"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">lastResultMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L431"></a><tt class="py-lineno">431</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"main.last_result"</tt> </tt>
-<a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">lastResponseMatch</tt><tt class="py-op">:</tt> </tt>
-<a name="L433"></a><tt class="py-lineno">433</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"main.last_response"</tt> </tt>
-<a name="L434"></a><tt class="py-lineno">434</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">]</tt> </tt>
-<a name="L436"></a><tt class="py-lineno">436</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L437"></a><tt class="py-lineno">437</tt> <tt class="py-line"> </tt>
-<a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_assertMessage"></a><div id="OpenSpeak.translate_assertMessage-def"><a name="L439"></a><tt class="py-lineno">439</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_assertMessage-toggle" onclick="return toggle('OpenSpeak.translate_assertMessage');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_assertMessage">translate_assertMessage</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">messageStatement</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_assertMessage-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_assertMessage-expanded"><a name="L440"></a><tt class="py-lineno">440</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"><tt class="py-docstring"> This API will facilitate the translation of assert ONPASS or ONFAIL messages . The message can be</tt> </tt>
-<a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"><tt class="py-docstring"> a string or calling another API in OpenSpeak syntax.</tt> </tt>
-<a name="L443"></a><tt class="py-lineno">443</tt> <tt class="py-line"><tt class="py-docstring"> It will return the translated message</tt> </tt>
-<a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L445"></a><tt class="py-lineno">445</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-55', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">messageStatement</tt><tt class="py-op">)</tt> </tt>
-<a name="L446"></a><tt class="py-lineno">446</tt> <tt class="py-line"> </tt>
-<a name="L447"></a><tt class="py-lineno">447</tt> <tt class="py-line"> <tt class="py-name">connectMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"CONNECT\s+(\w+)\s+USING\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L448"></a><tt class="py-lineno">448</tt> <tt class="py-line"> <tt class="py-name">disconnectMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"DISCONNECT\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L449"></a><tt class="py-lineno">449</tt> <tt class="py-line"> <tt class="py-name">ondoMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"ON\s+(.*)\s+DO\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L450"></a><tt class="py-lineno">450</tt> <tt class="py-line"> <tt class="py-name">paramsMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"PARAMS\[(.*)\]|STEP\[(.*)\]|TOPO\[(.*)\]|CASE\[(.*)\]"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L451"></a><tt class="py-lineno">451</tt> <tt class="py-line"> <tt class="py-name">stringMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"\"(.*)\"|\'(.*)\'"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L452"></a><tt class="py-lineno">452</tt> <tt class="py-line"> <tt class="py-name">variableMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"\<(.*)\>"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L453"></a><tt class="py-lineno">453</tt> <tt class="py-line"> </tt>
-<a name="L454"></a><tt class="py-lineno">454</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L455"></a><tt class="py-lineno">455</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">connectMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L456"></a><tt class="py-lineno">456</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_connect" class="py-name" href="#" onclick="return doclink('link-56', 'translate_connect', 'link-13');">translate_connect</a></tt><tt class="py-op">(</tt><tt class="py-name">component</tt><tt class="py-op">=</tt><tt class="py-name">connectMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L457"></a><tt class="py-lineno">457</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">=</tt><tt class="py-name">connectMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L458"></a><tt class="py-lineno">458</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">disconnectMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L459"></a><tt class="py-lineno">459</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_disconnect" class="py-name" href="#" onclick="return doclink('link-57', 'translate_disconnect', 'link-14');">translate_disconnect</a></tt><tt class="py-op">(</tt><tt class="py-name">component</tt><tt class="py-op">=</tt><tt class="py-name">disconnectMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L460"></a><tt class="py-lineno">460</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ondoMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L461"></a><tt class="py-lineno">461</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_onDOAs" class="py-name" href="#" onclick="return doclink('link-58', 'translate_onDOAs', 'link-15');">translate_onDOAs</a></tt><tt class="py-op">(</tt><tt class="py-name">component</tt><tt class="py-op">=</tt><tt class="py-name">ondoMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L462"></a><tt class="py-lineno">462</tt> <tt class="py-line"> <tt class="py-name">action</tt><tt class="py-op">=</tt><tt class="py-name">ondoMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L463"></a><tt class="py-lineno">463</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">paramsMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L464"></a><tt class="py-lineno">464</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_parameters" class="py-name" href="#" onclick="return doclink('link-59', 'translate_parameters', 'link-33');">translate_parameters</a></tt><tt class="py-op">(</tt><tt class="py-name">parameters</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L465"></a><tt class="py-lineno">465</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">stringMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L466"></a><tt class="py-lineno">466</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"\""</tt> <tt class="py-op">+</tt> <tt class="py-name">stringMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\""</tt> </tt>
-<a name="L467"></a><tt class="py-lineno">467</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">variableMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L468"></a><tt class="py-lineno">468</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">variableMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L469"></a><tt class="py-lineno">469</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"MESSAGE"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt> <tt class="py-op">:</tt> </tt>
-<a name="L470"></a><tt class="py-lineno">470</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"\n Error : Please pass a message or action for assertion "</tt> </tt>
-<a name="L471"></a><tt class="py-lineno">471</tt> <tt class="py-line"> </tt>
-<a name="L472"></a><tt class="py-lineno">472</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L473"></a><tt class="py-lineno">473</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_operator"></a><div id="OpenSpeak.translate_operator-def"><a name="L474"></a><tt class="py-lineno">474</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_operator-toggle" onclick="return toggle('OpenSpeak.translate_operator');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_operator">translate_operator</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">operatorStatement</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_operator-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_operator-expanded"><a name="L475"></a><tt class="py-lineno">475</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L476"></a><tt class="py-lineno">476</tt> <tt class="py-line"><tt class="py-docstring"> It will translate the operator for assertion , by ensuring against given arguments.</tt> </tt>
-<a name="L477"></a><tt class="py-lineno">477</tt> <tt class="py-line"><tt class="py-docstring"> It will return the translated assertion operator.</tt> </tt>
-<a name="L478"></a><tt class="py-lineno">478</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L479"></a><tt class="py-lineno">479</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-60', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">operatorStatement</tt><tt class="py-op">)</tt> </tt>
-<a name="L480"></a><tt class="py-lineno">480</tt> <tt class="py-line"> </tt>
-<a name="L481"></a><tt class="py-lineno">481</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L482"></a><tt class="py-lineno">482</tt> <tt class="py-line"> <tt class="py-name">equalsMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"EQUALS$|==$"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L483"></a><tt class="py-lineno">483</tt> <tt class="py-line"> <tt class="py-name">greaterMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"GREATER\s+THAN$|>$"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L484"></a><tt class="py-lineno">484</tt> <tt class="py-line"> <tt class="py-name">lesserMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"LESSER\s+THAN$|<$"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L485"></a><tt class="py-lineno">485</tt> <tt class="py-line"> <tt class="py-name">stringMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"MATCHES|~$"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L486"></a><tt class="py-lineno">486</tt> <tt class="py-line"> <tt class="py-name">greaterEqualMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"GREATER\s+THAN\s+OR\s+EQUALS$|>=$"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L487"></a><tt class="py-lineno">487</tt> <tt class="py-line"> <tt class="py-name">lesserEqualMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"LESSER\s+THAN\s+OR\s+EQUALS$|<=$"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"OPERATOR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L488"></a><tt class="py-lineno">488</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">equalsMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L489"></a><tt class="py-lineno">489</tt> <tt class="py-line"> </tt>
-<a name="L490"></a><tt class="py-lineno">490</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"equals"</tt> </tt>
-<a name="L491"></a><tt class="py-lineno">491</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">greaterMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L492"></a><tt class="py-lineno">492</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">grtrOrLssr</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">grtrOrLssr</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L493"></a><tt class="py-lineno">493</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"greater"</tt> </tt>
-<a name="L494"></a><tt class="py-lineno">494</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">lesserMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L495"></a><tt class="py-lineno">495</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">grtrOrLssr</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">grtrOrLssr</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L496"></a><tt class="py-lineno">496</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"lesser"</tt> </tt>
-<a name="L497"></a><tt class="py-lineno">497</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">stringMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L498"></a><tt class="py-lineno">498</tt> <tt class="py-line"> </tt>
-<a name="L499"></a><tt class="py-lineno">499</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"matches"</tt> </tt>
-<a name="L500"></a><tt class="py-lineno">500</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">greaterEqualMatch</tt><tt class="py-op">:</tt> </tt>
-<a name="L501"></a><tt class="py-lineno">501</tt> <tt class="py-line"> </tt>
-<a name="L502"></a><tt class="py-lineno">502</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"greater_equals"</tt> </tt>
-<a name="L503"></a><tt class="py-lineno">503</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">lesserEqualMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L504"></a><tt class="py-lineno">504</tt> <tt class="py-line"> </tt>
-<a name="L505"></a><tt class="py-lineno">505</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"lesser_equals"</tt> </tt>
-<a name="L506"></a><tt class="py-lineno">506</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L507"></a><tt class="py-lineno">507</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"\n Error: Given Operator is not listed for assertion"</tt> </tt>
-<a name="L508"></a><tt class="py-lineno">508</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L509"></a><tt class="py-lineno">509</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_store"></a><div id="OpenSpeak.translate_store-def"><a name="L510"></a><tt class="py-lineno">510</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_store-toggle" onclick="return toggle('OpenSpeak.translate_store');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_store">translate_store</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">storeStatement</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_store-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_store-expanded"><a name="L511"></a><tt class="py-lineno">511</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L512"></a><tt class="py-lineno">512</tt> <tt class="py-line"><tt class="py-docstring"> This will translate the STORE <variable> IN <value> or <variable> = <value></tt> </tt>
-<a name="L513"></a><tt class="py-lineno">513</tt> <tt class="py-line"><tt class="py-docstring"> into python equivalent to resultString and returns resultString</tt> </tt>
-<a name="L514"></a><tt class="py-lineno">514</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L515"></a><tt class="py-lineno">515</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-61', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"VARIABLE"</tt><tt class="py-op">,</tt><tt class="py-string">"VALUE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">storeStatement</tt><tt class="py-op">)</tt> </tt>
-<a name="L516"></a><tt class="py-lineno">516</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L517"></a><tt class="py-lineno">517</tt> <tt class="py-line"> <tt class="py-comment"># convert the statement here</tt> </tt>
-<a name="L518"></a><tt class="py-lineno">518</tt> <tt class="py-line"> <tt class="py-name">ondoMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"^\s*ON\s+(.*)\s+DO\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"VALUE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L519"></a><tt class="py-lineno">519</tt> <tt class="py-line"> <tt class="py-name">paramsMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"^\s*PARAMS\[(.*)\]|STEP\[(.*)\]|TOPO\[(.*)\]|CASE\[(.*)\]|LAST_RESULT|LAST_RESPONSE"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"VALUE"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L520"></a><tt class="py-lineno">520</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">paramsMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L521"></a><tt class="py-lineno">521</tt> <tt class="py-line"> <tt class="py-name">argString</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_parameters" class="py-name" href="#" onclick="return doclink('link-62', 'translate_parameters', 'link-33');">translate_parameters</a></tt><tt class="py-op">(</tt><tt class="py-name">parameters</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"VALUE"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L522"></a><tt class="py-lineno">522</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"VARIABLE"</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" = "</tt> <tt class="py-op">+</tt> <tt class="py-name">argString</tt> </tt>
-<a name="L523"></a><tt class="py-lineno">523</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ondoMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L524"></a><tt class="py-lineno">524</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"VARIABLE"</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" = "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_onDOAs" class="py-name" href="#" onclick="return doclink('link-63', 'translate_onDOAs', 'link-15');">translate_onDOAs</a></tt><tt class="py-op">(</tt><tt class="py-name">component</tt><tt class="py-op">=</tt><tt class="py-name">ondoMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">,</tt><tt class="py-name">action</tt><tt class="py-op">=</tt><tt class="py-name">ondoMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L525"></a><tt class="py-lineno">525</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L526"></a><tt class="py-lineno">526</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"VARIABLE"</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" = "</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"VALUE"</tt><tt class="py-op">]</tt> </tt>
-<a name="L527"></a><tt class="py-lineno">527</tt> <tt class="py-line"> </tt>
-<a name="L528"></a><tt class="py-lineno">528</tt> <tt class="py-line"> </tt>
-<a name="L529"></a><tt class="py-lineno">529</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L530"></a><tt class="py-lineno">530</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_disconnect"></a><div id="OpenSpeak.translate_disconnect-def"><a name="L531"></a><tt class="py-lineno">531</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_disconnect-toggle" onclick="return toggle('OpenSpeak.translate_disconnect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_disconnect">translate_disconnect</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">disconnectStatement</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_disconnect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_disconnect-expanded"><a name="L532"></a><tt class="py-lineno">532</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L533"></a><tt class="py-lineno">533</tt> <tt class="py-line"><tt class="py-docstring"> This will translate the DISCONNECT <component_name> into python</tt> </tt>
-<a name="L534"></a><tt class="py-lineno">534</tt> <tt class="py-line"><tt class="py-docstring"> equivalent to resultString and returns resultString</tt> </tt>
-<a name="L535"></a><tt class="py-lineno">535</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L536"></a><tt class="py-lineno">536</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-64', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"COMPONENT"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">disconnectStatement</tt><tt class="py-op">)</tt> </tt>
-<a name="L537"></a><tt class="py-lineno">537</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L538"></a><tt class="py-lineno">538</tt> <tt class="py-line"> <tt class="py-comment"># convert the statement here</tt> </tt>
-<a name="L539"></a><tt class="py-lineno">539</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">"main."</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"COMPONENT"</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">".disconnect()"</tt> </tt>
-<a name="L540"></a><tt class="py-lineno">540</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L541"></a><tt class="py-lineno">541</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_onDOAs"></a><div id="OpenSpeak.translate_onDOAs-def"><a name="L542"></a><tt class="py-lineno">542</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_onDOAs-toggle" onclick="return toggle('OpenSpeak.translate_onDOAs');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_onDOAs">translate_onDOAs</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">onDoStatement</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_onDOAs-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_onDOAs-expanded"><a name="L543"></a><tt class="py-lineno">543</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L544"></a><tt class="py-lineno">544</tt> <tt class="py-line"><tt class="py-docstring"> This will translate the ON <component> DO <action> USING <arg1> AS <value1>,<arg2> AS <value2></tt> </tt>
-<a name="L545"></a><tt class="py-lineno">545</tt> <tt class="py-line"><tt class="py-docstring"> into python equivalent to resultString and returns resultString</tt> </tt>
-<a name="L546"></a><tt class="py-lineno">546</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L547"></a><tt class="py-lineno">547</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-65', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"COMPONENT"</tt><tt class="py-op">,</tt><tt class="py-string">"ACTION"</tt><tt class="py-op">,</tt><tt class="py-string">"ARGUMENTS"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">onDoStatement</tt><tt class="py-op">)</tt> </tt>
-<a name="L548"></a><tt class="py-lineno">548</tt> <tt class="py-line"> <tt class="py-name">subString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L549"></a><tt class="py-lineno">549</tt> <tt class="py-line"> </tt>
-<a name="L550"></a><tt class="py-lineno">550</tt> <tt class="py-line"> <tt class="py-name">usingMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"\s*(.*)\s+USING\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ACTION"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L551"></a><tt class="py-lineno">551</tt> <tt class="py-line"> <tt class="py-name">action</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L552"></a><tt class="py-lineno">552</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">usingMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L553"></a><tt class="py-lineno">553</tt> <tt class="py-line"> <tt class="py-name">action</tt> <tt class="py-op">=</tt> <tt class="py-name">usingMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L554"></a><tt class="py-lineno">554</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">usingMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L555"></a><tt class="py-lineno">555</tt> <tt class="py-line"> <tt class="py-name">subString</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.translate_usingas()=TestON.core.openspeak.OpenSpeak-class.html#translate_usingas"><a title="TestON.core.openspeak.OpenSpeak.translate_usingas" class="py-name" href="#" onclick="return doclink('link-66', 'translate_usingas', 'link-66');">translate_usingas</a></tt><tt class="py-op">(</tt><tt class="py-name">arguments</tt><tt class="py-op">=</tt><tt class="py-name">arguments</tt><tt class="py-op">)</tt> </tt>
-<a name="L556"></a><tt class="py-lineno">556</tt> <tt class="py-line"> </tt>
-<a name="L557"></a><tt class="py-lineno">557</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L558"></a><tt class="py-lineno">558</tt> <tt class="py-line"> <tt class="py-name">andCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt> <tt class="py-op">(</tt><tt class="py-string">"(.*)\s+AND\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ACTION"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L559"></a><tt class="py-lineno">559</tt> <tt class="py-line"> </tt>
-<a name="L560"></a><tt class="py-lineno">560</tt> <tt class="py-line"> <tt class="py-name">action</tt> <tt class="py-op">=</tt> <tt class="py-name">action</tt> <tt class="py-op">+</tt> <tt class="py-string">"()"</tt> </tt>
-<a name="L561"></a><tt class="py-lineno">561</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">andCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L562"></a><tt class="py-lineno">562</tt> <tt class="py-line"> <tt class="py-name">action</tt> <tt class="py-op">=</tt> <tt class="py-name">andCheck</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"()"</tt> </tt>
-<a name="L563"></a><tt class="py-lineno">563</tt> <tt class="py-line"> <tt class="py-name">subString</tt> <tt class="py-op">=</tt> <tt class="py-name">subString</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.handle_conjuction()=TestON.core.openspeak.OpenSpeak-class.html#handle_conjuction"><a title="TestON.core.openspeak.OpenSpeak.handle_conjuction" class="py-name" href="#" onclick="return doclink('link-67', 'handle_conjuction', 'link-67');">handle_conjuction</a></tt><tt class="py-op">(</tt><tt class="py-name">statement</tt><tt class="py-op">=</tt><tt class="py-name">andCheck</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L564"></a><tt class="py-lineno">564</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L565"></a><tt class="py-lineno">565</tt> <tt class="py-line"> <tt class="py-name">action</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ACTION"</tt><tt class="py-op">]</tt> </tt>
-<a name="L566"></a><tt class="py-lineno">566</tt> <tt class="py-line"> <tt class="py-name">action</tt> <tt class="py-op">=</tt> <tt class="py-name">action</tt> <tt class="py-op">+</tt> <tt class="py-string">"()"</tt> </tt>
-<a name="L567"></a><tt class="py-lineno">567</tt> <tt class="py-line"> <tt class="py-comment"># convert the statement here</tt> </tt>
-<a name="L568"></a><tt class="py-lineno">568</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">"main."</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"COMPONENT"</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">action</tt> <tt class="py-op">+</tt> <tt class="py-name">subString</tt> </tt>
-<a name="L569"></a><tt class="py-lineno">569</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L570"></a><tt class="py-lineno">570</tt> <tt class="py-line"> </tt>
-<a name="L571"></a><tt class="py-lineno">571</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.handle_conjuction"></a><div id="OpenSpeak.handle_conjuction-def"><a name="L572"></a><tt class="py-lineno">572</tt> <a class="py-toggle" href="#" id="OpenSpeak.handle_conjuction-toggle" onclick="return toggle('OpenSpeak.handle_conjuction');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#handle_conjuction">handle_conjuction</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">conjuctStatement</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.handle_conjuction-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.handle_conjuction-expanded"><a name="L573"></a><tt class="py-lineno">573</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L574"></a><tt class="py-lineno">574</tt> <tt class="py-line"><tt class="py-docstring"> This will handle the conjuctions</tt> </tt>
-<a name="L575"></a><tt class="py-lineno">575</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L576"></a><tt class="py-lineno">576</tt> <tt class="py-line"> </tt>
-<a name="L577"></a><tt class="py-lineno">577</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-68', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"STATEMENT"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">conjuctStatement</tt><tt class="py-op">)</tt> </tt>
-<a name="L578"></a><tt class="py-lineno">578</tt> <tt class="py-line"> <tt class="py-name">subSentence</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L579"></a><tt class="py-lineno">579</tt> <tt class="py-line"> </tt>
-<a name="L580"></a><tt class="py-lineno">580</tt> <tt class="py-line"> <tt class="py-name">storeMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"\s*STORE\s+(.*)\s+IN\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"STATEMENT"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L581"></a><tt class="py-lineno">581</tt> <tt class="py-line"> <tt class="py-name">assertMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"\s*ASSERT\s+(\w+)\s+(.*)\s+(.*)\s+ONPASS\s+(.*)\s+ONFAIL\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"STATEMENT"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L582"></a><tt class="py-lineno">582</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">storeMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L583"></a><tt class="py-lineno">583</tt> <tt class="py-line"> <tt class="py-name">subSentence</tt> <tt class="py-op">=</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">8</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-69" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_store" class="py-name" href="#" onclick="return doclink('link-69', 'translate_store', 'link-16');">translate_store</a></tt><tt class="py-op">(</tt><tt class="py-name">variable</tt><tt class="py-op">=</tt><tt class="py-name">storeMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L584"></a><tt class="py-lineno">584</tt> <tt class="py-line"> <tt class="py-name">value</tt><tt class="py-op">=</tt><tt class="py-name">storeMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L585"></a><tt class="py-lineno">585</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">assertMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L586"></a><tt class="py-lineno">586</tt> <tt class="py-line"> <tt class="py-name">subSentence</tt> <tt class="py-op">=</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">8</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_assertion" class="py-name" href="#" onclick="return doclink('link-70', 'translate_assertion', 'link-18');">translate_assertion</a></tt><tt class="py-op">(</tt><tt class="py-name">leftvalue</tt><tt class="py-op">=</tt><tt class="py-name">assertMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L587"></a><tt class="py-lineno">587</tt> <tt class="py-line"> <tt class="py-name">operator</tt><tt class="py-op">=</tt><tt class="py-name">assertMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L588"></a><tt class="py-lineno">588</tt> <tt class="py-line"> <tt class="py-name">rightvalue</tt><tt class="py-op">=</tt><tt class="py-name">assertMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">3</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L589"></a><tt class="py-lineno">589</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-name">assertMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">4</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L590"></a><tt class="py-lineno">590</tt> <tt class="py-line"> <tt id="link-71" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-71', 'onfail', 'link-19');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-name">assertMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L591"></a><tt class="py-lineno">591</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">subSentence</tt> </tt>
-</div><a name="L592"></a><tt class="py-lineno">592</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_usingas"></a><div id="OpenSpeak.translate_usingas-def"><a name="L593"></a><tt class="py-lineno">593</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_usingas-toggle" onclick="return toggle('OpenSpeak.translate_usingas');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_usingas">translate_usingas</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">argumentAS</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_usingas-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_usingas-expanded"><a name="L594"></a><tt class="py-lineno">594</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L595"></a><tt class="py-lineno">595</tt> <tt class="py-line"><tt class="py-docstring"> This will tranlate USING argument AS value Statement into equivalent argument passing.</tt> </tt>
-<a name="L596"></a><tt class="py-lineno">596</tt> <tt class="py-line"><tt class="py-docstring"> It will return translated form into resultString</tt> </tt>
-<a name="L597"></a><tt class="py-lineno">597</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L598"></a><tt class="py-lineno">598</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-72', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"ARGUMENTS"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">argumentAS</tt><tt class="py-op">)</tt> </tt>
-<a name="L599"></a><tt class="py-lineno">599</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L600"></a><tt class="py-lineno">600</tt> <tt class="py-line"> <tt class="py-name">argsList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L601"></a><tt class="py-lineno">601</tt> <tt class="py-line"> <tt class="py-name">subString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L602"></a><tt class="py-lineno">602</tt> <tt class="py-line"> <tt class="py-name">subSentence</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L603"></a><tt class="py-lineno">603</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L604"></a><tt class="py-lineno">604</tt> <tt class="py-line"> <tt class="py-name">andCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt> <tt class="py-op">(</tt><tt class="py-string">"(.*)\s+AND\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ARGUMENTS"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L605"></a><tt class="py-lineno">605</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">andCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L606"></a><tt class="py-lineno">606</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">andCheck</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L607"></a><tt class="py-lineno">607</tt> <tt class="py-line"> <tt class="py-name">subSentence</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.handle_conjuction" class="py-name" href="#" onclick="return doclink('link-73', 'handle_conjuction', 'link-67');">handle_conjuction</a></tt><tt class="py-op">(</tt><tt class="py-name">statement</tt><tt class="py-op">=</tt><tt class="py-name">andCheck</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L608"></a><tt class="py-lineno">608</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L609"></a><tt class="py-lineno">609</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ARGUMENTS"</tt><tt class="py-op">]</tt> </tt>
-<a name="L610"></a><tt class="py-lineno">610</tt> <tt class="py-line"> </tt>
-<a name="L611"></a><tt class="py-lineno">611</tt> <tt class="py-line"> </tt>
-<a name="L612"></a><tt class="py-lineno">612</tt> <tt class="py-line"> </tt>
-<a name="L613"></a><tt class="py-lineno">613</tt> <tt class="py-line"> <tt class="py-name">argsMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"(.*),(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L614"></a><tt class="py-lineno">614</tt> <tt class="py-line"> </tt>
-<a name="L615"></a><tt class="py-lineno">615</tt> <tt class="py-line"> </tt>
-<a name="L616"></a><tt class="py-lineno">616</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ARGUMENTS"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ARGUMENTS"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">''</tt> <tt class="py-op">:</tt> </tt>
-<a name="L617"></a><tt class="py-lineno">617</tt> <tt class="py-line"> <tt class="py-name">subString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L618"></a><tt class="py-lineno">618</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">argsMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L619"></a><tt class="py-lineno">619</tt> <tt class="py-line"> </tt>
-<a name="L620"></a><tt class="py-lineno">620</tt> <tt class="py-line"> <tt class="py-name">argsList</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L621"></a><tt class="py-lineno">621</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt><tt class="py-op">,</tt> <tt class="py-name">arguments</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt class="py-name">argsList</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L622"></a><tt class="py-lineno">622</tt> <tt class="py-line"> <tt class="py-name">argMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"(.*)\s+AS\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">arguments</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L623"></a><tt class="py-lineno">623</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">argMatch</tt><tt class="py-op">:</tt> </tt>
-<a name="L624"></a><tt class="py-lineno">624</tt> <tt class="py-line"> <tt class="py-name">argsKey</tt> <tt class="py-op">=</tt> <tt class="py-name">argMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L625"></a><tt class="py-lineno">625</tt> <tt class="py-line"> <tt class="py-name">argsValue</tt> <tt class="py-op">=</tt> <tt class="py-name">argMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L626"></a><tt class="py-lineno">626</tt> <tt class="py-line"> <tt class="py-name">paramsMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"PARAMS\[(.*)\]|STEP\[(.*)\]|TOPO\[(.*)\]|CASE\[(.*)\]|LAST_RESPONSE|LAST_RESULT"</tt><tt class="py-op">,</tt><tt class="py-name">argsValue</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L627"></a><tt class="py-lineno">627</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">paramsMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L628"></a><tt class="py-lineno">628</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">index</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">argsList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
-<a name="L629"></a><tt class="py-lineno">629</tt> <tt class="py-line"> <tt class="py-name">subString</tt> <tt class="py-op">=</tt> <tt class="py-name">subString</tt> <tt class="py-op">+</tt> <tt class="py-name">argsKey</tt> <tt class="py-op">+</tt> <tt class="py-string">"="</tt> <tt class="py-op">+</tt> <tt class="py-name">argsValue</tt> </tt>
-<a name="L630"></a><tt class="py-lineno">630</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L631"></a><tt class="py-lineno">631</tt> <tt class="py-line"> <tt class="py-name">subString</tt> <tt class="py-op">=</tt> <tt class="py-name">subString</tt> <tt class="py-op">+</tt> <tt class="py-name">argsKey</tt> <tt class="py-op">+</tt> <tt class="py-string">"="</tt> <tt class="py-op">+</tt> <tt class="py-name">argsValue</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt> </tt>
-<a name="L632"></a><tt class="py-lineno">632</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L633"></a><tt class="py-lineno">633</tt> <tt class="py-line"> <tt class="py-name">argString</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_parameters" class="py-name" href="#" onclick="return doclink('link-74', 'translate_parameters', 'link-33');">translate_parameters</a></tt><tt class="py-op">(</tt><tt class="py-name">parameters</tt><tt class="py-op">=</tt><tt class="py-name">argsValue</tt><tt class="py-op">)</tt> </tt>
-<a name="L634"></a><tt class="py-lineno">634</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">index</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">argsList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
-<a name="L635"></a><tt class="py-lineno">635</tt> <tt class="py-line"> <tt class="py-name">subString</tt> <tt class="py-op">=</tt> <tt class="py-name">subString</tt> <tt class="py-op">+</tt> <tt class="py-name">argsKey</tt> <tt class="py-op">+</tt> <tt class="py-string">"="</tt> <tt class="py-op">+</tt> <tt class="py-name">argString</tt> </tt>
-<a name="L636"></a><tt class="py-lineno">636</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L637"></a><tt class="py-lineno">637</tt> <tt class="py-line"> <tt class="py-name">subString</tt> <tt class="py-op">=</tt> <tt class="py-name">subString</tt> <tt class="py-op">+</tt> <tt class="py-name">argsKey</tt> <tt class="py-op">+</tt> <tt class="py-string">"="</tt> <tt class="py-op">+</tt> <tt class="py-name">argString</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt> </tt>
-<a name="L638"></a><tt class="py-lineno">638</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L639"></a><tt class="py-lineno">639</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">index</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">argsList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
-<a name="L640"></a><tt class="py-lineno">640</tt> <tt class="py-line"> <tt class="py-name">subString</tt> <tt class="py-op">=</tt> <tt class="py-name">subString</tt> <tt class="py-op">+</tt> <tt class="py-name">arguments</tt> </tt>
-<a name="L641"></a><tt class="py-lineno">641</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L642"></a><tt class="py-lineno">642</tt> <tt class="py-line"> <tt class="py-name">subString</tt> <tt class="py-op">=</tt> <tt class="py-name">subString</tt> <tt class="py-op">+</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt> </tt>
-<a name="L643"></a><tt class="py-lineno">643</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L644"></a><tt class="py-lineno">644</tt> <tt class="py-line"> <tt class="py-name">argMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"(.*)\s+AS\s+(.*)"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ARGUMENTS"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L645"></a><tt class="py-lineno">645</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">argMatch</tt><tt class="py-op">:</tt> </tt>
-<a name="L646"></a><tt class="py-lineno">646</tt> <tt class="py-line"> <tt class="py-name">argsKey</tt> <tt class="py-op">=</tt> <tt class="py-name">argMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L647"></a><tt class="py-lineno">647</tt> <tt class="py-line"> <tt class="py-name">argsValue</tt> <tt class="py-op">=</tt> <tt class="py-name">argMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L648"></a><tt class="py-lineno">648</tt> <tt class="py-line"> <tt class="py-name">paramsMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"PARAMS\[(.*)\]|STEP\[(.*)\]|TOPO\[(.*)\]|CASE\[(.*)\]|LAST_RESPONSE|LAST_RESULT"</tt><tt class="py-op">,</tt><tt class="py-name">argsValue</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L649"></a><tt class="py-lineno">649</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">paramsMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L650"></a><tt class="py-lineno">650</tt> <tt class="py-line"> <tt class="py-name">subString</tt> <tt class="py-op">=</tt> <tt class="py-name">subString</tt> <tt class="py-op">+</tt> <tt class="py-name">argsKey</tt> <tt class="py-op">+</tt> <tt class="py-string">"="</tt> <tt class="py-op">+</tt> <tt class="py-name">argsValue</tt> </tt>
-<a name="L651"></a><tt class="py-lineno">651</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L652"></a><tt class="py-lineno">652</tt> <tt class="py-line"> <tt class="py-name">argString</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_parameters" class="py-name" href="#" onclick="return doclink('link-75', 'translate_parameters', 'link-33');">translate_parameters</a></tt><tt class="py-op">(</tt><tt class="py-name">parameters</tt><tt class="py-op">=</tt><tt class="py-name">argsValue</tt><tt class="py-op">)</tt> </tt>
-<a name="L653"></a><tt class="py-lineno">653</tt> <tt class="py-line"> <tt class="py-name">subString</tt> <tt class="py-op">=</tt> <tt class="py-name">subString</tt> <tt class="py-op">+</tt> <tt class="py-name">argsKey</tt> <tt class="py-op">+</tt> <tt class="py-string">"="</tt> <tt class="py-op">+</tt> <tt class="py-name">argString</tt> </tt>
-<a name="L654"></a><tt class="py-lineno">654</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L655"></a><tt class="py-lineno">655</tt> <tt class="py-line"> <tt class="py-name">paramsMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"PARAMS\[(.*)\]|STEP\[(.*)\]|TOPO\[(.*)\]|CASE\[(.*)\]|LAST_RESPONSE|LAST_RESULT"</tt><tt class="py-op">,</tt><tt class="py-name">line</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L656"></a><tt class="py-lineno">656</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">paramsMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L657"></a><tt class="py-lineno">657</tt> <tt class="py-line"> <tt class="py-name">subString</tt> <tt class="py-op">=</tt> <tt class="py-name">subString</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_parameters" class="py-name" href="#" onclick="return doclink('link-76', 'translate_parameters', 'link-33');">translate_parameters</a></tt><tt class="py-op">(</tt><tt class="py-name">parameters</tt><tt class="py-op">=</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L658"></a><tt class="py-lineno">658</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L659"></a><tt class="py-lineno">659</tt> <tt class="py-line"> <tt class="py-name">subString</tt> <tt class="py-op">=</tt> <tt class="py-name">subString</tt> <tt class="py-op">+</tt> <tt class="py-name">line</tt> </tt>
-<a name="L660"></a><tt class="py-lineno">660</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">"("</tt> <tt class="py-op">+</tt> <tt class="py-name">subString</tt> <tt class="py-op">+</tt> <tt class="py-string">")"</tt><tt class="py-op">+</tt> <tt class="py-name">subSentence</tt> </tt>
-<a name="L661"></a><tt class="py-lineno">661</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L662"></a><tt class="py-lineno">662</tt> <tt class="py-line"> </tt>
-<a name="L663"></a><tt class="py-lineno">663</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_connect"></a><div id="OpenSpeak.translate_connect-def"><a name="L664"></a><tt class="py-lineno">664</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_connect-toggle" onclick="return toggle('OpenSpeak.translate_connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_connect">translate_connect</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">connectStatement</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_connect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_connect-expanded"><a name="L665"></a><tt class="py-lineno">665</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L666"></a><tt class="py-lineno">666</tt> <tt class="py-line"><tt class="py-docstring"> This will translate the CONNECT <component_name> USING1 <arg1> AS <value1>, <arg2> AS <value2></tt> </tt>
-<a name="L667"></a><tt class="py-lineno">667</tt> <tt class="py-line"><tt class="py-docstring"> into python equivalent to resultString and returns resultString</tt> </tt>
-<a name="L668"></a><tt class="py-lineno">668</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L669"></a><tt class="py-lineno">669</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-77', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"COMPONENT"</tt><tt class="py-op">,</tt><tt class="py-string">"ARGUMENTS"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">connectStatement</tt><tt class="py-op">)</tt> </tt>
-<a name="L670"></a><tt class="py-lineno">670</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L671"></a><tt class="py-lineno">671</tt> <tt class="py-line"> <tt class="py-name">subString</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.translate_usingas" class="py-name" href="#" onclick="return doclink('link-78', 'translate_usingas', 'link-66');">translate_usingas</a></tt><tt class="py-op">(</tt><tt class="py-name">arguments</tt><tt class="py-op">=</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"ARGUMENTS"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L672"></a><tt class="py-lineno">672</tt> <tt class="py-line"> <tt class="py-comment"># convert the statement here</tt> </tt>
-<a name="L673"></a><tt class="py-lineno">673</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">"main."</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"COMPONENT"</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">".connect("</tt> <tt class="py-op">+</tt> <tt class="py-name">subString</tt> <tt class="py-op">+</tt> <tt class="py-string">")"</tt> </tt>
-<a name="L674"></a><tt class="py-lineno">674</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L675"></a><tt class="py-lineno">675</tt> <tt class="py-line"> </tt>
-<a name="L676"></a><tt class="py-lineno">676</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_parameters"></a><div id="OpenSpeak.translate_parameters-def"><a name="L677"></a><tt class="py-lineno">677</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_parameters-toggle" onclick="return toggle('OpenSpeak.translate_parameters');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_parameters">translate_parameters</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">parameterStatement</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_parameters-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_parameters-expanded"><a name="L678"></a><tt class="py-lineno">678</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L679"></a><tt class="py-lineno">679</tt> <tt class="py-line"><tt class="py-docstring"> This will translate the OpenSpeak Case and Params parameters into python equivalent</tt> </tt>
-<a name="L680"></a><tt class="py-lineno">680</tt> <tt class="py-line"><tt class="py-docstring"> to resultString and returns resultString</tt> </tt>
-<a name="L681"></a><tt class="py-lineno">681</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L682"></a><tt class="py-lineno">682</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-79', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"PARAMETERS"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">parameterStatement</tt><tt class="py-op">)</tt> </tt>
-<a name="L683"></a><tt class="py-lineno">683</tt> <tt class="py-line"> <tt class="py-name">argument</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"PARAMETERS"</tt><tt class="py-op">]</tt> </tt>
-<a name="L684"></a><tt class="py-lineno">684</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L685"></a><tt class="py-lineno">685</tt> <tt class="py-line"> <tt class="py-comment">### match arguments</tt> </tt>
-<a name="L686"></a><tt class="py-lineno">686</tt> <tt class="py-line"> <tt class="py-name">paramsMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"PARAMS((\[(.*)\])*)"</tt><tt class="py-op">,</tt><tt class="py-name">argument</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L687"></a><tt class="py-lineno">687</tt> <tt class="py-line"> <tt class="py-name">stepsMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"STEP((\[(.*)\])*)"</tt><tt class="py-op">,</tt><tt class="py-name">argument</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L688"></a><tt class="py-lineno">688</tt> <tt class="py-line"> <tt class="py-name">casesMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"CASE((\[(.*)\])*)"</tt><tt class="py-op">,</tt><tt class="py-name">argument</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L689"></a><tt class="py-lineno">689</tt> <tt class="py-line"> <tt class="py-name">topoMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"TOPO((\[(.*)\])*)"</tt><tt class="py-op">,</tt><tt class="py-name">argument</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L690"></a><tt class="py-lineno">690</tt> <tt class="py-line"> <tt class="py-name">lastResultMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"LAST_RESULT"</tt><tt class="py-op">,</tt><tt class="py-name">argument</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L691"></a><tt class="py-lineno">691</tt> <tt class="py-line"> <tt class="py-name">lastResponseMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">"LAST_RESPONSE"</tt><tt class="py-op">,</tt><tt class="py-name">argument</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L692"></a><tt class="py-lineno">692</tt> <tt class="py-line"> <tt class="py-comment"># convert the statement here</tt> </tt>
-<a name="L693"></a><tt class="py-lineno">693</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">paramsMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L694"></a><tt class="py-lineno">694</tt> <tt class="py-line"> <tt class="py-name">params</tt> <tt class="py-op">=</tt> <tt class="py-name">paramsMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L695"></a><tt class="py-lineno">695</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"main.params"</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak._argsCheck()=TestON.core.openspeak.OpenSpeak-class.html#_argsCheck"><a title="TestON.core.openspeak.OpenSpeak._argsCheck" class="py-name" href="#" onclick="return doclink('link-80', '_argsCheck', 'link-80');">_argsCheck</a></tt><tt class="py-op">(</tt><tt class="py-name">checkvar</tt><tt class="py-op">=</tt><tt class="py-name">params</tt><tt class="py-op">)</tt> </tt>
-<a name="L696"></a><tt class="py-lineno">696</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">stepsMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L697"></a><tt class="py-lineno">697</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt><tt class="py-string">"main.params[\'"</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentCase</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L698"></a><tt class="py-lineno">698</tt> <tt class="py-line"> <tt class="py-string">"\'][\'STEP"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentStep</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\']"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L699"></a><tt class="py-lineno">699</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.core.openspeak.OpenSpeak._argsCheck" class="py-name" href="#" onclick="return doclink('link-81', '_argsCheck', 'link-80');">_argsCheck</a></tt><tt class="py-op">(</tt><tt class="py-name">checkvar</tt><tt class="py-op">=</tt><tt class="py-name">stepsMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L700"></a><tt class="py-lineno">700</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">casesMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L701"></a><tt class="py-lineno">701</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"main.params[\'"</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentCase</tt> <tt class="py-op">+</tt> <tt class="py-string">"\']"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L702"></a><tt class="py-lineno">702</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.core.openspeak.OpenSpeak._argsCheck" class="py-name" href="#" onclick="return doclink('link-82', '_argsCheck', 'link-80');">_argsCheck</a></tt><tt class="py-op">(</tt><tt class="py-name">checkvar</tt><tt class="py-op">=</tt><tt class="py-name">casesMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L703"></a><tt class="py-lineno">703</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">topoMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L704"></a><tt class="py-lineno">704</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"main.componentDictionary"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L705"></a><tt class="py-lineno">705</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.core.openspeak.OpenSpeak._argsCheck" class="py-name" href="#" onclick="return doclink('link-83', '_argsCheck', 'link-80');">_argsCheck</a></tt><tt class="py-op">(</tt><tt class="py-name">checkvar</tt><tt class="py-op">=</tt><tt class="py-name">topoMatch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L706"></a><tt class="py-lineno">706</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">lastResultMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L707"></a><tt class="py-lineno">707</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"main.last_result"</tt> </tt>
-<a name="L708"></a><tt class="py-lineno">708</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">lastResponseMatch</tt> <tt class="py-op">:</tt> </tt>
-<a name="L709"></a><tt class="py-lineno">709</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"main.last_response"</tt> </tt>
-<a name="L710"></a><tt class="py-lineno">710</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L711"></a><tt class="py-lineno">711</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak._argsCheck"></a><div id="OpenSpeak._argsCheck-def"><a name="L712"></a><tt class="py-lineno">712</tt> <a class="py-toggle" href="#" id="OpenSpeak._argsCheck-toggle" onclick="return toggle('OpenSpeak._argsCheck');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#_argsCheck">_argsCheck</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">args</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak._argsCheck-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak._argsCheck-expanded"><a name="L713"></a><tt class="py-lineno">713</tt> <tt class="py-line"> <tt class="py-docstring">''' This API will check if given argument is varibale reference or String and will translate accordingly.</tt> </tt>
-<a name="L714"></a><tt class="py-lineno">714</tt> <tt class="py-line"><tt class="py-docstring"> It will return the tanslate form in resultString.</tt> </tt>
-<a name="L715"></a><tt class="py-lineno">715</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L716"></a><tt class="py-lineno">716</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-84', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"CHECKVAR"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">args</tt><tt class="py-op">)</tt> </tt>
-<a name="L717"></a><tt class="py-lineno">717</tt> <tt class="py-line"> <tt class="py-name">params</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"CHECKVAR"</tt><tt class="py-op">]</tt> </tt>
-<a name="L718"></a><tt class="py-lineno">718</tt> <tt class="py-line"> <tt class="py-name">argsList</tt> <tt class="py-op">=</tt> <tt class="py-name">params</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"]"</tt><tt class="py-op">)</tt> </tt>
-<a name="L719"></a><tt class="py-lineno">719</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L720"></a><tt class="py-lineno">720</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">argsList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">argsList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L721"></a><tt class="py-lineno">721</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt><tt class="py-op">,</tt><tt class="py-name">paramArgs</tt> <tt class="py-keyword">in</tt> <tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt class="py-name">argsList</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L722"></a><tt class="py-lineno">722</tt> <tt class="py-line"> <tt class="py-name">argsWidVariable</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">"(\"|\')\s*(\w+)\s*(\'|\")"</tt><tt class="py-op">,</tt><tt class="py-name">paramArgs</tt><tt class="py-op">,</tt><tt class="py-name">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L723"></a><tt class="py-lineno">723</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">argsWidVariable</tt> <tt class="py-op">:</tt> </tt>
-<a name="L724"></a><tt class="py-lineno">724</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-string">"[\'"</tt> <tt class="py-op">+</tt> <tt class="py-name">argsWidVariable</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\']"</tt> </tt>
-<a name="L725"></a><tt class="py-lineno">725</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L726"></a><tt class="py-lineno">726</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultString</tt> <tt class="py-op">+</tt> <tt class="py-name">paramArgs</tt> <tt class="py-op">+</tt> <tt class="py-string">"]"</tt> </tt>
-<a name="L727"></a><tt class="py-lineno">727</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L728"></a><tt class="py-lineno">728</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_step"></a><div id="OpenSpeak.translate_step-def"><a name="L729"></a><tt class="py-lineno">729</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_step-toggle" onclick="return toggle('OpenSpeak.translate_step');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_step">translate_step</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">stepStatement</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_step-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_step-expanded"><a name="L730"></a><tt class="py-lineno">730</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L731"></a><tt class="py-lineno">731</tt> <tt class="py-line"><tt class="py-docstring"> This will translate the STEP "DO SOMETHING HERE" into python equivalent</tt> </tt>
-<a name="L732"></a><tt class="py-lineno">732</tt> <tt class="py-line"><tt class="py-docstring"> to resultString and returns resultString</tt> </tt>
-<a name="L733"></a><tt class="py-lineno">733</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L734"></a><tt class="py-lineno">734</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-85', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"STEP"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">stepStatement</tt><tt class="py-op">)</tt> </tt>
-<a name="L735"></a><tt class="py-lineno">735</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L736"></a><tt class="py-lineno">736</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">"main.step(\""</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"STEP"</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">"\")"</tt> </tt>
-<a name="L737"></a><tt class="py-lineno">737</tt> <tt class="py-line"> <tt class="py-comment"># convert the statement here</tt> </tt>
-<a name="L738"></a><tt class="py-lineno">738</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L739"></a><tt class="py-lineno">739</tt> <tt class="py-line"> </tt>
-<a name="L740"></a><tt class="py-lineno">740</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_comment"></a><div id="OpenSpeak.translate_comment-def"><a name="L741"></a><tt class="py-lineno">741</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_comment-toggle" onclick="return toggle('OpenSpeak.translate_comment');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_comment">translate_comment</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">commentStatement</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_comment-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_comment-expanded"><a name="L742"></a><tt class="py-lineno">742</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L743"></a><tt class="py-lineno">743</tt> <tt class="py-line"><tt class="py-docstring"> This will translate the COMMENT "DO SOMETHING HERE" into python equivalent</tt> </tt>
-<a name="L744"></a><tt class="py-lineno">744</tt> <tt class="py-line"><tt class="py-docstring"> to resultString and returns resultString</tt> </tt>
-<a name="L745"></a><tt class="py-lineno">745</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L746"></a><tt class="py-lineno">746</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-86', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"COMMENT"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">commentStatement</tt><tt class="py-op">)</tt> </tt>
-<a name="L747"></a><tt class="py-lineno">747</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L748"></a><tt class="py-lineno">748</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">"#"</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"COMMENT"</tt><tt class="py-op">]</tt> </tt>
-<a name="L749"></a><tt class="py-lineno">749</tt> <tt class="py-line"> <tt class="py-comment"># convert the statement here</tt> </tt>
-<a name="L750"></a><tt class="py-lineno">750</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L751"></a><tt class="py-lineno">751</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_testcase_name"></a><div id="OpenSpeak.translate_testcase_name-def"><a name="L752"></a><tt class="py-lineno">752</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_testcase_name-toggle" onclick="return toggle('OpenSpeak.translate_testcase_name');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_testcase_name">translate_testcase_name</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">nameStatement</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_testcase_name-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_testcase_name-expanded"><a name="L753"></a><tt class="py-lineno">753</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L754"></a><tt class="py-lineno">754</tt> <tt class="py-line"><tt class="py-docstring"> This method will convert NAME "<Testcase_name>" into python equivalent statement</tt> </tt>
-<a name="L755"></a><tt class="py-lineno">755</tt> <tt class="py-line"><tt class="py-docstring"> to resultString and returns resultString</tt> </tt>
-<a name="L756"></a><tt class="py-lineno">756</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L757"></a><tt class="py-lineno">757</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-87', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"TESTNAME"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">nameStatement</tt><tt class="py-op">)</tt> </tt>
-<a name="L758"></a><tt class="py-lineno">758</tt> <tt class="py-line"> </tt>
-<a name="L759"></a><tt class="py-lineno">759</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L760"></a><tt class="py-lineno">760</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">"main.case(\""</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"TESTNAME"</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">"\")"</tt> </tt>
-<a name="L761"></a><tt class="py-lineno">761</tt> <tt class="py-line"> <tt class="py-comment"># convert the statement here</tt> </tt>
-<a name="L762"></a><tt class="py-lineno">762</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L763"></a><tt class="py-lineno">763</tt> <tt class="py-line"> </tt>
-<a name="L764"></a><tt class="py-lineno">764</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_case_block"></a><div id="OpenSpeak.translate_case_block-def"><a name="L765"></a><tt class="py-lineno">765</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_case_block-toggle" onclick="return toggle('OpenSpeak.translate_case_block');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_case_block">translate_case_block</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-param">caseBlock</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_case_block-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_case_block-expanded"><a name="L766"></a><tt class="py-lineno">766</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L767"></a><tt class="py-lineno">767</tt> <tt class="py-line"><tt class="py-docstring"> This method will translate the case block in test script .</tt> </tt>
-<a name="L768"></a><tt class="py-lineno">768</tt> <tt class="py-line"><tt class="py-docstring"> It returns the translated equivalent python code for test script</tt> </tt>
-<a name="L769"></a><tt class="py-lineno">769</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L770"></a><tt class="py-lineno">770</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-88', 'parse_args', 'link-1');">parse_args</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"CASENUMBER"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-op">**</tt><tt class="py-name">caseBlock</tt><tt class="py-op">)</tt> </tt>
-<a name="L771"></a><tt class="py-lineno">771</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L772"></a><tt class="py-lineno">772</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">"def CASE"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-string">"CASENUMBER"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"(self,main) :\n"</tt> </tt>
-<a name="L773"></a><tt class="py-lineno">773</tt> <tt class="py-line"> <tt class="py-comment"># process the caseBlock List translate all statements underlying the given case</tt> </tt>
-<a name="L774"></a><tt class="py-lineno">774</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L775"></a><tt class="py-lineno">775</tt> <tt class="py-line"> </tt>
-<a name="L776"></a><tt class="py-lineno">776</tt> <tt class="py-line"> </tt>
-<a name="L777"></a><tt class="py-lineno">777</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_loop_block"></a><div id="OpenSpeak.translate_loop_block-def"><a name="L778"></a><tt class="py-lineno">778</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_loop_block-toggle" onclick="return toggle('OpenSpeak.translate_loop_block');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_loop_block">translate_loop_block</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">*</tt><tt class="py-param">loopBlock</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_loop_block-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_loop_block-expanded"><a name="L779"></a><tt class="py-lineno">779</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L780"></a><tt class="py-lineno">780</tt> <tt class="py-line"><tt class="py-docstring"> This method will translate for loop block into its equivalent python code.</tt> </tt>
-<a name="L781"></a><tt class="py-lineno">781</tt> <tt class="py-line"><tt class="py-docstring"> Whole loop block will be passed into loopBlock List.</tt> </tt>
-<a name="L782"></a><tt class="py-lineno">782</tt> <tt class="py-line"><tt class="py-docstring"> It returns the transalted reuslt as a string.</tt> </tt>
-<a name="L783"></a><tt class="py-lineno">783</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L784"></a><tt class="py-lineno">784</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L785"></a><tt class="py-lineno">785</tt> <tt class="py-line"> <tt class="py-comment"># process the loopBlock List translate all statements underlying the given loop block</tt> </tt>
-<a name="L786"></a><tt class="py-lineno">786</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L787"></a><tt class="py-lineno">787</tt> <tt class="py-line"> </tt>
-<a name="L788"></a><tt class="py-lineno">788</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.translate_conjuction"></a><div id="OpenSpeak.translate_conjuction-def"><a name="L789"></a><tt class="py-lineno">789</tt> <a class="py-toggle" href="#" id="OpenSpeak.translate_conjuction-toggle" onclick="return toggle('OpenSpeak.translate_conjuction');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#translate_conjuction">translate_conjuction</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">conjuctionStatement</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.translate_conjuction-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.translate_conjuction-expanded"><a name="L790"></a><tt class="py-lineno">790</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L791"></a><tt class="py-lineno">791</tt> <tt class="py-line"><tt class="py-docstring"> This will translate the AND conjuction statements into python equivalent</tt> </tt>
-<a name="L792"></a><tt class="py-lineno">792</tt> <tt class="py-line"><tt class="py-docstring"> to resultString and returns resultString</tt> </tt>
-<a name="L793"></a><tt class="py-lineno">793</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L794"></a><tt class="py-lineno">794</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L795"></a><tt class="py-lineno">795</tt> <tt class="py-line"> <tt class="py-comment"># convert the statement here</tt> </tt>
-<a name="L796"></a><tt class="py-lineno">796</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">resultString</tt> </tt>
-</div><a name="L797"></a><tt class="py-lineno">797</tt> <tt class="py-line"> </tt>
-<a name="L798"></a><tt class="py-lineno">798</tt> <tt class="py-line"> </tt>
-<a name="OpenSpeak.parse_args"></a><div id="OpenSpeak.parse_args-def"><a name="L799"></a><tt class="py-lineno">799</tt> <a class="py-toggle" href="#" id="OpenSpeak.parse_args-toggle" onclick="return toggle('OpenSpeak.parse_args');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.openspeak.OpenSpeak-class.html#parse_args">parse_args</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">args</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">kwargs</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OpenSpeak.parse_args-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OpenSpeak.parse_args-expanded"><a name="L800"></a><tt class="py-lineno">800</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L801"></a><tt class="py-lineno">801</tt> <tt class="py-line"><tt class="py-docstring"> It will accept the (key,value) pair and will return the (key,value) pairs with keys in uppercase.</tt> </tt>
-<a name="L802"></a><tt class="py-lineno">802</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L803"></a><tt class="py-lineno">803</tt> <tt class="py-line"> <tt class="py-name">newArgs</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L804"></a><tt class="py-lineno">804</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt><tt class="py-op">,</tt><tt class="py-name">value</tt> <tt class="py-keyword">in</tt> <tt class="py-name">kwargs</tt><tt class="py-op">.</tt><tt class="py-name">iteritems</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L805"></a><tt class="py-lineno">805</tt> <tt class="py-line"> <tt class="py-comment">#currentKey = str.upper(key)</tt> </tt>
-<a name="L806"></a><tt class="py-lineno">806</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">args</tt><tt class="py-op">,</tt><tt class="py-name">list</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">str</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">args</tt><tt class="py-op">:</tt> </tt>
-<a name="L807"></a><tt class="py-lineno">807</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">each</tt> <tt class="py-keyword">in</tt> <tt class="py-name">args</tt><tt class="py-op">:</tt> </tt>
-<a name="L808"></a><tt class="py-lineno">808</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">each</tt><tt class="py-op">==</tt><tt class="py-name">str</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L809"></a><tt class="py-lineno">809</tt> <tt class="py-line"> <tt class="py-name">newArgs</tt> <tt class="py-op">[</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">each</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">value</tt> </tt>
-<a name="L810"></a><tt class="py-lineno">810</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">each</tt> <tt class="py-op">!=</tt> <tt class="py-name">str</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">newArgs</tt><tt class="py-op">.</tt><tt class="py-name">has_key</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">each</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">False</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L811"></a><tt class="py-lineno">811</tt> <tt class="py-line"> <tt class="py-name">newArgs</tt><tt class="py-op">[</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">each</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L812"></a><tt class="py-lineno">812</tt> <tt class="py-line"> </tt>
-<a name="L813"></a><tt class="py-lineno">813</tt> <tt class="py-line"> </tt>
-<a name="L814"></a><tt class="py-lineno">814</tt> <tt class="py-line"> </tt>
-<a name="L815"></a><tt class="py-lineno">815</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">newArgs</tt> </tt>
-</div></div><a name="L816"></a><tt class="py-lineno">816</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.openspeak.OpenSpeak-class.html b/TestON/Documentation/TestON_Document/TestON.core.openspeak.OpenSpeak-class.html
deleted file mode 100644
index fe6c295..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.openspeak.OpenSpeak-class.html
+++ /dev/null
@@ -1,946 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.openspeak.OpenSpeak</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- <a href="TestON.core.openspeak-module.html">Module openspeak</a> ::
- Class OpenSpeak
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.openspeak.OpenSpeak-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class OpenSpeak</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.openspeak.OpenSpeak-class.html#compiler" class="summary-sig-name">compiler</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**compileParameters</span>)</span><br />
- This method will parse the openspeak file and will write to a python
- module with the equivalent translations.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.compiler">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.openspeak.OpenSpeak-class.html#verify_and_translate" class="summary-sig-name">verify_and_translate</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- It will accept the each line and calls the suitable API to conver
- into pyton equivalent syntax .</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.verify_and_translate">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="translate_repeat"></a><span class="summary-sig-name">translate_repeat</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**repeatStatement</span>)</span><br />
- this will transalte the repeat statement into a python equivalen
- while loop</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_repeat">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_if_else_operator" class="summary-sig-name">translate_if_else_operator</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**loopBlock</span>)</span><br />
- This method will translate if-else loop block into its equivalent
- python code.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_if_else_operator">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_experimental_mode" class="summary-sig-name">translate_experimental_mode</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**modeType</span>)</span><br />
- This API will translate statment EXPERIMENTAL MODE ON/OFF into python
- equivalent.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_experimental_mode">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="interpret"></a><span class="summary-sig-name">interpret</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**interpetParameters</span>)</span><br />
- This method will accept the OpenSpeak syntax into a string and will
- return a python equivalent translations statement</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.interpret">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="translate_logs"></a><span class="summary-sig-name">translate_logs</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**logStatement</span>)</span><br />
- This will translate the OpenSpeak log message statements into python
- equivalent to resultString and returns resultString</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_logs">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_log_message" class="summary-sig-name">translate_log_message</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**messageStatement</span>)</span><br />
- This API will translate log messages if it is a string or Variable or
- combination of string and variable.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_log_message">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="translate_assertion"></a><span class="summary-sig-name">translate_assertion</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**assertStatement</span>)</span><br />
- This will translate the ASSERT <value1> <COMPARISON
- OPERATOR> <value2> into python equivalent to resultString
- and returns resultString</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_assertion">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_response_result" class="summary-sig-name">translate_response_result</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**operatorStatement</span>)</span><br />
- It will translate the LAST_RESPONSE or LAST_RESULT statement into its
- equivalent.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_response_result">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_assertMessage" class="summary-sig-name">translate_assertMessage</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**messageStatement</span>)</span><br />
- This API will facilitate the translation of assert ONPASS or ONFAIL
- messages .</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_assertMessage">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_operator" class="summary-sig-name">translate_operator</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**operatorStatement</span>)</span><br />
- It will translate the operator for assertion , by ensuring against
- given arguments.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_operator">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="translate_store"></a><span class="summary-sig-name">translate_store</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**storeStatement</span>)</span><br />
- This will translate the STORE <variable> IN <value> or
- <variable> = <value> into python equivalent to
- resultString and returns resultString</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_store">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="translate_disconnect"></a><span class="summary-sig-name">translate_disconnect</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**disconnectStatement</span>)</span><br />
- This will translate the DISCONNECT <component_name> into python
- equivalent to resultString and returns resultString</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="translate_onDOAs"></a><span class="summary-sig-name">translate_onDOAs</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**onDoStatement</span>)</span><br />
- This will translate the ON <component> DO <action> USING
- <arg1> AS <value1>,<arg2> AS <value2> into
- python equivalent to resultString and returns resultString</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_onDOAs">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="handle_conjuction"></a><span class="summary-sig-name">handle_conjuction</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**conjuctStatement</span>)</span><br />
- This will handle the conjuctions</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.handle_conjuction">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_usingas" class="summary-sig-name">translate_usingas</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**argumentAS</span>)</span><br />
- This will tranlate USING argument AS value Statement into equivalent
- argument passing.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_usingas">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="translate_connect"></a><span class="summary-sig-name">translate_connect</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectStatement</span>)</span><br />
- This will translate the CONNECT <component_name> USING1
- <arg1> AS <value1>, <arg2> AS <value2> into
- python equivalent to resultString and returns resultString</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="translate_parameters"></a><span class="summary-sig-name">translate_parameters</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**parameterStatement</span>)</span><br />
- This will translate the OpenSpeak Case and Params parameters into
- python equivalent to resultString and returns resultString</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_parameters">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.openspeak.OpenSpeak-class.html#_argsCheck" class="summary-sig-name" onclick="show_private();">_argsCheck</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**args</span>)</span><br />
- This API will check if given argument is varibale reference or String
- and will translate accordingly.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak._argsCheck">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="translate_step"></a><span class="summary-sig-name">translate_step</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**stepStatement</span>)</span><br />
- This will translate the STEP "DO SOMETHING HERE" into
- python equivalent to resultString and returns resultString</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_step">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="translate_comment"></a><span class="summary-sig-name">translate_comment</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**commentStatement</span>)</span><br />
- This will translate the COMMENT "DO SOMETHING HERE" into
- python equivalent to resultString and returns resultString</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_comment">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="translate_testcase_name"></a><span class="summary-sig-name">translate_testcase_name</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**nameStatement</span>)</span><br />
- This method will convert NAME "<Testcase_name>" into
- python equivalent statement to resultString and returns resultString</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_testcase_name">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_case_block" class="summary-sig-name">translate_case_block</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**caseBlock</span>)</span><br />
- This method will translate the case block in test script .</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_case_block">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_loop_block" class="summary-sig-name">translate_loop_block</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*loopBlock</span>)</span><br />
- This method will translate for loop block into its equivalent python
- code.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_loop_block">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="translate_conjuction"></a><span class="summary-sig-name">translate_conjuction</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">conjuctionStatement</span>)</span><br />
- This will translate the AND conjuction statements into python
- equivalent to resultString and returns resultString</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_conjuction">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="parse_args"></a><span class="summary-sig-name">parse_args</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">args</span>,
- <span class="summary-sig-arg">**kwargs</span>)</span><br />
- It will accept the (key,value) pair and will return the (key,value)
- pairs with keys in uppercase.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.parse_args">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="compiler"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">compiler</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**compileParameters</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.compiler">source code</a></span>
- </td>
- </tr></table>
-
- <p>This method will parse the openspeak file and will write to a python
- module with the equivalent translations. It can accept OpenSpeak syntax
- in string or an OpenSpeak file as an input parameter. Translated form can
- be written into python module if attribute "WRITETOFILE" is set
- to 1.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="verify_and_translate"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">verify_and_translate</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">line</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.verify_and_translate">source code</a></span>
- </td>
- </tr></table>
-
- <p>It will accept the each line and calls the suitable API to conver into
- pyton equivalent syntax . It will return the translated python syntax
- .</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="translate_if_else_operator"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">translate_if_else_operator</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**loopBlock</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_if_else_operator">source code</a></span>
- </td>
- </tr></table>
-
- <p>This method will translate if-else loop block into its equivalent
- python code. Whole loop block will be passed into loopBlock List. It
- returns the transalted reuslt as a string.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="translate_experimental_mode"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">translate_experimental_mode</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**modeType</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_experimental_mode">source code</a></span>
- </td>
- </tr></table>
-
- <p>This API will translate statment EXPERIMENTAL MODE ON/OFF into python
- equivalent. It will return the transalted value.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="translate_log_message"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">translate_log_message</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**messageStatement</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_log_message">source code</a></span>
- </td>
- </tr></table>
-
- <p>This API will translate log messages if it is a string or Variable or
- combination of string and variable. It will return the analysed and
- translate message.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="translate_response_result"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">translate_response_result</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**operatorStatement</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_response_result">source code</a></span>
- </td>
- </tr></table>
-
- <p>It will translate the LAST_RESPONSE or LAST_RESULT statement into its
- equivalent. It returns the translate form in resulString.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="translate_assertMessage"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">translate_assertMessage</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**messageStatement</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_assertMessage">source code</a></span>
- </td>
- </tr></table>
-
- <p>This API will facilitate the translation of assert ONPASS or ONFAIL
- messages . The message can be a string or calling another API in
- OpenSpeak syntax. It will return the translated message</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="translate_operator"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">translate_operator</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**operatorStatement</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_operator">source code</a></span>
- </td>
- </tr></table>
-
- <p>It will translate the operator for assertion , by ensuring against
- given arguments. It will return the translated assertion operator.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="translate_usingas"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">translate_usingas</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**argumentAS</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_usingas">source code</a></span>
- </td>
- </tr></table>
-
- <p>This will tranlate USING argument AS value Statement into equivalent
- argument passing. It will return translated form into resultString</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="_argsCheck"></a>
-<div class="private">
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">_argsCheck</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**args</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak._argsCheck">source code</a></span>
- </td>
- </tr></table>
-
- <p>This API will check if given argument is varibale reference or String
- and will translate accordingly. It will return the tanslate form in
- resultString.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="translate_case_block"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">translate_case_block</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**caseBlock</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_case_block">source code</a></span>
- </td>
- </tr></table>
-
- <p>This method will translate the case block in test script . It returns
- the translated equivalent python code for test script</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="translate_loop_block"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">translate_loop_block</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">*loopBlock</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.openspeak-pysrc.html#OpenSpeak.translate_loop_block">source code</a></span>
- </td>
- </tr></table>
-
- <p>This method will translate for loop block into its equivalent python
- code. Whole loop block will be passed into loopBlock List. It returns the
- transalted reuslt as a string.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.teston-module.html b/TestON/Documentation/TestON_Document/TestON.core.teston-module.html
deleted file mode 100644
index 6cd9a75..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.teston-module.html
+++ /dev/null
@@ -1,557 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.teston</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module teston
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.teston-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module teston</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.teston-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 22-Oct-2012
-
-@author: Anil Kumar (anilkumar.s@paxterrasolutions.com)
-
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-
-
-teston is the main module.
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.core.teston.TestON-class.html" class="summary-name">TestON</a><br />
- TestON will initiate the specified test.
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Functions</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Functions"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="verifyOptions"></a><span class="summary-sig-name">verifyOptions</span>(<span class="summary-sig-arg">options</span>)</span><br />
- This will verify the command line options and set to default values,
- if any option not given in command line.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#verifyOptions">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="verifyTest"></a><span class="summary-sig-name">verifyTest</span>(<span class="summary-sig-arg">options</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#verifyTest">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="verifyExample"></a><span class="summary-sig-name">verifyExample</span>(<span class="summary-sig-arg">options</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#verifyExample">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="verifyLogdir"></a><span class="summary-sig-name">verifyLogdir</span>(<span class="summary-sig-arg">options</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#verifyLogdir">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="verifyMail"></a><span class="summary-sig-name">verifyMail</span>(<span class="summary-sig-arg">options</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#verifyMail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="verifyTestCases"></a><span class="summary-sig-name">verifyTestCases</span>(<span class="summary-sig-arg">options</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#verifyTestCases">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="verifyOnosCell"></a><span class="summary-sig-name">verifyOnosCell</span>(<span class="summary-sig-arg">options</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#verifyOnosCell">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="verifyTestScript"></a><span class="summary-sig-name">verifyTestScript</span>(<span class="summary-sig-arg">options</span>)</span><br />
- Verifyies test script.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#verifyTestScript">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="verifyParams"></a><span class="summary-sig-name">verifyParams</span>()</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#verifyParams">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.teston-module.html#load_parser" class="summary-sig-name">load_parser</a>()</span><br />
- It facilitates the loading customised parser for topology and params
- file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#load_parser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="load_defaultParser"></a><span class="summary-sig-name">load_defaultParser</span>()</span><br />
- It will load the default parser which is xml parser to parse the
- params and topology file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#load_defaultParser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.teston-module.html#load_logger" class="summary-sig-name">load_logger</a>()</span><br />
- It facilitates the loading customised parser for topology and params
- file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#load_logger">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="load_defaultlogger"></a><span class="summary-sig-name">load_defaultlogger</span>()</span><br />
- It will load the default parser which is xml parser to parse the
- params and topology file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#load_defaultlogger">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="_echo"></a><span class="summary-sig-name">_echo</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#_echo">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="location"></a><span class="summary-name">location</span> = <code title="'/home/admin/OnosSystemTest/TestON/core'"><code class="variable-quote">'</code><code class="variable-string">/home/admin/OnosSystemTest/TestON/core</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="path"></a><span class="summary-name">path</span> = <code title="'/home/admin/OnosSystemTest/TestON/'"><code class="variable-quote">'</code><code class="variable-string">/home/admin/OnosSystemTest/TestON/</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="drivers_path"></a><span class="summary-name">drivers_path</span> = <code title="'/home/admin/OnosSystemTest/TestON/drivers/'"><code class="variable-quote">'</code><code class="variable-string">/home/admin/OnosSystemTest/TestON/drivers/</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="core_path"></a><span class="summary-name">core_path</span> = <code title="'/home/admin/OnosSystemTest/TestON/core'"><code class="variable-quote">'</code><code class="variable-string">/home/admin/OnosSystemTest/TestON/core</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="tests_path"></a><span class="summary-name">tests_path</span> = <code title="'/home/admin/OnosSystemTest/TestON/tests'"><code class="variable-quote">'</code><code class="variable-string">/home/admin/OnosSystemTest/TestON/tests</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="logs_path"></a><span class="summary-name">logs_path</span> = <code title="'/home/admin/OnosSystemTest/TestON/logs/'"><code class="variable-quote">'</code><code class="variable-string">/home/admin/OnosSystemTest/TestON/logs/</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="config_path"></a><span class="summary-name">config_path</span> = <code title="'/home/admin/OnosSystemTest/TestON/config/'"><code class="variable-quote">'</code><code class="variable-string">/home/admin/OnosSystemTest/TestON/config/</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.core'"><code class="variable-quote">'</code><code class="variable-string">TestON.core</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTION DETAILS ==================== -->
-<a name="section-FunctionDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Function Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-FunctionDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="load_parser"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">load_parser</span>()</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.teston-pysrc.html#load_parser">source code</a></span>
- </td>
- </tr></table>
-
- <p>It facilitates the loading customised parser for topology and params
- file. It loads parser mentioned in tab named parser of teston.cfg file.
- It also loads default xmlparser if no parser have specified in teston.cfg
- file.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="load_logger"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">load_logger</span>()</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.teston-pysrc.html#load_logger">source code</a></span>
- </td>
- </tr></table>
-
- <p>It facilitates the loading customised parser for topology and params
- file. It loads parser mentioned in tab named parser of teston.cfg file.
- It also loads default xmlparser if no parser have specified in teston.cfg
- file.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.teston-pysrc.html b/TestON/Documentation/TestON_Document/TestON.core.teston-pysrc.html
deleted file mode 100644
index 93d22dd..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.teston-pysrc.html
+++ /dev/null
@@ -1,1079 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.teston</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module teston
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.teston-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.core.teston-module.html">Module TestON.core.teston</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 22-Oct-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">@author: Anil Kumar (anilkumar.s@paxterrasolutions.com)</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"> (at your option) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">teston is the main module.</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">getpass</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">__builtin__</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">new</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt id="link-0" class="py-name" targets="Module TestON.core.xmldict=TestON.core.xmldict-module.html"><a title="TestON.core.xmldict" class="py-name" href="#" onclick="return doclink('link-0', 'xmldict', 'link-0');">xmldict</a></tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">importlib</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">threading</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-name">module</tt> <tt class="py-op">=</tt> <tt class="py-name">new</tt><tt class="py-op">.</tt><tt class="py-name">module</tt><tt class="py-op">(</tt><tt class="py-string">"test"</tt><tt class="py-op">)</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt id="link-1" class="py-name" targets="Module TestON.core.openspeak=TestON.core.openspeak-module.html"><a title="TestON.core.openspeak" class="py-name" href="#" onclick="return doclink('link-1', 'openspeak', 'link-1');">openspeak</a></tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">subprocess</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-keyword">global</tt> <tt id="link-2" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-2', 'path', 'link-2');">path</a></tt><tt class="py-op">,</tt> <tt id="link-3" class="py-name" targets="Variable TestON.bin.cli.drivers_path=TestON.bin.cli-module.html#drivers_path,Variable TestON.core.teston.drivers_path=TestON.core.teston-module.html#drivers_path"><a title="TestON.bin.cli.drivers_path
-TestON.core.teston.drivers_path" class="py-name" href="#" onclick="return doclink('link-3', 'drivers_path', 'link-3');">drivers_path</a></tt><tt class="py-op">,</tt> <tt id="link-4" class="py-name" targets="Variable TestON.bin.cli.core_path=TestON.bin.cli-module.html#core_path,Variable TestON.core.teston.core_path=TestON.core.teston-module.html#core_path"><a title="TestON.bin.cli.core_path
-TestON.core.teston.core_path" class="py-name" href="#" onclick="return doclink('link-4', 'core_path', 'link-4');">core_path</a></tt><tt class="py-op">,</tt> <tt id="link-5" class="py-name" targets="Variable TestON.bin.cli.tests_path=TestON.bin.cli-module.html#tests_path,Variable TestON.core.teston.tests_path=TestON.core.teston-module.html#tests_path"><a title="TestON.bin.cli.tests_path
-TestON.core.teston.tests_path" class="py-name" href="#" onclick="return doclink('link-5', 'tests_path', 'link-5');">tests_path</a></tt><tt class="py-op">,</tt><tt id="link-6" class="py-name" targets="Variable TestON.bin.cli.logs_path=TestON.bin.cli-module.html#logs_path,Variable TestON.core.teston.logs_path=TestON.core.teston-module.html#logs_path"><a title="TestON.bin.cli.logs_path
-TestON.core.teston.logs_path" class="py-name" href="#" onclick="return doclink('link-6', 'logs_path', 'link-6');">logs_path</a></tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt id="link-7" class="py-name" targets="Variable TestON.bin.cli.location=TestON.bin.cli-module.html#location,Variable TestON.core.teston.location=TestON.core.teston-module.html#location"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-7', 'location', 'link-7');">location</a></tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-8', 'path', 'link-2');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">abspath</tt><tt class="py-op">(</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-9', 'path', 'link-2');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">dirname</tt><tt class="py-op">(</tt> <tt class="py-name">__file__</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt id="link-10" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-10', 'path', 'link-2');">path</a></tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">"(core|bin)$"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt id="link-11" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-11', 'location', 'link-7');">location</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt id="link-12" class="py-name"><a title="TestON.bin.cli.drivers_path
-TestON.core.teston.drivers_path" class="py-name" href="#" onclick="return doclink('link-12', 'drivers_path', 'link-3');">drivers_path</a></tt> <tt class="py-op">=</tt> <tt id="link-13" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-13', 'path', 'link-2');">path</a></tt><tt class="py-op">+</tt><tt class="py-string">"drivers/"</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt id="link-14" class="py-name"><a title="TestON.bin.cli.core_path
-TestON.core.teston.core_path" class="py-name" href="#" onclick="return doclink('link-14', 'core_path', 'link-4');">core_path</a></tt> <tt class="py-op">=</tt> <tt id="link-15" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-15', 'path', 'link-2');">path</a></tt><tt class="py-op">+</tt><tt class="py-string">"core"</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt id="link-16" class="py-name"><a title="TestON.bin.cli.tests_path
-TestON.core.teston.tests_path" class="py-name" href="#" onclick="return doclink('link-16', 'tests_path', 'link-5');">tests_path</a></tt> <tt class="py-op">=</tt> <tt id="link-17" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-17', 'path', 'link-2');">path</a></tt><tt class="py-op">+</tt><tt class="py-string">"tests"</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt id="link-18" class="py-name"><a title="TestON.bin.cli.logs_path
-TestON.core.teston.logs_path" class="py-name" href="#" onclick="return doclink('link-18', 'logs_path', 'link-6');">logs_path</a></tt> <tt class="py-op">=</tt> <tt id="link-19" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-19', 'path', 'link-2');">path</a></tt><tt class="py-op">+</tt><tt class="py-string">"logs/"</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt id="link-20" class="py-name" targets="Variable TestON.bin.cli.config_path=TestON.bin.cli-module.html#config_path,Variable TestON.core.teston.config_path=TestON.core.teston-module.html#config_path"><a title="TestON.bin.cli.config_path
-TestON.core.teston.config_path" class="py-name" href="#" onclick="return doclink('link-20', 'config_path', 'link-20');">config_path</a></tt> <tt class="py-op">=</tt> <tt id="link-21" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-21', 'path', 'link-2');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"config/"</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-name">sys</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-22', 'path', 'link-2');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-23" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-23', 'path', 'link-2');">path</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-name">sys</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-24', 'path', 'link-2');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-25" class="py-name"><a title="TestON.bin.cli.drivers_path
-TestON.core.teston.drivers_path" class="py-name" href="#" onclick="return doclink('link-25', 'drivers_path', 'link-3');">drivers_path</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-name">sys</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-26', 'path', 'link-2');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-27" class="py-name"><a title="TestON.bin.cli.core_path
-TestON.core.teston.core_path" class="py-name" href="#" onclick="return doclink('link-27', 'core_path', 'link-4');">core_path</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"><tt class="py-name">sys</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-28', 'path', 'link-2');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-29" class="py-name"><a title="TestON.bin.cli.tests_path
-TestON.core.teston.tests_path" class="py-name" href="#" onclick="return doclink('link-29', 'tests_path', 'link-5');">tests_path</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-30" class="py-name" targets="Package TestON.core=TestON.core-module.html"><a title="TestON.core" class="py-name" href="#" onclick="return doclink('link-30', 'core', 'link-30');">core</a></tt><tt class="py-op">.</tt><tt class="py-name">utilities</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Utilities</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-31" class="py-name"><a title="TestON.core" class="py-name" href="#" onclick="return doclink('link-31', 'core', 'link-30');">core</a></tt><tt class="py-op">.</tt><tt id="link-32" class="py-name" targets="Module TestON.core.Thread=TestON.core.Thread-module.html,Class TestON.core.Thread.Thread=TestON.core.Thread.Thread-class.html"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-32', 'Thread', 'link-32');">Thread</a></tt> <tt class="py-keyword">import</tt> <tt id="link-33" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-33', 'Thread', 'link-32');">Thread</a></tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> </tt>
-<a name="TestON"></a><div id="TestON-def"><a name="L56"></a><tt class="py-lineno"> 56</tt> <a class="py-toggle" href="#" id="TestON-toggle" onclick="return toggle('TestON');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html">TestON</a><tt class="py-op">:</tt> </tt>
-</div><div id="TestON-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="TestON-expanded"><a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"><tt class="py-docstring"> TestON will initiate the specified test.</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"><tt class="py-docstring"> The main tasks are :</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"><tt class="py-docstring"> * Initiate the required Component handles for the test.</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"><tt class="py-docstring"> * Create Log file Handles.</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="TestON.__init__"></a><div id="TestON.__init__-def"><a name="L63"></a><tt class="py-lineno"> 63</tt> <a class="py-toggle" href="#" id="TestON.__init__-toggle" onclick="return toggle('TestON.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">options</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.__init__-expanded"><a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"><tt class="py-docstring"> Initialise the component handles specified in the topology file of the specified test.</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-comment"># Initialization of the variables.</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">__builtin__</tt><tt class="py-op">.</tt><tt class="py-name">main</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">__builtin__</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-34', 'path', 'link-2');">path</a></tt> <tt class="py-op">=</tt> <tt id="link-35" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-35', 'path', 'link-2');">path</a></tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">__builtin__</tt><tt class="py-op">.</tt><tt class="py-name">utilities</tt> <tt class="py-op">=</tt> <tt class="py-name">Utilities</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> <tt class="py-op">=</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">NORESULT</tt> <tt class="py-op">=</tt> <tt class="py-number">2</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">FAIL</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">PASS</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CASERESULT</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">STEPRESULT</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">NORESULT</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepResults</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">init_result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">testResult</tt> <tt class="py-op">=</tt> <tt class="py-string">"Summary"</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepName</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCache</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">EXPERIMENTAL_MODE</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">test_target</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lastcommand</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">testDir</tt> <tt class="py-op">=</tt> <tt id="link-36" class="py-name"><a title="TestON.bin.cli.tests_path
-TestON.core.teston.tests_path" class="py-name" href="#" onclick="return doclink('link-36', 'tests_path', 'link-5');">tests_path</a></tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configFile</tt> <tt class="py-op">=</tt> <tt id="link-37" class="py-name"><a title="TestON.bin.cli.config_path
-TestON.core.teston.config_path" class="py-name" href="#" onclick="return doclink('link-37', 'config_path', 'link-20');">config_path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"teston.cfg"</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">parsingClass</tt> <tt class="py-op">=</tt> <tt class="py-string">"xmlparser"</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">parserPath</tt> <tt class="py-op">=</tt> <tt id="link-38" class="py-name"><a title="TestON.bin.cli.core_path
-TestON.core.teston.core_path" class="py-name" href="#" onclick="return doclink('link-38', 'core_path', 'link-4');">core_path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"/xmlparser"</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">loggerPath</tt> <tt class="py-op">=</tt> <tt id="link-39" class="py-name"><a title="TestON.bin.cli.core_path
-TestON.core.teston.core_path" class="py-name" href="#" onclick="return doclink('link-39', 'core_path', 'link-4');">core_path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"/logger"</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">loggerClass</tt> <tt class="py-op">=</tt> <tt class="py-string">"Logger"</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.bin.cli.logs_path
-TestON.core.teston.logs_path" class="py-name" href="#" onclick="return doclink('link-40', 'logs_path', 'link-6');">logs_path</a></tt> <tt class="py-op">=</tt> <tt id="link-41" class="py-name"><a title="TestON.bin.cli.logs_path
-TestON.core.teston.logs_path" class="py-name" href="#" onclick="return doclink('link-41', 'logs_path', 'link-6');">logs_path</a></tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driver</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-42', 'Thread', 'link-32');">Thread</a></tt> <tt class="py-op">=</tt> <tt id="link-43" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-43', 'Thread', 'link-32');">Thread</a></tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">cleanupFlag</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">cleanupLock</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Lock</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">initiated</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name" targets="Method TestON.bin.updatedriver.UpdateDriver.configparser()=TestON.bin.updatedriver.UpdateDriver-class.html#configparser,Method TestON.core.teston.TestON.configparser()=TestON.core.teston.TestON-class.html#configparser"><a title="TestON.bin.updatedriver.UpdateDriver.configparser
-TestON.core.teston.TestON.configparser" class="py-name" href="#" onclick="return doclink('link-44', 'configparser', 'link-44');">configparser</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt id="link-45" class="py-name" targets="Function TestON.core.teston.verifyOptions()=TestON.core.teston-module.html#verifyOptions"><a title="TestON.core.teston.verifyOptions" class="py-name" href="#" onclick="return doclink('link-45', 'verifyOptions', 'link-45');">verifyOptions</a></tt><tt class="py-op">(</tt><tt class="py-name">options</tt><tt class="py-op">)</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt id="link-46" class="py-name" targets="Function TestON.core.teston.load_logger()=TestON.core.teston-module.html#load_logger"><a title="TestON.core.teston.load_logger" class="py-name" href="#" onclick="return doclink('link-46', 'load_logger', 'link-46');">load_logger</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#topology,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topology"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-47', 'topology', 'link-47');">topology</a></tt> <tt class="py-op">[</tt><tt class="py-string">'COMPONENT'</tt><tt class="py-op">]</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driversList</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">str</tt> <tt class="py-op">:</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt> <tt class="py-op">=</tt> <tt class="py-name">dict</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">component</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt> <tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driversList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'type'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driversList</tt> <tt class="py-op">=</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt><tt class="py-name">set</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driversList</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-comment"># Removing duplicates.</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-comment"># Checking the test_target option set for the component or not</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">dict</tt><tt class="py-op">:</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">component</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">'test_target'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">test_target</tt> <tt class="py-op">=</tt> <tt class="py-name">component</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-comment"># Checking for the openspeak file and test script</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name" targets="Module TestON.core.logger=TestON.core.logger-module.html"><a title="TestON.core.logger" class="py-name" href="#" onclick="return doclink('link-48', 'logger', 'link-48');">logger</a></tt><tt class="py-op">.</tt><tt id="link-49" class="py-name" targets="Method TestON.core.logger.Logger.initlog()=TestON.core.logger.Logger-class.html#initlog"><a title="TestON.core.logger.Logger.initlog" class="py-name" href="#" onclick="return doclink('link-49', 'initlog', 'link-49');">initlog</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-comment"># Creating Drivers Handles</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">initString</tt> <tt class="py-op">=</tt> <tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">30</tt><tt class="py-op">+</tt><tt class="py-string">"\n CASE INIT \n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">30</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-50', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exact</tt><tt class="py-op">(</tt><tt class="py-name">initString</tt><tt class="py-op">)</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driverObject</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">random_order</tt> <tt class="py-op">=</tt> <tt class="py-number">111</tt> <tt class="py-comment"># Random order id to connect the components</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">components_connect_order</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-comment">#component_list.append()</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">dict</tt><tt class="py-op">:</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">component</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'connect_order'</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'connect_order'</tt><tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'connect_order'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">else</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name" targets="Method TestON.core.teston.TestON.get_random()=TestON.core.teston.TestON-class.html#get_random"><a title="TestON.core.teston.TestON.get_random" class="py-name" href="#" onclick="return doclink('link-51', 'get_random', 'link-51');">get_random</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">components_connect_order</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">eval</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'connect_order'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-comment">#Ordering components based on the connect order.</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">ordered_component_list</tt> <tt class="py-op">=</tt><tt class="py-name">sorted</tt><tt class="py-op">(</tt><tt class="py-name">components_connect_order</tt><tt class="py-op">,</tt> <tt class="py-name">key</tt><tt class="py-op">=</tt><tt class="py-keyword">lambda</tt> <tt class="py-name">key</tt><tt class="py-op">:</tt> <tt class="py-name">components_connect_order</tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">ordered_component_list</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">component</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ordered_component_list</tt><tt class="py-op">:</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name" targets="Method TestON.core.teston.TestON.componentInit()=TestON.core.teston.TestON-class.html#componentInit"><a title="TestON.core.teston.TestON.componentInit" class="py-name" href="#" onclick="return doclink('link-52', 'componentInit', 'link-52');">componentInit</a></tt><tt class="py-op">(</tt><tt class="py-name">component</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> </tt>
-<a name="TestON.configparser"></a><div id="TestON.configparser-def"><a name="L139"></a><tt class="py-lineno">139</tt> <a class="py-toggle" href="#" id="TestON.configparser-toggle" onclick="return toggle('TestON.configparser');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#configparser">configparser</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.configparser-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.configparser-expanded"><a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"><tt class="py-docstring"> It will parse the config file (teston.cfg) and return as dictionary</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-name">matchFileName</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">r'(.*)\.cfg'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configFile</tt><tt class="py-op">,</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">M</tt> <tt class="py-op">|</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">I</tt><tt class="py-op">)</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">matchFileName</tt><tt class="py-op">:</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">xml</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configFile</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">read</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt> <tt class="py-op">=</tt> <tt id="link-53" class="py-name"><a title="TestON.core.xmldict" class="py-name" href="#" onclick="return doclink('link-53', 'xmldict', 'link-0');">xmldict</a></tt><tt class="py-op">.</tt><tt id="link-54" class="py-name" targets="Function TestON.core.xmldict.xml_to_dict()=TestON.core.xmldict-module.html#xml_to_dict"><a title="TestON.core.xmldict.xml_to_dict" class="py-name" href="#" onclick="return doclink('link-54', 'xml_to_dict', 'link-54');">xml_to_dict</a></tt><tt class="py-op">(</tt><tt class="py-name">xml</tt><tt class="py-op">)</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"There is no such file to parse "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">configFile</tt> </tt>
-</div><a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> </tt>
-<a name="TestON.componentInit"></a><div id="TestON.componentInit-def"><a name="L152"></a><tt class="py-lineno">152</tt> <a class="py-toggle" href="#" id="TestON.componentInit-toggle" onclick="return toggle('TestON.componentInit');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#componentInit">componentInit</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">component</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.componentInit-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.componentInit-expanded"><a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"><tt class="py-docstring"> This method will initialize specified component</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">driver_options</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">initiated</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-55', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Creating component Handle: "</tt><tt class="py-op">+</tt><tt class="py-name">component</tt><tt class="py-op">)</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">driver_options</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">'COMPONENTS'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-name">driver_options</tt> <tt class="py-op">=</tt><tt class="py-name">dict</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'COMPONENTS'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">driver_options</tt><tt class="py-op">[</tt><tt class="py-string">'name'</tt><tt class="py-op">]</tt><tt class="py-op">=</tt><tt class="py-name">component</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">driverName</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'type'</tt><tt class="py-op">]</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-name">driver_options</tt> <tt class="py-op">[</tt><tt class="py-string">'type'</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">driverName</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-name">classPath</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name" targets="Method TestON.bin.updatedriver.UpdateDriver.getDriverPath()=TestON.bin.updatedriver.UpdateDriver-class.html#getDriverPath,Method TestON.core.teston.TestON.getDriverPath()=TestON.core.teston.TestON-class.html#getDriverPath"><a title="TestON.bin.updatedriver.UpdateDriver.getDriverPath
-TestON.core.teston.TestON.getDriverPath" class="py-name" href="#" onclick="return doclink('link-56', 'getDriverPath', 'link-56');">getDriverPath</a></tt><tt class="py-op">(</tt><tt class="py-name">driverName</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">driverModule</tt> <tt class="py-op">=</tt> <tt class="py-name">importlib</tt><tt class="py-op">.</tt><tt class="py-name">import_module</tt><tt class="py-op">(</tt><tt class="py-name">classPath</tt><tt class="py-op">)</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-name">driverClass</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">driverModule</tt><tt class="py-op">,</tt> <tt class="py-name">driverName</tt><tt class="py-op">)</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-name">driverObject</tt> <tt class="py-op">=</tt> <tt class="py-name">driverClass</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt> <tt class="py-string">"OCN"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'host'</tt><tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onoscell</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'host'</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">mnIP</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">connect_result</tt> <tt class="py-op">=</tt> <tt class="py-name">driverObject</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-57', 'connect', 'link-57');">connect</a></tt><tt class="py-op">(</tt><tt class="py-name">user_name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'user'</tt><tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'user'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">else</tt> <tt class="py-name">getpass</tt><tt class="py-op">.</tt><tt class="py-name">getuser</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'host'</tt><tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'host'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">else</tt> <tt class="py-string">'localhost'</tt><tt class="py-op">,</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">pwd</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'password'</tt><tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'password'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">else</tt> <tt class="py-string">'changeme'</tt><tt class="py-op">,</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'port'</tt><tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'port'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">else</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">options</tt> <tt class="py-op">=</tt> <tt class="py-name">driver_options</tt><tt class="py-op">)</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">connect_result</tt><tt class="py-op">:</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-58', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt id="link-59" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-59', 'error', 'link-59');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">"Exiting form the test execution because the connecting to the "</tt><tt class="py-op">+</tt><tt class="py-name">component</tt><tt class="py-op">+</tt><tt class="py-string">" component failed."</tt><tt class="py-op">)</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-60', 'exit', 'link-60');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">driverObject</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">initiated</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-</div><a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> </tt>
-<a name="TestON.run"></a><div id="TestON.run-def"><a name="L188"></a><tt class="py-lineno">188</tt> <a class="py-toggle" href="#" id="TestON.run-toggle" onclick="return toggle('TestON.run');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#run">run</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.run-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.run-expanded"><a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"><tt class="py-docstring"> The Execution of the test script's cases listed in the Test params file will be done here.</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"><tt class="py-docstring"> And Update each test case result.</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"><tt class="py-docstring"> This method will return TRUE if it executed all the test cases successfully,</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"><tt class="py-docstring"> else will retun FALSE</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">testCaseResult</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_RUN</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_PLANNED</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_NORESULT</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_FAIL</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_PASS</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TEST_ITERATION</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCount</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CASERESULT</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">NORESULT</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt id="link-61" class="py-name" targets="Module TestON.core.testparser=TestON.core.testparser-module.html"><a title="TestON.core.testparser" class="py-name" href="#" onclick="return doclink('link-61', 'testparser', 'link-61');">testparser</a></tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-name">testFile</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.bin.cli.tests_path
-TestON.core.teston.tests_path" class="py-name" href="#" onclick="return doclink('link-62', 'tests_path', 'link-5');">tests_path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt><tt class="py-op">+</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt><tt class="py-op">+</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">".py"</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">test</tt> <tt class="py-op">=</tt> <tt id="link-63" class="py-name"><a title="TestON.core.testparser" class="py-name" href="#" onclick="return doclink('link-63', 'testparser', 'link-61');">testparser</a></tt><tt class="py-op">.</tt><tt id="link-64" class="py-name" targets="Class TestON.core.testparser.TestParser=TestON.core.testparser.TestParser-class.html"><a title="TestON.core.testparser.TestParser" class="py-name" href="#" onclick="return doclink('link-64', 'TestParser', 'link-64');">TestParser</a></tt><tt class="py-op">(</tt><tt class="py-name">testFile</tt><tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">testscript</tt> <tt class="py-op">=</tt> <tt class="py-name">test</tt><tt class="py-op">.</tt><tt class="py-name">testscript</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">code</tt> <tt class="py-op">=</tt> <tt class="py-name">test</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name" targets="Method TestON.core.testparser.TestParser.getStepCode()=TestON.core.testparser.TestParser-class.html#getStepCode"><a title="TestON.core.testparser.TestParser.getStepCode" class="py-name" href="#" onclick="return doclink('link-65', 'getStepCode', 'link-65');">getStepCode</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-name">repeat</tt><tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'repeat'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'repeat'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">)</tt> <tt class="py-keyword">else</tt> <tt class="py-number">1</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_PLANNED</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">testcases_list</tt><tt class="py-op">)</tt><tt class="py-op">*</tt><tt class="py-name">repeat</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-keyword">while</tt><tt class="py-op">(</tt><tt class="py-name">repeat</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCaseNumber</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">testcases_list</tt><tt class="py-op">:</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name" targets="Method TestON.core.teston.TestON.runCase()=TestON.core.teston.TestON-class.html#runCase"><a title="TestON.core.teston.TestON.runCase" class="py-name" href="#" onclick="return doclink('link-66', 'runCase', 'link-66');">runCase</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCaseNumber</tt><tt class="py-op">)</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-name">repeat</tt><tt class="py-op">-=</tt><tt class="py-number">1</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-</div><a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> </tt>
-<a name="TestON.runCase"></a><div id="TestON.runCase-def"><a name="L221"></a><tt class="py-lineno">221</tt> <a class="py-toggle" href="#" id="TestON.runCase-toggle" onclick="return toggle('TestON.runCase');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#runCase">runCase</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">testCaseNumber</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.runCase-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.runCase-expanded"><a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCaseNumber</tt> <tt class="py-op">=</tt> <tt class="py-name">testCaseNumber</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCase</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepResults</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepName</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCount</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">EXPERIMENTAL_MODE</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name" targets="Method TestON.core.teston.TestON.addCaseHeader()=TestON.core.teston.TestON-class.html#addCaseHeader"><a title="TestON.core.teston.TestON.addCaseHeader" class="py-name" href="#" onclick="return doclink('link-67', 'addCaseHeader', 'link-67');">addCaseHeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">testCaseNumber</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">testCaseNumber</tt><tt class="py-op">)</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">stopped</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepList</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">code</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">testCaseNumber</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">:</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-68', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt id="link-69" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-69', 'error', 'link-59');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">"There is no Test-Case "</tt><tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">testCaseNumber</tt><tt class="py-op">)</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCount</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCount</tt> <tt class="py-op"><</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">code</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">testCaseNumber</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name" targets="Method TestON.core.teston.TestON.runStep()=TestON.core.teston.TestON-class.html#runStep"><a title="TestON.core.teston.TestON.runStep" class="py-name" href="#" onclick="return doclink('link-70', 'runStep', 'link-70');">runStep</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepList</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">code</tt><tt class="py-op">,</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">testCaseNumber</tt><tt class="py-op">)</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">result</tt> <tt class="py-op">==</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">result</tt> <tt class="py-op">==</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">stopped</tt> <tt class="py-op">:</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> <tt class="py-op">==</tt> <tt class="py-name">i</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepResults</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-comment"># ALL PASSED</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CASERESULT</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepResults</tt><tt class="py-op">:</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-comment"># AT LEAST ONE FAILED</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CASERESULT</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepResults</tt><tt class="py-op">:</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-comment"># AT LEAST ONE PASSED</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CASERESULT</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CASERESULT</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">NORESULT</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">testCaseResult</tt><tt class="py-op">[</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCaseNumber</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CASERESULT</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.core.logger" class="py-name" href="#" onclick="return doclink('link-71', 'logger', 'link-48');">logger</a></tt><tt class="py-op">.</tt><tt id="link-72" class="py-name" targets="Method TestON.core.logger.Logger.updateCaseResults()=TestON.core.logger.Logger-class.html#updateCaseResults"><a title="TestON.core.logger.Logger.updateCaseResults" class="py-name" href="#" onclick="return doclink('link-72', 'updateCaseResults', 'link-72');">updateCaseResults</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-73', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-string">"<p>"</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">+</tt> <tt class="py-string">"</p>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-74', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt id="link-75" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.summary()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#summary"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.summary" class="py-name" href="#" onclick="return doclink('link-75', 'summary', 'link-75');">summary</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-76', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-string">"<ul>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCache</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">" - PASS$"</tt><tt class="py-op">,</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-77', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-string">"<li>"</tt> <tt class="py-op">+</tt> <tt class="py-name">line</tt> <tt class="py-op">+</tt> <tt class="py-string">" <ac:emoticon ac:name=\"tick\" /></li>\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">" - FAIL$"</tt><tt class="py-op">,</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-78', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-string">"<li>"</tt> <tt class="py-op">+</tt> <tt class="py-name">line</tt> <tt class="py-op">+</tt> <tt class="py-string">" <ac:emoticon ac:name=\"cross\" /></li>\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">" - No Result$"</tt><tt class="py-op">,</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-79', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-string">"<li>"</tt> <tt class="py-op">+</tt> <tt class="py-name">line</tt> <tt class="py-op">+</tt> <tt class="py-string">" <ac:emoticon ac:name=\"warning\" /></li>\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># Should only be on fail message</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-80', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-string">"<ul><li>"</tt> <tt class="py-op">+</tt> <tt class="py-name">line</tt> <tt class="py-op">+</tt> <tt class="py-string">"</li></ul>\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-81', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-string">"</ul>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-82', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.summary" class="py-name" href="#" onclick="return doclink('link-83', 'summary', 'link-75');">summary</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCache</tt> <tt class="py-op">)</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCache</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-</div><a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> </tt>
-<a name="TestON.runStep"></a><div id="TestON.runStep-def"><a name="L277"></a><tt class="py-lineno">277</tt> <a class="py-toggle" href="#" id="TestON.runStep-toggle" onclick="return toggle('TestON.runStep');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#runStep">runStep</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">stepList</tt><tt class="py-op">,</tt><tt class="py-param">code</tt><tt class="py-op">,</tt><tt class="py-param">testCaseNumber</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.runStep-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.runStep-expanded"><a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt id="link-84" class="py-name" targets="Module TestON.bin.cli=TestON.bin.cli-module.html,Package TestON.drivers.common.cli=TestON.drivers.common.cli-module.html"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-84', 'cli', 'link-84');">cli</a></tt><tt class="py-op">.</tt><tt id="link-85" class="py-name" targets="Method TestON.bin.cli.TestThread.pause()=TestON.bin.cli.TestThread-class.html#pause,Method TestON.core.teston.TestON.pause()=TestON.core.teston.TestON-class.html#pause"><a title="TestON.bin.cli.TestThread.pause
-TestON.core.teston.TestON.pause" class="py-name" href="#" onclick="return doclink('link-85', 'pause', 'link-85');">pause</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt id="link-86" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-86', 'step', 'link-86');">step</a></tt> <tt class="py-op">=</tt> <tt class="py-name">stepList</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCount</tt><tt class="py-op">]</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">STEPRESULT</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">NORESULT</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">onFailMsg</tt> <tt class="py-op">=</tt> <tt class="py-string">"\t\tNo on fail message given"</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-keyword">exec</tt> <tt class="py-name">code</tt><tt class="py-op">[</tt><tt class="py-name">testCaseNumber</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt id="link-87" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-87', 'step', 'link-86');">step</a></tt><tt class="py-op">]</tt> <tt class="py-keyword">in</tt> <tt class="py-name">module</tt><tt class="py-op">.</tt><tt class="py-name">__dict__</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCount</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-88" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-88', 'step', 'link-86');">step</a></tt> <tt class="py-op">></tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCache</tt> <tt class="py-op">+=</tt> <tt class="py-string">"\t"</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">testCaseNumber</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"."</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-89" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-89', 'step', 'link-86');">step</a></tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">" "</tt><tt class="py-op">+</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepName</tt><tt class="py-op">+</tt><tt class="py-string">" - "</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">STEPRESULT</tt> <tt class="py-op">==</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCache</tt> <tt class="py-op">+=</tt> <tt class="py-string">"PASS\n"</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">STEPRESULT</tt> <tt class="py-op">==</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCache</tt> <tt class="py-op">+=</tt> <tt class="py-string">"FAIL\n"</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Print the on-fail statement here</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCache</tt> <tt class="py-op">+=</tt> <tt class="py-string">"\t\t"</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">onFailMsg</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCache</tt> <tt class="py-op">+=</tt> <tt class="py-string">"No Result\n"</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepResults</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">STEPRESULT</tt><tt class="py-op">)</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">StandardError</tt><tt class="py-op">:</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-90', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"\nException in the following section of"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-string">" code: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">testCaseNumber</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-91" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-91', 'step', 'link-86');">step</a></tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-comment">#print code[testCaseNumber][step]</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCount</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.core.logger" class="py-name" href="#" onclick="return doclink('link-92', 'logger', 'link-48');">logger</a></tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.core.logger.Logger.updateCaseResults" class="py-name" href="#" onclick="return doclink('link-93', 'updateCaseResults', 'link-72');">updateCaseResults</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-comment">#WIKI results</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-94', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-string">"<ul>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCache</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">" - PASS$"</tt><tt class="py-op">,</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-95', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-string">"<li>"</tt> <tt class="py-op">+</tt> <tt class="py-name">line</tt> <tt class="py-op">+</tt> <tt class="py-string">" <ac:emoticon ac:name=\"tick\" /></li>\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">" - FAIL$"</tt><tt class="py-op">,</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-96', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-string">"<li>"</tt> <tt class="py-op">+</tt> <tt class="py-name">line</tt> <tt class="py-op">+</tt> <tt class="py-string">" <ac:emoticon ac:name=\"cross\" /></li>\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">" - No Result$"</tt><tt class="py-op">,</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-97', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-string">"<li>"</tt> <tt class="py-op">+</tt> <tt class="py-name">line</tt> <tt class="py-op">+</tt> <tt class="py-string">" <ac:emoticon ac:name=\"warning\" /></li>\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># Should only be on fail message</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-98', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-string">"<ul><li>"</tt> <tt class="py-op">+</tt> <tt class="py-name">line</tt> <tt class="py-op">+</tt> <tt class="py-string">"</li></ul>\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-99', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-string">"</ul>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt class="py-comment">#summary results</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-100', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.summary" class="py-name" href="#" onclick="return doclink('link-101', 'summary', 'link-75');">summary</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCache</tt> <tt class="py-op">)</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCache</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name" targets="Method TestON.core.teston.TestON.cleanup()=TestON.core.teston.TestON-class.html#cleanup"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-102', 'cleanup', 'link-102');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-103', 'exit', 'link-60');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-104" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-104', 'cli', 'link-84');">cli</a></tt><tt class="py-op">.</tt><tt id="link-105" class="py-name" targets="Method TestON.bin.cli.TestThread.stop()=TestON.bin.cli.TestThread-class.html#stop"><a title="TestON.bin.cli.TestThread.stop" class="py-name" href="#" onclick="return doclink('link-105', 'stop', 'link-105');">stop</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt id="link-106" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-106', 'cli', 'link-84');">cli</a></tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.bin.cli.TestThread.stop" class="py-name" href="#" onclick="return doclink('link-107', 'stop', 'link-105');">stop</a></tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-name">stopped</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_NORESULT</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TOTAL_TC_NORESULT</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">testCaseResult</tt><tt class="py-op">[</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCaseNumber</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-string">"Stopped"</tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.core.logger" class="py-name" href="#" onclick="return doclink('link-108', 'logger', 'link-48');">logger</a></tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="TestON.core.logger.Logger.updateCaseResults" class="py-name" href="#" onclick="return doclink('link-109', 'updateCaseResults', 'link-72');">updateCaseResults</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-110', 'cleanup', 'link-102');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> </tt>
-<a name="TestON.addCaseHeader"></a><div id="TestON.addCaseHeader-def"><a name="L330"></a><tt class="py-lineno">330</tt> <a class="py-toggle" href="#" id="TestON.addCaseHeader-toggle" onclick="return toggle('TestON.addCaseHeader');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#addCaseHeader">addCaseHeader</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.addCaseHeader-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.addCaseHeader-expanded"><a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-name">caseHeader</tt> <tt class="py-op">=</tt> <tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">30</tt><tt class="py-op">+</tt><tt class="py-string">"\n Result summary for Testcase"</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCaseNumber</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">30</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-111', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exact</tt><tt class="py-op">(</tt><tt class="py-name">caseHeader</tt><tt class="py-op">)</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"> <tt class="py-name">caseHeader</tt> <tt class="py-op">=</tt> <tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">40</tt> <tt class="py-op">+</tt><tt class="py-string">"\nStart of Test Case"</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCaseNumber</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">" : "</tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">driver</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">driver</tt><tt class="py-op">+</tt><tt class="py-string">'log'</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">caseHeader</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"> </tt>
-<a name="TestON.addCaseFooter"></a><div id="TestON.addCaseFooter-def"><a name="L337"></a><tt class="py-lineno">337</tt> <a class="py-toggle" href="#" id="TestON.addCaseFooter-toggle" onclick="return toggle('TestON.addCaseFooter');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#addCaseFooter">addCaseFooter</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.addCaseFooter-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.addCaseFooter-expanded"><a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCount</tt><tt class="py-op">-</tt><tt class="py-number">1</tt> <tt class="py-op">></tt> <tt class="py-number">0</tt> <tt class="py-op">:</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-name">previousStep</tt> <tt class="py-op">=</tt> <tt class="py-string">" "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCaseNumber</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"."</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCount</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">": "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepName</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">""</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> <tt class="py-name">stepHeader</tt> <tt class="py-op">=</tt> <tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">40</tt><tt class="py-op">+</tt><tt class="py-string">"\nEnd of Step "</tt><tt class="py-op">+</tt><tt class="py-name">previousStep</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">40</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> <tt class="py-name">caseFooter</tt> <tt class="py-op">=</tt> <tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">40</tt><tt class="py-op">+</tt><tt class="py-string">"\nEnd of Test case "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCaseNumber</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">40</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">driver</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">driversList</tt><tt class="py-op">:</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">stepHeader</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-name">caseFooter</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> </tt>
-<a name="TestON.cleanup"></a><div id="TestON.cleanup-def"><a name="L347"></a><tt class="py-lineno">347</tt> <a class="py-toggle" href="#" id="TestON.cleanup-toggle" onclick="return toggle('TestON.cleanup');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#cleanup">cleanup</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.cleanup-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.cleanup-expanded"><a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"><tt class="py-docstring"> Print a summary of the current test's results then attempt to release</tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"><tt class="py-docstring"> all the component handles and the close opened file handles.</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"><tt class="py-docstring"> This function shouldbe threadsafe such that cleanup will only be</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"><tt class="py-docstring"> executed once per test.</tt> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"><tt class="py-docstring"> This will return TRUE if all the component handles and log handles</tt> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"><tt class="py-docstring"> closed properly, else return FALSE.</tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"> <tt class="py-name">lock</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">cleanupLock</tt> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt> <tt class="py-name">False</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">cleanupFlag</tt> <tt class="py-keyword">is</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> <tt class="py-comment"># First thread to run this</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">cleanupFlag</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">initiated</tt><tt class="py-op">:</tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.core.logger" class="py-name" href="#" onclick="return doclink('link-112', 'logger', 'link-48');">logger</a></tt><tt class="py-op">.</tt><tt id="link-113" class="py-name" targets="Method TestON.core.logger.Logger.testSummary()=TestON.core.logger.Logger-class.html#testSummary"><a title="TestON.core.logger.Logger.testSummary" class="py-name" href="#" onclick="return doclink('link-113', 'testSummary', 'link-113');">testSummary</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">component</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> <tt class="py-name">tempObject</tt> <tt class="py-op">=</tt> <tt class="py-name">vars</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Disconnecting from "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">tempObject</tt><tt class="py-op">.</tt><tt class="py-name">name</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">tempObject</tt><tt class="py-op">)</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt class="py-name">tempObject</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.disconnect()=TestON.bin.generatedriver.GenerateDriver-class.html#disconnect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#disconnect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#disconnect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#disconnect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#disconnect,Method TestON.drivers.common.clidriver.CLI.disconnect()=TestON.drivers.common.clidriver.CLI-class.html#disconnect"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-114', 'disconnect', 'link-114');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-115" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-115', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Exception while disconnecting from "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">component</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"> <tt class="py-comment"># Closing all the driver's session files</tt> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">driver</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">driver</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name" targets="Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.close_log_handles()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#close_log_handles"><a title="TestON.drivers.common.api.fvtapidriver.FvtApiDriver.close_log_handles" class="py-name" href="#" onclick="return doclink('link-116', 'close_log_handles', 'link-116');">close_log_handles</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-117', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Exception while closing log files for "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">driver</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> <tt class="py-comment"># Someone else already ran through this function</tt> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> <tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># Someone already has a lock</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: This could cause problems if we don't release the lock</tt> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> <tt class="py-comment"># correctly</tt> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> <tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-comment"># Wait for the other thread to finish</tt> </tt>
-<a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: If we don't wait, exit could be called while the thread</tt> </tt>
-<a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"> <tt class="py-comment"># with the lock is still cleaning up</tt> </tt>
-<a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"> <tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-</div><a name="L396"></a><tt class="py-lineno">396</tt> <tt class="py-line"> </tt>
-<a name="TestON.pause"></a><div id="TestON.pause-def"><a name="L397"></a><tt class="py-lineno">397</tt> <a class="py-toggle" href="#" id="TestON.pause-toggle" onclick="return toggle('TestON.pause');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#pause">pause</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.pause-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.pause-expanded"><a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"><tt class="py-docstring"> This function will pause the test's execution, and will continue after user provide 'resume' command.</tt> </tt>
-<a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"> <tt class="py-name">__builtin__</tt><tt class="py-op">.</tt><tt class="py-name">testthread</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.bin.cli.TestThread.pause
-TestON.core.teston.TestON.pause" class="py-name" href="#" onclick="return doclink('link-118', 'pause', 'link-85');">pause</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"> </tt>
-<a name="TestON.onfail"></a><div id="TestON.onfail-def"><a name="L403"></a><tt class="py-lineno">403</tt> <a class="py-toggle" href="#" id="TestON.onfail-toggle" onclick="return toggle('TestON.onfail');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#onfail">onfail</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-op">*</tt><tt class="py-param">components</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.onfail-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.onfail-expanded"><a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"><tt class="py-docstring"> When test step failed, calling all the components onfail.</tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">components</tt><tt class="py-op">:</tt> </tt>
-<a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L409"></a><tt class="py-lineno">409</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">component</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> <tt class="py-name">tempObject</tt> <tt class="py-op">=</tt> <tt class="py-name">vars</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt> </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">tempObject</tt><tt class="py-op">.</tt><tt id="link-119" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-119', 'onfail', 'link-119');">onfail</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">(</tt><tt class="py-name">Exception</tt><tt class="py-op">)</tt><tt class="py-op">,</tt><tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L413"></a><tt class="py-lineno">413</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L414"></a><tt class="py-lineno">414</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">component</tt> <tt class="py-keyword">in</tt> <tt class="py-name">components</tt><tt class="py-op">:</tt> </tt>
-<a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"> <tt class="py-name">tempObject</tt> <tt class="py-op">=</tt> <tt class="py-name">vars</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">component</tt><tt class="py-op">]</tt> </tt>
-<a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">tempObject</tt><tt class="py-op">.</tt><tt id="link-120" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-120', 'onfail', 'link-119');">onfail</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">(</tt><tt class="py-name">Exception</tt><tt class="py-op">)</tt><tt class="py-op">,</tt><tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L423"></a><tt class="py-lineno">423</tt> <tt class="py-line"> </tt>
-<a name="TestON.getDriverPath"></a><div id="TestON.getDriverPath-def"><a name="L424"></a><tt class="py-lineno">424</tt> <a class="py-toggle" href="#" id="TestON.getDriverPath-toggle" onclick="return toggle('TestON.getDriverPath');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#getDriverPath">getDriverPath</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">driverName</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.getDriverPath-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.getDriverPath-expanded"><a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"><tt class="py-docstring"> Based on the component 'type' specified in the params , this method will find the absolute path ,</tt> </tt>
-<a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"><tt class="py-docstring"> by recursively searching the name of the component.</tt> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">commands</tt> </tt>
-<a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"> </tt>
-<a name="L431"></a><tt class="py-lineno">431</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"find "</tt><tt class="py-op">+</tt><tt id="link-121" class="py-name"><a title="TestON.bin.cli.drivers_path
-TestON.core.teston.drivers_path" class="py-name" href="#" onclick="return doclink('link-121', 'drivers_path', 'link-3');">drivers_path</a></tt><tt class="py-op">+</tt><tt class="py-string">" -name "</tt><tt class="py-op">+</tt><tt class="py-name">driverName</tt><tt class="py-op">+</tt><tt class="py-string">".py"</tt> </tt>
-<a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">commands</tt><tt class="py-op">.</tt><tt class="py-name">getoutput</tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L433"></a><tt class="py-lineno">433</tt> <tt class="py-line"> </tt>
-<a name="L434"></a><tt class="py-lineno">434</tt> <tt class="py-line"> <tt class="py-name">result_array</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">result</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">'\n'</tt><tt class="py-op">)</tt> </tt>
-<a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"> <tt class="py-name">result_count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L436"></a><tt class="py-lineno">436</tt> <tt class="py-line"> </tt>
-<a name="L437"></a><tt class="py-lineno">437</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">drivers_list</tt> <tt class="py-keyword">in</tt> <tt class="py-name">result_array</tt><tt class="py-op">:</tt> </tt>
-<a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"> <tt class="py-name">result_count</tt> <tt class="py-op">=</tt> <tt class="py-name">result_count</tt><tt class="py-op">+</tt><tt class="py-number">1</tt> </tt>
-<a name="L439"></a><tt class="py-lineno">439</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">result_count</tt> <tt class="py-op">></tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
-<a name="L440"></a><tt class="py-lineno">440</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"found "</tt><tt class="py-op">+</tt><tt class="py-name">driverName</tt><tt class="py-op">+</tt><tt class="py-string">" "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">result_count</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" times"</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">result_array</tt><tt class="py-op">)</tt> </tt>
-<a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-122', 'exit', 'link-60');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"> </tt>
-<a name="L443"></a><tt class="py-lineno">443</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"(.*)drivers"</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">,</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"\.py"</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">,</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L445"></a><tt class="py-lineno">445</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"\.pyc"</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">,</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L446"></a><tt class="py-lineno">446</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"\/"</tt><tt class="py-op">,</tt><tt class="py-string">"."</tt><tt class="py-op">,</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L447"></a><tt class="py-lineno">447</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-string">"drivers"</tt><tt class="py-op">+</tt><tt class="py-name">result</tt> </tt>
-<a name="L448"></a><tt class="py-lineno">448</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-</div><a name="L449"></a><tt class="py-lineno">449</tt> <tt class="py-line"> </tt>
-<a name="TestON.step"></a><div id="TestON.step-def"><a name="L450"></a><tt class="py-lineno">450</tt> <a class="py-toggle" href="#" id="TestON.step-toggle" onclick="return toggle('TestON.step');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#step">step</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">stepDesc</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.step-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.step-expanded"><a name="L451"></a><tt class="py-lineno">451</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L452"></a><tt class="py-lineno">452</tt> <tt class="py-line"><tt class="py-docstring"> The step information of the test-case will append to the logs.</tt> </tt>
-<a name="L453"></a><tt class="py-lineno">453</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L454"></a><tt class="py-lineno">454</tt> <tt class="py-line"> <tt class="py-name">previousStep</tt> <tt class="py-op">=</tt> <tt class="py-string">" "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCaseNumber</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"."</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCount</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">": "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepName</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">""</tt> </tt>
-<a name="L455"></a><tt class="py-lineno">455</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepName</tt> <tt class="py-op">=</tt> <tt class="py-name">stepDesc</tt> </tt>
-<a name="L456"></a><tt class="py-lineno">456</tt> <tt class="py-line"> </tt>
-<a name="L457"></a><tt class="py-lineno">457</tt> <tt class="py-line"> <tt class="py-name">stepName</tt> <tt class="py-op">=</tt> <tt class="py-string">" "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCaseNumber</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"."</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCount</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">": "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">stepDesc</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">""</tt> </tt>
-<a name="L458"></a><tt class="py-lineno">458</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L459"></a><tt class="py-lineno">459</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCount</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L460"></a><tt class="py-lineno">460</tt> <tt class="py-line"> <tt class="py-name">stepName</tt> <tt class="py-op">=</tt> <tt class="py-string">" INIT : Initializing the test case :"</tt><tt class="py-op">+</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCase</tt> </tt>
-<a name="L461"></a><tt class="py-lineno">461</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L462"></a><tt class="py-lineno">462</tt> <tt class="py-line"> <tt class="py-name">stepName</tt> <tt class="py-op">=</tt> <tt class="py-string">" INIT : Initializing the test case :"</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCaseNumber</tt><tt class="py-op">)</tt> </tt>
-<a name="L463"></a><tt class="py-lineno">463</tt> <tt class="py-line"> </tt>
-<a name="L464"></a><tt class="py-lineno">464</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-123', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt id="link-124" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-124', 'step', 'link-86');">step</a></tt><tt class="py-op">(</tt><tt class="py-name">stepName</tt><tt class="py-op">)</tt> </tt>
-<a name="L465"></a><tt class="py-lineno">465</tt> <tt class="py-line"> <tt class="py-name">stepHeader</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L466"></a><tt class="py-lineno">466</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">stepCount</tt> <tt class="py-op">></tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
-<a name="L467"></a><tt class="py-lineno">467</tt> <tt class="py-line"> <tt class="py-name">stepHeader</tt> <tt class="py-op">=</tt> <tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"-"</tt><tt class="py-op">*</tt><tt class="py-number">45</tt><tt class="py-op">+</tt><tt class="py-string">"\nEnd of Step "</tt><tt class="py-op">+</tt><tt class="py-name">previousStep</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"-"</tt><tt class="py-op">*</tt><tt class="py-number">45</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> </tt>
-<a name="L468"></a><tt class="py-lineno">468</tt> <tt class="py-line"> </tt>
-<a name="L469"></a><tt class="py-lineno">469</tt> <tt class="py-line"> <tt class="py-name">stepHeader</tt> <tt class="py-op">+=</tt> <tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"-"</tt><tt class="py-op">*</tt><tt class="py-number">45</tt><tt class="py-op">+</tt><tt class="py-string">"\nStart of Step"</tt><tt class="py-op">+</tt><tt class="py-name">stepName</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"-"</tt><tt class="py-op">*</tt><tt class="py-number">45</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> </tt>
-<a name="L470"></a><tt class="py-lineno">470</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">driver</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L471"></a><tt class="py-lineno">471</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">driver</tt><tt class="py-op">+</tt><tt class="py-string">'log'</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">stepHeader</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L472"></a><tt class="py-lineno">472</tt> <tt class="py-line"> </tt>
-<a name="TestON.case"></a><div id="TestON.case-def"><a name="L473"></a><tt class="py-lineno">473</tt> <a class="py-toggle" href="#" id="TestON.case-toggle" onclick="return toggle('TestON.case');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#case">case</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">testCaseName</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.case-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.case-expanded"><a name="L474"></a><tt class="py-lineno">474</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L475"></a><tt class="py-lineno">475</tt> <tt class="py-line"><tt class="py-docstring"> Test's each test-case information will append to the logs.</tt> </tt>
-<a name="L476"></a><tt class="py-lineno">476</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L477"></a><tt class="py-lineno">477</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">CurrentTestCase</tt> <tt class="py-op">=</tt> <tt class="py-name">testCaseName</tt> </tt>
-<a name="L478"></a><tt class="py-lineno">478</tt> <tt class="py-line"> <tt class="py-name">testCaseName</tt> <tt class="py-op">=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">testCaseName</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">""</tt> </tt>
-<a name="L479"></a><tt class="py-lineno">479</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-125', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt id="link-126" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-126', 'case', 'link-126');">case</a></tt><tt class="py-op">(</tt><tt class="py-name">testCaseName</tt><tt class="py-op">)</tt> </tt>
-<a name="L480"></a><tt class="py-lineno">480</tt> <tt class="py-line"> <tt class="py-name">caseHeader</tt> <tt class="py-op">=</tt> <tt class="py-name">testCaseName</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-string">"*"</tt> <tt class="py-op">*</tt> <tt class="py-number">40</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> </tt>
-<a name="L481"></a><tt class="py-lineno">481</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">driver</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L482"></a><tt class="py-lineno">482</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">driver</tt><tt class="py-op">+</tt><tt class="py-string">'log'</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">caseHeader</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L483"></a><tt class="py-lineno">483</tt> <tt class="py-line"> </tt>
-<a name="TestON.testDesc"></a><div id="TestON.testDesc-def"><a name="L484"></a><tt class="py-lineno">484</tt> <a class="py-toggle" href="#" id="TestON.testDesc-toggle" onclick="return toggle('TestON.testDesc');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#testDesc">testDesc</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">description</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.testDesc-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.testDesc-expanded"><a name="L485"></a><tt class="py-lineno">485</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L486"></a><tt class="py-lineno">486</tt> <tt class="py-line"><tt class="py-docstring"> Test description will append to the logs.</tt> </tt>
-<a name="L487"></a><tt class="py-lineno">487</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L488"></a><tt class="py-lineno">488</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Test Description : "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt> <tt class="py-op">(</tt><tt class="py-name">description</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">""</tt> </tt>
-<a name="L489"></a><tt class="py-lineno">489</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-127', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">description</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L490"></a><tt class="py-lineno">490</tt> <tt class="py-line"> </tt>
-<a name="TestON._getTest"></a><div id="TestON._getTest-def"><a name="L491"></a><tt class="py-lineno">491</tt> <a class="py-toggle" href="#" id="TestON._getTest-toggle" onclick="return toggle('TestON._getTest');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#_getTest">_getTest</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON._getTest-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON._getTest-expanded"><a name="L492"></a><tt class="py-lineno">492</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L493"></a><tt class="py-lineno">493</tt> <tt class="py-line"><tt class="py-docstring"> This method will parse the test script to find required test information.</tt> </tt>
-<a name="L494"></a><tt class="py-lineno">494</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L495"></a><tt class="py-lineno">495</tt> <tt class="py-line"> <tt class="py-name">testFile</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="TestON.bin.cli.tests_path
-TestON.core.teston.tests_path" class="py-name" href="#" onclick="return doclink('link-128', 'tests_path', 'link-5');">tests_path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt><tt class="py-op">+</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt><tt class="py-op">+</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">".py"</tt> </tt>
-<a name="L496"></a><tt class="py-lineno">496</tt> <tt class="py-line"> <tt class="py-name">testFileHandler</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">testFile</tt><tt class="py-op">,</tt> <tt class="py-string">'r'</tt><tt class="py-op">)</tt> </tt>
-<a name="L497"></a><tt class="py-lineno">497</tt> <tt class="py-line"> <tt class="py-name">testFileList</tt> <tt class="py-op">=</tt> <tt class="py-name">testFileHandler</tt><tt class="py-op">.</tt><tt class="py-name">readlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L498"></a><tt class="py-lineno">498</tt> <tt class="py-line"> <tt class="py-name">testFileHandler</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L499"></a><tt class="py-lineno">499</tt> <tt class="py-line"> <tt class="py-comment">#self.TOTAL_TC_PLANNED = 0</tt> </tt>
-<a name="L500"></a><tt class="py-lineno">500</tt> <tt class="py-line"> <tt class="py-name">counter</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L501"></a><tt class="py-lineno">501</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">index</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">testFileList</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L502"></a><tt class="py-lineno">502</tt> <tt class="py-line"> <tt class="py-name">lineMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">'\s+def CASE(\d+)(.*):'</tt><tt class="py-op">,</tt><tt class="py-name">testFileList</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L503"></a><tt class="py-lineno">503</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">lineMatch</tt><tt class="py-op">:</tt> </tt>
-<a name="L504"></a><tt class="py-lineno">504</tt> <tt class="py-line"> <tt class="py-name">counter</tt> <tt class="py-op">=</tt> <tt class="py-name">counter</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L505"></a><tt class="py-lineno">505</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">TC_PLANNED</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">testcases_list</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L506"></a><tt class="py-lineno">506</tt> <tt class="py-line"> </tt>
-<a name="TestON.response_parser"></a><div id="TestON.response_parser-def"><a name="L507"></a><tt class="py-lineno">507</tt> <a class="py-toggle" href="#" id="TestON.response_parser-toggle" onclick="return toggle('TestON.response_parser');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#response_parser">response_parser</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">response</tt><tt class="py-op">,</tt> <tt class="py-param">return_format</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.response_parser-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.response_parser-expanded"><a name="L508"></a><tt class="py-lineno">508</tt> <tt class="py-line"> <tt class="py-docstring">''' It will load the default response parser '''</tt> </tt>
-<a name="L509"></a><tt class="py-lineno">509</tt> <tt class="py-line"> <tt class="py-name">response_dict</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L510"></a><tt class="py-lineno">510</tt> <tt class="py-line"> <tt class="py-name">response_dict</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name" targets="Method TestON.core.teston.TestON.response_to_dict()=TestON.core.teston.TestON-class.html#response_to_dict"><a title="TestON.core.teston.TestON.response_to_dict" class="py-name" href="#" onclick="return doclink('link-129', 'response_to_dict', 'link-129');">response_to_dict</a></tt><tt class="py-op">(</tt><tt class="py-name">response</tt><tt class="py-op">,</tt> <tt class="py-name">return_format</tt><tt class="py-op">)</tt> </tt>
-<a name="L511"></a><tt class="py-lineno">511</tt> <tt class="py-line"> <tt class="py-name">return_format_string</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-130" class="py-name" targets="Method TestON.core.teston.TestON.dict_to_return_format()=TestON.core.teston.TestON-class.html#dict_to_return_format"><a title="TestON.core.teston.TestON.dict_to_return_format" class="py-name" href="#" onclick="return doclink('link-130', 'dict_to_return_format', 'link-130');">dict_to_return_format</a></tt><tt class="py-op">(</tt><tt class="py-name">response</tt><tt class="py-op">,</tt><tt class="py-name">return_format</tt><tt class="py-op">,</tt><tt class="py-name">response_dict</tt><tt class="py-op">)</tt> </tt>
-<a name="L512"></a><tt class="py-lineno">512</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">return_format_string</tt> </tt>
-</div><a name="L513"></a><tt class="py-lineno">513</tt> <tt class="py-line"> </tt>
-<a name="TestON.response_to_dict"></a><div id="TestON.response_to_dict-def"><a name="L514"></a><tt class="py-lineno">514</tt> <a class="py-toggle" href="#" id="TestON.response_to_dict-toggle" onclick="return toggle('TestON.response_to_dict');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#response_to_dict">response_to_dict</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">response</tt><tt class="py-op">,</tt><tt class="py-param">return_format</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.response_to_dict-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.response_to_dict-expanded"><a name="L515"></a><tt class="py-lineno">515</tt> <tt class="py-line"> <tt class="py-name">response_dict</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L516"></a><tt class="py-lineno">516</tt> <tt class="py-line"> <tt class="py-name">json_match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">'^\s*{'</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt><tt class="py-op">)</tt> </tt>
-<a name="L517"></a><tt class="py-lineno">517</tt> <tt class="py-line"> <tt class="py-name">xml_match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">'^\s*\<'</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt><tt class="py-op">)</tt> </tt>
-<a name="L518"></a><tt class="py-lineno">518</tt> <tt class="py-line"> <tt class="py-name">ini_match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">'^\s*\['</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt><tt class="py-op">)</tt> </tt>
-<a name="L519"></a><tt class="py-lineno">519</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">json_match</tt> <tt class="py-op">:</tt> </tt>
-<a name="L520"></a><tt class="py-lineno">520</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-131', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">" Response is in 'JSON' format and Converting to '"</tt><tt class="py-op">+</tt><tt class="py-name">return_format</tt><tt class="py-op">+</tt><tt class="py-string">"' format"</tt><tt class="py-op">)</tt> </tt>
-<a name="L521"></a><tt class="py-lineno">521</tt> <tt class="py-line"> <tt class="py-comment"># Formatting the json string</tt> </tt>
-<a name="L522"></a><tt class="py-lineno">522</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">r"{\s*'?(\w)"</tt><tt class="py-op">,</tt> <tt class="py-string">r'{"\1'</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt><tt class="py-op">)</tt> </tt>
-<a name="L523"></a><tt class="py-lineno">523</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">r",\s*'?(\w)"</tt><tt class="py-op">,</tt> <tt class="py-string">r',"\1'</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt><tt class="py-op">)</tt> </tt>
-<a name="L524"></a><tt class="py-lineno">524</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">r"(\w)'?\s*:"</tt><tt class="py-op">,</tt> <tt class="py-string">r'\1":'</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt><tt class="py-op">)</tt> </tt>
-<a name="L525"></a><tt class="py-lineno">525</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">r":\s*'(\w)'\s*([,}])"</tt><tt class="py-op">,</tt> <tt class="py-string">r':"\1"\2'</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt><tt class="py-op">)</tt> </tt>
-<a name="L526"></a><tt class="py-lineno">526</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L527"></a><tt class="py-lineno">527</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L528"></a><tt class="py-lineno">528</tt> <tt class="py-line"> <tt class="py-name">response_dict</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">response</tt><tt class="py-op">)</tt> </tt>
-<a name="L529"></a><tt class="py-lineno">529</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L530"></a><tt class="py-lineno">530</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-132', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L531"></a><tt class="py-lineno">531</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-133', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt id="link-134" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-134', 'error', 'link-59');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">"Json Parser is unable to parse the string"</tt><tt class="py-op">)</tt> </tt>
-<a name="L532"></a><tt class="py-lineno">532</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response_dict</tt> </tt>
-<a name="L533"></a><tt class="py-lineno">533</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ini_match</tt> <tt class="py-op">:</tt> </tt>
-<a name="L534"></a><tt class="py-lineno">534</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-135', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">" Response is in 'INI' format and Converting to '"</tt><tt class="py-op">+</tt><tt class="py-name">return_format</tt><tt class="py-op">+</tt><tt class="py-string">"' format"</tt><tt class="py-op">)</tt> </tt>
-<a name="L535"></a><tt class="py-lineno">535</tt> <tt class="py-line"> <tt class="py-keyword">from</tt> <tt class="py-name">configobj</tt> <tt class="py-keyword">import</tt> <tt class="py-name">ConfigObj</tt> </tt>
-<a name="L536"></a><tt class="py-lineno">536</tt> <tt class="py-line"> <tt class="py-name">response_file</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-string">"respnse_file.temp"</tt><tt class="py-op">,</tt><tt class="py-string">'w'</tt><tt class="py-op">)</tt> </tt>
-<a name="L537"></a><tt class="py-lineno">537</tt> <tt class="py-line"> <tt class="py-name">response_file</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">response</tt><tt class="py-op">)</tt> </tt>
-<a name="L538"></a><tt class="py-lineno">538</tt> <tt class="py-line"> <tt class="py-name">response_file</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L539"></a><tt class="py-lineno">539</tt> <tt class="py-line"> <tt class="py-name">response_dict</tt> <tt class="py-op">=</tt> <tt class="py-name">ConfigObj</tt><tt class="py-op">(</tt><tt class="py-string">"respnse_file.temp"</tt><tt class="py-op">)</tt> </tt>
-<a name="L540"></a><tt class="py-lineno">540</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response_dict</tt> </tt>
-<a name="L541"></a><tt class="py-lineno">541</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">xml_match</tt> <tt class="py-op">:</tt> </tt>
-<a name="L542"></a><tt class="py-lineno">542</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-136" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-136', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">" Response is in 'XML' format and Converting to '"</tt><tt class="py-op">+</tt><tt class="py-name">return_format</tt><tt class="py-op">+</tt><tt class="py-string">"' format"</tt><tt class="py-op">)</tt> </tt>
-<a name="L543"></a><tt class="py-lineno">543</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L544"></a><tt class="py-lineno">544</tt> <tt class="py-line"> <tt class="py-name">response_dict</tt> <tt class="py-op">=</tt> <tt id="link-137" class="py-name"><a title="TestON.core.xmldict" class="py-name" href="#" onclick="return doclink('link-137', 'xmldict', 'link-0');">xmldict</a></tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="TestON.core.xmldict.xml_to_dict" class="py-name" href="#" onclick="return doclink('link-138', 'xml_to_dict', 'link-54');">xml_to_dict</a></tt><tt class="py-op">(</tt><tt class="py-string">"<response> "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">response</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">" </response>"</tt><tt class="py-op">)</tt> </tt>
-<a name="L545"></a><tt class="py-lineno">545</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L546"></a><tt class="py-lineno">546</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-139" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-139', 'log', 'link-50');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L547"></a><tt class="py-lineno">547</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response_dict</tt> </tt>
-</div><a name="L548"></a><tt class="py-lineno">548</tt> <tt class="py-line"> </tt>
-<a name="TestON.dict_to_return_format"></a><div id="TestON.dict_to_return_format-def"><a name="L549"></a><tt class="py-lineno">549</tt> <a class="py-toggle" href="#" id="TestON.dict_to_return_format-toggle" onclick="return toggle('TestON.dict_to_return_format');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#dict_to_return_format">dict_to_return_format</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">response</tt><tt class="py-op">,</tt><tt class="py-param">return_format</tt><tt class="py-op">,</tt><tt class="py-param">response_dict</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.dict_to_return_format-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.dict_to_return_format-expanded"><a name="L550"></a><tt class="py-lineno">550</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">return_format</tt> <tt class="py-op">==</tt><tt class="py-string">'table'</tt> <tt class="py-op">:</tt> </tt>
-<a name="L551"></a><tt class="py-lineno">551</tt> <tt class="py-line"> <tt class="py-string">''' Will return in table format'''</tt> </tt>
-<a name="L552"></a><tt class="py-lineno">552</tt> <tt class="py-line"> <tt class="py-name">to_do</tt> <tt class="py-op">=</tt> <tt class="py-string">"Call the table output formatter"</tt> </tt>
-<a name="L553"></a><tt class="py-lineno">553</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">response_table</tt> </tt>
-<a name="L554"></a><tt class="py-lineno">554</tt> <tt class="py-line"> <tt class="py-name">response_table</tt> <tt class="py-op">=</tt> <tt class="py-string">'\n'</tt> </tt>
-<a name="L555"></a><tt class="py-lineno">555</tt> <tt class="py-line"> <tt class="py-name">response_table</tt> <tt class="py-op">=</tt> <tt class="py-name">response_table</tt> <tt class="py-op">+</tt><tt class="py-string">'\t'</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">response_dict</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> </tt>
-<a name="L556"></a><tt class="py-lineno">556</tt> <tt class="py-line"> </tt>
-<a name="L557"></a><tt class="py-lineno">557</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">get_table</tt><tt class="py-op">(</tt><tt class="py-param">value_to_convert</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L558"></a><tt class="py-lineno">558</tt> <tt class="py-line"> <tt class="py-docstring">''' This will parse the dictionary recusrsively and print as table format'''</tt> </tt>
-<a name="L559"></a><tt class="py-lineno">559</tt> <tt class="py-line"> <tt class="py-name">table_data</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L560"></a><tt class="py-lineno">560</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">value_to_convert</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">dict</tt> <tt class="py-op">:</tt> </tt>
-<a name="L561"></a><tt class="py-lineno">561</tt> <tt class="py-line"> <tt class="py-name">table_data</tt> <tt class="py-op">=</tt> <tt class="py-name">table_data</tt> <tt class="py-op">+</tt><tt class="py-string">'\t'</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">value_to_convert</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">"\n"</tt> </tt>
-<a name="L562"></a><tt class="py-lineno">562</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">temp_val</tt> <tt class="py-keyword">in</tt> <tt class="py-name">value_to_convert</tt><tt class="py-op">.</tt><tt class="py-name">values</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L563"></a><tt class="py-lineno">563</tt> <tt class="py-line"> <tt class="py-name">table_data</tt> <tt class="py-op">=</tt> <tt class="py-name">table_data</tt> <tt class="py-op">+</tt> <tt class="py-name">get_table</tt><tt class="py-op">(</tt><tt class="py-name">temp_val</tt><tt class="py-op">)</tt> </tt>
-<a name="L564"></a><tt class="py-lineno">564</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L565"></a><tt class="py-lineno">565</tt> <tt class="py-line"> <tt class="py-name">table_data</tt> <tt class="py-op">=</tt> <tt class="py-name">table_data</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">value_to_convert</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt><tt class="py-string">"\t"</tt> </tt>
-<a name="L566"></a><tt class="py-lineno">566</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">table_data</tt> </tt>
-</div><a name="L567"></a><tt class="py-lineno">567</tt> <tt class="py-line"> </tt>
-<a name="L568"></a><tt class="py-lineno">568</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">value</tt> <tt class="py-keyword">in</tt> <tt class="py-name">response_dict</tt><tt class="py-op">.</tt><tt class="py-name">values</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L569"></a><tt class="py-lineno">569</tt> <tt class="py-line"> <tt class="py-name">response_table</tt> <tt class="py-op">=</tt> <tt class="py-name">response_table</tt> <tt class="py-op">+</tt> <tt class="py-name">get_table</tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt> </tt>
-<a name="L570"></a><tt class="py-lineno">570</tt> <tt class="py-line"> <tt class="py-comment"># response_table = response_table + '\t'.join(response_dict.values())</tt> </tt>
-<a name="L571"></a><tt class="py-lineno">571</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response_table</tt> </tt>
-<a name="L572"></a><tt class="py-lineno">572</tt> <tt class="py-line"> </tt>
-<a name="L573"></a><tt class="py-lineno">573</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">return_format</tt> <tt class="py-op">==</tt><tt class="py-string">'config'</tt><tt class="py-op">:</tt> </tt>
-<a name="L574"></a><tt class="py-lineno">574</tt> <tt class="py-line"> <tt class="py-string">''' Will return in config format'''</tt> </tt>
-<a name="L575"></a><tt class="py-lineno">575</tt> <tt class="py-line"> <tt class="py-name">to_do</tt> <tt class="py-op">=</tt> <tt class="py-string">'Call dict to config coverter'</tt> </tt>
-<a name="L576"></a><tt class="py-lineno">576</tt> <tt class="py-line"> <tt class="py-name">response_string</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">response_dict</tt><tt class="py-op">)</tt> </tt>
-<a name="L577"></a><tt class="py-lineno">577</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">response_string</tt> </tt>
-<a name="L578"></a><tt class="py-lineno">578</tt> <tt class="py-line"> <tt class="py-name">response_config</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">,</tt> <tt class="py-string">"\n\t"</tt><tt class="py-op">,</tt> <tt class="py-name">response_string</tt><tt class="py-op">)</tt> </tt>
-<a name="L579"></a><tt class="py-lineno">579</tt> <tt class="py-line"> <tt class="py-name">response_config</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"u\'"</tt><tt class="py-op">,</tt> <tt class="py-string">"\'"</tt><tt class="py-op">,</tt> <tt class="py-name">response_config</tt><tt class="py-op">)</tt> </tt>
-<a name="L580"></a><tt class="py-lineno">580</tt> <tt class="py-line"> <tt class="py-name">response_config</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"{"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-name">response_config</tt><tt class="py-op">)</tt> </tt>
-<a name="L581"></a><tt class="py-lineno">581</tt> <tt class="py-line"> <tt class="py-name">response_config</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"}"</tt><tt class="py-op">,</tt> <tt class="py-string">"\n"</tt><tt class="py-op">,</tt> <tt class="py-name">response_config</tt><tt class="py-op">)</tt> </tt>
-<a name="L582"></a><tt class="py-lineno">582</tt> <tt class="py-line"> <tt class="py-name">response_config</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">":"</tt><tt class="py-op">,</tt> <tt class="py-string">" ="</tt><tt class="py-op">,</tt> <tt class="py-name">response_config</tt><tt class="py-op">)</tt> </tt>
-<a name="L583"></a><tt class="py-lineno">583</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">"[response]\n\t "</tt><tt class="py-op">+</tt><tt class="py-name">response_config</tt> </tt>
-<a name="L584"></a><tt class="py-lineno">584</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">return_format</tt> <tt class="py-op">==</tt> <tt class="py-string">'xml'</tt><tt class="py-op">:</tt> </tt>
-<a name="L585"></a><tt class="py-lineno">585</tt> <tt class="py-line"> <tt class="py-string">''' Will return in xml format'''</tt> </tt>
-<a name="L586"></a><tt class="py-lineno">586</tt> <tt class="py-line"> <tt class="py-name">response_xml</tt> <tt class="py-op">=</tt> <tt id="link-140" class="py-name"><a title="TestON.core.xmldict" class="py-name" href="#" onclick="return doclink('link-140', 'xmldict', 'link-0');">xmldict</a></tt><tt class="py-op">.</tt><tt id="link-141" class="py-name" targets="Function TestON.core.xmldict.dict_to_xml()=TestON.core.xmldict-module.html#dict_to_xml"><a title="TestON.core.xmldict.dict_to_xml" class="py-name" href="#" onclick="return doclink('link-141', 'dict_to_xml', 'link-141');">dict_to_xml</a></tt><tt class="py-op">(</tt><tt class="py-name">response_dict</tt><tt class="py-op">)</tt> </tt>
-<a name="L587"></a><tt class="py-lineno">587</tt> <tt class="py-line"> <tt class="py-name">response_xml</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">">\s*<"</tt><tt class="py-op">,</tt> <tt class="py-string">">\n<"</tt><tt class="py-op">,</tt> <tt class="py-name">response_xml</tt><tt class="py-op">)</tt> </tt>
-<a name="L588"></a><tt class="py-lineno">588</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">"\n"</tt><tt class="py-op">+</tt><tt class="py-name">response_xml</tt> </tt>
-<a name="L589"></a><tt class="py-lineno">589</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">return_format</tt> <tt class="py-op">==</tt> <tt class="py-string">'json'</tt><tt class="py-op">:</tt> </tt>
-<a name="L590"></a><tt class="py-lineno">590</tt> <tt class="py-line"> <tt class="py-string">''' Will return in json format'''</tt> </tt>
-<a name="L591"></a><tt class="py-lineno">591</tt> <tt class="py-line"> <tt class="py-name">to_do</tt> <tt class="py-op">=</tt> <tt class="py-string">'Call dict to xml coverter'</tt> </tt>
-<a name="L592"></a><tt class="py-lineno">592</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L593"></a><tt class="py-lineno">593</tt> <tt class="py-line"> <tt class="py-name">response_json</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt><tt class="py-name">response_dict</tt><tt class="py-op">)</tt> </tt>
-<a name="L594"></a><tt class="py-lineno">594</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response_json</tt> </tt>
-</div><a name="L595"></a><tt class="py-lineno">595</tt> <tt class="py-line"> </tt>
-<a name="TestON.get_random"></a><div id="TestON.get_random-def"><a name="L596"></a><tt class="py-lineno">596</tt> <a class="py-toggle" href="#" id="TestON.get_random-toggle" onclick="return toggle('TestON.get_random');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#get_random">get_random</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.get_random-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.get_random-expanded"><a name="L597"></a><tt class="py-lineno">597</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">random_order</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">random_order</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L598"></a><tt class="py-lineno">598</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">random_order</tt> </tt>
-</div><a name="L599"></a><tt class="py-lineno">599</tt> <tt class="py-line"> </tt>
-<a name="TestON.exit"></a><div id="TestON.exit-def"><a name="L600"></a><tt class="py-lineno">600</tt> <a class="py-toggle" href="#" id="TestON.exit-toggle" onclick="return toggle('TestON.exit');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston.TestON-class.html#exit">exit</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestON.exit-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestON.exit-expanded"><a name="L601"></a><tt class="py-lineno">601</tt> <tt class="py-line"> <tt class="py-name">__builtin__</tt><tt class="py-op">.</tt><tt class="py-name">testthread</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L602"></a><tt class="py-lineno">602</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">enumerate</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L603"></a><tt class="py-lineno">603</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">isAlive</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L604"></a><tt class="py-lineno">604</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L605"></a><tt class="py-lineno">605</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">_Thread__stop</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L606"></a><tt class="py-lineno">606</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">:</tt> </tt>
-<a name="L607"></a><tt class="py-lineno">607</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">getName</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' could not be terminated'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L608"></a><tt class="py-lineno">608</tt> <tt class="py-line"> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-142', 'exit', 'link-60');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L609"></a><tt class="py-lineno">609</tt> <tt class="py-line"> </tt>
-<a name="verifyOptions"></a><div id="verifyOptions-def"><a name="L610"></a><tt class="py-lineno">610</tt> <a class="py-toggle" href="#" id="verifyOptions-toggle" onclick="return toggle('verifyOptions');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston-module.html#verifyOptions">verifyOptions</a><tt class="py-op">(</tt><tt class="py-param">options</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="verifyOptions-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="verifyOptions-expanded"><a name="L611"></a><tt class="py-lineno">611</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L612"></a><tt class="py-lineno">612</tt> <tt class="py-line"><tt class="py-docstring"> This will verify the command line options and set to default values, if any option not given in command line.</tt> </tt>
-<a name="L613"></a><tt class="py-lineno">613</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L614"></a><tt class="py-lineno">614</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">pprint</tt> </tt>
-<a name="L615"></a><tt class="py-lineno">615</tt> <tt class="py-line"> <tt class="py-name">pp</tt> <tt class="py-op">=</tt> <tt class="py-name">pprint</tt><tt class="py-op">.</tt><tt class="py-name">PrettyPrinter</tt><tt class="py-op">(</tt><tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">)</tt> </tt>
-<a name="L616"></a><tt class="py-lineno">616</tt> <tt class="py-line"> </tt>
-<a name="L617"></a><tt class="py-lineno">617</tt> <tt class="py-line"> <tt class="py-comment"># pp.pprint(options)</tt> </tt>
-<a name="L618"></a><tt class="py-lineno">618</tt> <tt class="py-line"> <tt id="link-143" class="py-name" targets="Function TestON.core.teston.verifyTest()=TestON.core.teston-module.html#verifyTest"><a title="TestON.core.teston.verifyTest" class="py-name" href="#" onclick="return doclink('link-143', 'verifyTest', 'link-143');">verifyTest</a></tt><tt class="py-op">(</tt><tt class="py-name">options</tt><tt class="py-op">)</tt> </tt>
-<a name="L619"></a><tt class="py-lineno">619</tt> <tt class="py-line"> <tt id="link-144" class="py-name" targets="Function TestON.core.teston.verifyExample()=TestON.core.teston-module.html#verifyExample"><a title="TestON.core.teston.verifyExample" class="py-name" href="#" onclick="return doclink('link-144', 'verifyExample', 'link-144');">verifyExample</a></tt><tt class="py-op">(</tt><tt class="py-name">options</tt><tt class="py-op">)</tt> </tt>
-<a name="L620"></a><tt class="py-lineno">620</tt> <tt class="py-line"> <tt id="link-145" class="py-name" targets="Function TestON.core.teston.verifyTestScript()=TestON.core.teston-module.html#verifyTestScript"><a title="TestON.core.teston.verifyTestScript" class="py-name" href="#" onclick="return doclink('link-145', 'verifyTestScript', 'link-145');">verifyTestScript</a></tt><tt class="py-op">(</tt><tt class="py-name">options</tt><tt class="py-op">)</tt> </tt>
-<a name="L621"></a><tt class="py-lineno">621</tt> <tt class="py-line"> <tt id="link-146" class="py-name" targets="Function TestON.core.teston.verifyParams()=TestON.core.teston-module.html#verifyParams"><a title="TestON.core.teston.verifyParams" class="py-name" href="#" onclick="return doclink('link-146', 'verifyParams', 'link-146');">verifyParams</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L622"></a><tt class="py-lineno">622</tt> <tt class="py-line"> <tt id="link-147" class="py-name" targets="Function TestON.core.teston.verifyLogdir()=TestON.core.teston-module.html#verifyLogdir"><a title="TestON.core.teston.verifyLogdir" class="py-name" href="#" onclick="return doclink('link-147', 'verifyLogdir', 'link-147');">verifyLogdir</a></tt><tt class="py-op">(</tt><tt class="py-name">options</tt><tt class="py-op">)</tt> </tt>
-<a name="L623"></a><tt class="py-lineno">623</tt> <tt class="py-line"> <tt id="link-148" class="py-name" targets="Function TestON.core.teston.verifyMail()=TestON.core.teston-module.html#verifyMail"><a title="TestON.core.teston.verifyMail" class="py-name" href="#" onclick="return doclink('link-148', 'verifyMail', 'link-148');">verifyMail</a></tt><tt class="py-op">(</tt><tt class="py-name">options</tt><tt class="py-op">)</tt> </tt>
-<a name="L624"></a><tt class="py-lineno">624</tt> <tt class="py-line"> <tt id="link-149" class="py-name" targets="Function TestON.core.teston.verifyTestCases()=TestON.core.teston-module.html#verifyTestCases"><a title="TestON.core.teston.verifyTestCases" class="py-name" href="#" onclick="return doclink('link-149', 'verifyTestCases', 'link-149');">verifyTestCases</a></tt><tt class="py-op">(</tt><tt class="py-name">options</tt><tt class="py-op">)</tt> </tt>
-<a name="L625"></a><tt class="py-lineno">625</tt> <tt class="py-line"> <tt id="link-150" class="py-name" targets="Function TestON.core.teston.verifyOnosCell()=TestON.core.teston-module.html#verifyOnosCell"><a title="TestON.core.teston.verifyOnosCell" class="py-name" href="#" onclick="return doclink('link-150', 'verifyOnosCell', 'link-150');">verifyOnosCell</a></tt><tt class="py-op">(</tt><tt class="py-name">options</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L626"></a><tt class="py-lineno">626</tt> <tt class="py-line"> </tt>
-<a name="verifyTest"></a><div id="verifyTest-def"><a name="L627"></a><tt class="py-lineno">627</tt> <a class="py-toggle" href="#" id="verifyTest-toggle" onclick="return toggle('verifyTest');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston-module.html#verifyTest">verifyTest</a><tt class="py-op">(</tt><tt class="py-param">options</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="verifyTest-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="verifyTest-expanded"><a name="L628"></a><tt class="py-lineno">628</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L629"></a><tt class="py-lineno">629</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">testname</tt><tt class="py-op">:</tt> </tt>
-<a name="L630"></a><tt class="py-lineno">630</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">=</tt> <tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">testname</tt> </tt>
-<a name="L631"></a><tt class="py-lineno">631</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">classPath</tt> <tt class="py-op">=</tt> <tt class="py-string">"tests."</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt><tt class="py-op">+</tt><tt class="py-string">"."</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> </tt>
-<a name="L632"></a><tt class="py-lineno">632</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-151" class="py-name"><a title="TestON.bin.cli.tests_path
-TestON.core.teston.tests_path" class="py-name" href="#" onclick="return doclink('link-151', 'tests_path', 'link-5');">tests_path</a></tt> <tt class="py-op">=</tt> <tt id="link-152" class="py-name"><a title="TestON.bin.cli.tests_path
-TestON.core.teston.tests_path" class="py-name" href="#" onclick="return doclink('link-152', 'tests_path', 'link-5');">tests_path</a></tt> </tt>
-<a name="L633"></a><tt class="py-lineno">633</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">example</tt><tt class="py-op">:</tt> </tt>
-<a name="L634"></a><tt class="py-lineno">634</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">=</tt> <tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">example</tt> </tt>
-<a name="L635"></a><tt class="py-lineno">635</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name"><a title="TestON.bin.cli.tests_path
-TestON.core.teston.tests_path" class="py-name" href="#" onclick="return doclink('link-153', 'tests_path', 'link-5');">tests_path</a></tt> <tt class="py-op">=</tt> <tt id="link-154" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-154', 'path', 'link-2');">path</a></tt><tt class="py-op">+</tt><tt class="py-string">"/examples/"</tt> </tt>
-<a name="L636"></a><tt class="py-lineno">636</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">classPath</tt> <tt class="py-op">=</tt> <tt class="py-string">"examples."</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt><tt class="py-op">+</tt><tt class="py-string">"."</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> </tt>
-<a name="L637"></a><tt class="py-lineno">637</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L638"></a><tt class="py-lineno">638</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Test or Example not specified please specify the --test <test name > or --example <example name>"</tt> </tt>
-<a name="L639"></a><tt class="py-lineno">639</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-155', 'exit', 'link-60');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L640"></a><tt class="py-lineno">640</tt> <tt class="py-line"> </tt>
-<a name="verifyExample"></a><div id="verifyExample-def"><a name="L641"></a><tt class="py-lineno">641</tt> <a class="py-toggle" href="#" id="verifyExample-toggle" onclick="return toggle('verifyExample');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston-module.html#verifyExample">verifyExample</a><tt class="py-op">(</tt><tt class="py-param">options</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="verifyExample-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="verifyExample-expanded"><a name="L642"></a><tt class="py-lineno">642</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">example</tt><tt class="py-op">:</tt> </tt>
-<a name="L643"></a><tt class="py-lineno">643</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testDir</tt> <tt class="py-op">=</tt> <tt id="link-156" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-156', 'path', 'link-2');">path</a></tt><tt class="py-op">+</tt><tt class="py-string">'/examples/'</tt> </tt>
-<a name="L644"></a><tt class="py-lineno">644</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="TestON.bin.cli.tests_path
-TestON.core.teston.tests_path" class="py-name" href="#" onclick="return doclink('link-157', 'tests_path', 'link-5');">tests_path</a></tt> <tt class="py-op">=</tt> <tt id="link-158" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-158', 'path', 'link-2');">path</a></tt><tt class="py-op">+</tt><tt class="py-string">"/examples/"</tt> </tt>
-<a name="L645"></a><tt class="py-lineno">645</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">classPath</tt> <tt class="py-op">=</tt> <tt class="py-string">"examples."</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt><tt class="py-op">+</tt><tt class="py-string">"."</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> </tt>
-</div><a name="L646"></a><tt class="py-lineno">646</tt> <tt class="py-line"> </tt>
-<a name="verifyLogdir"></a><div id="verifyLogdir-def"><a name="L647"></a><tt class="py-lineno">647</tt> <a class="py-toggle" href="#" id="verifyLogdir-toggle" onclick="return toggle('verifyLogdir');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston-module.html#verifyLogdir">verifyLogdir</a><tt class="py-op">(</tt><tt class="py-param">options</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="verifyLogdir-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="verifyLogdir-expanded"><a name="L648"></a><tt class="py-lineno">648</tt> <tt class="py-line"> <tt class="py-comment"># Verifying Log directory option</tt> </tt>
-<a name="L649"></a><tt class="py-lineno">649</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt><tt class="py-op">:</tt> </tt>
-<a name="L650"></a><tt class="py-lineno">650</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt> <tt class="py-op">=</tt> <tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt> </tt>
-<a name="L651"></a><tt class="py-lineno">651</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L652"></a><tt class="py-lineno">652</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L653"></a><tt class="py-lineno">653</tt> <tt class="py-line"> </tt>
-<a name="verifyMail"></a><div id="verifyMail-def"><a name="L654"></a><tt class="py-lineno">654</tt> <a class="py-toggle" href="#" id="verifyMail-toggle" onclick="return toggle('verifyMail');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston-module.html#verifyMail">verifyMail</a><tt class="py-op">(</tt><tt class="py-param">options</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="verifyMail-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="verifyMail-expanded"><a name="L655"></a><tt class="py-lineno">655</tt> <tt class="py-line"> <tt class="py-comment"># Checking the mailing list</tt> </tt>
-<a name="L656"></a><tt class="py-lineno">656</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">mail</tt><tt class="py-op">:</tt> </tt>
-<a name="L657"></a><tt class="py-lineno">657</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">mail</tt> <tt class="py-op">=</tt> <tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">mail</tt> </tt>
-<a name="L658"></a><tt class="py-lineno">658</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">.</tt><tt class="py-name">has_key</tt><tt class="py-op">(</tt><tt class="py-string">'mail'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L659"></a><tt class="py-lineno">659</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">mail</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'mail'</tt><tt class="py-op">]</tt> </tt>
-<a name="L660"></a><tt class="py-lineno">660</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L661"></a><tt class="py-lineno">661</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">mail</tt> <tt class="py-op">=</tt> <tt class="py-string">'paxweb@paxterrasolutions.com'</tt> </tt>
-</div><a name="L662"></a><tt class="py-lineno">662</tt> <tt class="py-line"> </tt>
-<a name="verifyTestCases"></a><div id="verifyTestCases-def"><a name="L663"></a><tt class="py-lineno">663</tt> <a class="py-toggle" href="#" id="verifyTestCases-toggle" onclick="return toggle('verifyTestCases');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston-module.html#verifyTestCases">verifyTestCases</a><tt class="py-op">(</tt><tt class="py-param">options</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="verifyTestCases-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="verifyTestCases-expanded"><a name="L664"></a><tt class="py-lineno">664</tt> <tt class="py-line"> <tt class="py-comment"># Getting Test cases list</tt> </tt>
-<a name="L665"></a><tt class="py-lineno">665</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">testcases</tt><tt class="py-op">:</tt> </tt>
-<a name="L666"></a><tt class="py-lineno">666</tt> <tt class="py-line"> <tt class="py-name">testcases_list</tt> <tt class="py-op">=</tt> <tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">testcases</tt> </tt>
-<a name="L667"></a><tt class="py-lineno">667</tt> <tt class="py-line"> <tt class="py-comment"># sys.exit()</tt> </tt>
-<a name="L668"></a><tt class="py-lineno">668</tt> <tt class="py-line"> <tt class="py-name">testcases_list</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"(\[|\])"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">testcases</tt><tt class="py-op">)</tt> </tt>
-<a name="L669"></a><tt class="py-lineno">669</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testcases_list</tt> <tt class="py-op">=</tt> <tt class="py-name">eval</tt><tt class="py-op">(</tt><tt class="py-name">testcases_list</tt><tt class="py-op">+</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L670"></a><tt class="py-lineno">670</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L671"></a><tt class="py-lineno">671</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">'testcases'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L672"></a><tt class="py-lineno">672</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">=</tt> <tt class="py-name">eval</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'testcases'</tt><tt class="py-op">]</tt><tt class="py-op">+</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L673"></a><tt class="py-lineno">673</tt> <tt class="py-line"> <tt class="py-name">list1</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L674"></a><tt class="py-lineno">674</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">temp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">==</tt><tt class="py-name">list</tt><tt class="py-op">:</tt> </tt>
-<a name="L675"></a><tt class="py-lineno">675</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">test</tt> <tt class="py-keyword">in</tt> <tt class="py-name">temp</tt><tt class="py-op">:</tt> </tt>
-<a name="L676"></a><tt class="py-lineno">676</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">testcase</tt> <tt class="py-keyword">in</tt> <tt class="py-name">test</tt><tt class="py-op">:</tt> </tt>
-<a name="L677"></a><tt class="py-lineno">677</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">testcase</tt><tt class="py-op">)</tt><tt class="py-op">==</tt><tt class="py-name">int</tt><tt class="py-op">:</tt> </tt>
-<a name="L678"></a><tt class="py-lineno">678</tt> <tt class="py-line"> <tt class="py-name">testcase</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">testcase</tt><tt class="py-op">]</tt> </tt>
-<a name="L679"></a><tt class="py-lineno">679</tt> <tt class="py-line"> <tt class="py-name">list1</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-name">testcase</tt><tt class="py-op">)</tt> </tt>
-<a name="L680"></a><tt class="py-lineno">680</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L681"></a><tt class="py-lineno">681</tt> <tt class="py-line"> <tt class="py-name">temp</tt><tt class="py-op">=</tt><tt class="py-name">list</tt><tt class="py-op">(</tt><tt class="py-name">temp</tt><tt class="py-op">)</tt> </tt>
-<a name="L682"></a><tt class="py-lineno">682</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">testcase</tt> <tt class="py-keyword">in</tt> <tt class="py-name">temp</tt><tt class="py-op">:</tt> </tt>
-<a name="L683"></a><tt class="py-lineno">683</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">testcase</tt><tt class="py-op">)</tt><tt class="py-op">==</tt><tt class="py-name">int</tt><tt class="py-op">:</tt> </tt>
-<a name="L684"></a><tt class="py-lineno">684</tt> <tt class="py-line"> <tt class="py-name">testcase</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">testcase</tt><tt class="py-op">]</tt> </tt>
-<a name="L685"></a><tt class="py-lineno">685</tt> <tt class="py-line"> <tt class="py-name">list1</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-name">testcase</tt><tt class="py-op">)</tt> </tt>
-<a name="L686"></a><tt class="py-lineno">686</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testcases_list</tt><tt class="py-op">=</tt><tt class="py-name">list1</tt> </tt>
-<a name="L687"></a><tt class="py-lineno">687</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L688"></a><tt class="py-lineno">688</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"testcases not specifed in params, please provide in params file or 'testcases' commandline argument"</tt> </tt>
-<a name="L689"></a><tt class="py-lineno">689</tt> <tt class="py-line"> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt id="link-159" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-159', 'exit', 'link-60');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L690"></a><tt class="py-lineno">690</tt> <tt class="py-line"> </tt>
-<a name="verifyOnosCell"></a><div id="verifyOnosCell-def"><a name="L691"></a><tt class="py-lineno">691</tt> <a class="py-toggle" href="#" id="verifyOnosCell-toggle" onclick="return toggle('verifyOnosCell');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston-module.html#verifyOnosCell">verifyOnosCell</a><tt class="py-op">(</tt><tt class="py-param">options</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="verifyOnosCell-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="verifyOnosCell-expanded"><a name="L692"></a><tt class="py-lineno">692</tt> <tt class="py-line"> <tt class="py-comment"># Verifying onoscell option</tt> </tt>
-<a name="L693"></a><tt class="py-lineno">693</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">onoscell</tt><tt class="py-op">:</tt> </tt>
-<a name="L694"></a><tt class="py-lineno">694</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onoscell</tt> <tt class="py-op">=</tt> <tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">onoscell</tt> </tt>
-<a name="L695"></a><tt class="py-lineno">695</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onosIPs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L696"></a><tt class="py-lineno">696</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">mnIP</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L697"></a><tt class="py-lineno">697</tt> <tt class="py-line"> <tt class="py-name">cellCMD</tt> <tt class="py-op">=</tt> <tt class="py-string">". ~/.profile; cell "</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onoscell</tt> </tt>
-<a name="L698"></a><tt class="py-lineno">698</tt> <tt class="py-line"> <tt id="link-160" class="py-name" targets="Function TestON.bin.cli.output()=TestON.bin.cli-module.html#output"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-160', 'output', 'link-160');">output</a></tt><tt class="py-op">=</tt><tt class="py-name">subprocess</tt><tt class="py-op">.</tt><tt class="py-name">check_output</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt><tt class="py-string">"bash"</tt><tt class="py-op">,</tt> <tt class="py-string">'-c'</tt><tt class="py-op">,</tt> <tt class="py-name">cellCMD</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L699"></a><tt class="py-lineno">699</tt> <tt class="py-line"> <tt class="py-name">splitOutput</tt> <tt class="py-op">=</tt> <tt id="link-161" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-161', 'output', 'link-160');">output</a></tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L700"></a><tt class="py-lineno">700</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">splitOutput</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L701"></a><tt class="py-lineno">701</tt> <tt class="py-line"> <tt class="py-keyword">if</tt><tt class="py-op">(</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt> <tt class="py-string">"OCN"</tt><tt class="py-op">,</tt> <tt class="py-name">splitOutput</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L702"></a><tt class="py-lineno">702</tt> <tt class="py-line"> <tt class="py-name">mnNode</tt><tt class="py-op">=</tt><tt class="py-name">splitOutput</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"="</tt><tt class="py-op">)</tt> </tt>
-<a name="L703"></a><tt class="py-lineno">703</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">mnIP</tt> <tt class="py-op">=</tt> <tt class="py-name">mnNode</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L704"></a><tt class="py-lineno">704</tt> <tt class="py-line"> <tt class="py-comment"># cell already sorts OC variables in bash, so no need to sort in TestON</tt> </tt>
-<a name="L705"></a><tt class="py-lineno">705</tt> <tt class="py-line"> <tt class="py-keyword">if</tt><tt class="py-op">(</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt> <tt class="py-string">"OC[1-9]"</tt><tt class="py-op">,</tt> <tt class="py-name">splitOutput</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L706"></a><tt class="py-lineno">706</tt> <tt class="py-line"> <tt class="py-name">onosNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">splitOutput</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"="</tt><tt class="py-op">)</tt> </tt>
-<a name="L707"></a><tt class="py-lineno">707</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onosIPs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">onosNodes</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L708"></a><tt class="py-lineno">708</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L709"></a><tt class="py-lineno">709</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onoscell</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L710"></a><tt class="py-lineno">710</tt> <tt class="py-line"> </tt>
-<a name="verifyTestScript"></a><div id="verifyTestScript-def"><a name="L711"></a><tt class="py-lineno">711</tt> <a class="py-toggle" href="#" id="verifyTestScript-toggle" onclick="return toggle('verifyTestScript');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston-module.html#verifyTestScript">verifyTestScript</a><tt class="py-op">(</tt><tt class="py-param">options</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="verifyTestScript-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="verifyTestScript-expanded"><a name="L712"></a><tt class="py-lineno">712</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L713"></a><tt class="py-lineno">713</tt> <tt class="py-line"><tt class="py-docstring"> Verifyies test script.</tt> </tt>
-<a name="L714"></a><tt class="py-lineno">714</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L715"></a><tt class="py-lineno">715</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="TestON.core.openspeak" class="py-name" href="#" onclick="return doclink('link-162', 'openspeak', 'link-1');">openspeak</a></tt> <tt class="py-op">=</tt> <tt id="link-163" class="py-name"><a title="TestON.core.openspeak" class="py-name" href="#" onclick="return doclink('link-163', 'openspeak', 'link-1');">openspeak</a></tt><tt class="py-op">.</tt><tt id="link-164" class="py-name" targets="Class TestON.core.openspeak.OpenSpeak=TestON.core.openspeak.OpenSpeak-class.html"><a title="TestON.core.openspeak.OpenSpeak" class="py-name" href="#" onclick="return doclink('link-164', 'OpenSpeak', 'link-164');">OpenSpeak</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L716"></a><tt class="py-lineno">716</tt> <tt class="py-line"> <tt class="py-name">openspeakfile</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testDir</tt><tt class="py-op">+</tt><tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">".ospk"</tt> </tt>
-<a name="L717"></a><tt class="py-lineno">717</tt> <tt class="py-line"> <tt class="py-name">testfile</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testDir</tt><tt class="py-op">+</tt><tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">".py"</tt> </tt>
-<a name="L718"></a><tt class="py-lineno">718</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-165" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-165', 'path', 'link-2');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">exists</tt><tt class="py-op">(</tt><tt class="py-name">openspeakfile</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L719"></a><tt class="py-lineno">719</tt> <tt class="py-line"> <tt class="py-comment"># Openspeak file found, compiling to python</tt> </tt>
-<a name="L720"></a><tt class="py-lineno">720</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-166" class="py-name"><a title="TestON.core.openspeak" class="py-name" href="#" onclick="return doclink('link-166', 'openspeak', 'link-1');">openspeak</a></tt><tt class="py-op">.</tt><tt id="link-167" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.compiler()=TestON.core.openspeak.OpenSpeak-class.html#compiler"><a title="TestON.core.openspeak.OpenSpeak.compiler" class="py-name" href="#" onclick="return doclink('link-167', 'compiler', 'link-167');">compiler</a></tt><tt class="py-op">(</tt><tt class="py-name">openspeakfile</tt><tt class="py-op">=</tt><tt class="py-name">openspeakfile</tt><tt class="py-op">,</tt><tt class="py-name">writetofile</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L721"></a><tt class="py-lineno">721</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-168', 'path', 'link-2');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">exists</tt><tt class="py-op">(</tt><tt class="py-name">testfile</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L722"></a><tt class="py-lineno">722</tt> <tt class="py-line"> <tt class="py-comment"># No openspeak found, using python file instead</tt> </tt>
-<a name="L723"></a><tt class="py-lineno">723</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L724"></a><tt class="py-lineno">724</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L725"></a><tt class="py-lineno">725</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"\nThere is no \""</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt><tt class="py-op">+</tt><tt class="py-string">"\" test script.\nPlease provide a "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L726"></a><tt class="py-lineno">726</tt> <tt class="py-line"> <tt class="py-string">"Python or OpenSpeak test script in the tests folder: "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L727"></a><tt class="py-lineno">727</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testDir</tt><tt class="py-op">+</tt><tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> </tt>
-<a name="L728"></a><tt class="py-lineno">728</tt> <tt class="py-line"> <tt class="py-name">__builtin__</tt><tt class="py-op">.</tt><tt class="py-name">testthread</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L729"></a><tt class="py-lineno">729</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-169" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-169', 'exit', 'link-60');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L730"></a><tt class="py-lineno">730</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L731"></a><tt class="py-lineno">731</tt> <tt class="py-line"> <tt class="py-name">testModule</tt> <tt class="py-op">=</tt> <tt class="py-name">__import__</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">classPath</tt><tt class="py-op">,</tt> <tt class="py-name">globals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">locals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L732"></a><tt class="py-lineno">732</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">(</tt><tt class="py-name">ImportError</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L733"></a><tt class="py-lineno">733</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"There was an import error, it might mean that there is no test named "</tt><tt class="py-op">+</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> </tt>
-<a name="L734"></a><tt class="py-lineno">734</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-170" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-170', 'exit', 'link-60');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L735"></a><tt class="py-lineno">735</tt> <tt class="py-line"> </tt>
-<a name="L736"></a><tt class="py-lineno">736</tt> <tt class="py-line"> <tt class="py-name">testClass</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">testModule</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt><tt class="py-op">)</tt> </tt>
-<a name="L737"></a><tt class="py-lineno">737</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testObject</tt> <tt class="py-op">=</tt> <tt class="py-name">testClass</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L738"></a><tt class="py-lineno">738</tt> <tt class="py-line"> <tt id="link-171" class="py-name" targets="Function TestON.core.teston.load_parser()=TestON.core.teston-module.html#load_parser"><a title="TestON.core.teston.load_parser" class="py-name" href="#" onclick="return doclink('link-171', 'load_parser', 'link-171');">load_parser</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L739"></a><tt class="py-lineno">739</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">parser</tt><tt class="py-op">.</tt><tt id="link-172" class="py-name" targets="Method TestON.core.iniparser.iniparser.parseParams()=TestON.core.iniparser.iniparser-class.html#parseParams,Method TestON.core.xmlparser.xmlparser.parseParams()=TestON.core.xmlparser.xmlparser-class.html#parseParams"><a title="TestON.core.iniparser.iniparser.parseParams
-TestON.core.xmlparser.xmlparser.parseParams" class="py-name" href="#" onclick="return doclink('link-172', 'parseParams', 'link-172');">parseParams</a></tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">classPath</tt><tt class="py-op">)</tt> </tt>
-<a name="L740"></a><tt class="py-lineno">740</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-173', 'topology', 'link-47');">topology</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">parser</tt><tt class="py-op">.</tt><tt id="link-174" class="py-name" targets="Method TestON.core.iniparser.iniparser.parseTopology()=TestON.core.iniparser.iniparser-class.html#parseTopology,Method TestON.core.xmlparser.xmlparser.parseTopology()=TestON.core.xmlparser.xmlparser-class.html#parseTopology"><a title="TestON.core.iniparser.iniparser.parseTopology
-TestON.core.xmlparser.xmlparser.parseTopology" class="py-name" href="#" onclick="return doclink('link-174', 'parseTopology', 'link-174');">parseTopology</a></tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">classPath</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L741"></a><tt class="py-lineno">741</tt> <tt class="py-line"> </tt>
-<a name="verifyParams"></a><div id="verifyParams-def"><a name="L742"></a><tt class="py-lineno">742</tt> <a class="py-toggle" href="#" id="verifyParams-toggle" onclick="return toggle('verifyParams');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston-module.html#verifyParams">verifyParams</a><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="verifyParams-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="verifyParams-expanded"><a name="L743"></a><tt class="py-lineno">743</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L744"></a><tt class="py-lineno">744</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'PARAMS'</tt><tt class="py-op">]</tt> </tt>
-<a name="L745"></a><tt class="py-lineno">745</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">(</tt><tt class="py-name">KeyError</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L746"></a><tt class="py-lineno">746</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Error with the params file: Either the file not specified or the format is not correct"</tt> </tt>
-<a name="L747"></a><tt class="py-lineno">747</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-175" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-175', 'exit', 'link-60');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L748"></a><tt class="py-lineno">748</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L749"></a><tt class="py-lineno">749</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-176" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-176', 'topology', 'link-47');">topology</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-177" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-177', 'topology', 'link-47');">topology</a></tt><tt class="py-op">[</tt><tt class="py-string">'TOPOLOGY'</tt><tt class="py-op">]</tt> </tt>
-<a name="L750"></a><tt class="py-lineno">750</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">(</tt><tt class="py-name">KeyError</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L751"></a><tt class="py-lineno">751</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Error with the Topology file: Either the file not specified or the format is not correct"</tt> </tt>
-<a name="L752"></a><tt class="py-lineno">752</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-178" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-178', 'exit', 'link-60');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L753"></a><tt class="py-lineno">753</tt> <tt class="py-line"> </tt>
-<a name="load_parser"></a><div id="load_parser-def"><a name="L754"></a><tt class="py-lineno">754</tt> <a class="py-toggle" href="#" id="load_parser-toggle" onclick="return toggle('load_parser');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston-module.html#load_parser">load_parser</a><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="load_parser-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="load_parser-expanded"><a name="L755"></a><tt class="py-lineno">755</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L756"></a><tt class="py-lineno">756</tt> <tt class="py-line"><tt class="py-docstring"> It facilitates the loading customised parser for topology and params file.</tt> </tt>
-<a name="L757"></a><tt class="py-lineno">757</tt> <tt class="py-line"><tt class="py-docstring"> It loads parser mentioned in tab named parser of teston.cfg file.</tt> </tt>
-<a name="L758"></a><tt class="py-lineno">758</tt> <tt class="py-line"><tt class="py-docstring"> It also loads default xmlparser if no parser have specified in teston.cfg file.</tt> </tt>
-<a name="L759"></a><tt class="py-lineno">759</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L760"></a><tt class="py-lineno">760</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L761"></a><tt class="py-lineno">761</tt> <tt class="py-line"> <tt class="py-name">confighash</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt> </tt>
-<a name="L762"></a><tt class="py-lineno">762</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">'file'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">confighash</tt><tt class="py-op">[</tt><tt class="py-string">'config'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'parser'</tt><tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt class="py-string">'class'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">confighash</tt><tt class="py-op">[</tt><tt class="py-string">'config'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'parser'</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L763"></a><tt class="py-lineno">763</tt> <tt class="py-line"> <tt id="link-179" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-179', 'path', 'link-2');">path</a></tt> <tt class="py-op">=</tt> <tt class="py-name">confighash</tt><tt class="py-op">[</tt><tt class="py-string">'config'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'parser'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'file'</tt><tt class="py-op">]</tt> </tt>
-<a name="L764"></a><tt class="py-lineno">764</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-180" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-180', 'path', 'link-2');">path</a></tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">confighash</tt><tt class="py-op">[</tt><tt class="py-string">'config'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'parser'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'class'</tt><tt class="py-op">]</tt><tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L765"></a><tt class="py-lineno">765</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L766"></a><tt class="py-lineno">766</tt> <tt class="py-line"> <tt class="py-name">module</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">r".py\s*$"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt id="link-181" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-181', 'path', 'link-2');">path</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L767"></a><tt class="py-lineno">767</tt> <tt class="py-line"> <tt class="py-name">moduleList</tt> <tt class="py-op">=</tt> <tt class="py-name">module</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"/"</tt><tt class="py-op">)</tt> </tt>
-<a name="L768"></a><tt class="py-lineno">768</tt> <tt class="py-line"> <tt class="py-name">newModule</tt> <tt class="py-op">=</tt> <tt class="py-string">"."</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L769"></a><tt class="py-lineno">769</tt> <tt class="py-line"> <tt class="py-name">parsingClass</tt> <tt class="py-op">=</tt> <tt class="py-name">confighash</tt><tt class="py-op">[</tt><tt class="py-string">'config'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'parser'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'class'</tt><tt class="py-op">]</tt> </tt>
-<a name="L770"></a><tt class="py-lineno">770</tt> <tt class="py-line"> <tt class="py-name">parsingModule</tt> <tt class="py-op">=</tt> <tt class="py-name">__import__</tt><tt class="py-op">(</tt><tt class="py-name">newModule</tt><tt class="py-op">,</tt> <tt class="py-name">globals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">locals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-name">parsingClass</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L771"></a><tt class="py-lineno">771</tt> <tt class="py-line"> <tt class="py-name">parsingClass</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">parsingModule</tt><tt class="py-op">,</tt> <tt class="py-name">parsingClass</tt><tt class="py-op">)</tt> </tt>
-<a name="L772"></a><tt class="py-lineno">772</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">parser</tt> <tt class="py-op">=</tt> <tt class="py-name">parsingClass</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L773"></a><tt class="py-lineno">773</tt> <tt class="py-line"> <tt class="py-comment">#hashobj = main.parser.parseParams(main.classPath)</tt> </tt>
-<a name="L774"></a><tt class="py-lineno">774</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">hasattr</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">parser</tt><tt class="py-op">,</tt><tt class="py-string">"parseParams"</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">hasattr</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">parser</tt><tt class="py-op">,</tt><tt class="py-string">"parseTopology"</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">hasattr</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">parser</tt><tt class="py-op">,</tt><tt class="py-string">"parse"</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L775"></a><tt class="py-lineno">775</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L776"></a><tt class="py-lineno">776</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L777"></a><tt class="py-lineno">777</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Invalid parser format"</tt> </tt>
-<a name="L778"></a><tt class="py-lineno">778</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-182" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-182', 'exit', 'link-60');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L779"></a><tt class="py-lineno">779</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">ImportError</tt><tt class="py-op">:</tt> </tt>
-<a name="L780"></a><tt class="py-lineno">780</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Could not find the file "</tt> <tt class="py-op">+</tt> <tt id="link-183" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-183', 'path', 'link-2');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">" using default parser."</tt> </tt>
-<a name="L781"></a><tt class="py-lineno">781</tt> <tt class="py-line"> <tt id="link-184" class="py-name" targets="Function TestON.core.teston.load_defaultParser()=TestON.core.teston-module.html#load_defaultParser"><a title="TestON.core.teston.load_defaultParser" class="py-name" href="#" onclick="return doclink('link-184', 'load_defaultParser', 'link-184');">load_defaultParser</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L782"></a><tt class="py-lineno">782</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">confighash</tt><tt class="py-op">[</tt><tt class="py-string">'config'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'parser'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'file'</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">confighash</tt><tt class="py-op">[</tt><tt class="py-string">'config'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'parser'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'class'</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L783"></a><tt class="py-lineno">783</tt> <tt class="py-line"> <tt id="link-185" class="py-name"><a title="TestON.core.teston.load_defaultParser" class="py-name" href="#" onclick="return doclink('link-185', 'load_defaultParser', 'link-184');">load_defaultParser</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L784"></a><tt class="py-lineno">784</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L785"></a><tt class="py-lineno">785</tt> <tt class="py-line"> <tt id="link-186" class="py-name"><a title="TestON.core.teston.load_defaultParser" class="py-name" href="#" onclick="return doclink('link-186', 'load_defaultParser', 'link-184');">load_defaultParser</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L786"></a><tt class="py-lineno">786</tt> <tt class="py-line"> </tt>
-<a name="load_defaultParser"></a><div id="load_defaultParser-def"><a name="L787"></a><tt class="py-lineno">787</tt> <a class="py-toggle" href="#" id="load_defaultParser-toggle" onclick="return toggle('load_defaultParser');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston-module.html#load_defaultParser">load_defaultParser</a><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="load_defaultParser-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="load_defaultParser-expanded"><a name="L788"></a><tt class="py-lineno">788</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L789"></a><tt class="py-lineno">789</tt> <tt class="py-line"><tt class="py-docstring"> It will load the default parser which is xml parser to parse the params and topology file.</tt> </tt>
-<a name="L790"></a><tt class="py-lineno">790</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L791"></a><tt class="py-lineno">791</tt> <tt class="py-line"> <tt class="py-name">moduleList</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">parserPath</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"/"</tt><tt class="py-op">)</tt> </tt>
-<a name="L792"></a><tt class="py-lineno">792</tt> <tt class="py-line"> <tt class="py-name">newModule</tt> <tt class="py-op">=</tt> <tt class="py-string">"."</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L793"></a><tt class="py-lineno">793</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L794"></a><tt class="py-lineno">794</tt> <tt class="py-line"> <tt class="py-name">parsingClass</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">parsingClass</tt> </tt>
-<a name="L795"></a><tt class="py-lineno">795</tt> <tt class="py-line"> <tt class="py-name">parsingModule</tt> <tt class="py-op">=</tt> <tt class="py-name">__import__</tt><tt class="py-op">(</tt><tt class="py-name">newModule</tt><tt class="py-op">,</tt> <tt class="py-name">globals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">locals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-name">parsingClass</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L796"></a><tt class="py-lineno">796</tt> <tt class="py-line"> <tt class="py-name">parsingClass</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">parsingModule</tt><tt class="py-op">,</tt> <tt class="py-name">parsingClass</tt><tt class="py-op">)</tt> </tt>
-<a name="L797"></a><tt class="py-lineno">797</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">parser</tt> <tt class="py-op">=</tt> <tt class="py-name">parsingClass</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L798"></a><tt class="py-lineno">798</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">hasattr</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">parser</tt><tt class="py-op">,</tt><tt class="py-string">"parseParams"</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">hasattr</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">parser</tt><tt class="py-op">,</tt><tt class="py-string">"parseTopology"</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">hasattr</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">parser</tt><tt class="py-op">,</tt><tt class="py-string">"parse"</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L799"></a><tt class="py-lineno">799</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L800"></a><tt class="py-lineno">800</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L801"></a><tt class="py-lineno">801</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-187" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-187', 'exit', 'link-60');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L802"></a><tt class="py-lineno">802</tt> <tt class="py-line"> </tt>
-<a name="L803"></a><tt class="py-lineno">803</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">ImportError</tt><tt class="py-op">:</tt> </tt>
-<a name="L804"></a><tt class="py-lineno">804</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">exc_info</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-</div><a name="L805"></a><tt class="py-lineno">805</tt> <tt class="py-line"> </tt>
-<a name="load_logger"></a><div id="load_logger-def"><a name="L806"></a><tt class="py-lineno">806</tt> <a class="py-toggle" href="#" id="load_logger-toggle" onclick="return toggle('load_logger');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston-module.html#load_logger">load_logger</a><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="load_logger-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="load_logger-expanded"><a name="L807"></a><tt class="py-lineno">807</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L808"></a><tt class="py-lineno">808</tt> <tt class="py-line"><tt class="py-docstring"> It facilitates the loading customised parser for topology and params file.</tt> </tt>
-<a name="L809"></a><tt class="py-lineno">809</tt> <tt class="py-line"><tt class="py-docstring"> It loads parser mentioned in tab named parser of teston.cfg file.</tt> </tt>
-<a name="L810"></a><tt class="py-lineno">810</tt> <tt class="py-line"><tt class="py-docstring"> It also loads default xmlparser if no parser have specified in teston.cfg file.</tt> </tt>
-<a name="L811"></a><tt class="py-lineno">811</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L812"></a><tt class="py-lineno">812</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L813"></a><tt class="py-lineno">813</tt> <tt class="py-line"> <tt class="py-name">confighash</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">configDict</tt> </tt>
-<a name="L814"></a><tt class="py-lineno">814</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">'file'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">confighash</tt><tt class="py-op">[</tt><tt class="py-string">'config'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'logger'</tt><tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt class="py-string">'class'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">confighash</tt><tt class="py-op">[</tt><tt class="py-string">'config'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'logger'</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L815"></a><tt class="py-lineno">815</tt> <tt class="py-line"> <tt id="link-188" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-188', 'path', 'link-2');">path</a></tt> <tt class="py-op">=</tt> <tt class="py-name">confighash</tt><tt class="py-op">[</tt><tt class="py-string">'config'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'logger'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'file'</tt><tt class="py-op">]</tt> </tt>
-<a name="L816"></a><tt class="py-lineno">816</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-189" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-189', 'path', 'link-2');">path</a></tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">confighash</tt><tt class="py-op">[</tt><tt class="py-string">'config'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'logger'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'class'</tt><tt class="py-op">]</tt><tt class="py-op">!=</tt> <tt class="py-name">None</tt> <tt class="py-op">:</tt> </tt>
-<a name="L817"></a><tt class="py-lineno">817</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L818"></a><tt class="py-lineno">818</tt> <tt class="py-line"> <tt class="py-name">module</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">r".py\s*$"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt id="link-190" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-190', 'path', 'link-2');">path</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L819"></a><tt class="py-lineno">819</tt> <tt class="py-line"> <tt class="py-name">moduleList</tt> <tt class="py-op">=</tt> <tt class="py-name">module</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"/"</tt><tt class="py-op">)</tt> </tt>
-<a name="L820"></a><tt class="py-lineno">820</tt> <tt class="py-line"> <tt class="py-name">newModule</tt> <tt class="py-op">=</tt> <tt class="py-string">"."</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L821"></a><tt class="py-lineno">821</tt> <tt class="py-line"> <tt class="py-name">loggerClass</tt> <tt class="py-op">=</tt> <tt class="py-name">confighash</tt><tt class="py-op">[</tt><tt class="py-string">'config'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'logger'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'class'</tt><tt class="py-op">]</tt> </tt>
-<a name="L822"></a><tt class="py-lineno">822</tt> <tt class="py-line"> <tt class="py-name">loggerModule</tt> <tt class="py-op">=</tt> <tt class="py-name">__import__</tt><tt class="py-op">(</tt><tt class="py-name">newModule</tt><tt class="py-op">,</tt> <tt class="py-name">globals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">locals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-name">loggerClass</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L823"></a><tt class="py-lineno">823</tt> <tt class="py-line"> <tt class="py-name">loggerClass</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">loggerModule</tt><tt class="py-op">,</tt> <tt class="py-name">loggerClass</tt><tt class="py-op">)</tt> </tt>
-<a name="L824"></a><tt class="py-lineno">824</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-191" class="py-name"><a title="TestON.core.logger" class="py-name" href="#" onclick="return doclink('link-191', 'logger', 'link-48');">logger</a></tt> <tt class="py-op">=</tt> <tt class="py-name">loggerClass</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L825"></a><tt class="py-lineno">825</tt> <tt class="py-line"> <tt class="py-comment">#hashobj = main.parser.parseParams(main.classPath)</tt> </tt>
-<a name="L826"></a><tt class="py-lineno">826</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">ImportError</tt><tt class="py-op">:</tt> </tt>
-<a name="L827"></a><tt class="py-lineno">827</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Could not find the file "</tt> <tt class="py-op">+</tt> <tt id="link-192" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-192', 'path', 'link-2');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">" using default logger."</tt> </tt>
-<a name="L828"></a><tt class="py-lineno">828</tt> <tt class="py-line"> <tt id="link-193" class="py-name" targets="Function TestON.core.teston.load_defaultlogger()=TestON.core.teston-module.html#load_defaultlogger"><a title="TestON.core.teston.load_defaultlogger" class="py-name" href="#" onclick="return doclink('link-193', 'load_defaultlogger', 'link-193');">load_defaultlogger</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L829"></a><tt class="py-lineno">829</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">confighash</tt><tt class="py-op">[</tt><tt class="py-string">'config'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'parser'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'file'</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">confighash</tt><tt class="py-op">[</tt><tt class="py-string">'config'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'parser'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'class'</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt> <tt class="py-op">:</tt> </tt>
-<a name="L830"></a><tt class="py-lineno">830</tt> <tt class="py-line"> <tt id="link-194" class="py-name"><a title="TestON.core.teston.load_defaultlogger" class="py-name" href="#" onclick="return doclink('link-194', 'load_defaultlogger', 'link-193');">load_defaultlogger</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L831"></a><tt class="py-lineno">831</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L832"></a><tt class="py-lineno">832</tt> <tt class="py-line"> <tt id="link-195" class="py-name"><a title="TestON.core.teston.load_defaultlogger" class="py-name" href="#" onclick="return doclink('link-195', 'load_defaultlogger', 'link-193');">load_defaultlogger</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L833"></a><tt class="py-lineno">833</tt> <tt class="py-line"> </tt>
-<a name="load_defaultlogger"></a><div id="load_defaultlogger-def"><a name="L834"></a><tt class="py-lineno">834</tt> <a class="py-toggle" href="#" id="load_defaultlogger-toggle" onclick="return toggle('load_defaultlogger');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston-module.html#load_defaultlogger">load_defaultlogger</a><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="load_defaultlogger-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="load_defaultlogger-expanded"><a name="L835"></a><tt class="py-lineno">835</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L836"></a><tt class="py-lineno">836</tt> <tt class="py-line"><tt class="py-docstring"> It will load the default parser which is xml parser to parse the params and topology file.</tt> </tt>
-<a name="L837"></a><tt class="py-lineno">837</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L838"></a><tt class="py-lineno">838</tt> <tt class="py-line"> <tt class="py-name">moduleList</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">loggerPath</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"/"</tt><tt class="py-op">)</tt> </tt>
-<a name="L839"></a><tt class="py-lineno">839</tt> <tt class="py-line"> <tt class="py-name">newModule</tt> <tt class="py-op">=</tt> <tt class="py-string">"."</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">moduleList</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">moduleList</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L840"></a><tt class="py-lineno">840</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L841"></a><tt class="py-lineno">841</tt> <tt class="py-line"> <tt class="py-name">loggerClass</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">loggerClass</tt> </tt>
-<a name="L842"></a><tt class="py-lineno">842</tt> <tt class="py-line"> <tt class="py-name">loggerModule</tt> <tt class="py-op">=</tt> <tt class="py-name">__import__</tt><tt class="py-op">(</tt><tt class="py-name">newModule</tt><tt class="py-op">,</tt> <tt class="py-name">globals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">locals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-name">loggerClass</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L843"></a><tt class="py-lineno">843</tt> <tt class="py-line"> <tt class="py-name">loggerClass</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">loggerModule</tt><tt class="py-op">,</tt> <tt class="py-name">loggerClass</tt><tt class="py-op">)</tt> </tt>
-<a name="L844"></a><tt class="py-lineno">844</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-196" class="py-name"><a title="TestON.core.logger" class="py-name" href="#" onclick="return doclink('link-196', 'logger', 'link-48');">logger</a></tt> <tt class="py-op">=</tt> <tt class="py-name">loggerClass</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L845"></a><tt class="py-lineno">845</tt> <tt class="py-line"> </tt>
-<a name="L846"></a><tt class="py-lineno">846</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">ImportError</tt><tt class="py-op">:</tt> </tt>
-<a name="L847"></a><tt class="py-lineno">847</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">exc_info</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L848"></a><tt class="py-lineno">848</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-197" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-197', 'exit', 'link-60');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L849"></a><tt class="py-lineno">849</tt> <tt class="py-line"> </tt>
-<a name="_echo"></a><div id="_echo-def"><a name="L850"></a><tt class="py-lineno">850</tt> <a class="py-toggle" href="#" id="_echo-toggle" onclick="return toggle('_echo');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.teston-module.html#_echo">_echo</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_echo-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_echo-expanded"><a name="L851"></a><tt class="py-lineno">851</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"THIS IS ECHO"</tt> </tt>
-</div><a name="L852"></a><tt class="py-lineno">852</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.teston.TestON-class.html b/TestON/Documentation/TestON_Document/TestON.core.teston.TestON-class.html
deleted file mode 100644
index 6dc57e7..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.teston.TestON-class.html
+++ /dev/null
@@ -1,577 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.teston.TestON</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- <a href="TestON.core.teston-module.html">Module teston</a> ::
- Class TestON
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.teston.TestON-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class TestON</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON">source code</a></span></p>
-<p>TestON will initiate the specified test. The main tasks are : *
- Initiate the required Component handles for the test. * Create Log file
- Handles.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">options</span>)</span><br />
- Initialise the component handles specified in the topology file of
- the specified test.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="configparser"></a><span class="summary-sig-name">configparser</span>(<span class="summary-sig-arg">self</span>)</span><br />
- It will parse the config file (teston.cfg) and return as dictionary</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.configparser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="componentInit"></a><span class="summary-sig-name">componentInit</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">component</span>)</span><br />
- This method will initialize specified component</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.componentInit">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.teston.TestON-class.html#run" class="summary-sig-name">run</a>(<span class="summary-sig-arg">self</span>)</span><br />
- The Execution of the test script's cases listed in the Test params
- file will be done here.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.run">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runCase"></a><span class="summary-sig-name">runCase</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">testCaseNumber</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.runCase">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runStep"></a><span class="summary-sig-name">runStep</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">stepList</span>,
- <span class="summary-sig-arg">code</span>,
- <span class="summary-sig-arg">testCaseNumber</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.runStep">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="addCaseHeader"></a><span class="summary-sig-name">addCaseHeader</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.addCaseHeader">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="addCaseFooter"></a><span class="summary-sig-name">addCaseFooter</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.addCaseFooter">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.teston.TestON-class.html#cleanup" class="summary-sig-name">cleanup</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Print a summary of the current test's results then attempt to release
- all the component handles and the close opened file handles.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.cleanup">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="pause"></a><span class="summary-sig-name">pause</span>(<span class="summary-sig-arg">self</span>)</span><br />
- This function will pause the test's execution, and will continue
- after user provide 'resume' command.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.pause">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*components</span>)</span><br />
- When test step failed, calling all the components onfail.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getDriverPath"></a><span class="summary-sig-name">getDriverPath</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">driverName</span>)</span><br />
- Based on the component 'type' specified in the params , this method
- will find the absolute path , by recursively searching the name of
- the component.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.getDriverPath">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="step"></a><span class="summary-sig-name">step</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">stepDesc</span>)</span><br />
- The step information of the test-case will append to the logs.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.step">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="case"></a><span class="summary-sig-name">case</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">testCaseName</span>)</span><br />
- Test's each test-case information will append to the logs.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.case">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="testDesc"></a><span class="summary-sig-name">testDesc</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">description</span>)</span><br />
- Test description will append to the logs.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.testDesc">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="_getTest"></a><span class="summary-sig-name">_getTest</span>(<span class="summary-sig-arg">self</span>)</span><br />
- This method will parse the test script to find required test
- information.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON._getTest">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="response_parser"></a><span class="summary-sig-name">response_parser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>,
- <span class="summary-sig-arg">return_format</span>)</span><br />
- It will load the default response parser</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.response_parser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="response_to_dict"></a><span class="summary-sig-name">response_to_dict</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>,
- <span class="summary-sig-arg">return_format</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.response_to_dict">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="dict_to_return_format"></a><span class="summary-sig-name">dict_to_return_format</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>,
- <span class="summary-sig-arg">return_format</span>,
- <span class="summary-sig-arg">response_dict</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.dict_to_return_format">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="get_random"></a><span class="summary-sig-name">get_random</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.get_random">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="exit"></a><span class="summary-sig-name">exit</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.exit">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="run"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">run</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.run">source code</a></span>
- </td>
- </tr></table>
-
- <p>The Execution of the test script's cases listed in the Test params
- file will be done here. And Update each test case result. This method
- will return TRUE if it executed all the test cases successfully, else
- will retun FALSE</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="cleanup"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">cleanup</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.teston-pysrc.html#TestON.cleanup">source code</a></span>
- </td>
- </tr></table>
-
- <p>Print a summary of the current test's results then attempt to release
- all the component handles and the close opened file handles.</p>
- <p>This function shouldbe threadsafe such that cleanup will only be
- executed once per test.</p>
- <p>This will return TRUE if all the component handles and log handles
- closed properly, else return FALSE.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.testparser-module.html b/TestON/Documentation/TestON_Document/TestON.core.testparser-module.html
deleted file mode 100644
index 7ba8868..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.testparser-module.html
+++ /dev/null
@@ -1,182 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.testparser</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module testparser
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.testparser-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module testparser</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.testparser-pysrc.html">source code</a></span></p>
-<p>Created on 26-Dec-2012</p>
-
-<hr />
-<div class="fields"> <p><strong>Author:</strong>
- Anil Kumar (anilkumar.s@paxterrasolutions.com)
- <p>TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published
- by the Free Software Foundation, either version 2 of the License,
- or (at your option) any later version.</p>
- <p>TestON is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.</p>
- <p>You should have received a copy of the GNU General Public
- License along with TestON. If not, see
- <http://www.gnu.org/licenses/>.</p>
- </p>
-</div><!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.core.testparser.TestParser-class.html" class="summary-name">TestParser</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.core'"><code class="variable-quote">'</code><code class="variable-string">TestON.core</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.testparser-pysrc.html b/TestON/Documentation/TestON_Document/TestON.core.testparser-pysrc.html
deleted file mode 100644
index d4d0c65..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.testparser-pysrc.html
+++ /dev/null
@@ -1,252 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.testparser</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module testparser
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.testparser-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.core.testparser-module.html">Module TestON.core.testparser</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 26-Dec-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">@author: Anil Kumar (anilkumar.s@paxterrasolutions.com)</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"> (at your option) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="TestParser"></a><div id="TestParser-def"><a name="L25"></a><tt class="py-lineno"> 25</tt> <a class="py-toggle" href="#" id="TestParser-toggle" onclick="return toggle('TestParser');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.core.testparser.TestParser-class.html">TestParser</a><tt class="py-op">:</tt> </tt>
-</div><div id="TestParser-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="TestParser-expanded"><a name="TestParser.__init__"></a><div id="TestParser.__init__-def"><a name="L26"></a><tt class="py-lineno"> 26</tt> <a class="py-toggle" href="#" id="TestParser.__init__-toggle" onclick="return toggle('TestParser.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.testparser.TestParser-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">testFile</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestParser.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestParser.__init__-expanded"><a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt class="py-name">testFileHandler</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">testFile</tt><tt class="py-op">,</tt> <tt class="py-string">'r'</tt><tt class="py-op">)</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IOError</tt><tt class="py-op">:</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"No such file "</tt><tt class="py-op">+</tt><tt class="py-name">testFile</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-0', 'exit', 'link-0');">exit</a></tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">testFileList</tt> <tt class="py-op">=</tt> <tt class="py-name">testFileHandler</tt><tt class="py-op">.</tt><tt class="py-name">readlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">testscript</tt> <tt class="py-op">=</tt> <tt class="py-name">testFileList</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">caseCode</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">caseBlock</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">statementsList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">statementsList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-comment">#initialSpaces = len(line) -len(line.lstrip())</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">index</tt> <tt class="py-op"><</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">testFileList</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">testFileList</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"^\s{8}|^\s{4}"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-name">testFileList</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-comment"># Skip multiline comments</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">'^(\'\'\')|^(\"\"\")'</tt><tt class="py-op">,</tt><tt class="py-name">testFileList</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-keyword">not</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">'^\s*(\'\'\')|^\s*(\"\"\")'</tt><tt class="py-op">,</tt><tt class="py-name">testFileList</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IndexError</tt><tt class="py-op">,</tt><tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">''</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-comment"># skip empty lines and single line comments</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-keyword">not</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">'#|^\s*$'</tt><tt class="py-op">,</tt><tt class="py-name">testFileList</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">statementsList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">testFileList</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-</div><a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> </tt>
-<a name="TestParser.case_code"></a><div id="TestParser.case_code-def"><a name="L57"></a><tt class="py-lineno"> 57</tt> <a class="py-toggle" href="#" id="TestParser.case_code-toggle" onclick="return toggle('TestParser.case_code');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.testparser.TestParser-class.html#case_code">case_code</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestParser.case_code-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestParser.case_code-expanded"><a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">statementsList</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">statementsList</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">index</tt> <tt class="py-op"><</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">statementsList</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-comment">#print statementsList[index]</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">'def\s+CASE(\d+)'</tt><tt class="py-op">,</tt><tt class="py-name">statementsList</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">caseBlock</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">m</tt><tt class="py-op">:</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-comment">#print m.group(1)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-keyword">not</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">'\s*def\s+CASE(\d+)'</tt><tt class="py-op">,</tt><tt class="py-name">statementsList</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">caseBlock</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">statementsList</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">index</tt> <tt class="py-op"><</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">statementsList</tt><tt class="py-op">)</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IndexError</tt><tt class="py-op">,</tt><tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-comment">#print 'IndexError'</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">''</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">caseCode</tt> <tt class="py-op">[</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">caseBlock</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-comment">#print "Case CODE "+self.caseCode [str(m.group(1))]</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">caseCode</tt> </tt>
-</div><a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> </tt>
-<a name="TestParser.step_code"></a><div id="TestParser.step_code-def"><a name="L83"></a><tt class="py-lineno"> 83</tt> <a class="py-toggle" href="#" id="TestParser.step_code-toggle" onclick="return toggle('TestParser.step_code');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.testparser.TestParser-class.html#step_code">step_code</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">caseStatements</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestParser.step_code-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestParser.step_code-expanded"><a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt id="link-1" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1', 'step', 'link-1');">step</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">stepCode</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">step_flag</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">index</tt> <tt class="py-op"><</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">caseStatements</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">'main\.step'</tt><tt class="py-op">,</tt><tt class="py-name">caseStatements</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">stepBlock</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">m</tt><tt class="py-op">:</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">step_flag</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-2" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-2', 'step', 'link-1');">step</a></tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt> <tt class="py-op">:</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">block</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">i</tt> <tt class="py-op"><</tt> <tt class="py-name">index</tt> <tt class="py-op">:</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">block</tt> <tt class="py-op">+=</tt> <tt class="py-name">caseStatements</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">stepCode</tt><tt class="py-op">[</tt><tt id="link-3" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-3', 'step', 'link-1');">step</a></tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">block</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt id="link-4" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-4', 'step', 'link-1');">step</a></tt> <tt class="py-op">=</tt> <tt id="link-5" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-5', 'step', 'link-1');">step</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">stepBlock</tt> <tt class="py-op">=</tt> <tt class="py-name">stepBlock</tt> <tt class="py-op">+</tt> <tt class="py-name">caseStatements</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-keyword">not</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">'main\.step'</tt><tt class="py-op">,</tt><tt class="py-name">caseStatements</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">stepBlock</tt> <tt class="py-op">=</tt> <tt class="py-name">stepBlock</tt> <tt class="py-op">+</tt> <tt class="py-name">caseStatements</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">index</tt> <tt class="py-op"><</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">caseStatements</tt><tt class="py-op">)</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IndexError</tt><tt class="py-op">,</tt><tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-comment">#print 'IndexError'</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">''</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">stepCode</tt><tt class="py-op">[</tt><tt id="link-6" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-6', 'step', 'link-1');">step</a></tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">stepBlock</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt id="link-7" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-7', 'step', 'link-1');">step</a></tt> <tt class="py-op">=</tt> <tt id="link-8" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-8', 'step', 'link-1');">step</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">index</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-comment"># If there is no step defined !!</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">step_flag</tt> <tt class="py-op">:</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">stepCode</tt><tt class="py-op">[</tt><tt id="link-9" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-9', 'step', 'link-1');">step</a></tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">caseStatements</tt><tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">stepCode</tt> </tt>
-</div><a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> </tt>
-<a name="TestParser.getStepCode"></a><div id="TestParser.getStepCode-def"><a name="L122"></a><tt class="py-lineno">122</tt> <a class="py-toggle" href="#" id="TestParser.getStepCode-toggle" onclick="return toggle('TestParser.getStepCode');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.testparser.TestParser-class.html#getStepCode">getStepCode</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="TestParser.getStepCode-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="TestParser.getStepCode-expanded"><a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">case_step_code</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">case_block</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Method TestON.core.testparser.TestParser.case_code()=TestON.core.testparser.TestParser-class.html#case_code"><a title="TestON.core.testparser.TestParser.case_code" class="py-name" href="#" onclick="return doclink('link-10', 'case_code', 'link-10');">case_code</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-11" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-11', 'case', 'link-11');">case</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">case_block</tt> <tt class="py-op">:</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">case_step_code</tt><tt class="py-op">[</tt><tt id="link-12" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-12', 'case', 'link-11');">case</a></tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">step_block</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.core.testparser.TestParser.step_code()=TestON.core.testparser.TestParser-class.html#step_code"><a title="TestON.core.testparser.TestParser.step_code" class="py-name" href="#" onclick="return doclink('link-13', 'step_code', 'link-13');">step_code</a></tt><tt class="py-op">(</tt><tt class="py-name">case_block</tt><tt class="py-op">[</tt><tt id="link-14" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-14', 'case', 'link-11');">case</a></tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-15" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-15', 'step', 'link-1');">step</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">step_block</tt> <tt class="py-op">:</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">case_step_code</tt><tt class="py-op">[</tt><tt id="link-16" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-16', 'case', 'link-11');">case</a></tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt id="link-17" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-17', 'step', 'link-1');">step</a></tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">step_block</tt><tt class="py-op">[</tt><tt id="link-18" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-18', 'step', 'link-1');">step</a></tt><tt class="py-op">]</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">case_step_code</tt> </tt>
-</div></div><a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.testparser.TestParser-class.html b/TestON/Documentation/TestON_Document/TestON.core.testparser.TestParser-class.html
deleted file mode 100644
index 641f86a..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.testparser.TestParser-class.html
+++ /dev/null
@@ -1,200 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.testparser.TestParser</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- <a href="TestON.core.testparser-module.html">Module testparser</a> ::
- Class TestParser
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.testparser.TestParser-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class TestParser</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.testparser-pysrc.html#TestParser">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">testFile</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.testparser-pysrc.html#TestParser.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="case_code"></a><span class="summary-sig-name">case_code</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.testparser-pysrc.html#TestParser.case_code">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="step_code"></a><span class="summary-sig-name">step_code</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">caseStatements</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.testparser-pysrc.html#TestParser.step_code">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getStepCode"></a><span class="summary-sig-name">getStepCode</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.testparser-pysrc.html#TestParser.getStepCode">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.xmldict-module.html b/TestON/Documentation/TestON_Document/TestON.core.xmldict-module.html
deleted file mode 100644
index 3db7105..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.xmldict-module.html
+++ /dev/null
@@ -1,478 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.xmldict</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module xmldict
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.xmldict-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module xmldict</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.xmldict-pysrc.html">source code</a></span></p>
-<p>Created on 03-Dec-2012</p>
-
-<hr />
-<div class="fields"> <p><strong>Author:</strong>
- Anil Kumar (anilkumar.s@paxterrasolutions.com)
- <p>TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published
- by the Free Software Foundation, either version 2 of the License,
- or (at your option) any later version.</p>
- <p>TestON is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.</p>
- <p>You should have received a copy of the GNU General Public
- License along with TestON. If not, see
- <http://www.gnu.org/licenses/>.</p>
- </p>
-</div><!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Functions</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Functions"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="xml_to_dict"></a><span class="summary-sig-name">xml_to_dict</span>(<span class="summary-sig-arg">root_or_str</span>,
- <span class="summary-sig-arg">strict</span>=<span class="summary-sig-default">True</span>)</span><br />
- Converts `root_or_str` which can be parsed xml or a xml string to
- dict.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmldict-pysrc.html#xml_to_dict">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="dict_to_xml"></a><span class="summary-sig-name">dict_to_xml</span>(<span class="summary-sig-arg">dict_xml</span>)</span><br />
- Converts `dict_xml` which is a python dict to corresponding xml.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmldict-pysrc.html#dict_to_xml">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="_to_xml"></a><span class="summary-sig-name">_to_xml</span>(<span class="summary-sig-arg">el</span>)</span><br />
- Converts `el` to its xml representation.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmldict-pysrc.html#_to_xml">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.xmldict-module.html#_extract_attrs" class="summary-sig-name" onclick="show_private();">_extract_attrs</a>(<span class="summary-sig-arg">els</span>)</span><br />
- Extracts attributes from dictionary `els`.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmldict-pysrc.html#_extract_attrs">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="_dict_to_xml"></a><span class="summary-sig-name">_dict_to_xml</span>(<span class="summary-sig-arg">els</span>)</span><br />
- Converts `els` which is a python dict to corresponding xml.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmldict-pysrc.html#_dict_to_xml">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.xmldict-module.html#_is_xml_el_dict" class="summary-sig-name" onclick="show_private();">_is_xml_el_dict</a>(<span class="summary-sig-arg">el</span>)</span><br />
- Returns true if `el` is supposed to be a dict.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmldict-pysrc.html#_is_xml_el_dict">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.core.xmldict-module.html#_is_xml_el_list" class="summary-sig-name" onclick="show_private();">_is_xml_el_list</a>(<span class="summary-sig-arg">el</span>)</span><br />
- Returns true if `el` is supposed to be a list.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmldict-pysrc.html#_is_xml_el_list">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="_str_to_datetime"></a><span class="summary-sig-name">_str_to_datetime</span>(<span class="summary-sig-arg">date_str</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmldict-pysrc.html#_str_to_datetime">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="_str_to_boolean"></a><span class="summary-sig-name">_str_to_boolean</span>(<span class="summary-sig-arg">bool_str</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmldict-pysrc.html#_str_to_boolean">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="_from_xml"></a><span class="summary-sig-name">_from_xml</span>(<span class="summary-sig-arg">el</span>,
- <span class="summary-sig-arg">strict</span>)</span><br />
- Extracts value of xml element element `el`.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmldict-pysrc.html#_from_xml">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="_val_and_maybe_convert"></a><span class="summary-sig-name">_val_and_maybe_convert</span>(<span class="summary-sig-arg">el</span>)</span><br />
- Converts `el.text` if `el` has attribute `type` with valid value.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmldict-pysrc.html#_val_and_maybe_convert">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="_list_from_xml"></a><span class="summary-sig-name">_list_from_xml</span>(<span class="summary-sig-arg">els</span>,
- <span class="summary-sig-arg">strict</span>)</span><br />
- Converts xml elements list `el_list` to a python list.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmldict-pysrc.html#_list_from_xml">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="_dict_from_xml"></a><span class="summary-sig-name">_dict_from_xml</span>(<span class="summary-sig-arg">els</span>,
- <span class="summary-sig-arg">strict</span>)</span><br />
- Converts xml doc with root `root` to a python dict.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmldict-pysrc.html#_dict_from_xml">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.core'"><code class="variable-quote">'</code><code class="variable-string">TestON.core</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTION DETAILS ==================== -->
-<a name="section-FunctionDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Function Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-FunctionDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="_extract_attrs"></a>
-<div class="private">
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">_extract_attrs</span>(<span class="sig-arg">els</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.xmldict-pysrc.html#_extract_attrs">source code</a></span>
- </td>
- </tr></table>
-
- <p>Extracts attributes from dictionary `els`. Attributes are keys which
- start with '@'</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="_is_xml_el_dict"></a>
-<div class="private">
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">_is_xml_el_dict</span>(<span class="sig-arg">el</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.xmldict-pysrc.html#_is_xml_el_dict">source code</a></span>
- </td>
- </tr></table>
-
- <p>Returns true if `el` is supposed to be a dict. This function makes
- sense only in the context of making dicts out of xml.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="_is_xml_el_list"></a>
-<div class="private">
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">_is_xml_el_list</span>(<span class="sig-arg">el</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.core.xmldict-pysrc.html#_is_xml_el_list">source code</a></span>
- </td>
- </tr></table>
-
- <p>Returns true if `el` is supposed to be a list. This function makes
- sense only in the context of making lists out of xml.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.xmldict-pysrc.html b/TestON/Documentation/TestON_Document/TestON.core.xmldict-pysrc.html
deleted file mode 100644
index 1872833..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.xmldict-pysrc.html
+++ /dev/null
@@ -1,313 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.xmldict</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module xmldict
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.xmldict-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.core.xmldict-module.html">Module TestON.core.xmldict</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">Created on 03-Dec-2012</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring">@author: Anil Kumar (anilkumar.s@paxterrasolutions.com)</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> (at your option) any later version.</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-string">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-string"> xmldict</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-string"> ~~~~~~~~~~~~~~~~~~~~~~~~~</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-string"> Convert xml to python dictionaries.</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-string">"""</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">datetime</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="xml_to_dict"></a><div id="xml_to_dict-def"><a name="L29"></a><tt class="py-lineno"> 29</tt> <a class="py-toggle" href="#" id="xml_to_dict-toggle" onclick="return toggle('xml_to_dict');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmldict-module.html#xml_to_dict">xml_to_dict</a><tt class="py-op">(</tt><tt class="py-param">root_or_str</tt><tt class="py-op">,</tt> <tt class="py-param">strict</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="xml_to_dict-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="xml_to_dict-expanded"><a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-docstring"> Converts `root_or_str` which can be parsed xml or a xml string to dict.</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">root</tt> <tt class="py-op">=</tt> <tt class="py-name">root_or_str</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">root</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">xml</tt><tt class="py-op">.</tt><tt class="py-name">etree</tt><tt class="py-op">.</tt><tt class="py-name">cElementTree</tt> <tt class="py-keyword">as</tt> <tt class="py-name">ElementTree</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">root</tt> <tt class="py-op">=</tt> <tt class="py-name">ElementTree</tt><tt class="py-op">.</tt><tt class="py-name">XML</tt><tt class="py-op">(</tt><tt class="py-name">root_or_str</tt><tt class="py-op">)</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">{</tt><tt class="py-name">root</tt><tt class="py-op">.</tt><tt class="py-name">tag</tt><tt class="py-op">:</tt> <tt id="link-0" class="py-name" targets="Function TestON.core.xmldict._from_xml()=TestON.core.xmldict-module.html#_from_xml"><a title="TestON.core.xmldict._from_xml" class="py-name" href="#" onclick="return doclink('link-0', '_from_xml', 'link-0');">_from_xml</a></tt><tt class="py-op">(</tt><tt class="py-name">root</tt><tt class="py-op">,</tt> <tt class="py-name">strict</tt><tt class="py-op">)</tt><tt class="py-op">}</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> </tt>
-<a name="dict_to_xml"></a><div id="dict_to_xml-def"><a name="L43"></a><tt class="py-lineno"> 43</tt> <a class="py-toggle" href="#" id="dict_to_xml-toggle" onclick="return toggle('dict_to_xml');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmldict-module.html#dict_to_xml">dict_to_xml</a><tt class="py-op">(</tt><tt class="py-param">dict_xml</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="dict_to_xml-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="dict_to_xml-expanded"><a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> Converts `dict_xml` which is a python dict to corresponding xml.</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-1" class="py-name" targets="Function TestON.core.xmldict._to_xml()=TestON.core.xmldict-module.html#_to_xml"><a title="TestON.core.xmldict._to_xml" class="py-name" href="#" onclick="return doclink('link-1', '_to_xml', 'link-1');">_to_xml</a></tt><tt class="py-op">(</tt><tt class="py-name">dict_xml</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> </tt>
-<a name="_to_xml"></a><div id="_to_xml-def"><a name="L49"></a><tt class="py-lineno"> 49</tt> <a class="py-toggle" href="#" id="_to_xml-toggle" onclick="return toggle('_to_xml');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmldict-module.html#_to_xml">_to_xml</a><tt class="py-op">(</tt><tt class="py-param">el</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_to_xml-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_to_xml-expanded"><a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"><tt class="py-docstring"> Converts `el` to its xml representation.</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">el</tt><tt class="py-op">,</tt> <tt class="py-name">dict</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt id="link-2" class="py-name" targets="Function TestON.core.xmldict._dict_to_xml()=TestON.core.xmldict-module.html#_dict_to_xml"><a title="TestON.core.xmldict._dict_to_xml" class="py-name" href="#" onclick="return doclink('link-2', '_dict_to_xml', 'link-2');">_dict_to_xml</a></tt><tt class="py-op">(</tt><tt class="py-name">el</tt><tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">el</tt><tt class="py-op">,</tt> <tt class="py-name">bool</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">el</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-name">el</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">val</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-string">'null'</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">val</tt> </tt>
-</div><a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> </tt>
-<a name="_extract_attrs"></a><div id="_extract_attrs-def"><a name="L63"></a><tt class="py-lineno"> 63</tt> <a class="py-toggle" href="#" id="_extract_attrs-toggle" onclick="return toggle('_extract_attrs');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmldict-module.html#_extract_attrs">_extract_attrs</a><tt class="py-op">(</tt><tt class="py-param">els</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_extract_attrs-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_extract_attrs-expanded"><a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"><tt class="py-docstring"> Extracts attributes from dictionary `els`. Attributes are keys which start</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"><tt class="py-docstring"> with '@'</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">els</tt><tt class="py-op">,</tt> <tt class="py-name">dict</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">''</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">''</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-string">' %s="%s"'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">value</tt><tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt><tt class="py-op">,</tt> <tt class="py-name">value</tt> <tt class="py-keyword">in</tt> <tt class="py-name">els</tt><tt class="py-op">.</tt><tt class="py-name">iteritems</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">key</tt><tt class="py-op">.</tt><tt class="py-name">startswith</tt><tt class="py-op">(</tt><tt class="py-string">'@'</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> </tt>
-<a name="_dict_to_xml"></a><div id="_dict_to_xml-def"><a name="L73"></a><tt class="py-lineno"> 73</tt> <a class="py-toggle" href="#" id="_dict_to_xml-toggle" onclick="return toggle('_dict_to_xml');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmldict-module.html#_dict_to_xml">_dict_to_xml</a><tt class="py-op">(</tt><tt class="py-param">els</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_dict_to_xml-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_dict_to_xml-expanded"><a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"><tt class="py-docstring"> Converts `els` which is a python dict to corresponding xml.</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">process_content</tt><tt class="py-op">(</tt><tt class="py-param">tag</tt><tt class="py-op">,</tt> <tt class="py-param">content</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">attrs</tt> <tt class="py-op">=</tt> <tt id="link-3" class="py-name" targets="Function TestON.core.xmldict._extract_attrs()=TestON.core.xmldict-module.html#_extract_attrs"><a title="TestON.core.xmldict._extract_attrs" class="py-name" href="#" onclick="return doclink('link-3', '_extract_attrs', 'link-3');">_extract_attrs</a></tt><tt class="py-op">(</tt><tt class="py-name">content</tt><tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">text</tt> <tt class="py-op">=</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">content</tt><tt class="py-op">,</tt> <tt class="py-name">dict</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">content</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-string">'#text'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-string">''</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'<%s%s>%s%s</%s>'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">tag</tt><tt class="py-op">,</tt> <tt class="py-name">attrs</tt><tt class="py-op">,</tt> <tt id="link-4" class="py-name"><a title="TestON.core.xmldict._to_xml" class="py-name" href="#" onclick="return doclink('link-4', '_to_xml', 'link-1');">_to_xml</a></tt><tt class="py-op">(</tt><tt class="py-name">content</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">text</tt><tt class="py-op">,</tt> <tt class="py-name">tag</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">tags</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">tag</tt><tt class="py-op">,</tt> <tt class="py-name">content</tt> <tt class="py-keyword">in</tt> <tt class="py-name">els</tt><tt class="py-op">.</tt><tt class="py-name">iteritems</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-comment"># Text and attributes</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tag</tt><tt class="py-op">.</tt><tt class="py-name">startswith</tt><tt class="py-op">(</tt><tt class="py-string">'@'</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-name">tag</tt> <tt class="py-op">==</tt> <tt class="py-string">'#text'</tt><tt class="py-op">:</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">content</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">el</tt> <tt class="py-keyword">in</tt> <tt class="py-name">content</tt><tt class="py-op">:</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">tags</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">process_content</tt><tt class="py-op">(</tt><tt class="py-name">tag</tt><tt class="py-op">,</tt> <tt class="py-name">el</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">content</tt><tt class="py-op">,</tt> <tt class="py-name">dict</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">tags</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">process_content</tt><tt class="py-op">(</tt><tt class="py-name">tag</tt><tt class="py-op">,</tt> <tt class="py-name">content</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">tags</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-string">'<%s>%s</%s>'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">tag</tt><tt class="py-op">,</tt> <tt id="link-5" class="py-name"><a title="TestON.core.xmldict._to_xml" class="py-name" href="#" onclick="return doclink('link-5', '_to_xml', 'link-1');">_to_xml</a></tt><tt class="py-op">(</tt><tt class="py-name">content</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">tag</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">''</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">tags</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> </tt>
-<a name="_is_xml_el_dict"></a><div id="_is_xml_el_dict-def"><a name="L96"></a><tt class="py-lineno"> 96</tt> <a class="py-toggle" href="#" id="_is_xml_el_dict-toggle" onclick="return toggle('_is_xml_el_dict');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmldict-module.html#_is_xml_el_dict">_is_xml_el_dict</a><tt class="py-op">(</tt><tt class="py-param">el</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_is_xml_el_dict-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_is_xml_el_dict-expanded"><a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"><tt class="py-docstring"> Returns true if `el` is supposed to be a dict.</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"><tt class="py-docstring"> This function makes sense only in the context of making dicts out of xml.</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">el</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt> <tt class="py-keyword">or</tt> <tt class="py-name">el</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">tag</tt> <tt class="py-op">!=</tt> <tt class="py-name">el</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">tag</tt><tt class="py-op">:</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">True</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> </tt>
-<a name="_is_xml_el_list"></a><div id="_is_xml_el_list-def"><a name="L105"></a><tt class="py-lineno">105</tt> <a class="py-toggle" href="#" id="_is_xml_el_list-toggle" onclick="return toggle('_is_xml_el_list');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmldict-module.html#_is_xml_el_list">_is_xml_el_list</a><tt class="py-op">(</tt><tt class="py-param">el</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_is_xml_el_list-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_is_xml_el_list-expanded"><a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"><tt class="py-docstring"> Returns true if `el` is supposed to be a list.</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"><tt class="py-docstring"> This function makes sense only in the context of making lists out of xml.</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">el</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">1</tt> <tt class="py-keyword">and</tt> <tt class="py-name">el</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">tag</tt> <tt class="py-op">==</tt> <tt class="py-name">el</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">tag</tt><tt class="py-op">:</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">True</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> </tt>
-<a name="_str_to_datetime"></a><div id="_str_to_datetime-def"><a name="L114"></a><tt class="py-lineno">114</tt> <a class="py-toggle" href="#" id="_str_to_datetime-toggle" onclick="return toggle('_str_to_datetime');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmldict-module.html#_str_to_datetime">_str_to_datetime</a><tt class="py-op">(</tt><tt class="py-param">date_str</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_str_to_datetime-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_str_to_datetime-expanded"><a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-name">datetime</tt><tt class="py-op">.</tt><tt class="py-name">datetime</tt><tt class="py-op">.</tt><tt class="py-name">strptime</tt><tt class="py-op">(</tt><tt class="py-name">date_str</tt><tt class="py-op">,</tt> <tt class="py-string">"%Y-%m-%dT%H:%M:%SZ"</tt><tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">ValueError</tt><tt class="py-op">:</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-name">date_str</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">val</tt> </tt>
-</div><a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> </tt>
-<a name="_str_to_boolean"></a><div id="_str_to_boolean-def"><a name="L121"></a><tt class="py-lineno">121</tt> <a class="py-toggle" href="#" id="_str_to_boolean-toggle" onclick="return toggle('_str_to_boolean');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmldict-module.html#_str_to_boolean">_str_to_boolean</a><tt class="py-op">(</tt><tt class="py-param">bool_str</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_str_to_boolean-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_str_to_boolean-expanded"><a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">bool_str</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-string">'false'</tt> <tt class="py-keyword">and</tt> <tt class="py-name">bool</tt><tt class="py-op">(</tt><tt class="py-name">bool_str</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">True</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> </tt>
-<a name="_from_xml"></a><div id="_from_xml-def"><a name="L126"></a><tt class="py-lineno">126</tt> <a class="py-toggle" href="#" id="_from_xml-toggle" onclick="return toggle('_from_xml');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmldict-module.html#_from_xml">_from_xml</a><tt class="py-op">(</tt><tt class="py-param">el</tt><tt class="py-op">,</tt> <tt class="py-param">strict</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_from_xml-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_from_xml-expanded"><a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"><tt class="py-docstring"> Extracts value of xml element element `el`.</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-comment"># Parent node.</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">el</tt><tt class="py-op">:</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-6" class="py-name" targets="Function TestON.core.xmldict._is_xml_el_dict()=TestON.core.xmldict-module.html#_is_xml_el_dict"><a title="TestON.core.xmldict._is_xml_el_dict" class="py-name" href="#" onclick="return doclink('link-6', '_is_xml_el_dict', 'link-6');">_is_xml_el_dict</a></tt><tt class="py-op">(</tt><tt class="py-name">el</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt id="link-7" class="py-name" targets="Function TestON.core.xmldict._dict_from_xml()=TestON.core.xmldict-module.html#_dict_from_xml"><a title="TestON.core.xmldict._dict_from_xml" class="py-name" href="#" onclick="return doclink('link-7', '_dict_from_xml', 'link-7');">_dict_from_xml</a></tt><tt class="py-op">(</tt><tt class="py-name">el</tt><tt class="py-op">,</tt> <tt class="py-name">strict</tt><tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt id="link-8" class="py-name" targets="Function TestON.core.xmldict._is_xml_el_list()=TestON.core.xmldict-module.html#_is_xml_el_list"><a title="TestON.core.xmldict._is_xml_el_list" class="py-name" href="#" onclick="return doclink('link-8', '_is_xml_el_list', 'link-8');">_is_xml_el_list</a></tt><tt class="py-op">(</tt><tt class="py-name">el</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt id="link-9" class="py-name" targets="Function TestON.core.xmldict._list_from_xml()=TestON.core.xmldict-module.html#_list_from_xml"><a title="TestON.core.xmldict._list_from_xml" class="py-name" href="#" onclick="return doclink('link-9', '_list_from_xml', 'link-9');">_list_from_xml</a></tt><tt class="py-op">(</tt><tt class="py-name">el</tt><tt class="py-op">,</tt> <tt class="py-name">strict</tt><tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-comment"># Simple node.</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">attribs</tt> <tt class="py-op">=</tt> <tt class="py-name">el</tt><tt class="py-op">.</tt><tt class="py-name">items</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-comment"># An element with attributes.</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">attribs</tt> <tt class="py-keyword">and</tt> <tt class="py-name">strict</tt><tt class="py-op">:</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-name">dict</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-string">'@%s'</tt> <tt class="py-op">%</tt> <tt class="py-name">k</tt><tt class="py-op">,</tt> <tt class="py-name">v</tt><tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">k</tt><tt class="py-op">,</tt> <tt class="py-name">v</tt> <tt class="py-keyword">in</tt> <tt class="py-name">dict</tt><tt class="py-op">(</tt><tt class="py-name">attribs</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">iteritems</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">el</tt><tt class="py-op">.</tt><tt class="py-name">text</tt><tt class="py-op">:</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">converted</tt> <tt class="py-op">=</tt> <tt id="link-10" class="py-name" targets="Function TestON.core.xmldict._val_and_maybe_convert()=TestON.core.xmldict-module.html#_val_and_maybe_convert"><a title="TestON.core.xmldict._val_and_maybe_convert" class="py-name" href="#" onclick="return doclink('link-10', '_val_and_maybe_convert', 'link-10');">_val_and_maybe_convert</a></tt><tt class="py-op">(</tt><tt class="py-name">el</tt><tt class="py-op">)</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">val</tt><tt class="py-op">[</tt><tt class="py-string">'#text'</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">el</tt><tt class="py-op">.</tt><tt class="py-name">text</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">converted</tt> <tt class="py-op">!=</tt> <tt class="py-name">el</tt><tt class="py-op">.</tt><tt class="py-name">text</tt><tt class="py-op">:</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">val</tt><tt class="py-op">[</tt><tt class="py-string">'#value'</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">converted</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">el</tt><tt class="py-op">.</tt><tt class="py-name">text</tt><tt class="py-op">:</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-comment"># An element with no subelements but text.</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt id="link-11" class="py-name"><a title="TestON.core.xmldict._val_and_maybe_convert" class="py-name" href="#" onclick="return doclink('link-11', '_val_and_maybe_convert', 'link-10');">_val_and_maybe_convert</a></tt><tt class="py-op">(</tt><tt class="py-name">el</tt><tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">attribs</tt><tt class="py-op">:</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-name">dict</tt><tt class="py-op">(</tt><tt class="py-name">attribs</tt><tt class="py-op">)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">val</tt> </tt>
-</div><a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> </tt>
-<a name="_val_and_maybe_convert"></a><div id="_val_and_maybe_convert-def"><a name="L155"></a><tt class="py-lineno">155</tt> <a class="py-toggle" href="#" id="_val_and_maybe_convert-toggle" onclick="return toggle('_val_and_maybe_convert');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmldict-module.html#_val_and_maybe_convert">_val_and_maybe_convert</a><tt class="py-op">(</tt><tt class="py-param">el</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_val_and_maybe_convert-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_val_and_maybe_convert-expanded"><a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"><tt class="py-docstring"> Converts `el.text` if `el` has attribute `type` with valid value.</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">text</tt> <tt class="py-op">=</tt> <tt class="py-name">el</tt><tt class="py-op">.</tt><tt class="py-name">text</tt><tt class="py-op">.</tt><tt class="py-name">strip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">data_type</tt> <tt class="py-op">=</tt> <tt class="py-name">el</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-string">'type'</tt><tt class="py-op">)</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-name">convertor</tt> <tt class="py-op">=</tt> <tt id="link-12" class="py-name"><a title="TestON.core.xmldict._val_and_maybe_convert" class="py-name" href="#" onclick="return doclink('link-12', '_val_and_maybe_convert', 'link-10');">_val_and_maybe_convert</a></tt><tt class="py-op">.</tt><tt class="py-name">convertors</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-name">data_type</tt><tt class="py-op">)</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">convertor</tt><tt class="py-op">:</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">convertor</tt><tt class="py-op">(</tt><tt class="py-name">text</tt><tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">text</tt> </tt>
-</div><a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"><tt id="link-13" class="py-name"><a title="TestON.core.xmldict._val_and_maybe_convert" class="py-name" href="#" onclick="return doclink('link-13', '_val_and_maybe_convert', 'link-10');">_val_and_maybe_convert</a></tt><tt class="py-op">.</tt><tt class="py-name">convertors</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-string">'boolean'</tt><tt class="py-op">:</tt> <tt id="link-14" class="py-name" targets="Function TestON.core.xmldict._str_to_boolean()=TestON.core.xmldict-module.html#_str_to_boolean"><a title="TestON.core.xmldict._str_to_boolean" class="py-name" href="#" onclick="return doclink('link-14', '_str_to_boolean', 'link-14');">_str_to_boolean</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-string">'datetime'</tt><tt class="py-op">:</tt> <tt id="link-15" class="py-name" targets="Function TestON.core.xmldict._str_to_datetime()=TestON.core.xmldict-module.html#_str_to_datetime"><a title="TestON.core.xmldict._str_to_datetime" class="py-name" href="#" onclick="return doclink('link-15', '_str_to_datetime', 'link-15');">_str_to_datetime</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-string">'integer'</tt><tt class="py-op">:</tt> <tt class="py-name">int</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"><tt class="py-op">}</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> </tt>
-<a name="_list_from_xml"></a><div id="_list_from_xml-def"><a name="L172"></a><tt class="py-lineno">172</tt> <a class="py-toggle" href="#" id="_list_from_xml-toggle" onclick="return toggle('_list_from_xml');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmldict-module.html#_list_from_xml">_list_from_xml</a><tt class="py-op">(</tt><tt class="py-param">els</tt><tt class="py-op">,</tt> <tt class="py-param">strict</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_list_from_xml-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_list_from_xml-expanded"><a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"><tt class="py-docstring"> Converts xml elements list `el_list` to a python list.</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">el</tt> <tt class="py-keyword">in</tt> <tt class="py-name">els</tt><tt class="py-op">:</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">tag</tt> <tt class="py-op">=</tt> <tt class="py-name">el</tt><tt class="py-op">.</tt><tt class="py-name">attrib</tt><tt class="py-op">[</tt><tt class="py-string">"name"</tt><tt class="py-op">]</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">temp</tt><tt class="py-op">[</tt><tt class="py-name">tag</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt id="link-16" class="py-name"><a title="TestON.core.xmldict._from_xml" class="py-name" href="#" onclick="return doclink('link-16', '_from_xml', 'link-0');">_from_xml</a></tt><tt class="py-op">(</tt><tt class="py-name">el</tt><tt class="py-op">,</tt> <tt class="py-name">strict</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">temp</tt> </tt>
-</div><a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> </tt>
-<a name="_dict_from_xml"></a><div id="_dict_from_xml-def"><a name="L183"></a><tt class="py-lineno">183</tt> <a class="py-toggle" href="#" id="_dict_from_xml-toggle" onclick="return toggle('_dict_from_xml');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmldict-module.html#_dict_from_xml">_dict_from_xml</a><tt class="py-op">(</tt><tt class="py-param">els</tt><tt class="py-op">,</tt> <tt class="py-param">strict</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_dict_from_xml-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_dict_from_xml-expanded"><a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"><tt class="py-docstring"> Converts xml doc with root `root` to a python dict.</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-comment"># An element with subelements.</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-name">res</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">el</tt> <tt class="py-keyword">in</tt> <tt class="py-name">els</tt><tt class="py-op">:</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">res</tt><tt class="py-op">[</tt><tt class="py-name">el</tt><tt class="py-op">.</tt><tt class="py-name">tag</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-17" class="py-name"><a title="TestON.core.xmldict._from_xml" class="py-name" href="#" onclick="return doclink('link-17', '_from_xml', 'link-0');">_from_xml</a></tt><tt class="py-op">(</tt><tt class="py-name">el</tt><tt class="py-op">,</tt> <tt class="py-name">strict</tt><tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">res</tt> </tt>
-</div><a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.xmlparser-module.html b/TestON/Documentation/TestON_Document/TestON.core.xmlparser-module.html
deleted file mode 100644
index b746cab..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.xmlparser-module.html
+++ /dev/null
@@ -1,182 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.xmlparser</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module xmlparser
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.xmlparser-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module xmlparser</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.xmlparser-pysrc.html">source code</a></span></p>
-<p>Created on 07-Jan-2013</p>
-
-<hr />
-<div class="fields"> <p><strong>Author:</strong>
- Raghav Kashyap(raghavkashyap@paxterrasolutions.com)
- <p>TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published
- by the Free Software Foundation, either version 2 of the License,
- or (at your option) any later version.</p>
- <p>TestON is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.</p>
- <p>You should have received a copy of the GNU General Public
- License along with TestON. If not, see
- <http://www.gnu.org/licenses/>.</p>
- </p>
-</div><!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.core.xmlparser.xmlparser-class.html" class="summary-name">xmlparser</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.core'"><code class="variable-quote">'</code><code class="variable-string">TestON.core</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.xmlparser-pysrc.html b/TestON/Documentation/TestON_Document/TestON.core.xmlparser-pysrc.html
deleted file mode 100644
index b0bbe1d..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.xmlparser-pysrc.html
+++ /dev/null
@@ -1,196 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.xmlparser</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- Module xmlparser
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.xmlparser-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.core.xmlparser-module.html">Module TestON.core.xmlparser</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 07-Jan-2013</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">@author: Raghav Kashyap(raghavkashyap@paxterrasolutions.com)</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-docstring"> (at your option) any later version.</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt id="link-0" class="py-name" targets="Module TestON.core.xmldict=TestON.core.xmldict-module.html"><a title="TestON.core.xmldict" class="py-name" href="#" onclick="return doclink('link-0', 'xmldict', 'link-0');">xmldict</a></tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> </tt>
-<a name="xmlparser"></a><div id="xmlparser-def"><a name="L26"></a><tt class="py-lineno">26</tt> <a class="py-toggle" href="#" id="xmlparser-toggle" onclick="return toggle('xmlparser');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.core.xmlparser.xmlparser-class.html">xmlparser</a> <tt class="py-op">:</tt> </tt>
-</div><div id="xmlparser-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="xmlparser-expanded"><a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> </tt>
-<a name="xmlparser.__init__"></a><div id="xmlparser.__init__-def"><a name="L28"></a><tt class="py-lineno">28</tt> <a class="py-toggle" href="#" id="xmlparser.__init__-toggle" onclick="return toggle('xmlparser.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmlparser.xmlparser-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="xmlparser.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="xmlparser.__init__-expanded"><a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-1', 'default', 'link-1');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> </tt>
-<a name="xmlparser.parse"></a><div id="xmlparser.parse-def"><a name="L31"></a><tt class="py-lineno">31</tt> <a class="py-toggle" href="#" id="xmlparser.parse-toggle" onclick="return toggle('xmlparser.parse');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmlparser.xmlparser-class.html#parse">parse</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">fileName</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="xmlparser.parse-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="xmlparser.parse-expanded"><a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"><tt class="py-docstring"> This will parse the params or topo or cfg file and return content in the file as Dictionary</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fileName</tt> <tt class="py-op">=</tt> <tt class="py-name">fileName</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> <tt class="py-name">matchFileName</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt><tt class="py-string">r'(.*)\.(params|topo|cfg)'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fileName</tt><tt class="py-op">,</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">M</tt> <tt class="py-op">|</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">I</tt><tt class="py-op">)</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">matchFileName</tt><tt class="py-op">:</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-name">xml</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">fileName</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">read</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-name">parsedInfo</tt> <tt class="py-op">=</tt> <tt id="link-2" class="py-name"><a title="TestON.core.xmldict" class="py-name" href="#" onclick="return doclink('link-2', 'xmldict', 'link-0');">xmldict</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Function TestON.core.xmldict.xml_to_dict()=TestON.core.xmldict-module.html#xml_to_dict"><a title="TestON.core.xmldict.xml_to_dict" class="py-name" href="#" onclick="return doclink('link-3', 'xml_to_dict', 'link-3');">xml_to_dict</a></tt><tt class="py-op">(</tt><tt class="py-name">xml</tt><tt class="py-op">)</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">parsedInfo</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"There is no such file to parse "</tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"file name is not correct"</tt> </tt>
-</div><a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> </tt>
-<a name="xmlparser.parseParams"></a><div id="xmlparser.parseParams-def"><a name="L47"></a><tt class="py-lineno">47</tt> <a class="py-toggle" href="#" id="xmlparser.parseParams-toggle" onclick="return toggle('xmlparser.parseParams');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmlparser.xmlparser-class.html#parseParams">parseParams</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">paramsPath</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="xmlparser.parseParams-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="xmlparser.parseParams-expanded"><a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"><tt class="py-docstring"> It will take the params file path and will return the params dictionary</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-name">paramsPath</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"\."</tt><tt class="py-op">,</tt><tt class="py-string">"/"</tt><tt class="py-op">,</tt><tt class="py-name">paramsPath</tt><tt class="py-op">)</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-name">paramsPath</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"tests|examples"</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">,</tt><tt class="py-name">paramsPath</tt><tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">params</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Function TestON.core.ast.parse()=TestON.core.ast-module.html#parse,Method TestON.core.iniparser.iniparser.parse()=TestON.core.iniparser.iniparser-class.html#parse,Method TestON.core.xmlparser.xmlparser.parse()=TestON.core.xmlparser.xmlparser-class.html#parse"><a title="TestON.core.ast.parse
-TestON.core.iniparser.iniparser.parse
-TestON.core.xmlparser.xmlparser.parse" class="py-name" href="#" onclick="return doclink('link-4', 'parse', 'link-4');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Variable TestON.bin.cli.tests_path=TestON.bin.cli-module.html#tests_path,Variable TestON.core.teston.tests_path=TestON.core.teston-module.html#tests_path"><a title="TestON.bin.cli.tests_path
-TestON.core.teston.tests_path" class="py-name" href="#" onclick="return doclink('link-5', 'tests_path', 'link-5');">tests_path</a></tt><tt class="py-op">+</tt><tt class="py-name">paramsPath</tt><tt class="py-op">+</tt><tt class="py-string">".params"</tt><tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-name">paramsAsString</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">params</tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">eval</tt><tt class="py-op">(</tt><tt class="py-name">paramsAsString</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> </tt>
-<a name="xmlparser.parseTopology"></a><div id="xmlparser.parseTopology-def"><a name="L57"></a><tt class="py-lineno">57</tt> <a class="py-toggle" href="#" id="xmlparser.parseTopology-toggle" onclick="return toggle('xmlparser.parseTopology');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.core.xmlparser.xmlparser-class.html#parseTopology">parseTopology</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">topologyPath</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="xmlparser.parseTopology-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="xmlparser.parseTopology-expanded"><a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L59"></a><tt class="py-lineno">59</tt> <tt class="py-line"><tt class="py-docstring"> It will take topology file path and will return topology dictionary</tt> </tt>
-<a name="L60"></a><tt class="py-lineno">60</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L61"></a><tt class="py-lineno">61</tt> <tt class="py-line"> <tt class="py-name">topologyPath</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"\."</tt><tt class="py-op">,</tt><tt class="py-string">"/"</tt><tt class="py-op">,</tt><tt class="py-name">topologyPath</tt><tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno">62</tt> <tt class="py-line"> <tt class="py-name">topologyPath</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt><tt class="py-string">"tests|examples"</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">,</tt><tt class="py-name">topologyPath</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno">63</tt> <tt class="py-line"> <tt class="py-comment">#topology = self.parse(main.tests_path+"/"+topologyPath+".topo")</tt> </tt>
-<a name="L64"></a><tt class="py-lineno">64</tt> <tt class="py-line"> <tt id="link-6" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#topology,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topology"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-6', 'topology', 'link-6');">topology</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name"><a title="TestON.core.ast.parse
-TestON.core.iniparser.iniparser.parse
-TestON.core.xmlparser.xmlparser.parse" class="py-name" href="#" onclick="return doclink('link-7', 'parse', 'link-4');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.bin.cli.tests_path
-TestON.core.teston.tests_path" class="py-name" href="#" onclick="return doclink('link-8', 'tests_path', 'link-5');">tests_path</a></tt><tt class="py-op">+</tt><tt class="py-name">topologyPath</tt><tt class="py-op">+</tt><tt class="py-string">".topo"</tt><tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno">65</tt> <tt class="py-line"> <tt class="py-name">topoAsString</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-9', 'topology', 'link-6');">topology</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno">66</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">eval</tt><tt class="py-op">(</tt><tt class="py-name">topoAsString</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L67"></a><tt class="py-lineno">67</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.core.xmlparser.xmlparser-class.html b/TestON/Documentation/TestON_Document/TestON.core.xmlparser.xmlparser-class.html
deleted file mode 100644
index 1ea8023..0000000
--- a/TestON/Documentation/TestON_Document/TestON.core.xmlparser.xmlparser-class.html
+++ /dev/null
@@ -1,206 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.core.xmlparser.xmlparser</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.core-module.html">Package core</a> ::
- <a href="TestON.core.xmlparser-module.html">Module xmlparser</a> ::
- Class xmlparser
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.core.xmlparser.xmlparser-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class xmlparser</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.core.xmlparser-pysrc.html#xmlparser">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmlparser-pysrc.html#xmlparser.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="parse"></a><span class="summary-sig-name">parse</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">fileName</span>)</span><br />
- This will parse the params or topo or cfg file and return content in
- the file as Dictionary</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmlparser-pysrc.html#xmlparser.parse">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="parseParams"></a><span class="summary-sig-name">parseParams</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">paramsPath</span>)</span><br />
- It will take the params file path and will return the params
- dictionary</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmlparser-pysrc.html#xmlparser.parseParams">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="parseTopology"></a><span class="summary-sig-name">parseTopology</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">topologyPath</span>)</span><br />
- It will take topology file path and will return topology dictionary</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.core.xmlparser-pysrc.html#xmlparser.parseTopology">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers-module.html b/TestON/Documentation/TestON_Document/TestON.drivers-module.html
deleted file mode 100644
index 2f94527..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers-module.html
+++ /dev/null
@@ -1,217 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- Package drivers
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package drivers</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.drivers.common-module.html">TestON.drivers.common</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api-module.html">TestON.drivers.common.api</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.controller-module.html">TestON.drivers.common.api.controller</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.controller.onosrestdriver-module.html">TestON.drivers.common.api.controller.onosrestdriver</a></strong>: <em class="summary">Created on 07-08-2015</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.controllerdriver-module.html">TestON.drivers.common.api.controllerdriver</a></strong>: <em class="summary">Created on 29-Nov-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.fvtapidriver-module.html">TestON.drivers.common.api.fvtapidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.apidriver-module.html">TestON.drivers.common.apidriver</a></strong>: <em class="summary">Created on 22-Nov-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.dpclidriver-module.html">TestON.drivers.common.cli.dpclidriver</a></strong>: <em class="summary">Driver for blank dataplane VMs.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator-module.html">TestON.drivers.common.cli.emulator</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-module.html">TestON.drivers.common.cli.emulator.flowvisordriver</a></strong>: <em class="summary">Created on 26-Mar-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-module.html">TestON.drivers.common.cli.emulator.lincoedriver</a></strong>: <em class="summary">This driver handles the optical switch emulator linc-oe.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-module.html">TestON.drivers.common.cli.emulator.mininetclidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-module.html">TestON.drivers.common.cli.emulator.poxclidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-module.html">TestON.drivers.common.cli.emulator.remotemininetdriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulatordriver-module.html">TestON.drivers.common.cli.emulatordriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.onosclidriver-module.html">TestON.drivers.common.cli.onosclidriver</a></strong>: <em class="summary">This driver enters the onos> prompt to issue commands.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.onosdriver-module.html">TestON.drivers.common.cli.onosdriver</a></strong>: <em class="summary">This driver interacts with ONOS bench, the OSGi platform that
- configures the ONOS nodes.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.quaggaclidriver-module.html">TestON.drivers.common.cli.quaggaclidriver</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotesys-module.html">TestON.drivers.common.cli.remotesys</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotesysdriver-module.html">TestON.drivers.common.cli.remotesysdriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed-module.html">TestON.drivers.common.cli.remotetestbed</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html">TestON.drivers.common.cli.remotetestbed.floodlightclidriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html">TestON.drivers.common.cli.remotetestbed.necswitchdriver</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html">TestON.drivers.common.cli.remotetestbed.remotepoxdriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html">TestON.drivers.common.cli.remotetestbed.remotevmdriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbeddriver-module.html">TestON.drivers.common.cli.remotetestbeddriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.tool-module.html">TestON.drivers.common.cli.tool</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-module.html">TestON.drivers.common.cli.tool.dpctlclidriver</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.toolsdriver-module.html">TestON.drivers.common.cli.toolsdriver</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.clidriver-module.html">TestON.drivers.common.clidriver</a></strong>: <em class="summary">Created on 24-Oct-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink">TestON.drivers.component</strong> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers-pysrc.html
deleted file mode 100644
index 94aadcf..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers-pysrc.html
+++ /dev/null
@@ -1,122 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- Package drivers
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers-module.html">Package TestON.drivers</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common-module.html
deleted file mode 100644
index d456e46..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common-module.html
+++ /dev/null
@@ -1,213 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- Package common
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package common</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api-module.html">TestON.drivers.common.api</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.controller-module.html">TestON.drivers.common.api.controller</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.controller.onosrestdriver-module.html">TestON.drivers.common.api.controller.onosrestdriver</a></strong>: <em class="summary">Created on 07-08-2015</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.controllerdriver-module.html">TestON.drivers.common.api.controllerdriver</a></strong>: <em class="summary">Created on 29-Nov-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.fvtapidriver-module.html">TestON.drivers.common.api.fvtapidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.apidriver-module.html">TestON.drivers.common.apidriver</a></strong>: <em class="summary">Created on 22-Nov-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.dpclidriver-module.html">TestON.drivers.common.cli.dpclidriver</a></strong>: <em class="summary">Driver for blank dataplane VMs.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator-module.html">TestON.drivers.common.cli.emulator</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-module.html">TestON.drivers.common.cli.emulator.flowvisordriver</a></strong>: <em class="summary">Created on 26-Mar-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-module.html">TestON.drivers.common.cli.emulator.lincoedriver</a></strong>: <em class="summary">This driver handles the optical switch emulator linc-oe.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-module.html">TestON.drivers.common.cli.emulator.mininetclidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-module.html">TestON.drivers.common.cli.emulator.poxclidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-module.html">TestON.drivers.common.cli.emulator.remotemininetdriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulatordriver-module.html">TestON.drivers.common.cli.emulatordriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.onosclidriver-module.html">TestON.drivers.common.cli.onosclidriver</a></strong>: <em class="summary">This driver enters the onos> prompt to issue commands.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.onosdriver-module.html">TestON.drivers.common.cli.onosdriver</a></strong>: <em class="summary">This driver interacts with ONOS bench, the OSGi platform that
- configures the ONOS nodes.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.quaggaclidriver-module.html">TestON.drivers.common.cli.quaggaclidriver</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotesys-module.html">TestON.drivers.common.cli.remotesys</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotesysdriver-module.html">TestON.drivers.common.cli.remotesysdriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed-module.html">TestON.drivers.common.cli.remotetestbed</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html">TestON.drivers.common.cli.remotetestbed.floodlightclidriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html">TestON.drivers.common.cli.remotetestbed.necswitchdriver</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html">TestON.drivers.common.cli.remotetestbed.remotepoxdriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html">TestON.drivers.common.cli.remotetestbed.remotevmdriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbeddriver-module.html">TestON.drivers.common.cli.remotetestbeddriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.tool-module.html">TestON.drivers.common.cli.tool</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-module.html">TestON.drivers.common.cli.tool.dpctlclidriver</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.toolsdriver-module.html">TestON.drivers.common.cli.toolsdriver</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.clidriver-module.html">TestON.drivers.common.clidriver</a></strong>: <em class="summary">Created on 24-Oct-2012</em> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common-pysrc.html
deleted file mode 100644
index ecbc3a5..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- Package common
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common-module.html">Package TestON.drivers.common</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.api-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.api-module.html
deleted file mode 100644
index 97e125d..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.api-module.html
+++ /dev/null
@@ -1,172 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.api</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- Package api
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.api-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package api</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.api-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.controller-module.html">TestON.drivers.common.api.controller</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.controller.onosrestdriver-module.html">TestON.drivers.common.api.controller.onosrestdriver</a></strong>: <em class="summary">Created on 07-08-2015</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.controllerdriver-module.html">TestON.drivers.common.api.controllerdriver</a></strong>: <em class="summary">Created on 29-Nov-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.fvtapidriver-module.html">TestON.drivers.common.api.fvtapidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.api-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.api-pysrc.html
deleted file mode 100644
index 23e4283..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.api-pysrc.html
+++ /dev/null
@@ -1,124 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.api</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- Package api
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.api-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.api-module.html">Package TestON.drivers.common.api</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controller-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controller-module.html
deleted file mode 100644
index d7788bd..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controller-module.html
+++ /dev/null
@@ -1,167 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.api.controller</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.api-module.html">Package api</a> ::
- Package controller
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.api.controller-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package controller</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.api.controller-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.controller.onosrestdriver-module.html">TestON.drivers.common.api.controller.onosrestdriver</a></strong>: <em class="summary">Created on 07-08-2015</em> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controller-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controller-pysrc.html
deleted file mode 100644
index d26a76c..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controller-pysrc.html
+++ /dev/null
@@ -1,125 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.api.controller</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.api-module.html">Package api</a> ::
- Package controller
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.api.controller-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.api.controller-module.html">Package TestON.drivers.common.api.controller</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controller.onosrestdriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controller.onosrestdriver-module.html
deleted file mode 100644
index 5b8dc4e..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controller.onosrestdriver-module.html
+++ /dev/null
@@ -1,162 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.api.controller.onosrestdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.api-module.html">Package api</a> ::
- <a href="TestON.drivers.common.api.controller-module.html">Package controller</a> ::
- Module onosrestdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.api.controller.onosrestdriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module onosrestdriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 07-08-2015
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- ( at your option ) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html" class="summary-name">OnosRestDriver</a>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controller.onosrestdriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controller.onosrestdriver-pysrc.html
deleted file mode 100644
index c80b946..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controller.onosrestdriver-pysrc.html
+++ /dev/null
@@ -1,1389 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.api.controller.onosrestdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.api-module.html">Package api</a> ::
- <a href="TestON.drivers.common.api.controller-module.html">Package controller</a> ::
- Module onosrestdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.api.controller.onosrestdriver-module.html">Module TestON.drivers.common.api.controller.onosrestdriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 07-08-2015</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> ( at your option ) any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">requests</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">types</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Package TestON.drivers.common.api=TestON.drivers.common.api-module.html"><a title="TestON.drivers.common.api" class="py-name" href="#" onclick="return doclink('link-2', 'api', 'link-2');">api</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module TestON.drivers.common.api.controllerdriver=TestON.drivers.common.api.controllerdriver-module.html"><a title="TestON.drivers.common.api.controllerdriver" class="py-name" href="#" onclick="return doclink('link-3', 'controllerdriver', 'link-3');">controllerdriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class TestON.drivers.common.api.controllerdriver.Controller=TestON.drivers.common.api.controllerdriver.Controller-class.html"><a title="TestON.drivers.common.api.controllerdriver.Controller" class="py-name" href="#" onclick="return doclink('link-4', 'Controller', 'link-4');">Controller</a></tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver"></a><div id="OnosRestDriver-def"><a name="L27"></a><tt class="py-lineno"> 27</tt> <a class="py-toggle" href="#" id="OnosRestDriver-toggle" onclick="return toggle('OnosRestDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">Controller</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="OnosRestDriver-expanded"><a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.__init__"></a><div id="OnosRestDriver.__init__-def"><a name="L29"></a><tt class="py-lineno"> 29</tt> <a class="py-toggle" href="#" id="OnosRestDriver.__init__-toggle" onclick="return toggle('OnosRestDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.__init__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.__init__-expanded"><a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-5" class="py-name"><a title="TestON.drivers.common.api.controllerdriver.Controller" class="py-name" href="#" onclick="return doclink('link-5', 'Controller', 'link-4');">Controller</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-6', '__init__', 'link-6');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">=</tt> <tt class="py-string">"localhost"</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-string">"8080"</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">=</tt> <tt class="py-string">"user"</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">password</tt> <tt class="py-op">=</tt> <tt class="py-string">"CHANGEME"</tt> </tt>
-</div><a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.connect"></a><div id="OnosRestDriver.connect-def"><a name="L36"></a><tt class="py-lineno"> 36</tt> <a class="py-toggle" href="#" id="OnosRestDriver.connect-toggle" onclick="return toggle('OnosRestDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.connect-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.connect-expanded"><a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-7', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">getenv</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">getenv</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-8', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": ip set to "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">:</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Invalid host name,"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-string">"defaulting to 'localhost' instead"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">=</tt> <tt class="py-string">'localhost'</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">inst</tt><tt class="py-op">:</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-10', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-11', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Uncaught exception: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">inst</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-12" class="py-name" targets="Class TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver" class="py-name" href="#" onclick="return doclink('link-12', 'OnosRestDriver', 'link-12');">OnosRestDriver</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-13', 'connect', 'link-13');">connect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-</div><a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.send"></a><div id="OnosRestDriver.send-def"><a name="L58"></a><tt class="py-lineno"> 58</tt> <a class="py-toggle" href="#" id="OnosRestDriver.send-toggle" onclick="return toggle('OnosRestDriver.send');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#send">send</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">,</tt> <tt class="py-param">url</tt><tt class="py-op">,</tt> <tt class="py-param">base</tt><tt class="py-op">=</tt><tt class="py-string">"/onos/v1"</tt><tt class="py-op">,</tt> <tt class="py-param">method</tt><tt class="py-op">=</tt><tt class="py-string">"GET"</tt><tt class="py-op">,</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-param">query</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">=</tt><tt class="py-name">None</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.send-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.send-expanded"><a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"><tt class="py-docstring"> Arguments:</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"><tt class="py-docstring"> str ip: ONOS IP Address</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"><tt class="py-docstring"> str port: ONOS REST Port</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"><tt class="py-docstring"> str url: ONOS REST url path.</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"><tt class="py-docstring"> NOTE that this is is only the relative path. IE "/devices"</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"><tt class="py-docstring"> str base: The base url for the given REST api. Applications could</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"><tt class="py-docstring"> potentially have their own base url</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"><tt class="py-docstring"> str method: HTTP method type</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"><tt class="py-docstring"> dict query: Dictionary to be sent in the query string for</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"><tt class="py-docstring"> the request</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"><tt class="py-docstring"> dict data: Dictionary to be sent in the body of the request</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Authentication - simple http (user,pass) tuple</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-comment"># TODO: should we maybe just pass kwargs straight to response?</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Do we need to allow for other protocols besides http?</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-comment"># ANSWER: Not yet, but potentially https with certificates</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt id="link-14" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-14', 'path', 'link-14');">path</a></tt> <tt class="py-op">=</tt> <tt class="py-string">"http://"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">base</tt> <tt class="py-op">+</tt> <tt class="py-name">url</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-15', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Sending request "</tt> <tt class="py-op">+</tt> <tt id="link-16" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-16', 'path', 'link-14');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">" using "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">method</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" method."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">requests</tt><tt class="py-op">.</tt><tt class="py-name">request</tt><tt class="py-op">(</tt> <tt class="py-name">method</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt id="link-17" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-17', 'path', 'link-14');">path</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">params</tt><tt class="py-op">=</tt><tt class="py-name">query</tt><tt class="py-op">,</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">data</tt><tt class="py-op">=</tt><tt class="py-name">data</tt> <tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">(</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">status_code</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">text</tt><tt class="py-op">.</tt><tt class="py-name">encode</tt><tt class="py-op">(</tt> <tt class="py-string">'utf8'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">requests</tt><tt class="py-op">.</tt><tt class="py-name">exceptions</tt><tt class="py-op">:</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-18', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error sending request."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-19', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: add other exceptions</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.intents"></a><div id="OnosRestDriver.intents-def"><a name="L94"></a><tt class="py-lineno"> 94</tt> <a class="py-toggle" href="#" id="OnosRestDriver.intents-toggle" onclick="return toggle('OnosRestDriver.intents');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intents">intents</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.intents-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.intents-expanded"><a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"><tt class="py-docstring"> Gets a list of dictionary of all intents in the system</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"><tt class="py-docstring"> A list of dictionary of intents in string type to match the cli</tt> </tt>
-<a name="L100"></a><tt class="py-lineno"> 100</tt> <tt class="py-line"><tt class="py-docstring"> version for now; Returns main.FALSE if error on request;</tt> </tt>
-<a name="L101"></a><tt class="py-lineno"> 101</tt> <tt class="py-line"><tt class="py-docstring"> Returns None for exception</tt> </tt>
-<a name="L102"></a><tt class="py-lineno"> 102</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L103"></a><tt class="py-lineno"> 103</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L104"></a><tt class="py-lineno"> 104</tt> <tt class="py-line"> <tt id="link-20" class="py-name" targets="Function TestON.bin.cli.output()=TestON.bin.cli-module.html#output"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-20', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L105"></a><tt class="py-lineno"> 105</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L106"></a><tt class="py-lineno"> 106</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-21', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No ip given, reverting to ip from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno"> 107</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L108"></a><tt class="py-lineno"> 108</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L109"></a><tt class="py-lineno"> 109</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-22', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No port given, reverting to port "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L110"></a><tt class="py-lineno"> 110</tt> <tt class="py-line"> <tt class="py-string">"from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno"> 111</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> </tt>
-<a name="L112"></a><tt class="py-lineno"> 112</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#send"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-23', 'send', 'link-23');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">url</tt><tt class="py-op">=</tt><tt class="py-string">"/intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno"> 113</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L114"></a><tt class="py-lineno"> 114</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">200</tt> <tt class="py-op"><=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op"><=</tt> <tt class="py-number">299</tt><tt class="py-op">:</tt> </tt>
-<a name="L115"></a><tt class="py-lineno"> 115</tt> <tt class="py-line"> <tt id="link-24" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-24', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L116"></a><tt class="py-lineno"> 116</tt> <tt class="py-line"> <tt class="py-name">a</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-25" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-25', 'output', 'link-20');">output</a></tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'intents'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno"> 117</tt> <tt class="py-line"> <tt class="py-name">b</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">a</tt> <tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno"> 118</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">b</tt> </tt>
-<a name="L119"></a><tt class="py-lineno"> 119</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L120"></a><tt class="py-lineno"> 120</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-26', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-27', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error with REST request, response was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L121"></a><tt class="py-lineno"> 121</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno"> 122</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L123"></a><tt class="py-lineno"> 123</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L124"></a><tt class="py-lineno"> 124</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-28', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L125"></a><tt class="py-lineno"> 125</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L126"></a><tt class="py-lineno"> 126</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.intent"></a><div id="OnosRestDriver.intent-def"><a name="L127"></a><tt class="py-lineno"> 127</tt> <a class="py-toggle" href="#" id="OnosRestDriver.intent-toggle" onclick="return toggle('OnosRestDriver.intent');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intent">intent</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">intentId</tt><tt class="py-op">,</tt> <tt class="py-param">appId</tt><tt class="py-op">=</tt><tt class="py-string">"org.onosproject.cli"</tt><tt class="py-op">,</tt> </tt>
-<a name="L128"></a><tt class="py-lineno"> 128</tt> <tt class="py-line"> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.intent-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.intent-expanded"><a name="L129"></a><tt class="py-lineno"> 129</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L130"></a><tt class="py-lineno"> 130</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L131"></a><tt class="py-lineno"> 131</tt> <tt class="py-line"><tt class="py-docstring"> Get the specific intent information of the given application ID and</tt> </tt>
-<a name="L132"></a><tt class="py-lineno"> 132</tt> <tt class="py-line"><tt class="py-docstring"> intent ID</tt> </tt>
-<a name="L133"></a><tt class="py-lineno"> 133</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L134"></a><tt class="py-lineno"> 134</tt> <tt class="py-line"><tt class="py-docstring"> str intentId - Intent id in hexadecimal form</tt> </tt>
-<a name="L135"></a><tt class="py-lineno"> 135</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L136"></a><tt class="py-lineno"> 136</tt> <tt class="py-line"><tt class="py-docstring"> str appId - application id of intent</tt> </tt>
-<a name="L137"></a><tt class="py-lineno"> 137</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L138"></a><tt class="py-lineno"> 138</tt> <tt class="py-line"><tt class="py-docstring"> Returns an information dictionary of the given intent;</tt> </tt>
-<a name="L139"></a><tt class="py-lineno"> 139</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.FALSE if error on requests; Returns None for exception</tt> </tt>
-<a name="L140"></a><tt class="py-lineno"> 140</tt> <tt class="py-line"><tt class="py-docstring"> NOTE:</tt> </tt>
-<a name="L141"></a><tt class="py-lineno"> 141</tt> <tt class="py-line"><tt class="py-docstring"> The GET /intents REST api command accepts application id but the</tt> </tt>
-<a name="L142"></a><tt class="py-lineno"> 142</tt> <tt class="py-line"><tt class="py-docstring"> api will get updated to accept application name instead</tt> </tt>
-<a name="L143"></a><tt class="py-lineno"> 143</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L144"></a><tt class="py-lineno"> 144</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L145"></a><tt class="py-lineno"> 145</tt> <tt class="py-line"> <tt id="link-29" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-29', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L146"></a><tt class="py-lineno"> 146</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L147"></a><tt class="py-lineno"> 147</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-30', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No ip given, reverting to ip from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L148"></a><tt class="py-lineno"> 148</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L149"></a><tt class="py-lineno"> 149</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L150"></a><tt class="py-lineno"> 150</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-31', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No port given, reverting to port"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L151"></a><tt class="py-lineno"> 151</tt> <tt class="py-line"> <tt class="py-string">"from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno"> 152</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> </tt>
-<a name="L153"></a><tt class="py-lineno"> 153</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: REST url requires the intent id to be in decimal form</tt> </tt>
-<a name="L154"></a><tt class="py-lineno"> 154</tt> <tt class="py-line"> <tt class="py-name">query</tt> <tt class="py-op">=</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">appId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">intentId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L155"></a><tt class="py-lineno"> 155</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-32', 'send', 'link-23');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">url</tt><tt class="py-op">=</tt><tt class="py-string">"/intents"</tt> <tt class="py-op">+</tt> <tt class="py-name">query</tt> <tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno"> 156</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L157"></a><tt class="py-lineno"> 157</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">200</tt> <tt class="py-op"><=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op"><=</tt> <tt class="py-number">299</tt><tt class="py-op">:</tt> </tt>
-<a name="L158"></a><tt class="py-lineno"> 158</tt> <tt class="py-line"> <tt id="link-33" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-33', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L159"></a><tt class="py-lineno"> 159</tt> <tt class="py-line"> <tt class="py-name">a</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-34" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-34', 'output', 'link-20');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno"> 160</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">a</tt> </tt>
-<a name="L161"></a><tt class="py-lineno"> 161</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L162"></a><tt class="py-lineno"> 162</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-35', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-36', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error with REST request, response was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L163"></a><tt class="py-lineno"> 163</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno"> 164</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L165"></a><tt class="py-lineno"> 165</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L166"></a><tt class="py-lineno"> 166</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-37', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L167"></a><tt class="py-lineno"> 167</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L168"></a><tt class="py-lineno"> 168</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.getIntentsId"></a><div id="OnosRestDriver.getIntentsId-def"><a name="L169"></a><tt class="py-lineno"> 169</tt> <a class="py-toggle" href="#" id="OnosRestDriver.getIntentsId-toggle" onclick="return toggle('OnosRestDriver.getIntentsId');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getIntentsId">getIntentsId</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.getIntentsId-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.getIntentsId-expanded"><a name="L170"></a><tt class="py-lineno"> 170</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L171"></a><tt class="py-lineno"> 171</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L172"></a><tt class="py-lineno"> 172</tt> <tt class="py-line"><tt class="py-docstring"> Gets all intents ID using intents function</tt> </tt>
-<a name="L173"></a><tt class="py-lineno"> 173</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L174"></a><tt class="py-lineno"> 174</tt> <tt class="py-line"><tt class="py-docstring"> List of intents ID;Returns None for exception; Returns None for</tt> </tt>
-<a name="L175"></a><tt class="py-lineno"> 175</tt> <tt class="py-line"><tt class="py-docstring"> exception; Returns None for exception</tt> </tt>
-<a name="L176"></a><tt class="py-lineno"> 176</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L177"></a><tt class="py-lineno"> 177</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L178"></a><tt class="py-lineno"> 178</tt> <tt class="py-line"> <tt class="py-name">intentsDict</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L179"></a><tt class="py-lineno"> 179</tt> <tt class="py-line"> <tt class="py-name">intentsIdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L180"></a><tt class="py-lineno"> 180</tt> <tt class="py-line"> <tt class="py-name">intentsDict</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intents,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intents"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-38', 'intents', 'link-38');">intents</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">port</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L181"></a><tt class="py-lineno"> 181</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-39" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intent"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-39', 'intent', 'link-39');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsDict</tt><tt class="py-op">:</tt> </tt>
-<a name="L182"></a><tt class="py-lineno"> 182</tt> <tt class="py-line"> <tt class="py-name">intentsIdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-40" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-40', 'intent', 'link-39');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L183"></a><tt class="py-lineno"> 183</tt> <tt class="py-line"> </tt>
-<a name="L184"></a><tt class="py-lineno"> 184</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">intentsIdList</tt><tt class="py-op">:</tt> </tt>
-<a name="L185"></a><tt class="py-lineno"> 185</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-41', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Cannot find any intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L186"></a><tt class="py-lineno"> 186</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L187"></a><tt class="py-lineno"> 187</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L188"></a><tt class="py-lineno"> 188</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-42', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Found intents: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">intentsIdList</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L189"></a><tt class="py-lineno"> 189</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L190"></a><tt class="py-lineno"> 190</tt> <tt class="py-line"> </tt>
-<a name="L191"></a><tt class="py-lineno"> 191</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L192"></a><tt class="py-lineno"> 192</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-43', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L193"></a><tt class="py-lineno"> 193</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L194"></a><tt class="py-lineno"> 194</tt> <tt class="py-line"> </tt>
-<a name="L195"></a><tt class="py-lineno"> 195</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.apps"></a><div id="OnosRestDriver.apps-def"><a name="L196"></a><tt class="py-lineno"> 196</tt> <a class="py-toggle" href="#" id="OnosRestDriver.apps-toggle" onclick="return toggle('OnosRestDriver.apps');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#apps">apps</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.apps-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.apps-expanded"><a name="L197"></a><tt class="py-lineno"> 197</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L198"></a><tt class="py-lineno"> 198</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L199"></a><tt class="py-lineno"> 199</tt> <tt class="py-line"><tt class="py-docstring"> Returns all the current application installed in the system</tt> </tt>
-<a name="L200"></a><tt class="py-lineno"> 200</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L201"></a><tt class="py-lineno"> 201</tt> <tt class="py-line"><tt class="py-docstring"> List of dictionary of installed application; Returns main.FALSE for</tt> </tt>
-<a name="L202"></a><tt class="py-lineno"> 202</tt> <tt class="py-line"><tt class="py-docstring"> error on request; Returns None for exception</tt> </tt>
-<a name="L203"></a><tt class="py-lineno"> 203</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L204"></a><tt class="py-lineno"> 204</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L205"></a><tt class="py-lineno"> 205</tt> <tt class="py-line"> <tt id="link-44" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-44', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L206"></a><tt class="py-lineno"> 206</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L207"></a><tt class="py-lineno"> 207</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-45', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No ip given, reverting to ip from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L208"></a><tt class="py-lineno"> 208</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L209"></a><tt class="py-lineno"> 209</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L210"></a><tt class="py-lineno"> 210</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-46', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No port given, reverting to port \</tt> </tt>
-<a name="L211"></a><tt class="py-lineno"> 211</tt> <tt class="py-line"><tt class="py-string"> from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L212"></a><tt class="py-lineno"> 212</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> </tt>
-<a name="L213"></a><tt class="py-lineno"> 213</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-47', 'send', 'link-23');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">url</tt><tt class="py-op">=</tt><tt class="py-string">"/applications"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L214"></a><tt class="py-lineno"> 214</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L215"></a><tt class="py-lineno"> 215</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">200</tt> <tt class="py-op"><=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op"><=</tt> <tt class="py-number">299</tt><tt class="py-op">:</tt> </tt>
-<a name="L216"></a><tt class="py-lineno"> 216</tt> <tt class="py-line"> <tt id="link-48" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-48', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L217"></a><tt class="py-lineno"> 217</tt> <tt class="py-line"> <tt class="py-name">a</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-49" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-49', 'output', 'link-20');">output</a></tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'applications'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L218"></a><tt class="py-lineno"> 218</tt> <tt class="py-line"> <tt class="py-name">b</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">a</tt> <tt class="py-op">)</tt> </tt>
-<a name="L219"></a><tt class="py-lineno"> 219</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">b</tt> </tt>
-<a name="L220"></a><tt class="py-lineno"> 220</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L221"></a><tt class="py-lineno"> 221</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-50', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-51', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error with REST request, response was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L222"></a><tt class="py-lineno"> 222</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L223"></a><tt class="py-lineno"> 223</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L224"></a><tt class="py-lineno"> 224</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L225"></a><tt class="py-lineno"> 225</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-52', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L226"></a><tt class="py-lineno"> 226</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L227"></a><tt class="py-lineno"> 227</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.activateApp"></a><div id="OnosRestDriver.activateApp-def"><a name="L228"></a><tt class="py-lineno"> 228</tt> <a class="py-toggle" href="#" id="OnosRestDriver.activateApp-toggle" onclick="return toggle('OnosRestDriver.activateApp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#activateApp">activateApp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">appName</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">check</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.activateApp-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.activateApp-expanded"><a name="L229"></a><tt class="py-lineno"> 229</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L230"></a><tt class="py-lineno"> 230</tt> <tt class="py-line"><tt class="py-docstring"> Decription:</tt> </tt>
-<a name="L231"></a><tt class="py-lineno"> 231</tt> <tt class="py-line"><tt class="py-docstring"> Activate an app that is already installed in ONOS</tt> </tt>
-<a name="L232"></a><tt class="py-lineno"> 232</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L233"></a><tt class="py-lineno"> 233</tt> <tt class="py-line"><tt class="py-docstring"> bool check - If check is True, method will check the status</tt> </tt>
-<a name="L234"></a><tt class="py-lineno"> 234</tt> <tt class="py-line"><tt class="py-docstring"> of the app after the command is issued</tt> </tt>
-<a name="L235"></a><tt class="py-lineno"> 235</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L236"></a><tt class="py-lineno"> 236</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE if the command was successfully or main.FALSE</tt> </tt>
-<a name="L237"></a><tt class="py-lineno"> 237</tt> <tt class="py-line"><tt class="py-docstring"> if the REST responded with an error or given incorrect input;</tt> </tt>
-<a name="L238"></a><tt class="py-lineno"> 238</tt> <tt class="py-line"><tt class="py-docstring"> Returns None for exception</tt> </tt>
-<a name="L239"></a><tt class="py-lineno"> 239</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L240"></a><tt class="py-lineno"> 240</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L241"></a><tt class="py-lineno"> 241</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L242"></a><tt class="py-lineno"> 242</tt> <tt class="py-line"> <tt id="link-53" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-53', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L243"></a><tt class="py-lineno"> 243</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L244"></a><tt class="py-lineno"> 244</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-54', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No ip given, reverting to ip from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L245"></a><tt class="py-lineno"> 245</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L246"></a><tt class="py-lineno"> 246</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L247"></a><tt class="py-lineno"> 247</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-55', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No port given, reverting to port"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L248"></a><tt class="py-lineno"> 248</tt> <tt class="py-line"> <tt class="py-string">"from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L249"></a><tt class="py-lineno"> 249</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> </tt>
-<a name="L250"></a><tt class="py-lineno"> 250</tt> <tt class="py-line"> <tt class="py-name">query</tt> <tt class="py-op">=</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/active"</tt> </tt>
-<a name="L251"></a><tt class="py-lineno"> 251</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-56', 'send', 'link-23');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">method</tt><tt class="py-op">=</tt><tt class="py-string">"POST"</tt><tt class="py-op">,</tt> </tt>
-<a name="L252"></a><tt class="py-lineno"> 252</tt> <tt class="py-line"> <tt class="py-name">url</tt><tt class="py-op">=</tt><tt class="py-string">"/applications"</tt> <tt class="py-op">+</tt> <tt class="py-name">query</tt> <tt class="py-op">)</tt> </tt>
-<a name="L253"></a><tt class="py-lineno"> 253</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L254"></a><tt class="py-lineno"> 254</tt> <tt class="py-line"> <tt id="link-57" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-57', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L255"></a><tt class="py-lineno"> 255</tt> <tt class="py-line"> <tt id="link-58" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#app"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-58', 'app', 'link-58');">app</a></tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-59" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-59', 'output', 'link-20');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L256"></a><tt class="py-lineno"> 256</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">200</tt> <tt class="py-op"><=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op"><=</tt> <tt class="py-number">299</tt><tt class="py-op">:</tt> </tt>
-<a name="L257"></a><tt class="py-lineno"> 257</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">check</tt><tt class="py-op">:</tt> </tt>
-<a name="L258"></a><tt class="py-lineno"> 258</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-60" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-60', 'app', 'link-58');">app</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-string">'ACTIVE'</tt><tt class="py-op">:</tt> </tt>
-<a name="L259"></a><tt class="py-lineno"> 259</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-61', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">appName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L260"></a><tt class="py-lineno"> 260</tt> <tt class="py-line"> <tt class="py-string">" application"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L261"></a><tt class="py-lineno"> 261</tt> <tt class="py-line"> <tt class="py-string">" is in ACTIVE state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno"> 262</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L263"></a><tt class="py-lineno"> 263</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L264"></a><tt class="py-lineno"> 264</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-62', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-63', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">appName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L265"></a><tt class="py-lineno"> 265</tt> <tt class="py-line"> <tt class="py-string">" application"</tt> <tt class="py-op">+</tt> <tt class="py-string">" is in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L266"></a><tt class="py-lineno"> 266</tt> <tt class="py-line"> <tt id="link-64" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-64', 'app', 'link-58');">app</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L267"></a><tt class="py-lineno"> 267</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L268"></a><tt class="py-lineno"> 268</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L269"></a><tt class="py-lineno"> 269</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-65', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Skipping "</tt> <tt class="py-op">+</tt> <tt class="py-name">appName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L270"></a><tt class="py-lineno"> 270</tt> <tt class="py-line"> <tt class="py-string">"application check"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L271"></a><tt class="py-lineno"> 271</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L272"></a><tt class="py-lineno"> 272</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L273"></a><tt class="py-lineno"> 273</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-66', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-67', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error with REST request, response was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L274"></a><tt class="py-lineno"> 274</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L275"></a><tt class="py-lineno"> 275</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L276"></a><tt class="py-lineno"> 276</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L277"></a><tt class="py-lineno"> 277</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-68', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L278"></a><tt class="py-lineno"> 278</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L279"></a><tt class="py-lineno"> 279</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.deactivateApp"></a><div id="OnosRestDriver.deactivateApp-def"><a name="L280"></a><tt class="py-lineno"> 280</tt> <a class="py-toggle" href="#" id="OnosRestDriver.deactivateApp-toggle" onclick="return toggle('OnosRestDriver.deactivateApp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#deactivateApp">deactivateApp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">appName</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> </tt>
-<a name="L281"></a><tt class="py-lineno"> 281</tt> <tt class="py-line"> <tt class="py-param">check</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.deactivateApp-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.deactivateApp-expanded"><a name="L282"></a><tt class="py-lineno"> 282</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L283"></a><tt class="py-lineno"> 283</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L284"></a><tt class="py-lineno"> 284</tt> <tt class="py-line"><tt class="py-docstring"> Deactivate an app that is already activated in ONOS</tt> </tt>
-<a name="L285"></a><tt class="py-lineno"> 285</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L286"></a><tt class="py-lineno"> 286</tt> <tt class="py-line"><tt class="py-docstring"> bool check - If check is True, method will check the status of the</tt> </tt>
-<a name="L287"></a><tt class="py-lineno"> 287</tt> <tt class="py-line"><tt class="py-docstring"> app after the command is issued</tt> </tt>
-<a name="L288"></a><tt class="py-lineno"> 288</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L289"></a><tt class="py-lineno"> 289</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE if the command was successfully sent</tt> </tt>
-<a name="L290"></a><tt class="py-lineno"> 290</tt> <tt class="py-line"><tt class="py-docstring"> main.FALSE if the REST responded with an error or given</tt> </tt>
-<a name="L291"></a><tt class="py-lineno"> 291</tt> <tt class="py-line"><tt class="py-docstring"> incorrect input; Returns None for exception</tt> </tt>
-<a name="L292"></a><tt class="py-lineno"> 292</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L293"></a><tt class="py-lineno"> 293</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L294"></a><tt class="py-lineno"> 294</tt> <tt class="py-line"> <tt id="link-69" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-69', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L295"></a><tt class="py-lineno"> 295</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L296"></a><tt class="py-lineno"> 296</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-70', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No ip given, reverting to ip from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L297"></a><tt class="py-lineno"> 297</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L298"></a><tt class="py-lineno"> 298</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L299"></a><tt class="py-lineno"> 299</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-71', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No port given, reverting to port"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L300"></a><tt class="py-lineno"> 300</tt> <tt class="py-line"> <tt class="py-string">"from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L301"></a><tt class="py-lineno"> 301</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> </tt>
-<a name="L302"></a><tt class="py-lineno"> 302</tt> <tt class="py-line"> <tt class="py-name">query</tt> <tt class="py-op">=</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/active"</tt> </tt>
-<a name="L303"></a><tt class="py-lineno"> 303</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-72', 'send', 'link-23');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">method</tt><tt class="py-op">=</tt><tt class="py-string">"DELETE"</tt><tt class="py-op">,</tt> </tt>
-<a name="L304"></a><tt class="py-lineno"> 304</tt> <tt class="py-line"> <tt class="py-name">url</tt><tt class="py-op">=</tt><tt class="py-string">"/applications"</tt> <tt class="py-op">+</tt> <tt class="py-name">query</tt> <tt class="py-op">)</tt> </tt>
-<a name="L305"></a><tt class="py-lineno"> 305</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L306"></a><tt class="py-lineno"> 306</tt> <tt class="py-line"> <tt id="link-73" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-73', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L307"></a><tt class="py-lineno"> 307</tt> <tt class="py-line"> <tt id="link-74" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-74', 'app', 'link-58');">app</a></tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-75" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-75', 'output', 'link-20');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L308"></a><tt class="py-lineno"> 308</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">200</tt> <tt class="py-op"><=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op"><=</tt> <tt class="py-number">299</tt><tt class="py-op">:</tt> </tt>
-<a name="L309"></a><tt class="py-lineno"> 309</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">check</tt><tt class="py-op">:</tt> </tt>
-<a name="L310"></a><tt class="py-lineno"> 310</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-76" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-76', 'app', 'link-58');">app</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-string">'INSTALLED'</tt><tt class="py-op">:</tt> </tt>
-<a name="L311"></a><tt class="py-lineno"> 311</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-77', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">appName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L312"></a><tt class="py-lineno"> 312</tt> <tt class="py-line"> <tt class="py-string">" application"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L313"></a><tt class="py-lineno"> 313</tt> <tt class="py-line"> <tt class="py-string">" is in INSTALLED state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L314"></a><tt class="py-lineno"> 314</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L315"></a><tt class="py-lineno"> 315</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L316"></a><tt class="py-lineno"> 316</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-78', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-79', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">appName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L317"></a><tt class="py-lineno"> 317</tt> <tt class="py-line"> <tt class="py-string">" application"</tt> <tt class="py-op">+</tt> <tt class="py-string">" is in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L318"></a><tt class="py-lineno"> 318</tt> <tt class="py-line"> <tt id="link-80" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-80', 'app', 'link-58');">app</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L319"></a><tt class="py-lineno"> 319</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L320"></a><tt class="py-lineno"> 320</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L321"></a><tt class="py-lineno"> 321</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-81', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Skipping "</tt> <tt class="py-op">+</tt> <tt class="py-name">appName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L322"></a><tt class="py-lineno"> 322</tt> <tt class="py-line"> <tt class="py-string">"application check"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L323"></a><tt class="py-lineno"> 323</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L324"></a><tt class="py-lineno"> 324</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L325"></a><tt class="py-lineno"> 325</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-82', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-83', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error with REST request, response was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L326"></a><tt class="py-lineno"> 326</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L327"></a><tt class="py-lineno"> 327</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L328"></a><tt class="py-lineno"> 328</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L329"></a><tt class="py-lineno"> 329</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-84', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L330"></a><tt class="py-lineno"> 330</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L331"></a><tt class="py-lineno"> 331</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.getApp"></a><div id="OnosRestDriver.getApp-def"><a name="L332"></a><tt class="py-lineno"> 332</tt> <a class="py-toggle" href="#" id="OnosRestDriver.getApp-toggle" onclick="return toggle('OnosRestDriver.getApp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getApp">getApp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">appName</tt><tt class="py-op">,</tt> <tt class="py-param">project</tt><tt class="py-op">=</tt><tt class="py-string">"org.onosproject."</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> </tt>
-<a name="L333"></a><tt class="py-lineno"> 333</tt> <tt class="py-line"> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.getApp-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.getApp-expanded"><a name="L334"></a><tt class="py-lineno"> 334</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L335"></a><tt class="py-lineno"> 335</tt> <tt class="py-line"><tt class="py-docstring"> Decription:</tt> </tt>
-<a name="L336"></a><tt class="py-lineno"> 336</tt> <tt class="py-line"><tt class="py-docstring"> Gets the informaion of the given application</tt> </tt>
-<a name="L337"></a><tt class="py-lineno"> 337</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L338"></a><tt class="py-lineno"> 338</tt> <tt class="py-line"><tt class="py-docstring"> str name - Name of onos application</tt> </tt>
-<a name="L339"></a><tt class="py-lineno"> 339</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L340"></a><tt class="py-lineno"> 340</tt> <tt class="py-line"><tt class="py-docstring"> Returns a dictionary of information ONOS application in string type;</tt> </tt>
-<a name="L341"></a><tt class="py-lineno"> 341</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.FALSE if error on requests; Returns None for exception</tt> </tt>
-<a name="L342"></a><tt class="py-lineno"> 342</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L343"></a><tt class="py-lineno"> 343</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L344"></a><tt class="py-lineno"> 344</tt> <tt class="py-line"> <tt id="link-85" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-85', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L345"></a><tt class="py-lineno"> 345</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L346"></a><tt class="py-lineno"> 346</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-86', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No ip given, reverting to ip from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L347"></a><tt class="py-lineno"> 347</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L348"></a><tt class="py-lineno"> 348</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L349"></a><tt class="py-lineno"> 349</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-87', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No port given, reverting to port"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L350"></a><tt class="py-lineno"> 350</tt> <tt class="py-line"> <tt class="py-string">"from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L351"></a><tt class="py-lineno"> 351</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> </tt>
-<a name="L352"></a><tt class="py-lineno"> 352</tt> <tt class="py-line"> <tt class="py-name">query</tt> <tt class="py-op">=</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">project</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L353"></a><tt class="py-lineno"> 353</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-88', 'send', 'link-23');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">url</tt><tt class="py-op">=</tt><tt class="py-string">"/applications"</tt> <tt class="py-op">+</tt> <tt class="py-name">query</tt> <tt class="py-op">)</tt> </tt>
-<a name="L354"></a><tt class="py-lineno"> 354</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L355"></a><tt class="py-lineno"> 355</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">200</tt> <tt class="py-op"><=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op"><=</tt> <tt class="py-number">299</tt><tt class="py-op">:</tt> </tt>
-<a name="L356"></a><tt class="py-lineno"> 356</tt> <tt class="py-line"> <tt id="link-89" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-89', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L357"></a><tt class="py-lineno"> 357</tt> <tt class="py-line"> <tt class="py-name">a</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-90" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-90', 'output', 'link-20');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L358"></a><tt class="py-lineno"> 358</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">a</tt> </tt>
-<a name="L359"></a><tt class="py-lineno"> 359</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L360"></a><tt class="py-lineno"> 360</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-91', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-92', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error with REST request, response was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L361"></a><tt class="py-lineno"> 361</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L362"></a><tt class="py-lineno"> 362</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L363"></a><tt class="py-lineno"> 363</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L364"></a><tt class="py-lineno"> 364</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-93', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L365"></a><tt class="py-lineno"> 365</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L366"></a><tt class="py-lineno"> 366</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.addHostIntent"></a><div id="OnosRestDriver.addHostIntent-def"><a name="L367"></a><tt class="py-lineno"> 367</tt> <a class="py-toggle" href="#" id="OnosRestDriver.addHostIntent-toggle" onclick="return toggle('OnosRestDriver.addHostIntent');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addHostIntent">addHostIntent</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostIdOne</tt><tt class="py-op">,</tt> <tt class="py-param">hostIdTwo</tt><tt class="py-op">,</tt> <tt class="py-param">appId</tt><tt class="py-op">=</tt><tt class="py-string">'org.onosproject.cli'</tt><tt class="py-op">,</tt> </tt>
-<a name="L368"></a><tt class="py-lineno"> 368</tt> <tt class="py-line"> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.addHostIntent-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.addHostIntent-expanded"><a name="L369"></a><tt class="py-lineno"> 369</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L370"></a><tt class="py-lineno"> 370</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L371"></a><tt class="py-lineno"> 371</tt> <tt class="py-line"><tt class="py-docstring"> Adds a host-to-host intent ( bidirectional ) by</tt> </tt>
-<a name="L372"></a><tt class="py-lineno"> 372</tt> <tt class="py-line"><tt class="py-docstring"> specifying the two hosts.</tt> </tt>
-<a name="L373"></a><tt class="py-lineno"> 373</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L374"></a><tt class="py-lineno"> 374</tt> <tt class="py-line"><tt class="py-docstring"> * hostIdOne: ONOS host id for host1</tt> </tt>
-<a name="L375"></a><tt class="py-lineno"> 375</tt> <tt class="py-line"><tt class="py-docstring"> * hostIdTwo: ONOS host id for host2</tt> </tt>
-<a name="L376"></a><tt class="py-lineno"> 376</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L377"></a><tt class="py-lineno"> 377</tt> <tt class="py-line"><tt class="py-docstring"> str appId - Application name of intent identifier</tt> </tt>
-<a name="L378"></a><tt class="py-lineno"> 378</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L379"></a><tt class="py-lineno"> 379</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE for successful requests; Returns main.FALSE if</tt> </tt>
-<a name="L380"></a><tt class="py-lineno"> 380</tt> <tt class="py-line"><tt class="py-docstring"> error on requests; Returns None for exceptions</tt> </tt>
-<a name="L381"></a><tt class="py-lineno"> 381</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L382"></a><tt class="py-lineno"> 382</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L383"></a><tt class="py-lineno"> 383</tt> <tt class="py-line"> <tt class="py-name">intentJson</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-string">"two"</tt><tt class="py-op">:</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hostIdTwo</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L384"></a><tt class="py-lineno"> 384</tt> <tt class="py-line"> <tt class="py-string">"selector"</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt><tt class="py-string">"criteria"</tt><tt class="py-op">:</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">}</tt><tt class="py-op">,</tt> <tt class="py-string">"priority"</tt><tt class="py-op">:</tt> <tt class="py-number">7</tt><tt class="py-op">,</tt> </tt>
-<a name="L385"></a><tt class="py-lineno"> 385</tt> <tt class="py-line"> <tt class="py-string">"treatment"</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt><tt class="py-string">"deferred"</tt><tt class="py-op">:</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"instructions"</tt><tt class="py-op">:</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L386"></a><tt class="py-lineno"> 386</tt> <tt class="py-line"> <tt class="py-string">"appId"</tt><tt class="py-op">:</tt> <tt class="py-name">appId</tt><tt class="py-op">,</tt> <tt class="py-string">"one"</tt><tt class="py-op">:</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hostIdOne</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L387"></a><tt class="py-lineno"> 387</tt> <tt class="py-line"> <tt class="py-string">"type"</tt><tt class="py-op">:</tt> <tt class="py-string">"HostToHostIntent"</tt><tt class="py-op">,</tt> </tt>
-<a name="L388"></a><tt class="py-lineno"> 388</tt> <tt class="py-line"> <tt class="py-string">"constraints"</tt><tt class="py-op">:</tt> <tt class="py-op">[</tt><tt class="py-op">{</tt><tt class="py-string">"type"</tt><tt class="py-op">:</tt> <tt class="py-string">"LinkTypeConstraint"</tt><tt class="py-op">,</tt> </tt>
-<a name="L389"></a><tt class="py-lineno"> 389</tt> <tt class="py-line"> <tt class="py-string">"types"</tt><tt class="py-op">:</tt> <tt class="py-op">[</tt><tt class="py-string">"OPTICAL"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L390"></a><tt class="py-lineno"> 390</tt> <tt class="py-line"> <tt class="py-string">"inclusive"</tt><tt class="py-op">:</tt> <tt class="py-string">'false'</tt> <tt class="py-op">}</tt><tt class="py-op">]</tt><tt class="py-op">}</tt> </tt>
-<a name="L391"></a><tt class="py-lineno"> 391</tt> <tt class="py-line"> <tt id="link-94" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-94', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L392"></a><tt class="py-lineno"> 392</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L393"></a><tt class="py-lineno"> 393</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-95', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No ip given, reverting to ip from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L394"></a><tt class="py-lineno"> 394</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L395"></a><tt class="py-lineno"> 395</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L396"></a><tt class="py-lineno"> 396</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-96', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No port given, reverting to port "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L397"></a><tt class="py-lineno"> 397</tt> <tt class="py-line"> <tt class="py-string">"from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L398"></a><tt class="py-lineno"> 398</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> </tt>
-<a name="L399"></a><tt class="py-lineno"> 399</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-97', 'send', 'link-23');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> </tt>
-<a name="L400"></a><tt class="py-lineno"> 400</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">,</tt> </tt>
-<a name="L401"></a><tt class="py-lineno"> 401</tt> <tt class="py-line"> <tt class="py-name">method</tt><tt class="py-op">=</tt><tt class="py-string">"POST"</tt><tt class="py-op">,</tt> </tt>
-<a name="L402"></a><tt class="py-lineno"> 402</tt> <tt class="py-line"> <tt class="py-name">url</tt><tt class="py-op">=</tt><tt class="py-string">"/intents"</tt><tt class="py-op">,</tt> </tt>
-<a name="L403"></a><tt class="py-lineno"> 403</tt> <tt class="py-line"> <tt class="py-name">data</tt><tt class="py-op">=</tt><tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">intentJson</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L404"></a><tt class="py-lineno"> 404</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L405"></a><tt class="py-lineno"> 405</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">201</tt><tt class="py-op">:</tt> </tt>
-<a name="L406"></a><tt class="py-lineno"> 406</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-98', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Successfully POST host"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L407"></a><tt class="py-lineno"> 407</tt> <tt class="py-line"> <tt class="py-string">" intent between host: "</tt> <tt class="py-op">+</tt> <tt class="py-name">hostIdOne</tt> <tt class="py-op">+</tt> </tt>
-<a name="L408"></a><tt class="py-lineno"> 408</tt> <tt class="py-line"> <tt class="py-string">" and host: "</tt> <tt class="py-op">+</tt> <tt class="py-name">hostIdTwo</tt> <tt class="py-op">)</tt> </tt>
-<a name="L409"></a><tt class="py-lineno"> 409</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L410"></a><tt class="py-lineno"> 410</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L411"></a><tt class="py-lineno"> 411</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-99', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-100', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error with REST request, response was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L412"></a><tt class="py-lineno"> 412</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L413"></a><tt class="py-lineno"> 413</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L414"></a><tt class="py-lineno"> 414</tt> <tt class="py-line"> </tt>
-<a name="L415"></a><tt class="py-lineno"> 415</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L416"></a><tt class="py-lineno"> 416</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-101', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L417"></a><tt class="py-lineno"> 417</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L418"></a><tt class="py-lineno"> 418</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.addPointIntent"></a><div id="OnosRestDriver.addPointIntent-def"><a name="L419"></a><tt class="py-lineno"> 419</tt> <a class="py-toggle" href="#" id="OnosRestDriver.addPointIntent-toggle" onclick="return toggle('OnosRestDriver.addPointIntent');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addPointIntent">addPointIntent</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> </tt>
-<a name="L420"></a><tt class="py-lineno"> 420</tt> <tt class="py-line"> <tt class="py-param">ingressDevice</tt><tt class="py-op">,</tt> </tt>
-<a name="L421"></a><tt class="py-lineno"> 421</tt> <tt class="py-line"> <tt class="py-param">egressDevice</tt><tt class="py-op">,</tt> </tt>
-<a name="L422"></a><tt class="py-lineno"> 422</tt> <tt class="py-line"> <tt class="py-param">appId</tt><tt class="py-op">=</tt><tt class="py-string">'org.onosproject.cli'</tt><tt class="py-op">,</tt> </tt>
-<a name="L423"></a><tt class="py-lineno"> 423</tt> <tt class="py-line"> <tt class="py-param">ingressPort</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L424"></a><tt class="py-lineno"> 424</tt> <tt class="py-line"> <tt class="py-param">egressPort</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L425"></a><tt class="py-lineno"> 425</tt> <tt class="py-line"> <tt class="py-param">ethType</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L426"></a><tt class="py-lineno"> 426</tt> <tt class="py-line"> <tt class="py-param">ethSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L427"></a><tt class="py-lineno"> 427</tt> <tt class="py-line"> <tt class="py-param">ethDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L428"></a><tt class="py-lineno"> 428</tt> <tt class="py-line"> <tt class="py-param">bandwidth</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L429"></a><tt class="py-lineno"> 429</tt> <tt class="py-line"> <tt class="py-param">lambdaAlloc</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> </tt>
-<a name="L430"></a><tt class="py-lineno"> 430</tt> <tt class="py-line"> <tt class="py-param">ipProto</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L431"></a><tt class="py-lineno"> 431</tt> <tt class="py-line"> <tt class="py-param">ipSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L432"></a><tt class="py-lineno"> 432</tt> <tt class="py-line"> <tt class="py-param">ipDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L433"></a><tt class="py-lineno"> 433</tt> <tt class="py-line"> <tt class="py-param">tcpSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L434"></a><tt class="py-lineno"> 434</tt> <tt class="py-line"> <tt class="py-param">tcpDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L435"></a><tt class="py-lineno"> 435</tt> <tt class="py-line"> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> </tt>
-<a name="L436"></a><tt class="py-lineno"> 436</tt> <tt class="py-line"> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.addPointIntent-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.addPointIntent-expanded"><a name="L437"></a><tt class="py-lineno"> 437</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L438"></a><tt class="py-lineno"> 438</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L439"></a><tt class="py-lineno"> 439</tt> <tt class="py-line"><tt class="py-docstring"> Adds a point-to-point intent ( uni-directional ) by</tt> </tt>
-<a name="L440"></a><tt class="py-lineno"> 440</tt> <tt class="py-line"><tt class="py-docstring"> specifying device id's and optional fields</tt> </tt>
-<a name="L441"></a><tt class="py-lineno"> 441</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L442"></a><tt class="py-lineno"> 442</tt> <tt class="py-line"><tt class="py-docstring"> * ingressDevice: device id of ingress device</tt> </tt>
-<a name="L443"></a><tt class="py-lineno"> 443</tt> <tt class="py-line"><tt class="py-docstring"> * egressDevice: device id of egress device</tt> </tt>
-<a name="L444"></a><tt class="py-lineno"> 444</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L445"></a><tt class="py-lineno"> 445</tt> <tt class="py-line"><tt class="py-docstring"> * ethType: specify ethType</tt> </tt>
-<a name="L446"></a><tt class="py-lineno"> 446</tt> <tt class="py-line"><tt class="py-docstring"> * ethSrc: specify ethSrc ( i.e. src mac addr )</tt> </tt>
-<a name="L447"></a><tt class="py-lineno"> 447</tt> <tt class="py-line"><tt class="py-docstring"> * ethDst: specify ethDst ( i.e. dst mac addr )</tt> </tt>
-<a name="L448"></a><tt class="py-lineno"> 448</tt> <tt class="py-line"><tt class="py-docstring"> * bandwidth: specify bandwidth capacity of link (TODO)</tt> </tt>
-<a name="L449"></a><tt class="py-lineno"> 449</tt> <tt class="py-line"><tt class="py-docstring"> * lambdaAlloc: if True, intent will allocate lambda</tt> </tt>
-<a name="L450"></a><tt class="py-lineno"> 450</tt> <tt class="py-line"><tt class="py-docstring"> for the specified intent (TODO)</tt> </tt>
-<a name="L451"></a><tt class="py-lineno"> 451</tt> <tt class="py-line"><tt class="py-docstring"> * ipProto: specify ip protocol</tt> </tt>
-<a name="L452"></a><tt class="py-lineno"> 452</tt> <tt class="py-line"><tt class="py-docstring"> * ipSrc: specify ip source address with mask eg. ip#/24</tt> </tt>
-<a name="L453"></a><tt class="py-lineno"> 453</tt> <tt class="py-line"><tt class="py-docstring"> * ipDst: specify ip destination address eg. ip#/24</tt> </tt>
-<a name="L454"></a><tt class="py-lineno"> 454</tt> <tt class="py-line"><tt class="py-docstring"> * tcpSrc: specify tcp source port</tt> </tt>
-<a name="L455"></a><tt class="py-lineno"> 455</tt> <tt class="py-line"><tt class="py-docstring"> * tcpDst: specify tcp destination port</tt> </tt>
-<a name="L456"></a><tt class="py-lineno"> 456</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L457"></a><tt class="py-lineno"> 457</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE for successful requests; Returns main.FALSE if</tt> </tt>
-<a name="L458"></a><tt class="py-lineno"> 458</tt> <tt class="py-line"><tt class="py-docstring"> no ingress|egress port found and if error on requests;</tt> </tt>
-<a name="L459"></a><tt class="py-lineno"> 459</tt> <tt class="py-line"><tt class="py-docstring"> Returns None for exceptions</tt> </tt>
-<a name="L460"></a><tt class="py-lineno"> 460</tt> <tt class="py-line"><tt class="py-docstring"> NOTE:</tt> </tt>
-<a name="L461"></a><tt class="py-lineno"> 461</tt> <tt class="py-line"><tt class="py-docstring"> The ip and port option are for the requests input's ip and port</tt> </tt>
-<a name="L462"></a><tt class="py-lineno"> 462</tt> <tt class="py-line"><tt class="py-docstring"> of the ONOS node</tt> </tt>
-<a name="L463"></a><tt class="py-lineno"> 463</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L464"></a><tt class="py-lineno"> 464</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L465"></a><tt class="py-lineno"> 465</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"/"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ingressDevice</tt><tt class="py-op">:</tt> </tt>
-<a name="L466"></a><tt class="py-lineno"> 466</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ingressPort</tt><tt class="py-op">:</tt> </tt>
-<a name="L467"></a><tt class="py-lineno"> 467</tt> <tt class="py-line"> <tt class="py-name">ingressPort</tt> <tt class="py-op">=</tt> <tt class="py-name">ingressDevice</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"/"</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L468"></a><tt class="py-lineno"> 468</tt> <tt class="py-line"> <tt class="py-name">ingressDevice</tt> <tt class="py-op">=</tt> <tt class="py-name">ingressDevice</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"/"</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L469"></a><tt class="py-lineno"> 469</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L470"></a><tt class="py-lineno"> 470</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ingressPort</tt><tt class="py-op">:</tt> </tt>
-<a name="L471"></a><tt class="py-lineno"> 471</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-102', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Ingress port not specified"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L472"></a><tt class="py-lineno"> 472</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L473"></a><tt class="py-lineno"> 473</tt> <tt class="py-line"> </tt>
-<a name="L474"></a><tt class="py-lineno"> 474</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"/"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">egressDevice</tt><tt class="py-op">:</tt> </tt>
-<a name="L475"></a><tt class="py-lineno"> 475</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">egressPort</tt><tt class="py-op">:</tt> </tt>
-<a name="L476"></a><tt class="py-lineno"> 476</tt> <tt class="py-line"> <tt class="py-name">egressPort</tt> <tt class="py-op">=</tt> <tt class="py-name">egressDevice</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"/"</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L477"></a><tt class="py-lineno"> 477</tt> <tt class="py-line"> <tt class="py-name">egressDevice</tt> <tt class="py-op">=</tt> <tt class="py-name">egressDevice</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"/"</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L478"></a><tt class="py-lineno"> 478</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L479"></a><tt class="py-lineno"> 479</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">egressPort</tt><tt class="py-op">:</tt> </tt>
-<a name="L480"></a><tt class="py-lineno"> 480</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-103', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Egress port not specified"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L481"></a><tt class="py-lineno"> 481</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L482"></a><tt class="py-lineno"> 482</tt> <tt class="py-line"> </tt>
-<a name="L483"></a><tt class="py-lineno"> 483</tt> <tt class="py-line"> <tt class="py-name">intentJson</tt> <tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"ingressPoint"</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">"device"</tt><tt class="py-op">:</tt> <tt class="py-name">ingressDevice</tt><tt class="py-op">,</tt> </tt>
-<a name="L484"></a><tt class="py-lineno"> 484</tt> <tt class="py-line"> <tt class="py-string">"port"</tt><tt class="py-op">:</tt> <tt class="py-name">ingressPort</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L485"></a><tt class="py-lineno"> 485</tt> <tt class="py-line"> <tt class="py-string">"selector"</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">"criteria"</tt><tt class="py-op">:</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L486"></a><tt class="py-lineno"> 486</tt> <tt class="py-line"> <tt class="py-string">"priority"</tt><tt class="py-op">:</tt> <tt class="py-number">55</tt><tt class="py-op">,</tt> </tt>
-<a name="L487"></a><tt class="py-lineno"> 487</tt> <tt class="py-line"> <tt class="py-string">"treatment"</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">"deferred"</tt><tt class="py-op">:</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L488"></a><tt class="py-lineno"> 488</tt> <tt class="py-line"> <tt class="py-string">"instructions"</tt><tt class="py-op">:</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L489"></a><tt class="py-lineno"> 489</tt> <tt class="py-line"> <tt class="py-string">"egressPoint"</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">"device"</tt><tt class="py-op">:</tt> <tt class="py-name">egressDevice</tt><tt class="py-op">,</tt> </tt>
-<a name="L490"></a><tt class="py-lineno"> 490</tt> <tt class="py-line"> <tt class="py-string">"port"</tt><tt class="py-op">:</tt> <tt class="py-name">egressPort</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L491"></a><tt class="py-lineno"> 491</tt> <tt class="py-line"> <tt class="py-string">"appId"</tt><tt class="py-op">:</tt> <tt class="py-name">appId</tt><tt class="py-op">,</tt> </tt>
-<a name="L492"></a><tt class="py-lineno"> 492</tt> <tt class="py-line"> <tt class="py-string">"type"</tt><tt class="py-op">:</tt> <tt class="py-string">"PointToPointIntent"</tt><tt class="py-op">,</tt> </tt>
-<a name="L493"></a><tt class="py-lineno"> 493</tt> <tt class="py-line"> <tt class="py-string">"constraints"</tt><tt class="py-op">:</tt> <tt class="py-op">[</tt> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt> <tt class="py-string">"LinkTypeConstraint"</tt><tt class="py-op">,</tt> </tt>
-<a name="L494"></a><tt class="py-lineno"> 494</tt> <tt class="py-line"> <tt class="py-string">"types"</tt><tt class="py-op">:</tt> <tt class="py-op">[</tt> <tt class="py-string">"OPTICAL"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L495"></a><tt class="py-lineno"> 495</tt> <tt class="py-line"> <tt class="py-string">"inclusive"</tt><tt class="py-op">:</tt> <tt class="py-string">"false"</tt> <tt class="py-op">}</tt> <tt class="py-op">]</tt> <tt class="py-op">}</tt> </tt>
-<a name="L496"></a><tt class="py-lineno"> 496</tt> <tt class="py-line"> </tt>
-<a name="L497"></a><tt class="py-lineno"> 497</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethType</tt> <tt class="py-op">==</tt> <tt class="py-string">"IPV4"</tt><tt class="py-op">:</tt> </tt>
-<a name="L498"></a><tt class="py-lineno"> 498</tt> <tt class="py-line"> <tt class="py-name">intentJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">{</tt> </tt>
-<a name="L499"></a><tt class="py-lineno"> 499</tt> <tt class="py-line"> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"ETH_TYPE"</tt><tt class="py-op">,</tt> </tt>
-<a name="L500"></a><tt class="py-lineno"> 500</tt> <tt class="py-line"> <tt class="py-string">"ethType"</tt><tt class="py-op">:</tt><tt class="py-number">2048</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L501"></a><tt class="py-lineno"> 501</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ethType</tt><tt class="py-op">:</tt> </tt>
-<a name="L502"></a><tt class="py-lineno"> 502</tt> <tt class="py-line"> <tt class="py-name">intentJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">{</tt> </tt>
-<a name="L503"></a><tt class="py-lineno"> 503</tt> <tt class="py-line"> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"ETH_TYPE"</tt><tt class="py-op">,</tt> </tt>
-<a name="L504"></a><tt class="py-lineno"> 504</tt> <tt class="py-line"> <tt class="py-string">"ethType"</tt><tt class="py-op">:</tt><tt class="py-name">ethType</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L505"></a><tt class="py-lineno"> 505</tt> <tt class="py-line"> </tt>
-<a name="L506"></a><tt class="py-lineno"> 506</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L507"></a><tt class="py-lineno"> 507</tt> <tt class="py-line"> <tt class="py-name">intentJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L508"></a><tt class="py-lineno"> 508</tt> <tt class="py-line"> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"ETH_SRC"</tt><tt class="py-op">,</tt> </tt>
-<a name="L509"></a><tt class="py-lineno"> 509</tt> <tt class="py-line"> <tt class="py-string">"mac"</tt><tt class="py-op">:</tt><tt class="py-name">ethSrc</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L510"></a><tt class="py-lineno"> 510</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L511"></a><tt class="py-lineno"> 511</tt> <tt class="py-line"> <tt class="py-name">intentJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L512"></a><tt class="py-lineno"> 512</tt> <tt class="py-line"> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"ETH_DST"</tt><tt class="py-op">,</tt> </tt>
-<a name="L513"></a><tt class="py-lineno"> 513</tt> <tt class="py-line"> <tt class="py-string">"mac"</tt><tt class="py-op">:</tt><tt class="py-name">ethDst</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L514"></a><tt class="py-lineno"> 514</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L515"></a><tt class="py-lineno"> 515</tt> <tt class="py-line"> <tt class="py-name">intentJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L516"></a><tt class="py-lineno"> 516</tt> <tt class="py-line"> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"IPV4_SRC"</tt><tt class="py-op">,</tt> </tt>
-<a name="L517"></a><tt class="py-lineno"> 517</tt> <tt class="py-line"> <tt class="py-string">"ip"</tt><tt class="py-op">:</tt><tt class="py-name">ipSrc</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L518"></a><tt class="py-lineno"> 518</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L519"></a><tt class="py-lineno"> 519</tt> <tt class="py-line"> <tt class="py-name">intentJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L520"></a><tt class="py-lineno"> 520</tt> <tt class="py-line"> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"IPV4_DST"</tt><tt class="py-op">,</tt> </tt>
-<a name="L521"></a><tt class="py-lineno"> 521</tt> <tt class="py-line"> <tt class="py-string">"ip"</tt><tt class="py-op">:</tt><tt class="py-name">ipDst</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L522"></a><tt class="py-lineno"> 522</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tcpSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L523"></a><tt class="py-lineno"> 523</tt> <tt class="py-line"> <tt class="py-name">intentJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L524"></a><tt class="py-lineno"> 524</tt> <tt class="py-line"> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"TCP_SRC"</tt><tt class="py-op">,</tt> </tt>
-<a name="L525"></a><tt class="py-lineno"> 525</tt> <tt class="py-line"> <tt class="py-string">"tcpPort"</tt><tt class="py-op">:</tt> <tt class="py-name">tcpSrc</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L526"></a><tt class="py-lineno"> 526</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tcpDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L527"></a><tt class="py-lineno"> 527</tt> <tt class="py-line"> <tt class="py-name">intentJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L528"></a><tt class="py-lineno"> 528</tt> <tt class="py-line"> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"TCP_DST"</tt><tt class="py-op">,</tt> </tt>
-<a name="L529"></a><tt class="py-lineno"> 529</tt> <tt class="py-line"> <tt class="py-string">"tcpPort"</tt><tt class="py-op">:</tt> <tt class="py-name">tcpDst</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L530"></a><tt class="py-lineno"> 530</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipProto</tt><tt class="py-op">:</tt> </tt>
-<a name="L531"></a><tt class="py-lineno"> 531</tt> <tt class="py-line"> <tt class="py-name">intentJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L532"></a><tt class="py-lineno"> 532</tt> <tt class="py-line"> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"IP_PROTO"</tt><tt class="py-op">,</tt> </tt>
-<a name="L533"></a><tt class="py-lineno"> 533</tt> <tt class="py-line"> <tt class="py-string">"protocol"</tt><tt class="py-op">:</tt> <tt class="py-name">ipProto</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L534"></a><tt class="py-lineno"> 534</tt> <tt class="py-line"> </tt>
-<a name="L535"></a><tt class="py-lineno"> 535</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Bandwidth and Lambda will be implemented if needed</tt> </tt>
-<a name="L536"></a><tt class="py-lineno"> 536</tt> <tt class="py-line"> </tt>
-<a name="L537"></a><tt class="py-lineno"> 537</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-104', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">intentJson</tt> <tt class="py-op">)</tt> </tt>
-<a name="L538"></a><tt class="py-lineno"> 538</tt> <tt class="py-line"> </tt>
-<a name="L539"></a><tt class="py-lineno"> 539</tt> <tt class="py-line"> <tt id="link-105" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-105', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L540"></a><tt class="py-lineno"> 540</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L541"></a><tt class="py-lineno"> 541</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-106" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-106', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No ip given, reverting to ip from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L542"></a><tt class="py-lineno"> 542</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L543"></a><tt class="py-lineno"> 543</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L544"></a><tt class="py-lineno"> 544</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-107', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No port given, reverting to port "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L545"></a><tt class="py-lineno"> 545</tt> <tt class="py-line"> <tt class="py-string">"from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L546"></a><tt class="py-lineno"> 546</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> </tt>
-<a name="L547"></a><tt class="py-lineno"> 547</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-108', 'send', 'link-23');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> </tt>
-<a name="L548"></a><tt class="py-lineno"> 548</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">,</tt> </tt>
-<a name="L549"></a><tt class="py-lineno"> 549</tt> <tt class="py-line"> <tt class="py-name">method</tt><tt class="py-op">=</tt><tt class="py-string">"POST"</tt><tt class="py-op">,</tt> </tt>
-<a name="L550"></a><tt class="py-lineno"> 550</tt> <tt class="py-line"> <tt class="py-name">url</tt><tt class="py-op">=</tt><tt class="py-string">"/intents"</tt><tt class="py-op">,</tt> </tt>
-<a name="L551"></a><tt class="py-lineno"> 551</tt> <tt class="py-line"> <tt class="py-name">data</tt><tt class="py-op">=</tt><tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">intentJson</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L552"></a><tt class="py-lineno"> 552</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L553"></a><tt class="py-lineno"> 553</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">201</tt><tt class="py-op">:</tt> </tt>
-<a name="L554"></a><tt class="py-lineno"> 554</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-109', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Successfully POST point"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L555"></a><tt class="py-lineno"> 555</tt> <tt class="py-line"> <tt class="py-string">" intent between ingress: "</tt> <tt class="py-op">+</tt> <tt class="py-name">ingressDevice</tt> <tt class="py-op">+</tt> </tt>
-<a name="L556"></a><tt class="py-lineno"> 556</tt> <tt class="py-line"> <tt class="py-string">" and egress: "</tt> <tt class="py-op">+</tt> <tt class="py-name">egressDevice</tt> <tt class="py-op">+</tt> <tt class="py-string">" devices"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L557"></a><tt class="py-lineno"> 557</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L558"></a><tt class="py-lineno"> 558</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L559"></a><tt class="py-lineno"> 559</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-110', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-111', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error with REST request, response was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L560"></a><tt class="py-lineno"> 560</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L561"></a><tt class="py-lineno"> 561</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L562"></a><tt class="py-lineno"> 562</tt> <tt class="py-line"> </tt>
-<a name="L563"></a><tt class="py-lineno"> 563</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L564"></a><tt class="py-lineno"> 564</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-112', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L565"></a><tt class="py-lineno"> 565</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L566"></a><tt class="py-lineno"> 566</tt> <tt class="py-line"> </tt>
-<a name="L567"></a><tt class="py-lineno"> 567</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.removeIntent"></a><div id="OnosRestDriver.removeIntent-def"><a name="L568"></a><tt class="py-lineno"> 568</tt> <a class="py-toggle" href="#" id="OnosRestDriver.removeIntent-toggle" onclick="return toggle('OnosRestDriver.removeIntent');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#removeIntent">removeIntent</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">intentId</tt><tt class="py-op">,</tt> <tt class="py-param">appId</tt><tt class="py-op">=</tt><tt class="py-string">'org.onosproject.cli'</tt><tt class="py-op">,</tt> </tt>
-<a name="L569"></a><tt class="py-lineno"> 569</tt> <tt class="py-line"> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.removeIntent-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.removeIntent-expanded"><a name="L570"></a><tt class="py-lineno"> 570</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L571"></a><tt class="py-lineno"> 571</tt> <tt class="py-line"><tt class="py-docstring"> Remove intent for specified application id and intent id;</tt> </tt>
-<a name="L572"></a><tt class="py-lineno"> 572</tt> <tt class="py-line"><tt class="py-docstring"> Returns None for exception</tt> </tt>
-<a name="L573"></a><tt class="py-lineno"> 573</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L574"></a><tt class="py-lineno"> 574</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L575"></a><tt class="py-lineno"> 575</tt> <tt class="py-line"> <tt id="link-113" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-113', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L576"></a><tt class="py-lineno"> 576</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L577"></a><tt class="py-lineno"> 577</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-114', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No ip given, reverting to ip from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L578"></a><tt class="py-lineno"> 578</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L579"></a><tt class="py-lineno"> 579</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L580"></a><tt class="py-lineno"> 580</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-115" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-115', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No port given, reverting to port "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L581"></a><tt class="py-lineno"> 581</tt> <tt class="py-line"> <tt class="py-string">"from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L582"></a><tt class="py-lineno"> 582</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> </tt>
-<a name="L583"></a><tt class="py-lineno"> 583</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: REST url requires the intent id to be in decimal form</tt> </tt>
-<a name="L584"></a><tt class="py-lineno"> 584</tt> <tt class="py-line"> <tt class="py-name">query</tt> <tt class="py-op">=</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">appId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-number">16</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L585"></a><tt class="py-lineno"> 585</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-116', 'send', 'link-23');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> </tt>
-<a name="L586"></a><tt class="py-lineno"> 586</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">,</tt> </tt>
-<a name="L587"></a><tt class="py-lineno"> 587</tt> <tt class="py-line"> <tt class="py-name">method</tt><tt class="py-op">=</tt><tt class="py-string">"DELETE"</tt><tt class="py-op">,</tt> </tt>
-<a name="L588"></a><tt class="py-lineno"> 588</tt> <tt class="py-line"> <tt class="py-name">url</tt><tt class="py-op">=</tt><tt class="py-string">"/intents"</tt> <tt class="py-op">+</tt> <tt class="py-name">query</tt> <tt class="py-op">)</tt> </tt>
-<a name="L589"></a><tt class="py-lineno"> 589</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L590"></a><tt class="py-lineno"> 590</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">200</tt> <tt class="py-op"><=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op"><=</tt> <tt class="py-number">299</tt><tt class="py-op">:</tt> </tt>
-<a name="L591"></a><tt class="py-lineno"> 591</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L592"></a><tt class="py-lineno"> 592</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L593"></a><tt class="py-lineno"> 593</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-117', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-118', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error with REST request, response was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L594"></a><tt class="py-lineno"> 594</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L595"></a><tt class="py-lineno"> 595</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L596"></a><tt class="py-lineno"> 596</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L597"></a><tt class="py-lineno"> 597</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-119', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L598"></a><tt class="py-lineno"> 598</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L599"></a><tt class="py-lineno"> 599</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.getIntentsId"></a><div id="OnosRestDriver.getIntentsId-def"><a name="L600"></a><tt class="py-lineno"> 600</tt> <a class="py-toggle" href="#" id="OnosRestDriver.getIntentsId-toggle" onclick="return toggle('OnosRestDriver.getIntentsId');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getIntentsId">getIntentsId</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.getIntentsId-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.getIntentsId-expanded"><a name="L601"></a><tt class="py-lineno"> 601</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L602"></a><tt class="py-lineno"> 602</tt> <tt class="py-line"><tt class="py-docstring"> Returns a list of intents id; Returns None for exception</tt> </tt>
-<a name="L603"></a><tt class="py-lineno"> 603</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L604"></a><tt class="py-lineno"> 604</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L605"></a><tt class="py-lineno"> 605</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L606"></a><tt class="py-lineno"> 606</tt> <tt class="py-line"> <tt class="py-name">intentsJson</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-120" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-120', 'intents', 'link-38');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L607"></a><tt class="py-lineno"> 607</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">intentsJson</tt> </tt>
-<a name="L608"></a><tt class="py-lineno"> 608</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-121" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-121', 'intent', 'link-39');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsJson</tt><tt class="py-op">:</tt> </tt>
-<a name="L609"></a><tt class="py-lineno"> 609</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-122" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-122', 'intent', 'link-39');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L610"></a><tt class="py-lineno"> 610</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">intentIdList</tt> </tt>
-<a name="L611"></a><tt class="py-lineno"> 611</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">intentIdList</tt> </tt>
-<a name="L612"></a><tt class="py-lineno"> 612</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L613"></a><tt class="py-lineno"> 613</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-123', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L614"></a><tt class="py-lineno"> 614</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L615"></a><tt class="py-lineno"> 615</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.removeAllIntents"></a><div id="OnosRestDriver.removeAllIntents-def"><a name="L616"></a><tt class="py-lineno"> 616</tt> <a class="py-toggle" href="#" id="OnosRestDriver.removeAllIntents-toggle" onclick="return toggle('OnosRestDriver.removeAllIntents');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#removeAllIntents">removeAllIntents</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">intentIdList</tt> <tt class="py-op">=</tt><tt class="py-string">'ALL'</tt><tt class="py-op">,</tt><tt class="py-param">appId</tt><tt class="py-op">=</tt><tt class="py-string">'org.onosproject.cli'</tt><tt class="py-op">,</tt> </tt>
-<a name="L617"></a><tt class="py-lineno"> 617</tt> <tt class="py-line"> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">delay</tt><tt class="py-op">=</tt><tt class="py-number">5</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.removeAllIntents-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.removeAllIntents-expanded"><a name="L618"></a><tt class="py-lineno"> 618</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L619"></a><tt class="py-lineno"> 619</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L620"></a><tt class="py-lineno"> 620</tt> <tt class="py-line"><tt class="py-docstring"> Remove all the intents</tt> </tt>
-<a name="L621"></a><tt class="py-lineno"> 621</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L622"></a><tt class="py-lineno"> 622</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE if all intents are removed, otherwise returns</tt> </tt>
-<a name="L623"></a><tt class="py-lineno"> 623</tt> <tt class="py-line"><tt class="py-docstring"> main.FALSE; Returns None for exception</tt> </tt>
-<a name="L624"></a><tt class="py-lineno"> 624</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L625"></a><tt class="py-lineno"> 625</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L626"></a><tt class="py-lineno"> 626</tt> <tt class="py-line"> <tt class="py-name">results</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L627"></a><tt class="py-lineno"> 627</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentIdList</tt> <tt class="py-op">==</tt> <tt class="py-string">'ALL'</tt><tt class="py-op">:</tt> </tt>
-<a name="L628"></a><tt class="py-lineno"> 628</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-124" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getIntentsId()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getIntentsId"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getIntentsId" class="py-name" href="#" onclick="return doclink('link-124', 'getIntentsId', 'link-124');">getIntentsId</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">port</tt> <tt class="py-op">)</tt> </tt>
-<a name="L629"></a><tt class="py-lineno"> 629</tt> <tt class="py-line"> </tt>
-<a name="L630"></a><tt class="py-lineno"> 630</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-125', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Removing intents "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L631"></a><tt class="py-lineno"> 631</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">intentIdList</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L632"></a><tt class="py-lineno"> 632</tt> <tt class="py-line"> </tt>
-<a name="L633"></a><tt class="py-lineno"> 633</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">intentIdList</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">ListType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L634"></a><tt class="py-lineno"> 634</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-126" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-126', 'intent', 'link-39');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentIdList</tt><tt class="py-op">:</tt> </tt>
-<a name="L635"></a><tt class="py-lineno"> 635</tt> <tt class="py-line"> <tt class="py-name">results</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.removeIntent()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#removeIntent,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.removeIntent()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#removeIntent"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.removeIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.removeIntent" class="py-name" href="#" onclick="return doclink('link-127', 'removeIntent', 'link-127');">removeIntent</a></tt><tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">=</tt><tt id="link-128" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-128', 'intent', 'link-39');">intent</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L636"></a><tt class="py-lineno"> 636</tt> <tt class="py-line"> <tt class="py-name">appId</tt><tt class="py-op">=</tt><tt class="py-name">appId</tt><tt class="py-op">,</tt> </tt>
-<a name="L637"></a><tt class="py-lineno"> 637</tt> <tt class="py-line"> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">ip</tt><tt class="py-op">,</tt> </tt>
-<a name="L638"></a><tt class="py-lineno"> 638</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">port</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L639"></a><tt class="py-lineno"> 639</tt> <tt class="py-line"> <tt class="py-comment"># Check for remaining intents</tt> </tt>
-<a name="L640"></a><tt class="py-lineno"> 640</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Noticing some delay on Deleting the intents so i put</tt> </tt>
-<a name="L641"></a><tt class="py-lineno"> 641</tt> <tt class="py-line"> <tt class="py-comment"># this time out</tt> </tt>
-<a name="L642"></a><tt class="py-lineno"> 642</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L643"></a><tt class="py-lineno"> 643</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">delay</tt> <tt class="py-op">)</tt> </tt>
-<a name="L644"></a><tt class="py-lineno"> 644</tt> <tt class="py-line"> <tt class="py-name">intentRemain</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-129', 'intents', 'link-38');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L645"></a><tt class="py-lineno"> 645</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt> <tt class="py-name">result</tt><tt class="py-op">==</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> <tt class="py-keyword">for</tt> <tt class="py-name">result</tt> <tt class="py-keyword">in</tt> <tt class="py-name">results</tt> <tt class="py-op">)</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L646"></a><tt class="py-lineno"> 646</tt> <tt class="py-line"> <tt class="py-name">intentRemain</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L647"></a><tt class="py-lineno"> 647</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-130" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-130', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": All intents are removed "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L648"></a><tt class="py-lineno"> 648</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L649"></a><tt class="py-lineno"> 649</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L650"></a><tt class="py-lineno"> 650</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-131', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-132', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Did not removed all intents,"</tt> </tt>
-<a name="L651"></a><tt class="py-lineno"> 651</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" there are "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">intentRemain</tt> <tt class="py-op">)</tt> </tt>
-<a name="L652"></a><tt class="py-lineno"> 652</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" intents remaining"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L653"></a><tt class="py-lineno"> 653</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L654"></a><tt class="py-lineno"> 654</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L655"></a><tt class="py-lineno"> 655</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-133', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": There is no intents ID list"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L656"></a><tt class="py-lineno"> 656</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L657"></a><tt class="py-lineno"> 657</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-134" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-134', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L658"></a><tt class="py-lineno"> 658</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L659"></a><tt class="py-lineno"> 659</tt> <tt class="py-line"> </tt>
-<a name="L660"></a><tt class="py-lineno"> 660</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.hosts"></a><div id="OnosRestDriver.hosts-def"><a name="L661"></a><tt class="py-lineno"> 661</tt> <a class="py-toggle" href="#" id="OnosRestDriver.hosts-toggle" onclick="return toggle('OnosRestDriver.hosts');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#hosts">hosts</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.hosts-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.hosts-expanded"><a name="L662"></a><tt class="py-lineno"> 662</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L663"></a><tt class="py-lineno"> 663</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L664"></a><tt class="py-lineno"> 664</tt> <tt class="py-line"><tt class="py-docstring"> Get a list of dictionary of all discovered hosts</tt> </tt>
-<a name="L665"></a><tt class="py-lineno"> 665</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L666"></a><tt class="py-lineno"> 666</tt> <tt class="py-line"><tt class="py-docstring"> Returns a list of dictionary of information of the hosts currently</tt> </tt>
-<a name="L667"></a><tt class="py-lineno"> 667</tt> <tt class="py-line"><tt class="py-docstring"> discovered by ONOS; Returns main.FALSE if error on requests;</tt> </tt>
-<a name="L668"></a><tt class="py-lineno"> 668</tt> <tt class="py-line"><tt class="py-docstring"> Returns None for exception</tt> </tt>
-<a name="L669"></a><tt class="py-lineno"> 669</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L670"></a><tt class="py-lineno"> 670</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L671"></a><tt class="py-lineno"> 671</tt> <tt class="py-line"> <tt id="link-135" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-135', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L672"></a><tt class="py-lineno"> 672</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L673"></a><tt class="py-lineno"> 673</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-136" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-136', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No ip given, reverting to ip from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L674"></a><tt class="py-lineno"> 674</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L675"></a><tt class="py-lineno"> 675</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L676"></a><tt class="py-lineno"> 676</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-137', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No port given, reverting to port \</tt> </tt>
-<a name="L677"></a><tt class="py-lineno"> 677</tt> <tt class="py-line"><tt class="py-string"> from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L678"></a><tt class="py-lineno"> 678</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> </tt>
-<a name="L679"></a><tt class="py-lineno"> 679</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-138', 'send', 'link-23');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">url</tt><tt class="py-op">=</tt><tt class="py-string">"/hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L680"></a><tt class="py-lineno"> 680</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L681"></a><tt class="py-lineno"> 681</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">200</tt> <tt class="py-op"><=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op"><=</tt> <tt class="py-number">299</tt><tt class="py-op">:</tt> </tt>
-<a name="L682"></a><tt class="py-lineno"> 682</tt> <tt class="py-line"> <tt id="link-139" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-139', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L683"></a><tt class="py-lineno"> 683</tt> <tt class="py-line"> <tt class="py-name">a</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-140" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-140', 'output', 'link-20');">output</a></tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'hosts'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L684"></a><tt class="py-lineno"> 684</tt> <tt class="py-line"> <tt class="py-name">b</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">a</tt> <tt class="py-op">)</tt> </tt>
-<a name="L685"></a><tt class="py-lineno"> 685</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">b</tt> </tt>
-<a name="L686"></a><tt class="py-lineno"> 686</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L687"></a><tt class="py-lineno"> 687</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-141" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-141', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-142', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error with REST request, response was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L688"></a><tt class="py-lineno"> 688</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L689"></a><tt class="py-lineno"> 689</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L690"></a><tt class="py-lineno"> 690</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L691"></a><tt class="py-lineno"> 691</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-143', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L692"></a><tt class="py-lineno"> 692</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L693"></a><tt class="py-lineno"> 693</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.getHost"></a><div id="OnosRestDriver.getHost-def"><a name="L694"></a><tt class="py-lineno"> 694</tt> <a class="py-toggle" href="#" id="OnosRestDriver.getHost-toggle" onclick="return toggle('OnosRestDriver.getHost');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getHost">getHost</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">mac</tt><tt class="py-op">,</tt> <tt class="py-param">vlan</tt><tt class="py-op">=</tt><tt class="py-string">"-1"</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.getHost-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.getHost-expanded"><a name="L695"></a><tt class="py-lineno"> 695</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L696"></a><tt class="py-lineno"> 696</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L697"></a><tt class="py-lineno"> 697</tt> <tt class="py-line"><tt class="py-docstring"> Gets the information from the given host</tt> </tt>
-<a name="L698"></a><tt class="py-lineno"> 698</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L699"></a><tt class="py-lineno"> 699</tt> <tt class="py-line"><tt class="py-docstring"> str mac - MAC address of the host</tt> </tt>
-<a name="L700"></a><tt class="py-lineno"> 700</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L701"></a><tt class="py-lineno"> 701</tt> <tt class="py-line"><tt class="py-docstring"> str vlan - VLAN tag of the host, defaults to -1</tt> </tt>
-<a name="L702"></a><tt class="py-lineno"> 702</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L703"></a><tt class="py-lineno"> 703</tt> <tt class="py-line"><tt class="py-docstring"> Return the host id from the hosts/mac/vlan output in REST api</tt> </tt>
-<a name="L704"></a><tt class="py-lineno"> 704</tt> <tt class="py-line"><tt class="py-docstring"> whose 'id' contains mac/vlan; Returns None for exception;</tt> </tt>
-<a name="L705"></a><tt class="py-lineno"> 705</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.FALSE if error on requests</tt> </tt>
-<a name="L706"></a><tt class="py-lineno"> 706</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L707"></a><tt class="py-lineno"> 707</tt> <tt class="py-line"><tt class="py-docstring"> NOTE:</tt> </tt>
-<a name="L708"></a><tt class="py-lineno"> 708</tt> <tt class="py-line"><tt class="py-docstring"> Not sure what this function should do, any suggestion?</tt> </tt>
-<a name="L709"></a><tt class="py-lineno"> 709</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L710"></a><tt class="py-lineno"> 710</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L711"></a><tt class="py-lineno"> 711</tt> <tt class="py-line"> <tt id="link-144" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-144', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L712"></a><tt class="py-lineno"> 712</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L713"></a><tt class="py-lineno"> 713</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-145" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-145', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No ip given, reverting to ip from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L714"></a><tt class="py-lineno"> 714</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L715"></a><tt class="py-lineno"> 715</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L716"></a><tt class="py-lineno"> 716</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-146" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-146', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No port given, reverting to port \</tt> </tt>
-<a name="L717"></a><tt class="py-lineno"> 717</tt> <tt class="py-line"><tt class="py-string"> from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L718"></a><tt class="py-lineno"> 718</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> </tt>
-<a name="L719"></a><tt class="py-lineno"> 719</tt> <tt class="py-line"> <tt class="py-name">query</tt> <tt class="py-op">=</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">mac</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">vlan</tt> </tt>
-<a name="L720"></a><tt class="py-lineno"> 720</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-147', 'send', 'link-23');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">url</tt><tt class="py-op">=</tt><tt class="py-string">"/hosts"</tt> <tt class="py-op">+</tt> <tt class="py-name">query</tt> <tt class="py-op">)</tt> </tt>
-<a name="L721"></a><tt class="py-lineno"> 721</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L722"></a><tt class="py-lineno"> 722</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: What if the person wants other values? would it be better</tt> </tt>
-<a name="L723"></a><tt class="py-lineno"> 723</tt> <tt class="py-line"> <tt class="py-comment"># to have a function that gets a key and return a value instead?</tt> </tt>
-<a name="L724"></a><tt class="py-lineno"> 724</tt> <tt class="py-line"> <tt class="py-comment"># This function requires mac and vlan and returns an ID which</tt> </tt>
-<a name="L725"></a><tt class="py-lineno"> 725</tt> <tt class="py-line"> <tt class="py-comment"># makes this current function useless</tt> </tt>
-<a name="L726"></a><tt class="py-lineno"> 726</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">200</tt> <tt class="py-op"><=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op"><=</tt> <tt class="py-number">299</tt><tt class="py-op">:</tt> </tt>
-<a name="L727"></a><tt class="py-lineno"> 727</tt> <tt class="py-line"> <tt id="link-148" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-148', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L728"></a><tt class="py-lineno"> 728</tt> <tt class="py-line"> <tt class="py-name">hostId</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-149" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-149', 'output', 'link-20');">output</a></tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L729"></a><tt class="py-lineno"> 729</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">hostId</tt> </tt>
-<a name="L730"></a><tt class="py-lineno"> 730</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L731"></a><tt class="py-lineno"> 731</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-150" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-150', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-151" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-151', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error with REST request, response was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L732"></a><tt class="py-lineno"> 732</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L733"></a><tt class="py-lineno"> 733</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L734"></a><tt class="py-lineno"> 734</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L735"></a><tt class="py-lineno"> 735</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-152', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L736"></a><tt class="py-lineno"> 736</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L737"></a><tt class="py-lineno"> 737</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.topology"></a><div id="OnosRestDriver.topology-def"><a name="L738"></a><tt class="py-lineno"> 738</tt> <a class="py-toggle" href="#" id="OnosRestDriver.topology-toggle" onclick="return toggle('OnosRestDriver.topology');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#topology">topology</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.topology-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.topology-expanded"><a name="L739"></a><tt class="py-lineno"> 739</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L740"></a><tt class="py-lineno"> 740</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L741"></a><tt class="py-lineno"> 741</tt> <tt class="py-line"><tt class="py-docstring"> Gets the overview of network topology</tt> </tt>
-<a name="L742"></a><tt class="py-lineno"> 742</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L743"></a><tt class="py-lineno"> 743</tt> <tt class="py-line"><tt class="py-docstring"> Returns a dictionary containing information about network topology;</tt> </tt>
-<a name="L744"></a><tt class="py-lineno"> 744</tt> <tt class="py-line"><tt class="py-docstring"> Returns None for exception</tt> </tt>
-<a name="L745"></a><tt class="py-lineno"> 745</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L746"></a><tt class="py-lineno"> 746</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L747"></a><tt class="py-lineno"> 747</tt> <tt class="py-line"> <tt id="link-153" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-153', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L748"></a><tt class="py-lineno"> 748</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L749"></a><tt class="py-lineno"> 749</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-154" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-154', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No ip given, reverting to ip from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L750"></a><tt class="py-lineno"> 750</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L751"></a><tt class="py-lineno"> 751</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L752"></a><tt class="py-lineno"> 752</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-155', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No port given, reverting to port \</tt> </tt>
-<a name="L753"></a><tt class="py-lineno"> 753</tt> <tt class="py-line"><tt class="py-string"> from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L754"></a><tt class="py-lineno"> 754</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> </tt>
-<a name="L755"></a><tt class="py-lineno"> 755</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-156" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-156', 'send', 'link-23');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">url</tt><tt class="py-op">=</tt><tt class="py-string">"/topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L756"></a><tt class="py-lineno"> 756</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L757"></a><tt class="py-lineno"> 757</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">200</tt> <tt class="py-op"><=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op"><=</tt> <tt class="py-number">299</tt><tt class="py-op">:</tt> </tt>
-<a name="L758"></a><tt class="py-lineno"> 758</tt> <tt class="py-line"> <tt id="link-157" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-157', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L759"></a><tt class="py-lineno"> 759</tt> <tt class="py-line"> <tt class="py-name">a</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-158" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-158', 'output', 'link-20');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L760"></a><tt class="py-lineno"> 760</tt> <tt class="py-line"> <tt class="py-name">b</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">a</tt> <tt class="py-op">)</tt> </tt>
-<a name="L761"></a><tt class="py-lineno"> 761</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">b</tt> </tt>
-<a name="L762"></a><tt class="py-lineno"> 762</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L763"></a><tt class="py-lineno"> 763</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-159" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-159', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-160" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-160', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error with REST request, response was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L764"></a><tt class="py-lineno"> 764</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L765"></a><tt class="py-lineno"> 765</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L766"></a><tt class="py-lineno"> 766</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L767"></a><tt class="py-lineno"> 767</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-161" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-161', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L768"></a><tt class="py-lineno"> 768</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L769"></a><tt class="py-lineno"> 769</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.getIntentState"></a><div id="OnosRestDriver.getIntentState-def"><a name="L770"></a><tt class="py-lineno"> 770</tt> <a class="py-toggle" href="#" id="OnosRestDriver.getIntentState-toggle" onclick="return toggle('OnosRestDriver.getIntentState');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getIntentState">getIntentState</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">intentsId</tt><tt class="py-op">,</tt> <tt class="py-param">intentsJson</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L771"></a><tt class="py-lineno"> 771</tt> <tt class="py-line"> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.getIntentState-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.getIntentState-expanded"><a name="L772"></a><tt class="py-lineno"> 772</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L773"></a><tt class="py-lineno"> 773</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L774"></a><tt class="py-lineno"> 774</tt> <tt class="py-line"><tt class="py-docstring"> Get intent state.</tt> </tt>
-<a name="L775"></a><tt class="py-lineno"> 775</tt> <tt class="py-line"><tt class="py-docstring"> Accepts a single intent ID (string type) or a list of intent IDs.</tt> </tt>
-<a name="L776"></a><tt class="py-lineno"> 776</tt> <tt class="py-line"><tt class="py-docstring"> Returns the state(string type) of the id if a single intent ID is</tt> </tt>
-<a name="L777"></a><tt class="py-lineno"> 777</tt> <tt class="py-line"><tt class="py-docstring"> accepted.</tt> </tt>
-<a name="L778"></a><tt class="py-lineno"> 778</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L779"></a><tt class="py-lineno"> 779</tt> <tt class="py-line"><tt class="py-docstring"> intentId: intent ID (string type)</tt> </tt>
-<a name="L780"></a><tt class="py-lineno"> 780</tt> <tt class="py-line"><tt class="py-docstring"> intentsJson: parsed json object from the onos:intents api</tt> </tt>
-<a name="L781"></a><tt class="py-lineno"> 781</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L782"></a><tt class="py-lineno"> 782</tt> <tt class="py-line"><tt class="py-docstring"> Returns a dictionary with intent IDs as the key and its</tt> </tt>
-<a name="L783"></a><tt class="py-lineno"> 783</tt> <tt class="py-line"><tt class="py-docstring"> corresponding states as the values; Returns None for invalid IDs or</tt> </tt>
-<a name="L784"></a><tt class="py-lineno"> 784</tt> <tt class="py-line"><tt class="py-docstring"> Type error and any exceptions</tt> </tt>
-<a name="L785"></a><tt class="py-lineno"> 785</tt> <tt class="py-line"><tt class="py-docstring"> NOTE:</tt> </tt>
-<a name="L786"></a><tt class="py-lineno"> 786</tt> <tt class="py-line"><tt class="py-docstring"> An intent's state consist of INSTALLED,WITHDRAWN etc.</tt> </tt>
-<a name="L787"></a><tt class="py-lineno"> 787</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L788"></a><tt class="py-lineno"> 788</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L789"></a><tt class="py-lineno"> 789</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt class="py-string">"State is Undefined"</tt> </tt>
-<a name="L790"></a><tt class="py-lineno"> 790</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">intentsJson</tt><tt class="py-op">:</tt> </tt>
-<a name="L791"></a><tt class="py-lineno"> 791</tt> <tt class="py-line"> <tt class="py-name">intentsJsonTemp</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-162', 'intents', 'link-38');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L792"></a><tt class="py-lineno"> 792</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L793"></a><tt class="py-lineno"> 793</tt> <tt class="py-line"> <tt class="py-name">intentsJsonTemp</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">intentsJson</tt> <tt class="py-op">)</tt> </tt>
-<a name="L794"></a><tt class="py-lineno"> 794</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L795"></a><tt class="py-lineno"> 795</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-163" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-163', 'intent', 'link-39');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsJsonTemp</tt><tt class="py-op">:</tt> </tt>
-<a name="L796"></a><tt class="py-lineno"> 796</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">==</tt> <tt id="link-164" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-164', 'intent', 'link-39');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L797"></a><tt class="py-lineno"> 797</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-165" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-165', 'intent', 'link-39');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L798"></a><tt class="py-lineno"> 798</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">state</tt> </tt>
-<a name="L799"></a><tt class="py-lineno"> 799</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-166" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-166', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Cannot find intent ID"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L800"></a><tt class="py-lineno"> 800</tt> <tt class="py-line"> <tt class="py-string">" on the list"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L801"></a><tt class="py-lineno"> 801</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">state</tt> </tt>
-<a name="L802"></a><tt class="py-lineno"> 802</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">ListType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L803"></a><tt class="py-lineno"> 803</tt> <tt class="py-line"> <tt class="py-name">dictList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L804"></a><tt class="py-lineno"> 804</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L805"></a><tt class="py-lineno"> 805</tt> <tt class="py-line"> <tt class="py-name">stateDict</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L806"></a><tt class="py-lineno"> 806</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-167" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-167', 'intents', 'link-38');">intents</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsJsonTemp</tt><tt class="py-op">:</tt> </tt>
-<a name="L807"></a><tt class="py-lineno"> 807</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentsId</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt id="link-168" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-168', 'intents', 'link-38');">intents</a></tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L808"></a><tt class="py-lineno"> 808</tt> <tt class="py-line"> <tt class="py-name">stateDict</tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-169" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-169', 'intents', 'link-38');">intents</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L809"></a><tt class="py-lineno"> 809</tt> <tt class="py-line"> <tt class="py-name">stateDict</tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">intentsId</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> </tt>
-<a name="L810"></a><tt class="py-lineno"> 810</tt> <tt class="py-line"> <tt class="py-name">dictList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">stateDict</tt> <tt class="py-op">)</tt> </tt>
-<a name="L811"></a><tt class="py-lineno"> 811</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L812"></a><tt class="py-lineno"> 812</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">dictList</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L813"></a><tt class="py-lineno"> 813</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-170" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-170', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Cannot find some of the intent ID state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L814"></a><tt class="py-lineno"> 814</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">dictList</tt> </tt>
-<a name="L815"></a><tt class="py-lineno"> 815</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L816"></a><tt class="py-lineno"> 816</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-171" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-171', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Invalid intents ID entry"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L817"></a><tt class="py-lineno"> 817</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L818"></a><tt class="py-lineno"> 818</tt> <tt class="py-line"> </tt>
-<a name="L819"></a><tt class="py-lineno"> 819</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L820"></a><tt class="py-lineno"> 820</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-172" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-172', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object Type not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L821"></a><tt class="py-lineno"> 821</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L822"></a><tt class="py-lineno"> 822</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L823"></a><tt class="py-lineno"> 823</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-173', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L824"></a><tt class="py-lineno"> 824</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L825"></a><tt class="py-lineno"> 825</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.checkIntentState"></a><div id="OnosRestDriver.checkIntentState-def"><a name="L826"></a><tt class="py-lineno"> 826</tt> <a class="py-toggle" href="#" id="OnosRestDriver.checkIntentState-toggle" onclick="return toggle('OnosRestDriver.checkIntentState');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#checkIntentState">checkIntentState</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">intentsId</tt><tt class="py-op">=</tt><tt class="py-string">"ALL"</tt><tt class="py-op">,</tt> <tt class="py-param">expectedState</tt><tt class="py-op">=</tt><tt class="py-string">'INSTALLED'</tt><tt class="py-op">,</tt> </tt>
-<a name="L827"></a><tt class="py-lineno"> 827</tt> <tt class="py-line"> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.checkIntentState-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.checkIntentState-expanded"><a name="L828"></a><tt class="py-lineno"> 828</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L829"></a><tt class="py-lineno"> 829</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L830"></a><tt class="py-lineno"> 830</tt> <tt class="py-line"><tt class="py-docstring"> Check intents state based on expected state which defaults to</tt> </tt>
-<a name="L831"></a><tt class="py-lineno"> 831</tt> <tt class="py-line"><tt class="py-docstring"> INSTALLED state</tt> </tt>
-<a name="L832"></a><tt class="py-lineno"> 832</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L833"></a><tt class="py-lineno"> 833</tt> <tt class="py-line"><tt class="py-docstring"> intentsId - List of intents ID to be checked</tt> </tt>
-<a name="L834"></a><tt class="py-lineno"> 834</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L835"></a><tt class="py-lineno"> 835</tt> <tt class="py-line"><tt class="py-docstring"> expectedState - Check the expected state(s) of each intents</tt> </tt>
-<a name="L836"></a><tt class="py-lineno"> 836</tt> <tt class="py-line"><tt class="py-docstring"> state in the list.</tt> </tt>
-<a name="L837"></a><tt class="py-lineno"> 837</tt> <tt class="py-line"><tt class="py-docstring"> *NOTE: You can pass in a list of expected state,</tt> </tt>
-<a name="L838"></a><tt class="py-lineno"> 838</tt> <tt class="py-line"><tt class="py-docstring"> Eg: expectedState = [ 'INSTALLED' , 'INSTALLING' ]</tt> </tt>
-<a name="L839"></a><tt class="py-lineno"> 839</tt> <tt class="py-line"><tt class="py-docstring"> Return:</tt> </tt>
-<a name="L840"></a><tt class="py-lineno"> 840</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE only if all intent are the same as expected states</tt> </tt>
-<a name="L841"></a><tt class="py-lineno"> 841</tt> <tt class="py-line"><tt class="py-docstring"> , otherwise, returns main.FALSE; Returns None for general exception</tt> </tt>
-<a name="L842"></a><tt class="py-lineno"> 842</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L843"></a><tt class="py-lineno"> 843</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L844"></a><tt class="py-lineno"> 844</tt> <tt class="py-line"> <tt class="py-comment"># Generating a dictionary: intent id as a key and state as value</tt> </tt>
-<a name="L845"></a><tt class="py-lineno"> 845</tt> <tt class="py-line"> <tt class="py-name">returnValue</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L846"></a><tt class="py-lineno"> 846</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">==</tt> <tt class="py-string">"ALL"</tt><tt class="py-op">:</tt> </tt>
-<a name="L847"></a><tt class="py-lineno"> 847</tt> <tt class="py-line"> <tt class="py-name">intentsId</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-174" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getIntentsId" class="py-name" href="#" onclick="return doclink('link-174', 'getIntentsId', 'link-124');">getIntentsId</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">port</tt> <tt class="py-op">)</tt> </tt>
-<a name="L848"></a><tt class="py-lineno"> 848</tt> <tt class="py-line"> <tt class="py-name">intentsDict</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-175" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getIntentState()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getIntentState,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getIntentState()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getIntentState"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getIntentState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getIntentState" class="py-name" href="#" onclick="return doclink('link-175', 'getIntentState', 'link-175');">getIntentState</a></tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt><tt class="py-op">,</tt> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">port</tt> <tt class="py-op">)</tt> </tt>
-<a name="L849"></a><tt class="py-lineno"> 849</tt> <tt class="py-line"> </tt>
-<a name="L850"></a><tt class="py-lineno"> 850</tt> <tt class="py-line"> <tt class="py-comment">#print "len of intentsDict ", str( len( intentsDict ) )</tt> </tt>
-<a name="L851"></a><tt class="py-lineno"> 851</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentsDict</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L852"></a><tt class="py-lineno"> 852</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-176" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-176', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-177" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-177', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": There is something wrong "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L853"></a><tt class="py-lineno"> 853</tt> <tt class="py-line"> <tt class="py-string">"getting intents state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L854"></a><tt class="py-lineno"> 854</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L855"></a><tt class="py-lineno"> 855</tt> <tt class="py-line"> </tt>
-<a name="L856"></a><tt class="py-lineno"> 856</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">expectedState</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L857"></a><tt class="py-lineno"> 857</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-178" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-178', 'intents', 'link-38');">intents</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsDict</tt><tt class="py-op">:</tt> </tt>
-<a name="L858"></a><tt class="py-lineno"> 858</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-179" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-179', 'intents', 'link-38');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">expectedState</tt><tt class="py-op">:</tt> </tt>
-<a name="L859"></a><tt class="py-lineno"> 859</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-180" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-180', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" : Intent ID - "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L860"></a><tt class="py-lineno"> 860</tt> <tt class="py-line"> <tt id="link-181" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-181', 'intents', 'link-38');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L861"></a><tt class="py-lineno"> 861</tt> <tt class="py-line"> <tt class="py-string">" actual state = "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L862"></a><tt class="py-lineno"> 862</tt> <tt class="py-line"> <tt id="link-182" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-182', 'intents', 'link-38');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L863"></a><tt class="py-lineno"> 863</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" does not equal expected state = "</tt> </tt>
-<a name="L864"></a><tt class="py-lineno"> 864</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">expectedState</tt> <tt class="py-op">)</tt> </tt>
-<a name="L865"></a><tt class="py-lineno"> 865</tt> <tt class="py-line"> <tt class="py-name">returnValue</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L866"></a><tt class="py-lineno"> 866</tt> <tt class="py-line"> </tt>
-<a name="L867"></a><tt class="py-lineno"> 867</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">expectedState</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">ListType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L868"></a><tt class="py-lineno"> 868</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-183" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-183', 'intents', 'link-38');">intents</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsDict</tt><tt class="py-op">:</tt> </tt>
-<a name="L869"></a><tt class="py-lineno"> 869</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">any</tt><tt class="py-op">(</tt> <tt class="py-name">state</tt> <tt class="py-op">==</tt> <tt id="link-184" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-184', 'intents', 'link-38');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">state</tt> <tt class="py-keyword">in</tt> </tt>
-<a name="L870"></a><tt class="py-lineno"> 870</tt> <tt class="py-line"> <tt class="py-name">expectedState</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L871"></a><tt class="py-lineno"> 871</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-185" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-185', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" : Intent ID - "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L872"></a><tt class="py-lineno"> 872</tt> <tt class="py-line"> <tt id="link-186" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-186', 'intents', 'link-38');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L873"></a><tt class="py-lineno"> 873</tt> <tt class="py-line"> <tt class="py-string">" actual state = "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L874"></a><tt class="py-lineno"> 874</tt> <tt class="py-line"> <tt id="link-187" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-187', 'intents', 'link-38');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L875"></a><tt class="py-lineno"> 875</tt> <tt class="py-line"> <tt class="py-string">" does not equal expected states = "</tt> </tt>
-<a name="L876"></a><tt class="py-lineno"> 876</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">expectedState</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L877"></a><tt class="py-lineno"> 877</tt> <tt class="py-line"> <tt class="py-name">returnValue</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L878"></a><tt class="py-lineno"> 878</tt> <tt class="py-line"> </tt>
-<a name="L879"></a><tt class="py-lineno"> 879</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">returnValue</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L880"></a><tt class="py-lineno"> 880</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-188" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-188', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": All "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L881"></a><tt class="py-lineno"> 881</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentsDict</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L882"></a><tt class="py-lineno"> 882</tt> <tt class="py-line"> <tt class="py-string">" intents are in "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">expectedState</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L883"></a><tt class="py-lineno"> 883</tt> <tt class="py-line"> <tt class="py-string">" state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L884"></a><tt class="py-lineno"> 884</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">returnValue</tt> </tt>
-<a name="L885"></a><tt class="py-lineno"> 885</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L886"></a><tt class="py-lineno"> 886</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-189" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-189', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L887"></a><tt class="py-lineno"> 887</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L888"></a><tt class="py-lineno"> 888</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L889"></a><tt class="py-lineno"> 889</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-190" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-190', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L890"></a><tt class="py-lineno"> 890</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L891"></a><tt class="py-lineno"> 891</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.flows"></a><div id="OnosRestDriver.flows-def"><a name="L892"></a><tt class="py-lineno"> 892</tt> <a class="py-toggle" href="#" id="OnosRestDriver.flows-toggle" onclick="return toggle('OnosRestDriver.flows');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#flows">flows</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.flows-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.flows-expanded"><a name="L893"></a><tt class="py-lineno"> 893</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L894"></a><tt class="py-lineno"> 894</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L895"></a><tt class="py-lineno"> 895</tt> <tt class="py-line"><tt class="py-docstring"> Get flows currently added to the system</tt> </tt>
-<a name="L896"></a><tt class="py-lineno"> 896</tt> <tt class="py-line"><tt class="py-docstring"> NOTE:</tt> </tt>
-<a name="L897"></a><tt class="py-lineno"> 897</tt> <tt class="py-line"><tt class="py-docstring"> The flows -j cli command has completely different format than</tt> </tt>
-<a name="L898"></a><tt class="py-lineno"> 898</tt> <tt class="py-line"><tt class="py-docstring"> the REST output; Returns None for exception</tt> </tt>
-<a name="L899"></a><tt class="py-lineno"> 899</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L900"></a><tt class="py-lineno"> 900</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L901"></a><tt class="py-lineno"> 901</tt> <tt class="py-line"> <tt id="link-191" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-191', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L902"></a><tt class="py-lineno"> 902</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L903"></a><tt class="py-lineno"> 903</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-192" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-192', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No ip given, reverting to ip from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L904"></a><tt class="py-lineno"> 904</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L905"></a><tt class="py-lineno"> 905</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L906"></a><tt class="py-lineno"> 906</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-193" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-193', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No port given, reverting to port \</tt> </tt>
-<a name="L907"></a><tt class="py-lineno"> 907</tt> <tt class="py-line"><tt class="py-string"> from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L908"></a><tt class="py-lineno"> 908</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> </tt>
-<a name="L909"></a><tt class="py-lineno"> 909</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-194" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-194', 'send', 'link-23');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">url</tt><tt class="py-op">=</tt><tt class="py-string">"/flows"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L910"></a><tt class="py-lineno"> 910</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L911"></a><tt class="py-lineno"> 911</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">200</tt> <tt class="py-op"><=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op"><=</tt> <tt class="py-number">299</tt><tt class="py-op">:</tt> </tt>
-<a name="L912"></a><tt class="py-lineno"> 912</tt> <tt class="py-line"> <tt id="link-195" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-195', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L913"></a><tt class="py-lineno"> 913</tt> <tt class="py-line"> <tt class="py-name">a</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-196" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-196', 'output', 'link-20');">output</a></tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'flows'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L914"></a><tt class="py-lineno"> 914</tt> <tt class="py-line"> <tt class="py-name">b</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">a</tt> <tt class="py-op">)</tt> </tt>
-<a name="L915"></a><tt class="py-lineno"> 915</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">b</tt> </tt>
-<a name="L916"></a><tt class="py-lineno"> 916</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L917"></a><tt class="py-lineno"> 917</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-197" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-197', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-198" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-198', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error with REST request, response was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L918"></a><tt class="py-lineno"> 918</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L919"></a><tt class="py-lineno"> 919</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L920"></a><tt class="py-lineno"> 920</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L921"></a><tt class="py-lineno"> 921</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-199" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-199', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L922"></a><tt class="py-lineno"> 922</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L923"></a><tt class="py-lineno"> 923</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.getFlows"></a><div id="OnosRestDriver.getFlows-def"><a name="L924"></a><tt class="py-lineno"> 924</tt> <a class="py-toggle" href="#" id="OnosRestDriver.getFlows-toggle" onclick="return toggle('OnosRestDriver.getFlows');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getFlows">getFlows</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">device</tt><tt class="py-op">,</tt> <tt class="py-param">flowId</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.getFlows-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.getFlows-expanded"><a name="L925"></a><tt class="py-lineno"> 925</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L926"></a><tt class="py-lineno"> 926</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L927"></a><tt class="py-lineno"> 927</tt> <tt class="py-line"><tt class="py-docstring"> Gets all the flows of the device or get a specific flow in the</tt> </tt>
-<a name="L928"></a><tt class="py-lineno"> 928</tt> <tt class="py-line"><tt class="py-docstring"> device by giving its flow ID</tt> </tt>
-<a name="L929"></a><tt class="py-lineno"> 929</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L930"></a><tt class="py-lineno"> 930</tt> <tt class="py-line"><tt class="py-docstring"> str device - device/switch Id</tt> </tt>
-<a name="L931"></a><tt class="py-lineno"> 931</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L932"></a><tt class="py-lineno"> 932</tt> <tt class="py-line"><tt class="py-docstring"> int/hex flowId - ID of the flow</tt> </tt>
-<a name="L933"></a><tt class="py-lineno"> 933</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L934"></a><tt class="py-lineno"> 934</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L935"></a><tt class="py-lineno"> 935</tt> <tt class="py-line"> <tt id="link-200" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-200', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L936"></a><tt class="py-lineno"> 936</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L937"></a><tt class="py-lineno"> 937</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-201" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-201', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No ip given, reverting to ip from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L938"></a><tt class="py-lineno"> 938</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L939"></a><tt class="py-lineno"> 939</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L940"></a><tt class="py-lineno"> 940</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-202" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-202', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No port given, reverting to port \</tt> </tt>
-<a name="L941"></a><tt class="py-lineno"> 941</tt> <tt class="py-line"><tt class="py-string"> from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L942"></a><tt class="py-lineno"> 942</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> </tt>
-<a name="L943"></a><tt class="py-lineno"> 943</tt> <tt class="py-line"> <tt class="py-name">url</tt> <tt class="py-op">=</tt> <tt class="py-string">"/flows/"</tt> <tt class="py-op">+</tt> <tt class="py-name">device</tt> </tt>
-<a name="L944"></a><tt class="py-lineno"> 944</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">flowId</tt><tt class="py-op">:</tt> </tt>
-<a name="L945"></a><tt class="py-lineno"> 945</tt> <tt class="py-line"> <tt class="py-name">url</tt> <tt class="py-op">+=</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">flowId</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L946"></a><tt class="py-lineno"> 946</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">url</tt> </tt>
-<a name="L947"></a><tt class="py-lineno"> 947</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-203" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-203', 'send', 'link-23');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">url</tt><tt class="py-op">=</tt><tt class="py-name">url</tt> <tt class="py-op">)</tt> </tt>
-<a name="L948"></a><tt class="py-lineno"> 948</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L949"></a><tt class="py-lineno"> 949</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">200</tt> <tt class="py-op"><=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op"><=</tt> <tt class="py-number">299</tt><tt class="py-op">:</tt> </tt>
-<a name="L950"></a><tt class="py-lineno"> 950</tt> <tt class="py-line"> <tt id="link-204" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-204', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L951"></a><tt class="py-lineno"> 951</tt> <tt class="py-line"> <tt class="py-name">a</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-205" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-205', 'output', 'link-20');">output</a></tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'flows'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L952"></a><tt class="py-lineno"> 952</tt> <tt class="py-line"> <tt class="py-name">b</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">a</tt> <tt class="py-op">)</tt> </tt>
-<a name="L953"></a><tt class="py-lineno"> 953</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">b</tt> </tt>
-<a name="L954"></a><tt class="py-lineno"> 954</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L955"></a><tt class="py-lineno"> 955</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-206" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-206', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-207" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-207', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error with REST request, response was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L956"></a><tt class="py-lineno"> 956</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L957"></a><tt class="py-lineno"> 957</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L958"></a><tt class="py-lineno"> 958</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L959"></a><tt class="py-lineno"> 959</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-208" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-208', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L960"></a><tt class="py-lineno"> 960</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L961"></a><tt class="py-lineno"> 961</tt> <tt class="py-line"> </tt>
-<a name="L962"></a><tt class="py-lineno"> 962</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.addFlow"></a><div id="OnosRestDriver.addFlow-def"><a name="L963"></a><tt class="py-lineno"> 963</tt> <a class="py-toggle" href="#" id="OnosRestDriver.addFlow-toggle" onclick="return toggle('OnosRestDriver.addFlow');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addFlow">addFlow</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> </tt>
-<a name="L964"></a><tt class="py-lineno"> 964</tt> <tt class="py-line"> <tt class="py-param">deviceId</tt><tt class="py-op">,</tt> </tt>
-<a name="L965"></a><tt class="py-lineno"> 965</tt> <tt class="py-line"> <tt class="py-param">appId</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> </tt>
-<a name="L966"></a><tt class="py-lineno"> 966</tt> <tt class="py-line"> <tt class="py-param">ingressPort</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L967"></a><tt class="py-lineno"> 967</tt> <tt class="py-line"> <tt class="py-param">egressPort</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L968"></a><tt class="py-lineno"> 968</tt> <tt class="py-line"> <tt class="py-param">ethType</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L969"></a><tt class="py-lineno"> 969</tt> <tt class="py-line"> <tt class="py-param">ethSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L970"></a><tt class="py-lineno"> 970</tt> <tt class="py-line"> <tt class="py-param">ethDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L971"></a><tt class="py-lineno"> 971</tt> <tt class="py-line"> <tt class="py-param">bandwidth</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L972"></a><tt class="py-lineno"> 972</tt> <tt class="py-line"> <tt class="py-param">lambdaAlloc</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> </tt>
-<a name="L973"></a><tt class="py-lineno"> 973</tt> <tt class="py-line"> <tt class="py-param">ipProto</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L974"></a><tt class="py-lineno"> 974</tt> <tt class="py-line"> <tt class="py-param">ipSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L975"></a><tt class="py-lineno"> 975</tt> <tt class="py-line"> <tt class="py-param">ipDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L976"></a><tt class="py-lineno"> 976</tt> <tt class="py-line"> <tt class="py-param">tcpSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L977"></a><tt class="py-lineno"> 977</tt> <tt class="py-line"> <tt class="py-param">tcpDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L978"></a><tt class="py-lineno"> 978</tt> <tt class="py-line"> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> </tt>
-<a name="L979"></a><tt class="py-lineno"> 979</tt> <tt class="py-line"> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.addFlow-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.addFlow-expanded"><a name="L980"></a><tt class="py-lineno"> 980</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L981"></a><tt class="py-lineno"> 981</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L982"></a><tt class="py-lineno"> 982</tt> <tt class="py-line"><tt class="py-docstring"> Creates a single flow in the specified device</tt> </tt>
-<a name="L983"></a><tt class="py-lineno"> 983</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L984"></a><tt class="py-lineno"> 984</tt> <tt class="py-line"><tt class="py-docstring"> * deviceId: id of the device</tt> </tt>
-<a name="L985"></a><tt class="py-lineno"> 985</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L986"></a><tt class="py-lineno"> 986</tt> <tt class="py-line"><tt class="py-docstring"> * ingressPort: port ingress device</tt> </tt>
-<a name="L987"></a><tt class="py-lineno"> 987</tt> <tt class="py-line"><tt class="py-docstring"> * egressPort: port of egress device</tt> </tt>
-<a name="L988"></a><tt class="py-lineno"> 988</tt> <tt class="py-line"><tt class="py-docstring"> * ethType: specify ethType</tt> </tt>
-<a name="L989"></a><tt class="py-lineno"> 989</tt> <tt class="py-line"><tt class="py-docstring"> * ethSrc: specify ethSrc ( i.e. src mac addr )</tt> </tt>
-<a name="L990"></a><tt class="py-lineno"> 990</tt> <tt class="py-line"><tt class="py-docstring"> * ethDst: specify ethDst ( i.e. dst mac addr )</tt> </tt>
-<a name="L991"></a><tt class="py-lineno"> 991</tt> <tt class="py-line"><tt class="py-docstring"> * ipProto: specify ip protocol</tt> </tt>
-<a name="L992"></a><tt class="py-lineno"> 992</tt> <tt class="py-line"><tt class="py-docstring"> * ipSrc: specify ip source address with mask eg. ip#/24</tt> </tt>
-<a name="L993"></a><tt class="py-lineno"> 993</tt> <tt class="py-line"><tt class="py-docstring"> * ipDst: specify ip destination address eg. ip#/24</tt> </tt>
-<a name="L994"></a><tt class="py-lineno"> 994</tt> <tt class="py-line"><tt class="py-docstring"> * tcpSrc: specify tcp source port</tt> </tt>
-<a name="L995"></a><tt class="py-lineno"> 995</tt> <tt class="py-line"><tt class="py-docstring"> * tcpDst: specify tcp destination port</tt> </tt>
-<a name="L996"></a><tt class="py-lineno"> 996</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L997"></a><tt class="py-lineno"> 997</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE for successful requests; Returns main.FALSE</tt> </tt>
-<a name="L998"></a><tt class="py-lineno"> 998</tt> <tt class="py-line"><tt class="py-docstring"> if error on requests;</tt> </tt>
-<a name="L999"></a><tt class="py-lineno"> 999</tt> <tt class="py-line"><tt class="py-docstring"> Returns None for exceptions</tt> </tt>
-<a name="L1000"></a><tt class="py-lineno">1000</tt> <tt class="py-line"><tt class="py-docstring"> NOTE:</tt> </tt>
-<a name="L1001"></a><tt class="py-lineno">1001</tt> <tt class="py-line"><tt class="py-docstring"> The ip and port option are for the requests input's ip and port</tt> </tt>
-<a name="L1002"></a><tt class="py-lineno">1002</tt> <tt class="py-line"><tt class="py-docstring"> of the ONOS node</tt> </tt>
-<a name="L1003"></a><tt class="py-lineno">1003</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1004"></a><tt class="py-lineno">1004</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1005"></a><tt class="py-lineno">1005</tt> <tt class="py-line"> </tt>
-<a name="L1006"></a><tt class="py-lineno">1006</tt> <tt class="py-line"> <tt class="py-name">flowJson</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-string">"priority"</tt><tt class="py-op">:</tt><tt class="py-number">100</tt><tt class="py-op">,</tt> </tt>
-<a name="L1007"></a><tt class="py-lineno">1007</tt> <tt class="py-line"> <tt class="py-string">"isPermanent"</tt><tt class="py-op">:</tt><tt class="py-string">"true"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1008"></a><tt class="py-lineno">1008</tt> <tt class="py-line"> <tt class="py-string">"timeout"</tt><tt class="py-op">:</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> </tt>
-<a name="L1009"></a><tt class="py-lineno">1009</tt> <tt class="py-line"> <tt class="py-string">"deviceId"</tt><tt class="py-op">:</tt><tt class="py-name">deviceId</tt><tt class="py-op">,</tt> </tt>
-<a name="L1010"></a><tt class="py-lineno">1010</tt> <tt class="py-line"> <tt class="py-string">"treatment"</tt><tt class="py-op">:</tt><tt class="py-op">{</tt><tt class="py-string">"instructions"</tt><tt class="py-op">:</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L1011"></a><tt class="py-lineno">1011</tt> <tt class="py-line"> <tt class="py-string">"selector"</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt><tt class="py-string">"criteria"</tt><tt class="py-op">:</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">}</tt><tt class="py-op">}</tt> </tt>
-<a name="L1012"></a><tt class="py-lineno">1012</tt> <tt class="py-line"> </tt>
-<a name="L1013"></a><tt class="py-lineno">1013</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appId</tt><tt class="py-op">:</tt> </tt>
-<a name="L1014"></a><tt class="py-lineno">1014</tt> <tt class="py-line"> <tt class="py-name">flowJson</tt><tt class="py-op">[</tt> <tt class="py-string">"appId"</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">appId</tt> </tt>
-<a name="L1015"></a><tt class="py-lineno">1015</tt> <tt class="py-line"> </tt>
-<a name="L1016"></a><tt class="py-lineno">1016</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">egressPort</tt><tt class="py-op">:</tt> </tt>
-<a name="L1017"></a><tt class="py-lineno">1017</tt> <tt class="py-line"> <tt class="py-name">flowJson</tt><tt class="py-op">[</tt> <tt class="py-string">'treatment'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'instructions'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L1018"></a><tt class="py-lineno">1018</tt> <tt class="py-line"> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"OUTPUT"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1019"></a><tt class="py-lineno">1019</tt> <tt class="py-line"> <tt class="py-string">"port"</tt><tt class="py-op">:</tt><tt class="py-name">egressPort</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1020"></a><tt class="py-lineno">1020</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ingressPort</tt><tt class="py-op">:</tt> </tt>
-<a name="L1021"></a><tt class="py-lineno">1021</tt> <tt class="py-line"> <tt class="py-name">flowJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L1022"></a><tt class="py-lineno">1022</tt> <tt class="py-line"> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"IN_PORT"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1023"></a><tt class="py-lineno">1023</tt> <tt class="py-line"> <tt class="py-string">"port"</tt><tt class="py-op">:</tt><tt class="py-name">ingressPort</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1024"></a><tt class="py-lineno">1024</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethType</tt> <tt class="py-op">==</tt> <tt class="py-string">"IPV4"</tt><tt class="py-op">:</tt> </tt>
-<a name="L1025"></a><tt class="py-lineno">1025</tt> <tt class="py-line"> <tt class="py-name">flowJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">{</tt> </tt>
-<a name="L1026"></a><tt class="py-lineno">1026</tt> <tt class="py-line"> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"ETH_TYPE"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1027"></a><tt class="py-lineno">1027</tt> <tt class="py-line"> <tt class="py-string">"ethType"</tt><tt class="py-op">:</tt><tt class="py-number">2048</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1028"></a><tt class="py-lineno">1028</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ethType</tt><tt class="py-op">:</tt> </tt>
-<a name="L1029"></a><tt class="py-lineno">1029</tt> <tt class="py-line"> <tt class="py-name">flowJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">{</tt> </tt>
-<a name="L1030"></a><tt class="py-lineno">1030</tt> <tt class="py-line"> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"ETH_TYPE"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1031"></a><tt class="py-lineno">1031</tt> <tt class="py-line"> <tt class="py-string">"ethType"</tt><tt class="py-op">:</tt><tt class="py-name">ethType</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1032"></a><tt class="py-lineno">1032</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1033"></a><tt class="py-lineno">1033</tt> <tt class="py-line"> <tt class="py-name">flowJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L1034"></a><tt class="py-lineno">1034</tt> <tt class="py-line"> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"ETH_SRC"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1035"></a><tt class="py-lineno">1035</tt> <tt class="py-line"> <tt class="py-string">"mac"</tt><tt class="py-op">:</tt><tt class="py-name">ethSrc</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1036"></a><tt class="py-lineno">1036</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1037"></a><tt class="py-lineno">1037</tt> <tt class="py-line"> <tt class="py-name">flowJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L1038"></a><tt class="py-lineno">1038</tt> <tt class="py-line"> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"ETH_DST"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1039"></a><tt class="py-lineno">1039</tt> <tt class="py-line"> <tt class="py-string">"mac"</tt><tt class="py-op">:</tt><tt class="py-name">ethDst</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1040"></a><tt class="py-lineno">1040</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1041"></a><tt class="py-lineno">1041</tt> <tt class="py-line"> <tt class="py-name">flowJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L1042"></a><tt class="py-lineno">1042</tt> <tt class="py-line"> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"IPV4_SRC"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1043"></a><tt class="py-lineno">1043</tt> <tt class="py-line"> <tt class="py-string">"ip"</tt><tt class="py-op">:</tt><tt class="py-name">ipSrc</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1044"></a><tt class="py-lineno">1044</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1045"></a><tt class="py-lineno">1045</tt> <tt class="py-line"> <tt class="py-name">flowJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L1046"></a><tt class="py-lineno">1046</tt> <tt class="py-line"> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"IPV4_DST"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1047"></a><tt class="py-lineno">1047</tt> <tt class="py-line"> <tt class="py-string">"ip"</tt><tt class="py-op">:</tt><tt class="py-name">ipDst</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1048"></a><tt class="py-lineno">1048</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tcpSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1049"></a><tt class="py-lineno">1049</tt> <tt class="py-line"> <tt class="py-name">flowJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L1050"></a><tt class="py-lineno">1050</tt> <tt class="py-line"> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"TCP_SRC"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1051"></a><tt class="py-lineno">1051</tt> <tt class="py-line"> <tt class="py-string">"tcpPort"</tt><tt class="py-op">:</tt> <tt class="py-name">tcpSrc</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1052"></a><tt class="py-lineno">1052</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tcpDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1053"></a><tt class="py-lineno">1053</tt> <tt class="py-line"> <tt class="py-name">flowJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L1054"></a><tt class="py-lineno">1054</tt> <tt class="py-line"> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"TCP_DST"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1055"></a><tt class="py-lineno">1055</tt> <tt class="py-line"> <tt class="py-string">"tcpPort"</tt><tt class="py-op">:</tt> <tt class="py-name">tcpDst</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1056"></a><tt class="py-lineno">1056</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipProto</tt><tt class="py-op">:</tt> </tt>
-<a name="L1057"></a><tt class="py-lineno">1057</tt> <tt class="py-line"> <tt class="py-name">flowJson</tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'criteria'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L1058"></a><tt class="py-lineno">1058</tt> <tt class="py-line"> <tt class="py-op">{</tt> <tt class="py-string">"type"</tt><tt class="py-op">:</tt><tt class="py-string">"IP_PROTO"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1059"></a><tt class="py-lineno">1059</tt> <tt class="py-line"> <tt class="py-string">"protocol"</tt><tt class="py-op">:</tt> <tt class="py-name">ipProto</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1060"></a><tt class="py-lineno">1060</tt> <tt class="py-line"> </tt>
-<a name="L1061"></a><tt class="py-lineno">1061</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Bandwidth and Lambda will be implemented if needed</tt> </tt>
-<a name="L1062"></a><tt class="py-lineno">1062</tt> <tt class="py-line"> </tt>
-<a name="L1063"></a><tt class="py-lineno">1063</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-209" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-209', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">flowJson</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1064"></a><tt class="py-lineno">1064</tt> <tt class="py-line"> </tt>
-<a name="L1065"></a><tt class="py-lineno">1065</tt> <tt class="py-line"> <tt id="link-210" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-210', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1066"></a><tt class="py-lineno">1066</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L1067"></a><tt class="py-lineno">1067</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-211" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-211', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No ip given, reverting to ip from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1068"></a><tt class="py-lineno">1068</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L1069"></a><tt class="py-lineno">1069</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L1070"></a><tt class="py-lineno">1070</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-212" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-212', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No port given, reverting to port "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1071"></a><tt class="py-lineno">1071</tt> <tt class="py-line"> <tt class="py-string">"from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1072"></a><tt class="py-lineno">1072</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> </tt>
-<a name="L1073"></a><tt class="py-lineno">1073</tt> <tt class="py-line"> <tt class="py-name">url</tt> <tt class="py-op">=</tt> <tt class="py-string">"/flows/"</tt> <tt class="py-op">+</tt> <tt class="py-name">deviceId</tt> </tt>
-<a name="L1074"></a><tt class="py-lineno">1074</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-213" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-213', 'send', 'link-23');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> </tt>
-<a name="L1075"></a><tt class="py-lineno">1075</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">,</tt> </tt>
-<a name="L1076"></a><tt class="py-lineno">1076</tt> <tt class="py-line"> <tt class="py-name">method</tt><tt class="py-op">=</tt><tt class="py-string">"POST"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1077"></a><tt class="py-lineno">1077</tt> <tt class="py-line"> <tt class="py-name">url</tt><tt class="py-op">=</tt><tt class="py-name">url</tt><tt class="py-op">,</tt> </tt>
-<a name="L1078"></a><tt class="py-lineno">1078</tt> <tt class="py-line"> <tt class="py-name">data</tt><tt class="py-op">=</tt><tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">flowJson</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1079"></a><tt class="py-lineno">1079</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L1080"></a><tt class="py-lineno">1080</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">201</tt><tt class="py-op">:</tt> </tt>
-<a name="L1081"></a><tt class="py-lineno">1081</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-214" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-214', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Successfully POST flow"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1082"></a><tt class="py-lineno">1082</tt> <tt class="py-line"> <tt class="py-string">"in device: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1083"></a><tt class="py-lineno">1083</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1084"></a><tt class="py-lineno">1084</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1085"></a><tt class="py-lineno">1085</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-215" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-215', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-216" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-216', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error with REST request, response was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1086"></a><tt class="py-lineno">1086</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1087"></a><tt class="py-lineno">1087</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1088"></a><tt class="py-lineno">1088</tt> <tt class="py-line"> </tt>
-<a name="L1089"></a><tt class="py-lineno">1089</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L1090"></a><tt class="py-lineno">1090</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-217" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-217', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1091"></a><tt class="py-lineno">1091</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L1092"></a><tt class="py-lineno">1092</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.removeFlow"></a><div id="OnosRestDriver.removeFlow-def"><a name="L1093"></a><tt class="py-lineno">1093</tt> <a class="py-toggle" href="#" id="OnosRestDriver.removeFlow-toggle" onclick="return toggle('OnosRestDriver.removeFlow');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#removeFlow">removeFlow</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">deviceId</tt><tt class="py-op">,</tt> <tt class="py-param">flowId</tt><tt class="py-op">,</tt> </tt>
-<a name="L1094"></a><tt class="py-lineno">1094</tt> <tt class="py-line"> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.removeFlow-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.removeFlow-expanded"><a name="L1095"></a><tt class="py-lineno">1095</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1096"></a><tt class="py-lineno">1096</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1097"></a><tt class="py-lineno">1097</tt> <tt class="py-line"><tt class="py-docstring"> Remove specific device flow</tt> </tt>
-<a name="L1098"></a><tt class="py-lineno">1098</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L1099"></a><tt class="py-lineno">1099</tt> <tt class="py-line"><tt class="py-docstring"> str deviceId - id of the device</tt> </tt>
-<a name="L1100"></a><tt class="py-lineno">1100</tt> <tt class="py-line"><tt class="py-docstring"> str flowId - id of the flow</tt> </tt>
-<a name="L1101"></a><tt class="py-lineno">1101</tt> <tt class="py-line"><tt class="py-docstring"> Return:</tt> </tt>
-<a name="L1102"></a><tt class="py-lineno">1102</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE if successfully deletes flows, otherwise</tt> </tt>
-<a name="L1103"></a><tt class="py-lineno">1103</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.FALSE, Returns None on error</tt> </tt>
-<a name="L1104"></a><tt class="py-lineno">1104</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1105"></a><tt class="py-lineno">1105</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1106"></a><tt class="py-lineno">1106</tt> <tt class="py-line"> <tt id="link-218" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-218', 'output', 'link-20');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1107"></a><tt class="py-lineno">1107</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L1108"></a><tt class="py-lineno">1108</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-219" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-219', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No ip given, reverting to ip from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1109"></a><tt class="py-lineno">1109</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L1110"></a><tt class="py-lineno">1110</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-string">"DEFAULT"</tt><tt class="py-op">:</tt> </tt>
-<a name="L1111"></a><tt class="py-lineno">1111</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-220" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-220', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"No port given, reverting to port "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1112"></a><tt class="py-lineno">1112</tt> <tt class="py-line"> <tt class="py-string">"from topo file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1113"></a><tt class="py-lineno">1113</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> </tt>
-<a name="L1114"></a><tt class="py-lineno">1114</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: REST url requires the intent id to be in decimal form</tt> </tt>
-<a name="L1115"></a><tt class="py-lineno">1115</tt> <tt class="py-line"> <tt class="py-name">query</tt> <tt class="py-op">=</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">flowId</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1116"></a><tt class="py-lineno">1116</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-221" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-221', 'send', 'link-23');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> </tt>
-<a name="L1117"></a><tt class="py-lineno">1117</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">,</tt> </tt>
-<a name="L1118"></a><tt class="py-lineno">1118</tt> <tt class="py-line"> <tt class="py-name">method</tt><tt class="py-op">=</tt><tt class="py-string">"DELETE"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1119"></a><tt class="py-lineno">1119</tt> <tt class="py-line"> <tt class="py-name">url</tt><tt class="py-op">=</tt><tt class="py-string">"/flows"</tt> <tt class="py-op">+</tt> <tt class="py-name">query</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1120"></a><tt class="py-lineno">1120</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L1121"></a><tt class="py-lineno">1121</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">200</tt> <tt class="py-op"><=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op"><=</tt> <tt class="py-number">299</tt><tt class="py-op">:</tt> </tt>
-<a name="L1122"></a><tt class="py-lineno">1122</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1123"></a><tt class="py-lineno">1123</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1124"></a><tt class="py-lineno">1124</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-222" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-222', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-223" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-223', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error with REST request, response was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1125"></a><tt class="py-lineno">1125</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1126"></a><tt class="py-lineno">1126</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1127"></a><tt class="py-lineno">1127</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L1128"></a><tt class="py-lineno">1128</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-224" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-224', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1129"></a><tt class="py-lineno">1129</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L1130"></a><tt class="py-lineno">1130</tt> <tt class="py-line"> </tt>
-<a name="OnosRestDriver.checkFlowsState"></a><div id="OnosRestDriver.checkFlowsState-def"><a name="L1131"></a><tt class="py-lineno">1131</tt> <a class="py-toggle" href="#" id="OnosRestDriver.checkFlowsState-toggle" onclick="return toggle('OnosRestDriver.checkFlowsState');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#checkFlowsState">checkFlowsState</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"DEFAULT"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosRestDriver.checkFlowsState-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosRestDriver.checkFlowsState-expanded"><a name="L1132"></a><tt class="py-lineno">1132</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1133"></a><tt class="py-lineno">1133</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1134"></a><tt class="py-lineno">1134</tt> <tt class="py-line"><tt class="py-docstring"> Check if all the current flows are in ADDED state</tt> </tt>
-<a name="L1135"></a><tt class="py-lineno">1135</tt> <tt class="py-line"><tt class="py-docstring"> Return:</tt> </tt>
-<a name="L1136"></a><tt class="py-lineno">1136</tt> <tt class="py-line"><tt class="py-docstring"> returnValue - Returns main.TRUE only if all flows are in</tt> </tt>
-<a name="L1137"></a><tt class="py-lineno">1137</tt> <tt class="py-line"><tt class="py-docstring"> return main.FALSE otherwise;</tt> </tt>
-<a name="L1138"></a><tt class="py-lineno">1138</tt> <tt class="py-line"><tt class="py-docstring"> Returns None for exception</tt> </tt>
-<a name="L1139"></a><tt class="py-lineno">1139</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1140"></a><tt class="py-lineno">1140</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1141"></a><tt class="py-lineno">1141</tt> <tt class="py-line"> <tt class="py-name">tempFlows</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-225" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#flows,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#flows"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-225', 'flows', 'link-225');">flows</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">port</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1142"></a><tt class="py-lineno">1142</tt> <tt class="py-line"> <tt class="py-name">returnValue</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1143"></a><tt class="py-lineno">1143</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">flow</tt> <tt class="py-keyword">in</tt> <tt class="py-name">tempFlows</tt><tt class="py-op">:</tt> </tt>
-<a name="L1144"></a><tt class="py-lineno">1144</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">flow</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-string">'ADDED'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1145"></a><tt class="py-lineno">1145</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-226" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-226', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": flow Id: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1146"></a><tt class="py-lineno">1146</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">flow</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'groupId'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1147"></a><tt class="py-lineno">1147</tt> <tt class="py-line"> <tt class="py-string">" | state:"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1148"></a><tt class="py-lineno">1148</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">flow</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1149"></a><tt class="py-lineno">1149</tt> <tt class="py-line"> <tt class="py-name">returnValue</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1150"></a><tt class="py-lineno">1150</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">returnValue</tt> </tt>
-<a name="L1151"></a><tt class="py-lineno">1151</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1152"></a><tt class="py-lineno">1152</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-227" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-227', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1153"></a><tt class="py-lineno">1153</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1154"></a><tt class="py-lineno">1154</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L1155"></a><tt class="py-lineno">1155</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-228" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-228', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1156"></a><tt class="py-lineno">1156</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1157"></a><tt class="py-lineno">1157</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1158"></a><tt class="py-lineno">1158</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-229" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-229', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1159"></a><tt class="py-lineno">1159</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-230" class="py-name" targets="Method TestON.core.teston.TestON.cleanup()=TestON.core.teston.TestON-class.html#cleanup"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-230', 'cleanup', 'link-230');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1160"></a><tt class="py-lineno">1160</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-231" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-231', 'exit', 'link-231');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L1161"></a><tt class="py-lineno">1161</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html
deleted file mode 100644
index e2a31a3..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html
+++ /dev/null
@@ -1,1560 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.api-module.html">Package api</a> ::
- <a href="TestON.drivers.common.api.controller-module.html">Package controller</a> ::
- <a href="TestON.drivers.common.api.controller.onosrestdriver-module.html">Module onosrestdriver</a> ::
- Class OnosRestDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class OnosRestDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_onosrestdr" name="class_hierarchy_for_onosrestdr">
-<area shape="rect" id="node1" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html" title="OnosRestDriver" alt="" coords="5,6,120,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.api.controllerdriver.Controller-class.html" title="controllerdriver.Controller" alt="" coords="145,6,311,31"/>
-<area shape="rect" id="node3" href="TestON.drivers.common.apidriver.API-class.html" title="apidriver.API" alt="" coords="335,6,432,31"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="component.Component" alt="" coords="457,6,615,31"/>
-</map>
- <img src="class_hierarchy_for_onosrestdr.gif" alt='' usemap="#class_hierarchy_for_onosrestdr" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Connection will establish to the remote host using ssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#send" class="summary-sig-name">send</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ip</span>,
- <span class="summary-sig-arg">port</span>,
- <span class="summary-sig-arg">url</span>,
- <span class="summary-sig-arg">base</span>=<span class="summary-sig-default">"/onos/v1"</span>,
- <span class="summary-sig-arg">method</span>=<span class="summary-sig-default">"GET"</span>,
- <span class="summary-sig-arg">query</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">data</span>=<span class="summary-sig-default">None</span>)</span><br />
- Arguments:
- str ip: ONOS IP Address
- str port: ONOS REST Port
- str url: ONOS REST url path.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.send">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intents" class="summary-sig-name">intents</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Description:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.intents">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intent" class="summary-sig-name">intent</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">intentId</span>,
- <span class="summary-sig-arg">appId</span>=<span class="summary-sig-default">"org.onosproject.cli"</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Description:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.intent">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#apps" class="summary-sig-name">apps</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Description:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.apps">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#activateApp" class="summary-sig-name">activateApp</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">appName</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">check</span>=<span class="summary-sig-default">True</span>)</span><br />
- Decription:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.activateApp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#deactivateApp" class="summary-sig-name">deactivateApp</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">appName</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">check</span>=<span class="summary-sig-default">True</span>)</span><br />
- Required:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.deactivateApp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getApp" class="summary-sig-name">getApp</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">appName</span>,
- <span class="summary-sig-arg">project</span>=<span class="summary-sig-default">"org.onosproject."</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Decription:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.getApp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addHostIntent" class="summary-sig-name">addHostIntent</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hostIdOne</span>,
- <span class="summary-sig-arg">hostIdTwo</span>,
- <span class="summary-sig-arg">appId</span>=<span class="summary-sig-default">'org.onosproject.cli'</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Description:
- Adds a host-to-host intent ( bidirectional ) by
- specifying the two hosts.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.addHostIntent">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addPointIntent" class="summary-sig-name">addPointIntent</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ingressDevice</span>,
- <span class="summary-sig-arg">egressDevice</span>,
- <span class="summary-sig-arg">appId</span>=<span class="summary-sig-default">'org.onosproject.cli'</span>,
- <span class="summary-sig-arg">ingressPort</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">egressPort</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethType</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">bandwidth</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">lambdaAlloc</span>=<span class="summary-sig-default">False</span>,
- <span class="summary-sig-arg">ipProto</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ipSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ipDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">tcpSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">tcpDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Description:
- Adds a point-to-point intent ( uni-directional ) by
- specifying device id's and optional fields
-Required:
- * ingressDevice: device id of ingress device
- * egressDevice: device id of egress device
-Optional:
- * ethType: specify ethType
- * ethSrc: specify ethSrc ( i.e.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.addPointIntent">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="removeIntent"></a><span class="summary-sig-name">removeIntent</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">intentId</span>,
- <span class="summary-sig-arg">appId</span>=<span class="summary-sig-default">'org.onosproject.cli'</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Remove intent for specified application id and intent id; Returns
- None for exception</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.removeIntent">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getIntentsId"></a><span class="summary-sig-name">getIntentsId</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Returns a list of intents id; Returns None for exception</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.getIntentsId">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#removeAllIntents" class="summary-sig-name">removeAllIntents</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">intentIdList</span>=<span class="summary-sig-default">'ALL'</span>,
- <span class="summary-sig-arg">appId</span>=<span class="summary-sig-default">'org.onosproject.cli'</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">delay</span>=<span class="summary-sig-default">5</span>)</span><br />
- Description:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.removeAllIntents">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#hosts" class="summary-sig-name">hosts</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Description:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.hosts">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getHost" class="summary-sig-name">getHost</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">mac</span>,
- <span class="summary-sig-arg">vlan</span>=<span class="summary-sig-default">"-1"</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Description:
- Gets the information from the given host
-Required:
- str mac - MAC address of the host
-Optional:
- str vlan - VLAN tag of the host, defaults to -1
-Returns:
- Return the host id from the hosts/mac/vlan output in REST api
- whose 'id' contains mac/vlan; Returns None for exception;
- Returns main.FALSE if error on requests</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.getHost">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#topology" class="summary-sig-name">topology</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Description:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.topology">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getIntentState" class="summary-sig-name">getIntentState</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">intentsId</span>,
- <span class="summary-sig-arg">intentsJson</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Description:
- Get intent state.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.getIntentState">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#checkIntentState" class="summary-sig-name">checkIntentState</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">intentsId</span>=<span class="summary-sig-default">"ALL"</span>,
- <span class="summary-sig-arg">expectedState</span>=<span class="summary-sig-default">'INSTALLED'</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Description:
- Check intents state based on expected state which defaults to
- INSTALLED state
-Required:
- intentsId - List of intents ID to be checked
-Optional:
- expectedState - Check the expected state(s) of each intents
- state in the list.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.checkIntentState">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#flows" class="summary-sig-name">flows</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Description:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.flows">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getFlows" class="summary-sig-name">getFlows</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">device</span>,
- <span class="summary-sig-arg">flowId</span>=<span class="summary-sig-default">0</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Description:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.getFlows">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addFlow" class="summary-sig-name">addFlow</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">deviceId</span>,
- <span class="summary-sig-arg">appId</span>=<span class="summary-sig-default">0</span>,
- <span class="summary-sig-arg">ingressPort</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">egressPort</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethType</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">bandwidth</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">lambdaAlloc</span>=<span class="summary-sig-default">False</span>,
- <span class="summary-sig-arg">ipProto</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ipSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ipDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">tcpSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">tcpDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Description:
- Creates a single flow in the specified device
-Required:
- * deviceId: id of the device
-Optional:
- * ingressPort: port ingress device
- * egressPort: port of egress device
- * ethType: specify ethType
- * ethSrc: specify ethSrc ( i.e.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.addFlow">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#removeFlow" class="summary-sig-name">removeFlow</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">deviceId</span>,
- <span class="summary-sig-arg">flowId</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Description:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.removeFlow">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#checkFlowsState" class="summary-sig-name">checkFlowsState</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"DEFAULT"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"DEFAULT"</span>)</span><br />
- Description:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.checkFlowsState">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>disconnect</code>,
- <code>execute</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Connection will establish to the remote host using ssh. It will take
- user_name ,ip_address and password as arguments<br> and will return
- the handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="send"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">send</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ip</span>,
- <span class="sig-arg">port</span>,
- <span class="sig-arg">url</span>,
- <span class="sig-arg">base</span>=<span class="sig-default">"/onos/v1"</span>,
- <span class="sig-arg">method</span>=<span class="sig-default">"GET"</span>,
- <span class="sig-arg">query</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">data</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.send">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Arguments:
- str ip: ONOS IP Address
- str port: ONOS REST Port
- str url: ONOS REST url path.
- NOTE that this is is only the relative path. IE "/devices"
- str base: The base url for the given REST api. Applications could
- potentially have their own base url
- str method: HTTP method type
- dict query: Dictionary to be sent in the query string for
- the request
- dict data: Dictionary to be sent in the body of the request
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="intents"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">intents</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.intents">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Gets a list of dictionary of all intents in the system
-Returns:
- A list of dictionary of intents in string type to match the cli
- version for now; Returns main.FALSE if error on request;
- Returns None for exception
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="intent"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">intent</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">intentId</span>,
- <span class="sig-arg">appId</span>=<span class="sig-default">"org.onosproject.cli"</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.intent">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Get the specific intent information of the given application ID and
- intent ID
-Required:
- str intentId - Intent id in hexadecimal form
-Optional:
- str appId - application id of intent
-Returns:
- Returns an information dictionary of the given intent;
- Returns main.FALSE if error on requests; Returns None for exception
-NOTE:
- The GET /intents REST api command accepts application id but the
- api will get updated to accept application name instead
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="apps"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">apps</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.apps">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Returns all the current application installed in the system
-Returns:
- List of dictionary of installed application; Returns main.FALSE for
- error on request; Returns None for exception
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="activateApp"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">activateApp</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">appName</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">check</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.activateApp">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Decription:
- Activate an app that is already installed in ONOS
-Optional:
- bool check - If check is True, method will check the status
- of the app after the command is issued
-Returns:
- Returns main.TRUE if the command was successfully or main.FALSE
- if the REST responded with an error or given incorrect input;
- Returns None for exception
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="deactivateApp"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">deactivateApp</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">appName</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">check</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.deactivateApp">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Required:
- Deactivate an app that is already activated in ONOS
-Optional:
- bool check - If check is True, method will check the status of the
- app after the command is issued
-Returns:
- Returns main.TRUE if the command was successfully sent
- main.FALSE if the REST responded with an error or given
- incorrect input; Returns None for exception
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getApp"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getApp</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">appName</span>,
- <span class="sig-arg">project</span>=<span class="sig-default">"org.onosproject."</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.getApp">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Decription:
- Gets the informaion of the given application
-Required:
- str name - Name of onos application
-Returns:
- Returns a dictionary of information ONOS application in string type;
- Returns main.FALSE if error on requests; Returns None for exception
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="addHostIntent"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">addHostIntent</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hostIdOne</span>,
- <span class="sig-arg">hostIdTwo</span>,
- <span class="sig-arg">appId</span>=<span class="sig-default">'org.onosproject.cli'</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.addHostIntent">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Adds a host-to-host intent ( bidirectional ) by
- specifying the two hosts.
-Required:
- * hostIdOne: ONOS host id for host1
- * hostIdTwo: ONOS host id for host2
-Optional:
- str appId - Application name of intent identifier
-Returns:
- Returns main.TRUE for successful requests; Returns main.FALSE if
- error on requests; Returns None for exceptions
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="addPointIntent"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">addPointIntent</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ingressDevice</span>,
- <span class="sig-arg">egressDevice</span>,
- <span class="sig-arg">appId</span>=<span class="sig-default">'org.onosproject.cli'</span>,
- <span class="sig-arg">ingressPort</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">egressPort</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethType</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">bandwidth</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">lambdaAlloc</span>=<span class="sig-default">False</span>,
- <span class="sig-arg">ipProto</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ipSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ipDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">tcpSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">tcpDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.addPointIntent">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Adds a point-to-point intent ( uni-directional ) by
- specifying device id's and optional fields
-Required:
- * ingressDevice: device id of ingress device
- * egressDevice: device id of egress device
-Optional:
- * ethType: specify ethType
- * ethSrc: specify ethSrc ( i.e. src mac addr )
- * ethDst: specify ethDst ( i.e. dst mac addr )
- * bandwidth: specify bandwidth capacity of link (TODO)
- * lambdaAlloc: if True, intent will allocate lambda
- for the specified intent (TODO)
- * ipProto: specify ip protocol
- * ipSrc: specify ip source address with mask eg. ip#/24
- * ipDst: specify ip destination address eg. ip#/24
- * tcpSrc: specify tcp source port
- * tcpDst: specify tcp destination port
-Returns:
- Returns main.TRUE for successful requests; Returns main.FALSE if
- no ingress|egress port found and if error on requests;
- Returns None for exceptions
-NOTE:
- The ip and port option are for the requests input's ip and port
- of the ONOS node
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="removeAllIntents"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">removeAllIntents</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">intentIdList</span>=<span class="sig-default">'ALL'</span>,
- <span class="sig-arg">appId</span>=<span class="sig-default">'org.onosproject.cli'</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">delay</span>=<span class="sig-default">5</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.removeAllIntents">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Remove all the intents
-Returns:
- Returns main.TRUE if all intents are removed, otherwise returns
- main.FALSE; Returns None for exception
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="hosts"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">hosts</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.hosts">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Get a list of dictionary of all discovered hosts
-Returns:
- Returns a list of dictionary of information of the hosts currently
- discovered by ONOS; Returns main.FALSE if error on requests;
- Returns None for exception
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getHost"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getHost</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">mac</span>,
- <span class="sig-arg">vlan</span>=<span class="sig-default">"-1"</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.getHost">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Gets the information from the given host
-Required:
- str mac - MAC address of the host
-Optional:
- str vlan - VLAN tag of the host, defaults to -1
-Returns:
- Return the host id from the hosts/mac/vlan output in REST api
- whose 'id' contains mac/vlan; Returns None for exception;
- Returns main.FALSE if error on requests
-
-NOTE:
- Not sure what this function should do, any suggestion?
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="topology"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">topology</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.topology">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Gets the overview of network topology
-Returns:
- Returns a dictionary containing information about network topology;
- Returns None for exception
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getIntentState"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getIntentState</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">intentsId</span>,
- <span class="sig-arg">intentsJson</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.getIntentState">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Get intent state.
- Accepts a single intent ID (string type) or a list of intent IDs.
- Returns the state(string type) of the id if a single intent ID is
- accepted.
-Required:
- intentId: intent ID (string type)
- intentsJson: parsed json object from the onos:intents api
-Returns:
- Returns a dictionary with intent IDs as the key and its
- corresponding states as the values; Returns None for invalid IDs or
- Type error and any exceptions
-NOTE:
- An intent's state consist of INSTALLED,WITHDRAWN etc.
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="checkIntentState"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">checkIntentState</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">intentsId</span>=<span class="sig-default">"ALL"</span>,
- <span class="sig-arg">expectedState</span>=<span class="sig-default">'INSTALLED'</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.checkIntentState">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Check intents state based on expected state which defaults to
- INSTALLED state
-Required:
- intentsId - List of intents ID to be checked
-Optional:
- expectedState - Check the expected state(s) of each intents
- state in the list.
- *NOTE: You can pass in a list of expected state,
- Eg: expectedState = [ 'INSTALLED' , 'INSTALLING' ]
-Return:
- Returns main.TRUE only if all intent are the same as expected states
- , otherwise, returns main.FALSE; Returns None for general exception
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="flows"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">flows</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.flows">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Get flows currently added to the system
-NOTE:
- The flows -j cli command has completely different format than
- the REST output; Returns None for exception
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getFlows"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getFlows</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">device</span>,
- <span class="sig-arg">flowId</span>=<span class="sig-default">0</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.getFlows">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Gets all the flows of the device or get a specific flow in the
- device by giving its flow ID
-Required:
- str device - device/switch Id
-Optional:
- int/hex flowId - ID of the flow
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="addFlow"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">addFlow</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">deviceId</span>,
- <span class="sig-arg">appId</span>=<span class="sig-default">0</span>,
- <span class="sig-arg">ingressPort</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">egressPort</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethType</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">bandwidth</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">lambdaAlloc</span>=<span class="sig-default">False</span>,
- <span class="sig-arg">ipProto</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ipSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ipDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">tcpSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">tcpDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.addFlow">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Creates a single flow in the specified device
-Required:
- * deviceId: id of the device
-Optional:
- * ingressPort: port ingress device
- * egressPort: port of egress device
- * ethType: specify ethType
- * ethSrc: specify ethSrc ( i.e. src mac addr )
- * ethDst: specify ethDst ( i.e. dst mac addr )
- * ipProto: specify ip protocol
- * ipSrc: specify ip source address with mask eg. ip#/24
- * ipDst: specify ip destination address eg. ip#/24
- * tcpSrc: specify tcp source port
- * tcpDst: specify tcp destination port
-Returns:
- Returns main.TRUE for successful requests; Returns main.FALSE
- if error on requests;
- Returns None for exceptions
-NOTE:
- The ip and port option are for the requests input's ip and port
- of the ONOS node
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="removeFlow"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">removeFlow</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">deviceId</span>,
- <span class="sig-arg">flowId</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.removeFlow">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Remove specific device flow
-Required:
- str deviceId - id of the device
- str flowId - id of the flow
-Return:
- Returns main.TRUE if successfully deletes flows, otherwise
- Returns main.FALSE, Returns None on error
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="checkFlowsState"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">checkFlowsState</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ip</span>=<span class="sig-default">"DEFAULT"</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"DEFAULT"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controller.onosrestdriver-pysrc.html#OnosRestDriver.checkFlowsState">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Check if all the current flows are in ADDED state
-Return:
- returnValue - Returns main.TRUE only if all flows are in
- return main.FALSE otherwise;
- Returns None for exception
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controllerdriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controllerdriver-module.html
deleted file mode 100644
index b6d2193..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controllerdriver-module.html
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.api.controllerdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.api-module.html">Package api</a> ::
- Module controllerdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.api.controllerdriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module controllerdriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.api.controllerdriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 29-Nov-2012
-
-author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )
-
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- ( at your option ) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.api.controllerdriver.Controller-class.html" class="summary-name">Controller</a>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controllerdriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controllerdriver-pysrc.html
deleted file mode 100644
index 6d784e4..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controllerdriver-pysrc.html
+++ /dev/null
@@ -1,217 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.api.controllerdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.api-module.html">Package api</a> ::
- Module controllerdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.api.controllerdriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.api.controllerdriver-module.html">Module TestON.drivers.common.api.controllerdriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 29-Nov-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-docstring"> ( at your option ) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.drivers.common.apidriver=TestON.drivers.common.apidriver-module.html"><a title="TestON.drivers.common.apidriver" class="py-name" href="#" onclick="return doclink('link-2', 'apidriver', 'link-2');">apidriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Class TestON.drivers.common.apidriver.API=TestON.drivers.common.apidriver.API-class.html"><a title="TestON.drivers.common.apidriver.API" class="py-name" href="#" onclick="return doclink('link-3', 'API', 'link-3');">API</a></tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> </tt>
-<a name="Controller"></a><div id="Controller-def"><a name="L25"></a><tt class="py-lineno">25</tt> <a class="py-toggle" href="#" id="Controller-toggle" onclick="return toggle('Controller');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.api.controllerdriver.Controller-class.html">Controller</a><tt class="py-op">(</tt> <tt class="py-base-class">API</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Controller-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="Controller-expanded"><a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> <tt class="py-comment"># The common functions for emulator included in emulatordriver</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> </tt>
-<a name="Controller.__init__"></a><div id="Controller.__init__-def"><a name="L28"></a><tt class="py-lineno">28</tt> <a class="py-toggle" href="#" id="Controller.__init__-toggle" onclick="return toggle('Controller.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Controller.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="Controller.__init__-expanded"><a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-4" class="py-name"><a title="TestON.drivers.common.apidriver.API" class="py-name" href="#" onclick="return doclink('link-4', 'API', 'link-3');">API</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-5', '__init__', 'link-5');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controllerdriver.Controller-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controllerdriver.Controller-class.html
deleted file mode 100644
index 1805b78..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.controllerdriver.Controller-class.html
+++ /dev/null
@@ -1,278 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.api.controllerdriver.Controller</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.api-module.html">Package api</a> ::
- <a href="TestON.drivers.common.api.controllerdriver-module.html">Module controllerdriver</a> ::
- Class Controller
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.api.controllerdriver.Controller-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Controller</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.api.controllerdriver-pysrc.html#Controller">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_controller" name="class_hierarchy_for_controller">
-<area shape="rect" id="node1" href="TestON.drivers.common.api.controllerdriver.Controller-class.html" title="Controller" alt="" coords="5,6,83,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.apidriver.API-class.html" title="apidriver.API" alt="" coords="107,6,204,31"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="component.Component" alt="" coords="229,6,387,31"/>
-</map>
- <img src="class_hierarchy_for_controller.gif" alt='' usemap="#class_hierarchy_for_controller" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.controllerdriver-pysrc.html#Controller.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.apidriver.API-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.apidriver.API-class.html">TestON.drivers.common.apidriver.API</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.apidriver-pysrc.html#API.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>disconnect</code>,
- <code>execute</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.controllerdriver-pysrc.html#Controller.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.fvtapidriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.api.fvtapidriver-module.html
deleted file mode 100644
index 082b12a..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.fvtapidriver-module.html
+++ /dev/null
@@ -1,275 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.api.fvtapidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.api-module.html">Package api</a> ::
- Module fvtapidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.api.fvtapidriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module fvtapidriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 26-Oct-2012
-
-author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )
-
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- ( at your option ) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-
-fvtapidriver is the basic driver which will handle the fvtapidriver functions
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html" class="summary-name">FvtApiDriver</a>
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Functions</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Functions"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="test_set_init"></a><span class="summary-sig-name">test_set_init</span>(<span class="summary-sig-arg">config</span>)</span><br />
- Set up function for basic test classes config: The configuration
- dictionary; see fvt</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#test_set_init">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.api.fvtapidriver-module.html#config_default" class="summary-name">config_default</a> = <code title="{"param": None, "fv_cmd": "/home/openflow/flowvisor/scripts/flowvisor.\
-sh", "platform": "local", "controller_host": "127.0.0.1", "controller_\
-port": 6633, "timeout": 3, "port_count": 4, "base_of_port": 1, "base_i\
-f_index": 1, "test_spec": "all", "test_dir": ".", "log_file": "/home/o\
-penflow/fvt.log", "list": False, "debug": "debug", "dbg_level": loggin\
-g.DEBUG, "port_map": {}, "test_params": "None"}">{"param": None, "fv_cmd": "/home/openflow/flo<code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-VariablesDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="config_default"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">config_default</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-{"param": None, "fv_cmd": "/home/openflow/flowvisor/scripts/flowvisor.<span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
-sh", "platform": "local", "controller_host": "127.0.0.1", "controller_<span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
-port": 6633, "timeout": 3, "port_count": 4, "base_of_port": 1, "base_i<span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
-f_index": 1, "test_spec": "all", "test_dir": ".", "log_file": "/home/o<span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
-penflow/fvt.log", "list": False, "debug": "debug", "dbg_level": loggin<span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
-g.DEBUG, "port_map": {}, "test_params": "None"}
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.fvtapidriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.api.fvtapidriver-pysrc.html
deleted file mode 100644
index 7f4bb86..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.fvtapidriver-pysrc.html
+++ /dev/null
@@ -1,400 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.api.fvtapidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.api-module.html">Package api</a> ::
- Module fvtapidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.api.fvtapidriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.api.fvtapidriver-module.html">Module TestON.drivers.common.api.fvtapidriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 26-Oct-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"> ( at your option ) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">fvtapidriver is the basic driver which will handle the fvtapidriver functions</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-string">"""</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-string">There are two changes required in flowvisor-test framework :</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-string">1. In ~/flowvisortests/tests/templatetest.py line : 15 comment 'basic_logger = None'</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-string">2. In ~/flowvisortests/tests/testutils.py line : 50 specify config file path CONFIG_FILE = "~/flowvisor-test/tests/tests-base.json"</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-string">"""</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">pexpect</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">struct</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">fcntl</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">signal</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-0', 'common', 'link-0');">common</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module TestON.drivers.common.apidriver=TestON.drivers.common.apidriver-module.html"><a title="TestON.drivers.common.apidriver" class="py-name" href="#" onclick="return doclink('link-1', 'apidriver', 'link-1');">apidriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-2" class="py-name" targets="Class TestON.drivers.common.apidriver.API=TestON.drivers.common.apidriver.API-class.html"><a title="TestON.drivers.common.apidriver.API" class="py-name" href="#" onclick="return doclink('link-2', 'API', 'link-2');">API</a></tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">logging</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-name">sys</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-3', 'path', 'link-3');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-4" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-4', 'path', 'link-3');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"/lib/flowvisor-test/tests"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-name">sys</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-5', 'path', 'link-3');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-6" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-6', 'path', 'link-3');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"/lib/flowvisor-test/src/python/"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">templatetest</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">testutils</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">oftest</tt><tt class="py-op">.</tt><tt class="py-name">cstruct</tt> <tt class="py-keyword">as</tt> <tt class="py-name">ofp</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">oftest</tt><tt class="py-op">.</tt><tt class="py-name">message</tt> <tt class="py-keyword">as</tt> <tt class="py-name">message</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">oftest</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Function TestON.core.ast.parse()=TestON.core.ast-module.html#parse,Method TestON.core.iniparser.iniparser.parse()=TestON.core.iniparser.iniparser-class.html#parse,Method TestON.core.xmlparser.xmlparser.parse()=TestON.core.xmlparser.xmlparser-class.html#parse"><a title="TestON.core.ast.parse
-TestON.core.iniparser.iniparser.parse
-TestON.core.xmlparser.xmlparser.parse" class="py-name" href="#" onclick="return doclink('link-7', 'parse', 'link-7');">parse</a></tt> <tt class="py-keyword">as</tt> <tt id="link-8" class="py-name"><a title="TestON.core.ast.parse
-TestON.core.iniparser.iniparser.parse
-TestON.core.xmlparser.xmlparser.parse" class="py-name" href="#" onclick="return doclink('link-8', 'parse', 'link-7');">parse</a></tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">oftest</tt><tt class="py-op">.</tt><tt class="py-name">action</tt> <tt class="py-keyword">as</tt> <tt class="py-name">action</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">oftest</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-9', 'error', 'link-9');">error</a></tt> <tt class="py-keyword">as</tt> <tt id="link-10" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-10', 'error', 'link-9');">error</a></tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">socket</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">__builtin__</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"><tt id="link-11" class="py-name" targets="Variable TestON.drivers.common.api.fvtapidriver.config_default=TestON.drivers.common.api.fvtapidriver-module.html#config_default"><a title="TestON.drivers.common.api.fvtapidriver.config_default" class="py-name" href="#" onclick="return doclink('link-11', 'config_default', 'link-11');">config_default</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-string">"param"</tt><tt class="py-op">:</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-string">"fv_cmd"</tt><tt class="py-op">:</tt> <tt class="py-string">"/home/openflow/flowvisor/scripts/flowvisor.sh"</tt><tt class="py-op">,</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-string">"platform"</tt><tt class="py-op">:</tt> <tt class="py-string">"local"</tt><tt class="py-op">,</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-string">"controller_host"</tt><tt class="py-op">:</tt> <tt class="py-string">"127.0.0.1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-string">"controller_port"</tt><tt class="py-op">:</tt> <tt class="py-number">6633</tt><tt class="py-op">,</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-string">"timeout"</tt><tt class="py-op">:</tt> <tt class="py-number">3</tt><tt class="py-op">,</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-string">"port_count"</tt><tt class="py-op">:</tt> <tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-string">"base_of_port"</tt><tt class="py-op">:</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-string">"base_if_index"</tt><tt class="py-op">:</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-string">"test_spec"</tt><tt class="py-op">:</tt> <tt class="py-string">"all"</tt><tt class="py-op">,</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-string">"test_dir"</tt><tt class="py-op">:</tt> <tt class="py-string">"."</tt><tt class="py-op">,</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-string">"log_file"</tt><tt class="py-op">:</tt> <tt class="py-string">"/home/openflow/fvt.log"</tt><tt class="py-op">,</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-string">"list"</tt><tt class="py-op">:</tt> <tt class="py-name">False</tt><tt class="py-op">,</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-string">"debug"</tt><tt class="py-op">:</tt> <tt class="py-string">"debug"</tt><tt class="py-op">,</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-string">"dbg_level"</tt><tt class="py-op">:</tt> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt class="py-name">DEBUG</tt><tt class="py-op">,</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-string">"port_map"</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-string">"test_params"</tt><tt class="py-op">:</tt> <tt class="py-string">"None"</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"><tt class="py-op">}</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> </tt>
-<a name="test_set_init"></a><div id="test_set_init-def"><a name="L75"></a><tt class="py-lineno"> 75</tt> <a class="py-toggle" href="#" id="test_set_init-toggle" onclick="return toggle('test_set_init');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver-module.html#test_set_init">test_set_init</a><tt class="py-op">(</tt> <tt class="py-param">config</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="test_set_init-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="test_set_init-expanded"><a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"><tt class="py-docstring"> Set up function for basic test classes</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"><tt class="py-docstring"> config: The configuration dictionary; see fvt</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">basic_port_map</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">basic_fv_cmd</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">basic_logger</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">basic_timeout</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">basic_config</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">baisc_logger</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">basic_fv_cmd</tt> <tt class="py-op">=</tt> <tt class="py-name">config</tt><tt class="py-op">[</tt> <tt class="py-string">"fv_cmd"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">basic_timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">config</tt><tt class="py-op">[</tt> <tt class="py-string">"timeout"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">basic_port_map</tt> <tt class="py-op">=</tt> <tt class="py-name">config</tt><tt class="py-op">[</tt> <tt class="py-string">"port_map"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">basic_config</tt> <tt class="py-op">=</tt> <tt class="py-name">config</tt> </tt>
-</div><a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver"></a><div id="FvtApiDriver-def"><a name="L93"></a><tt class="py-lineno"> 93</tt> <a class="py-toggle" href="#" id="FvtApiDriver-toggle" onclick="return toggle('FvtApiDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">API</tt><tt class="py-op">,</tt> <tt class="py-base-class">templatetest</tt><tt class="py-op">.</tt><tt class="py-base-class">TemplateTest</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="FvtApiDriver-expanded"><a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.__init__"></a><div id="FvtApiDriver.__init__-def"><a name="L95"></a><tt class="py-lineno"> 95</tt> <a class="py-toggle" href="#" id="FvtApiDriver.__init__-toggle" onclick="return toggle('FvtApiDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.__init__-expanded"><a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-12" class="py-name"><a title="TestON.drivers.common.apidriver.API" class="py-name" href="#" onclick="return doclink('link-12', 'API', 'link-2');">API</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-13', '__init__', 'link-13');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">'init'</tt> </tt>
-</div><a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.connect"></a><div id="FvtApiDriver.connect-def"><a name="L99"></a><tt class="py-lineno"> 99</tt> <a class="py-toggle" href="#" id="FvtApiDriver.connect-toggle" onclick="return toggle('FvtApiDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.connect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.connect-expanded"><a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">connect_result</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-14" class="py-name"><a title="TestON.drivers.common.apidriver.API" class="py-name" href="#" onclick="return doclink('link-14', 'API', 'link-2');">API</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-15', 'connect', 'link-15');">connect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">logFileName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">".session"</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt id="link-16" class="py-name"><a title="TestON.drivers.common.api.fvtapidriver.config_default" class="py-name" href="#" onclick="return doclink('link-16', 'config_default', 'link-11');">config_default</a></tt><tt class="py-op">[</tt> <tt class="py-string">"log_file"</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">logFileName</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt id="link-17" class="py-name" targets="Function TestON.drivers.common.api.fvtapidriver.test_set_init()=TestON.drivers.common.api.fvtapidriver-module.html#test_set_init"><a title="TestON.drivers.common.api.fvtapidriver.test_set_init" class="py-name" href="#" onclick="return doclink('link-17', 'test_set_init', 'link-17');">test_set_init</a></tt><tt class="py-op">(</tt> <tt id="link-18" class="py-name"><a title="TestON.drivers.common.api.fvtapidriver.config_default" class="py-name" href="#" onclick="return doclink('link-18', 'config_default', 'link-11');">config_default</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">__builtin__</tt><tt class="py-op">.</tt><tt class="py-name">basic_logger</tt> <tt class="py-op">=</tt> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">'log'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-name">__builtin__</tt><tt class="py-op">.</tt><tt class="py-name">basic_logger</tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Calling my test setup"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.setUp()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#setUp"><a title="TestON.drivers.common.api.fvtapidriver.FvtApiDriver.setUp" class="py-name" href="#" onclick="return doclink('link-19', 'setUp', 'link-19');">setUp</a></tt><tt class="py-op">(</tt> <tt class="py-name">basic_logger</tt> <tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fv</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sv</tt><tt class="py-op">,</tt> <tt class="py-name">sv_ret</tt><tt class="py-op">,</tt> <tt class="py-name">ctl_ret</tt><tt class="py-op">,</tt> <tt class="py-name">sw_ret</tt> <tt class="py-op">)</tt> <tt class="py-op">=</tt> <tt class="py-name">testutils</tt><tt class="py-op">.</tt><tt class="py-name">setUpTestEnv</tt><tt class="py-op">(</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">fv_cmd</tt><tt class="py-op">=</tt><tt class="py-name">basic_fv_cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">chkSetUpCondition</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fv</tt><tt class="py-op">,</tt> <tt class="py-name">sv_ret</tt><tt class="py-op">,</tt> <tt class="py-name">ctl_ret</tt><tt class="py-op">,</tt> <tt class="py-name">sw_ret</tt> <tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.simplePacket"></a><div id="FvtApiDriver.simplePacket-def"><a name="L118"></a><tt class="py-lineno">118</tt> <a class="py-toggle" href="#" id="FvtApiDriver.simplePacket-toggle" onclick="return toggle('FvtApiDriver.simplePacket');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#simplePacket">simplePacket</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">dl_src</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.simplePacket-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.simplePacket-expanded"><a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">dl_src</tt> <tt class="py-op">=</tt> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">testutils</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">dl_src</tt> <tt class="py-op">]</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">testutils</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.simplePacket()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#simplePacket"><a title="TestON.drivers.common.api.fvtapidriver.FvtApiDriver.simplePacket" class="py-name" href="#" onclick="return doclink('link-20', 'simplePacket', 'link-20');">simplePacket</a></tt><tt class="py-op">(</tt> <tt class="py-name">dl_src</tt><tt class="py-op">=</tt><tt class="py-name">dl_src</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.genPacketIn"></a><div id="FvtApiDriver.genPacketIn-def"><a name="L122"></a><tt class="py-lineno">122</tt> <a class="py-toggle" href="#" id="FvtApiDriver.genPacketIn-toggle" onclick="return toggle('FvtApiDriver.genPacketIn');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#genPacketIn">genPacketIn</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">in_port</tt><tt class="py-op">,</tt> <tt class="py-param">pkt</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.genPacketIn-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.genPacketIn-expanded"><a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">testutils</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.genPacketIn()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#genPacketIn"><a title="TestON.drivers.common.api.fvtapidriver.FvtApiDriver.genPacketIn" class="py-name" href="#" onclick="return doclink('link-21', 'genPacketIn', 'link-21');">genPacketIn</a></tt><tt class="py-op">(</tt> <tt class="py-name">in_port</tt><tt class="py-op">=</tt><tt class="py-name">in_port</tt><tt class="py-op">,</tt> <tt class="py-name">pkt</tt><tt class="py-op">=</tt><tt class="py-name">pkt</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.ofmsgSndCmp"></a><div id="FvtApiDriver.ofmsgSndCmp-def"><a name="L125"></a><tt class="py-lineno">125</tt> <a class="py-toggle" href="#" id="FvtApiDriver.ofmsgSndCmp-toggle" onclick="return toggle('FvtApiDriver.ofmsgSndCmp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#ofmsgSndCmp">ofmsgSndCmp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">snd_list</tt><tt class="py-op">,</tt> <tt class="py-param">exp_list</tt><tt class="py-op">,</tt> <tt class="py-param">xid_ignore</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> <tt class="py-param">hdr_only</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.ofmsgSndCmp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.ofmsgSndCmp-expanded"><a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">testutils</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.ofmsgSndCmp()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#ofmsgSndCmp"><a title="TestON.drivers.common.api.fvtapidriver.FvtApiDriver.ofmsgSndCmp" class="py-name" href="#" onclick="return doclink('link-22', 'ofmsgSndCmp', 'link-22');">ofmsgSndCmp</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">snd_list</tt><tt class="py-op">,</tt> <tt class="py-name">exp_list</tt><tt class="py-op">,</tt> <tt class="py-name">xid_ignore</tt><tt class="py-op">,</tt> <tt class="py-name">hdr_only</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.setRule"></a><div id="FvtApiDriver.setRule-def"><a name="L128"></a><tt class="py-lineno">128</tt> <a class="py-toggle" href="#" id="FvtApiDriver.setRule-toggle" onclick="return toggle('FvtApiDriver.setRule');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#setRule">setRule</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sv</tt><tt class="py-op">,</tt> <tt class="py-param">rule</tt><tt class="py-op">,</tt> <tt class="py-param">num_try</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.setRule-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.setRule-expanded"><a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">testutils</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.setRule()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#setRule"><a title="TestON.drivers.common.api.fvtapidriver.FvtApiDriver.setRule" class="py-name" href="#" onclick="return doclink('link-23', 'setRule', 'link-23');">setRule</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">sv</tt><tt class="py-op">,</tt> <tt class="py-name">rule</tt><tt class="py-op">,</tt> <tt class="py-name">num_try</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.chkFlowdb"></a><div id="FvtApiDriver.chkFlowdb-def"><a name="L131"></a><tt class="py-lineno">131</tt> <a class="py-toggle" href="#" id="FvtApiDriver.chkFlowdb-toggle" onclick="return toggle('FvtApiDriver.chkFlowdb');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#chkFlowdb">chkFlowdb</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">controller_number</tt><tt class="py-op">,</tt> <tt class="py-param">switch_number</tt><tt class="py-op">,</tt> <tt class="py-param">exp_count</tt><tt class="py-op">,</tt> <tt class="py-param">exp_rewrites</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.chkFlowdb-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.chkFlowdb-expanded"><a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">testutils</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.chkFlowdb()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#chkFlowdb"><a title="TestON.drivers.common.api.fvtapidriver.FvtApiDriver.chkFlowdb" class="py-name" href="#" onclick="return doclink('link-24', 'chkFlowdb', 'link-24');">chkFlowdb</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">controller_number</tt><tt class="py-op">,</tt> <tt class="py-name">switch_number</tt><tt class="py-op">,</tt> <tt class="py-name">exp_count</tt><tt class="py-op">,</tt> <tt class="py-name">exp_rewrites</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.chkSwitchStats"></a><div id="FvtApiDriver.chkSwitchStats-def"><a name="L134"></a><tt class="py-lineno">134</tt> <a class="py-toggle" href="#" id="FvtApiDriver.chkSwitchStats-toggle" onclick="return toggle('FvtApiDriver.chkSwitchStats');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#chkSwitchStats">chkSwitchStats</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">switch_number</tt><tt class="py-op">,</tt> <tt class="py-param">ofproto</tt><tt class="py-op">,</tt> <tt class="py-param">exp_snd_count</tt><tt class="py-op">,</tt> <tt class="py-param">exp_rcv_count</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.chkSwitchStats-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.chkSwitchStats-expanded"><a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">testutils</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name" targets="Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.chkSwitchStats()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#chkSwitchStats"><a title="TestON.drivers.common.api.fvtapidriver.FvtApiDriver.chkSwitchStats" class="py-name" href="#" onclick="return doclink('link-25', 'chkSwitchStats', 'link-25');">chkSwitchStats</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">switch_number</tt><tt class="py-op">,</tt> <tt class="py-name">ofproto</tt><tt class="py-op">,</tt> <tt class="py-name">exp_snd_count</tt><tt class="py-op">,</tt> <tt class="py-name">exp_rcv_count</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.chkSliceStats"></a><div id="FvtApiDriver.chkSliceStats-def"><a name="L137"></a><tt class="py-lineno">137</tt> <a class="py-toggle" href="#" id="FvtApiDriver.chkSliceStats-toggle" onclick="return toggle('FvtApiDriver.chkSliceStats');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#chkSliceStats">chkSliceStats</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">controller_number</tt><tt class="py-op">,</tt> <tt class="py-param">ofproto</tt><tt class="py-op">,</tt> <tt class="py-param">exp_snd_count</tt><tt class="py-op">,</tt> <tt class="py-param">exp_rcv_count</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.chkSliceStats-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.chkSliceStats-expanded"><a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">testutils</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.chkSliceStats()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#chkSliceStats"><a title="TestON.drivers.common.api.fvtapidriver.FvtApiDriver.chkSliceStats" class="py-name" href="#" onclick="return doclink('link-26', 'chkSliceStats', 'link-26');">chkSliceStats</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">controller_number</tt><tt class="py-op">,</tt> <tt class="py-name">ofproto</tt><tt class="py-op">,</tt> <tt class="py-name">exp_snd_count</tt><tt class="py-op">,</tt> <tt class="py-name">exp_rcv_count</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.recvStats"></a><div id="FvtApiDriver.recvStats-def"><a name="L140"></a><tt class="py-lineno">140</tt> <a class="py-toggle" href="#" id="FvtApiDriver.recvStats-toggle" onclick="return toggle('FvtApiDriver.recvStats');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#recvStats">recvStats</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">swId</tt><tt class="py-op">,</tt> <tt class="py-param">typ</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.recvStats-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.recvStats-expanded"><a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">testutils</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.recvStats()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#recvStats"><a title="TestON.drivers.common.api.fvtapidriver.FvtApiDriver.recvStats" class="py-name" href="#" onclick="return doclink('link-27', 'recvStats', 'link-27');">recvStats</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">swId</tt><tt class="py-op">,</tt> <tt class="py-name">typ</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.ofmsgSndCmpWithXid"></a><div id="FvtApiDriver.ofmsgSndCmpWithXid-def"><a name="L143"></a><tt class="py-lineno">143</tt> <a class="py-toggle" href="#" id="FvtApiDriver.ofmsgSndCmpWithXid-toggle" onclick="return toggle('FvtApiDriver.ofmsgSndCmpWithXid');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#ofmsgSndCmpWithXid">ofmsgSndCmpWithXid</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">snd_list</tt><tt class="py-op">,</tt> <tt class="py-param">exp_list</tt><tt class="py-op">,</tt> <tt class="py-param">xid_ignore</tt><tt class="py-op">,</tt> <tt class="py-param">hdr_only</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.ofmsgSndCmpWithXid-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.ofmsgSndCmpWithXid-expanded"><a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">testutils</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name" targets="Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.ofmsgSndCmpWithXid()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#ofmsgSndCmpWithXid"><a title="TestON.drivers.common.api.fvtapidriver.FvtApiDriver.ofmsgSndCmpWithXid" class="py-name" href="#" onclick="return doclink('link-28', 'ofmsgSndCmpWithXid', 'link-28');">ofmsgSndCmpWithXid</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">snd_list</tt><tt class="py-op">,</tt> <tt class="py-name">exp_list</tt><tt class="py-op">,</tt> <tt class="py-name">xid_ignore</tt><tt class="py-op">,</tt> <tt class="py-name">hdr_only</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.genPacketOut"></a><div id="FvtApiDriver.genPacketOut-def"><a name="L146"></a><tt class="py-lineno">146</tt> <a class="py-toggle" href="#" id="FvtApiDriver.genPacketOut-toggle" onclick="return toggle('FvtApiDriver.genPacketOut');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#genPacketOut">genPacketOut</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">xid</tt><tt class="py-op">,</tt> <tt class="py-param">buffer_id</tt><tt class="py-op">,</tt> <tt class="py-param">in_port</tt><tt class="py-op">,</tt> <tt class="py-param">action_ports</tt><tt class="py-op">,</tt> <tt class="py-param">pkt</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.genPacketOut-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.genPacketOut-expanded"><a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">testutils</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.genPacketOut()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#genPacketOut"><a title="TestON.drivers.common.api.fvtapidriver.FvtApiDriver.genPacketOut" class="py-name" href="#" onclick="return doclink('link-29', 'genPacketOut', 'link-29');">genPacketOut</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">xid</tt><tt class="py-op">,</tt> <tt class="py-name">buffer_id</tt><tt class="py-op">,</tt> <tt class="py-name">in_port</tt><tt class="py-op">,</tt> <tt class="py-name">action_ports</tt><tt class="py-op">,</tt> <tt class="py-name">pkt</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.genFlowModFlush"></a><div id="FvtApiDriver.genFlowModFlush-def"><a name="L149"></a><tt class="py-lineno">149</tt> <a class="py-toggle" href="#" id="FvtApiDriver.genFlowModFlush-toggle" onclick="return toggle('FvtApiDriver.genFlowModFlush');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#genFlowModFlush">genFlowModFlush</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.genFlowModFlush-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.genFlowModFlush-expanded"><a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">testutils</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.genFlowModFlush()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#genFlowModFlush"><a title="TestON.drivers.common.api.fvtapidriver.FvtApiDriver.genFlowModFlush" class="py-name" href="#" onclick="return doclink('link-30', 'genFlowModFlush', 'link-30');">genFlowModFlush</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.genPhyPort"></a><div id="FvtApiDriver.genPhyPort-def"><a name="L152"></a><tt class="py-lineno">152</tt> <a class="py-toggle" href="#" id="FvtApiDriver.genPhyPort-toggle" onclick="return toggle('FvtApiDriver.genPhyPort');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#genPhyPort">genPhyPort</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">,</tt> <tt class="py-param">addr</tt><tt class="py-op">,</tt> <tt class="py-param">port_no</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.genPhyPort-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.genPhyPort-expanded"><a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">testutils</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.genPhyPort()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#genPhyPort"><a title="TestON.drivers.common.api.fvtapidriver.FvtApiDriver.genPhyPort" class="py-name" href="#" onclick="return doclink('link-31', 'genPhyPort', 'link-31');">genPhyPort</a></tt><tt class="py-op">(</tt> <tt class="py-name">name</tt><tt class="py-op">,</tt> <tt class="py-name">addr</tt><tt class="py-op">,</tt> <tt class="py-name">port_no</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.disconnect"></a><div id="FvtApiDriver.disconnect-def"><a name="L155"></a><tt class="py-lineno">155</tt> <a class="py-toggle" href="#" id="FvtApiDriver.disconnect-toggle" onclick="return toggle('FvtApiDriver.disconnect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#disconnect">disconnect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.disconnect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.disconnect-expanded"><a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-string">"""</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"><tt class="py-string"> if self.handle:</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"><tt class="py-string"> self.handle = handle</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"><tt class="py-string"> response = self.execute( cmd="exit",prompt="(.*)",timeout=120 )</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"><tt class="py-string"> else :</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"><tt class="py-string"> main.log.error( "Connection failed to the host" )</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"><tt class="py-string"> response = main.FALSE</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"><tt class="py-string"> """</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-</div><a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.setUp"></a><div id="FvtApiDriver.setUp-def"><a name="L167"></a><tt class="py-lineno">167</tt> <a class="py-toggle" href="#" id="FvtApiDriver.setUp-toggle" onclick="return toggle('FvtApiDriver.setUp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#setUp">setUp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">basic_logger</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.setUp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.setUp-expanded"><a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name" targets="Module TestON.core.logger=TestON.core.logger-module.html"><a title="TestON.core.logger" class="py-name" href="#" onclick="return doclink('link-32', 'logger', 'link-32');">logger</a></tt> <tt class="py-op">=</tt> <tt class="py-name">basic_logger</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-comment"># basic_logger.info( "** START TEST CASE " + str( self ) )</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">basic_timeout</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">basic_timeout</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fv</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sv</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">controllers</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">switches</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-</div><a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> </tt>
-<a name="FvtApiDriver.close_log_handles"></a><div id="FvtApiDriver.close_log_handles-def"><a name="L179"></a><tt class="py-lineno">179</tt> <a class="py-toggle" href="#" id="FvtApiDriver.close_log_handles-toggle" onclick="return toggle('FvtApiDriver.close_log_handles');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#close_log_handles">close_log_handles</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FvtApiDriver.close_log_handles-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FvtApiDriver.close_log_handles-expanded"><a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">tearDown</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">'log'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">removeHandler</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">log_handler</tt> <tt class="py-op">)</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-comment"># if self.logfile_handler:</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-comment"># self.logfile_handler.close()</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div></div><a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html
deleted file mode 100644
index 9fa5dfd..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html
+++ /dev/null
@@ -1,625 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.api.fvtapidriver.FvtApiDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.api-module.html">Package api</a> ::
- <a href="TestON.drivers.common.api.fvtapidriver-module.html">Module fvtapidriver</a> ::
- Class FvtApiDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class FvtApiDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_fvtapidriv" name="class_hierarchy_for_fvtapidriv">
-<area shape="rect" id="node1" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html" title="FvtApiDriver" alt="" coords="5,6,99,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.apidriver.API-class.html" title="apidriver.API" alt="" coords="123,6,220,31"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="component.Component" alt="" coords="245,6,403,31"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="templatetest.TemplateTest" alt="" coords="427,6,605,31"/>
-</map>
- <img src="class_hierarchy_for_fvtapidriv.gif" alt='' usemap="#class_hierarchy_for_fvtapidriv" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Connection will establish to the remote host using ssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="simplePacket"></a><span class="summary-sig-name">simplePacket</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">dl_src</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.simplePacket">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="genPacketIn"></a><span class="summary-sig-name">genPacketIn</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">in_port</span>,
- <span class="summary-sig-arg">pkt</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.genPacketIn">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="ofmsgSndCmp"></a><span class="summary-sig-name">ofmsgSndCmp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">snd_list</span>,
- <span class="summary-sig-arg">exp_list</span>,
- <span class="summary-sig-arg">xid_ignore</span>=<span class="summary-sig-default">True</span>,
- <span class="summary-sig-arg">hdr_only</span>=<span class="summary-sig-default">True</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.ofmsgSndCmp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="setRule"></a><span class="summary-sig-name">setRule</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">sv</span>,
- <span class="summary-sig-arg">rule</span>,
- <span class="summary-sig-arg">num_try</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.setRule">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="chkFlowdb"></a><span class="summary-sig-name">chkFlowdb</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">controller_number</span>,
- <span class="summary-sig-arg">switch_number</span>,
- <span class="summary-sig-arg">exp_count</span>,
- <span class="summary-sig-arg">exp_rewrites</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.chkFlowdb">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="chkSwitchStats"></a><span class="summary-sig-name">chkSwitchStats</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">switch_number</span>,
- <span class="summary-sig-arg">ofproto</span>,
- <span class="summary-sig-arg">exp_snd_count</span>,
- <span class="summary-sig-arg">exp_rcv_count</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.chkSwitchStats">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="chkSliceStats"></a><span class="summary-sig-name">chkSliceStats</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">controller_number</span>,
- <span class="summary-sig-arg">ofproto</span>,
- <span class="summary-sig-arg">exp_snd_count</span>,
- <span class="summary-sig-arg">exp_rcv_count</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.chkSliceStats">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="recvStats"></a><span class="summary-sig-name">recvStats</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">swId</span>,
- <span class="summary-sig-arg">typ</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.recvStats">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="ofmsgSndCmpWithXid"></a><span class="summary-sig-name">ofmsgSndCmpWithXid</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">snd_list</span>,
- <span class="summary-sig-arg">exp_list</span>,
- <span class="summary-sig-arg">xid_ignore</span>,
- <span class="summary-sig-arg">hdr_only</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.ofmsgSndCmpWithXid">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="genPacketOut"></a><span class="summary-sig-name">genPacketOut</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">xid</span>,
- <span class="summary-sig-arg">buffer_id</span>,
- <span class="summary-sig-arg">in_port</span>,
- <span class="summary-sig-arg">action_ports</span>,
- <span class="summary-sig-arg">pkt</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.genPacketOut">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="genFlowModFlush"></a><span class="summary-sig-name">genFlowModFlush</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.genFlowModFlush">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="genPhyPort"></a><span class="summary-sig-name">genPhyPort</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">name</span>,
- <span class="summary-sig-arg">addr</span>,
- <span class="summary-sig-arg">port_no</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.genPhyPort">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="setUp"></a><span class="summary-sig-name">setUp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">basic_logger</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.setUp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#close_log_handles" class="summary-sig-name">close_log_handles</a>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.close_log_handles">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>config</code>,
- <code>execute</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Connection will establish to the remote host using ssh. It will take
- user_name ,ip_address and password as arguments<br> and will return
- the handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="disconnect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">disconnect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">handle</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.disconnect">source code</a></span>
- </td>
- </tr></table>
-
-
- <dl class="fields">
- <dt>Overrides:
- component.Component.disconnect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="close_log_handles"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">close_log_handles</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.api.fvtapidriver-pysrc.html#FvtApiDriver.close_log_handles">source code</a></span>
- </td>
- </tr></table>
-
-
- <dl class="fields">
- <dt>Overrides:
- component.Component.close_log_handles
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.apidriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.apidriver-module.html
deleted file mode 100644
index b751d61..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.apidriver-module.html
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.apidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- Module apidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.apidriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module apidriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.apidriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 22-Nov-2012
-
-author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )
-
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- ( at your option ) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.apidriver.API-class.html" class="summary-name">API</a><br />
- This will define common functions for CLI included.
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.apidriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.apidriver-pysrc.html
deleted file mode 100644
index f21e160..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.apidriver-pysrc.html
+++ /dev/null
@@ -1,248 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.apidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- Module apidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.apidriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.apidriver-module.html">Module TestON.drivers.common.apidriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 22-Nov-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-docstring"> ( at your option ) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt class="py-name">component</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Component</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> </tt>
-<a name="API"></a><div id="API-def"><a name="L26"></a><tt class="py-lineno">26</tt> <a class="py-toggle" href="#" id="API-toggle" onclick="return toggle('API');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.apidriver.API-class.html">API</a><tt class="py-op">(</tt> <tt class="py-base-class">Component</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="API-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="API-expanded"><a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"><tt class="py-docstring"> This will define common functions for CLI included.</tt> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="API.__init__"></a><div id="API.__init__-def"><a name="L31"></a><tt class="py-lineno">31</tt> <a class="py-toggle" href="#" id="API.__init__-toggle" onclick="return toggle('API.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.apidriver.API-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="API.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="API.__init__-expanded"><a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt class="py-name">Component</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-1', '__init__', 'link-1');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> </tt>
-<a name="API.connect"></a><div id="API.connect-def"><a name="L34"></a><tt class="py-lineno">34</tt> <a class="py-toggle" href="#" id="API.connect-toggle" onclick="return toggle('API.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.apidriver.API-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="API.connect-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="API.connect-expanded"><a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"><tt class="py-docstring"> Connection will establish to the remote host using ssh.</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"><tt class="py-docstring"> It will take user_name ,ip_address and password as arguments<br></tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"><tt class="py-docstring"> and will return the handle.</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-2" class="py-name" targets="Class TestON.drivers.common.apidriver.API=TestON.drivers.common.apidriver.API-class.html"><a title="TestON.drivers.common.apidriver.API" class="py-name" href="#" onclick="return doclink('link-2', 'API', 'link-2');">API</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-3', 'connect', 'link-3');">connect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div></div><a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.apidriver.API-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.apidriver.API-class.html
deleted file mode 100644
index 973efa1..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.apidriver.API-class.html
+++ /dev/null
@@ -1,301 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.apidriver.API</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.apidriver-module.html">Module apidriver</a> ::
- Class API
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.apidriver.API-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class API</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.apidriver-pysrc.html#API">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_api" name="class_hierarchy_for_api">
-<area shape="rect" id="node1" href="TestON.drivers.common.apidriver.API-class.html" title="API" alt="" coords="5,6,48,31"/>
-<area shape="rect" id="node2" href="javascript:void(0);" title="component.Component" alt="" coords="73,6,231,31"/>
-</map>
- <img src="class_hierarchy_for_api.gif" alt='' usemap="#class_hierarchy_for_api" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<p>This will define common functions for CLI included.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.apidriver.API-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.apidriver-pysrc.html#API.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.apidriver.API-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Connection will establish to the remote host using ssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.apidriver-pysrc.html#API.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>disconnect</code>,
- <code>execute</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.apidriver-pysrc.html#API.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.apidriver-pysrc.html#API.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Connection will establish to the remote host using ssh. It will take
- user_name ,ip_address and password as arguments<br> and will return
- the handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli-module.html
deleted file mode 100644
index d56995f..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli-module.html
+++ /dev/null
@@ -1,197 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- Package cli
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package cli</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.dpclidriver-module.html">TestON.drivers.common.cli.dpclidriver</a></strong>: <em class="summary">Driver for blank dataplane VMs.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator-module.html">TestON.drivers.common.cli.emulator</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-module.html">TestON.drivers.common.cli.emulator.flowvisordriver</a></strong>: <em class="summary">Created on 26-Mar-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-module.html">TestON.drivers.common.cli.emulator.lincoedriver</a></strong>: <em class="summary">This driver handles the optical switch emulator linc-oe.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-module.html">TestON.drivers.common.cli.emulator.mininetclidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-module.html">TestON.drivers.common.cli.emulator.poxclidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-module.html">TestON.drivers.common.cli.emulator.remotemininetdriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulatordriver-module.html">TestON.drivers.common.cli.emulatordriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.onosclidriver-module.html">TestON.drivers.common.cli.onosclidriver</a></strong>: <em class="summary">This driver enters the onos> prompt to issue commands.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.onosdriver-module.html">TestON.drivers.common.cli.onosdriver</a></strong>: <em class="summary">This driver interacts with ONOS bench, the OSGi platform that
- configures the ONOS nodes.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.quaggaclidriver-module.html">TestON.drivers.common.cli.quaggaclidriver</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotesys-module.html">TestON.drivers.common.cli.remotesys</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotesysdriver-module.html">TestON.drivers.common.cli.remotesysdriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed-module.html">TestON.drivers.common.cli.remotetestbed</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html">TestON.drivers.common.cli.remotetestbed.floodlightclidriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html">TestON.drivers.common.cli.remotetestbed.necswitchdriver</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html">TestON.drivers.common.cli.remotetestbed.remotepoxdriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html">TestON.drivers.common.cli.remotetestbed.remotevmdriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbeddriver-module.html">TestON.drivers.common.cli.remotetestbeddriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.tool-module.html">TestON.drivers.common.cli.tool</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-module.html">TestON.drivers.common.cli.tool.dpctlclidriver</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.toolsdriver-module.html">TestON.drivers.common.cli.toolsdriver</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli-pysrc.html
deleted file mode 100644
index ccaa703..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli-pysrc.html
+++ /dev/null
@@ -1,124 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- Package cli
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli-module.html">Package TestON.drivers.common.cli</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.dpclidriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.dpclidriver-module.html
deleted file mode 100644
index 1ffe1e4..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.dpclidriver-module.html
+++ /dev/null
@@ -1,144 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.dpclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Module dpclidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.dpclidriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module dpclidriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.dpclidriver-pysrc.html">source code</a></span></p>
-<p>Driver for blank dataplane VMs. Created for SDNIP test.</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html" class="summary-name">DPCliDriver</a>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.dpclidriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.dpclidriver-pysrc.html
deleted file mode 100644
index bd692c4..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.dpclidriver-pysrc.html
+++ /dev/null
@@ -1,399 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.dpclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Module dpclidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.dpclidriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.dpclidriver-module.html">Module TestON.drivers.common.cli.dpclidriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">Driver for blank dataplane VMs. Created for SDNIP test.</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">pexpect</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.drivers.common.clidriver=TestON.drivers.common.clidriver-module.html"><a title="TestON.drivers.common.clidriver" class="py-name" href="#" onclick="return doclink('link-2', 'clidriver', 'link-2');">clidriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Class TestON.bin.cli.CLI=TestON.bin.cli.CLI-class.html,Class TestON.drivers.common.clidriver.CLI=TestON.drivers.common.clidriver.CLI-class.html"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-3', 'CLI', 'link-3');">CLI</a></tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"> </tt>
-<a name="DPCliDriver"></a><div id="DPCliDriver-def"><a name="L8"></a><tt class="py-lineno"> 8</tt> <a class="py-toggle" href="#" id="DPCliDriver-toggle" onclick="return toggle('DPCliDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html">DPCliDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">CLI</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DPCliDriver-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="DPCliDriver-expanded"><a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> </tt>
-<a name="DPCliDriver.__init__"></a><div id="DPCliDriver.__init__-def"><a name="L10"></a><tt class="py-lineno"> 10</tt> <a class="py-toggle" href="#" id="DPCliDriver.__init__-toggle" onclick="return toggle('DPCliDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DPCliDriver.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DPCliDriver.__init__-expanded"><a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-4" class="py-name"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-4', 'CLI', 'link-3');">CLI</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-5', '__init__', 'link-5');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"> </tt>
-<a name="DPCliDriver.connect"></a><div id="DPCliDriver.connect-def"><a name="L13"></a><tt class="py-lineno"> 13</tt> <a class="py-toggle" href="#" id="DPCliDriver.connect-toggle" onclick="return toggle('DPCliDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DPCliDriver.connect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DPCliDriver.connect-expanded"><a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-6" class="py-name" targets="Class TestON.drivers.common.cli.dpclidriver.DPCliDriver=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html"><a title="TestON.drivers.common.cli.dpclidriver.DPCliDriver" class="py-name" href="#" onclick="return doclink('link-6', 'DPCliDriver', 'link-6');">DPCliDriver</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-7', 'connect', 'link-7');">connect</a></tt><tt class="py-op">(</tt> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt><tt class="py-op">,</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-8', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"NO HANDLE"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="DPCliDriver.create_interfaces"></a><div id="DPCliDriver.create_interfaces-def"><a name="L29"></a><tt class="py-lineno"> 29</tt> <a class="py-toggle" href="#" id="DPCliDriver.create_interfaces-toggle" onclick="return toggle('DPCliDriver.create_interfaces');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#create_interfaces">create_interfaces</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">net</tt><tt class="py-op">,</tt> <tt class="py-param">number</tt><tt class="py-op">,</tt> <tt class="py-param">start</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DPCliDriver.create_interfaces-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DPCliDriver.create_interfaces-expanded"><a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-docstring"> Creates a number,specified by 'number,' of subinterfaces on eth0.</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring"> Ip addresses start at 'net'.'start'.1.1 with a 24 bit netmask.</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring"> Addresses increment sequentially in the third quad, therefore all</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-docstring"> interfaces are in different subnets on the same machine. When the</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"> third quad reaches 255, it is reset to 1 and the second quad is</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> incremented. Every single ip address is placed in a file in /tmp</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> titled 'ip_table{net}.txt'. The file is used by 'pingall_interfaces()'</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"> as a fping argument</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring"> This method returns true if all interfaces are created without a hitch,</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring"> and false if a single interface has issues</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-9', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-10', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"rm /tmp/local_ip.txt"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-11', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"touch /tmp/local_ip.txt"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-12', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Creating interfaces"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">k</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">intf</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">number</tt> <tt class="py-op">!=</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">k</tt> <tt class="py-op">=</tt> <tt class="py-name">k</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">k</tt> <tt class="py-op">==</tt> <tt class="py-number">256</tt><tt class="py-op">:</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">k</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-name">start</tt> <tt class="py-op">=</tt> <tt class="py-name">start</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">number</tt> <tt class="py-op">=</tt> <tt class="py-name">number</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">intf</tt> <tt class="py-op">=</tt> <tt class="py-name">intf</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt id="link-13" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#net"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-13', 'net', 'link-13');">net</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">start</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">k</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">".1"</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-14', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-string">"sudo ifconfig eth0:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">intf</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">ip</tt> <tt class="py-op">+</tt> <tt class="py-string">" netmask 255.255.255.0"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-string">"\$"</tt><tt class="py-op">,</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-string">"password"</tt><tt class="py-op">,</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">,</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-15', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-string">"echo "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" >> /tmp/local_ip.txt"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-16', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Sending sudo password"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-17', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-18', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-19', 'error', 'link-19');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"INTERFACES NOT CREATED"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> </tt>
-<a name="DPCliDriver.pingall_interfaces"></a><div id="DPCliDriver.pingall_interfaces-def"><a name="L85"></a><tt class="py-lineno"> 85</tt> <a class="py-toggle" href="#" id="DPCliDriver.pingall_interfaces-toggle" onclick="return toggle('DPCliDriver.pingall_interfaces');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#pingall_interfaces">pingall_interfaces</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">netsrc</tt><tt class="py-op">,</tt> <tt class="py-param">netstrt</tt><tt class="py-op">,</tt> <tt class="py-param">netdst</tt><tt class="py-op">,</tt> <tt class="py-param">destlogin</tt><tt class="py-op">,</tt> <tt class="py-param">destip</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DPCliDriver.pingall_interfaces-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DPCliDriver.pingall_interfaces-expanded"><a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"><tt class="py-docstring"> Copies the /tmp/ip_table{ net }.txt file from the machine you wish to</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"><tt class="py-docstring"> ping, then runs fping with a source address of</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"><tt class="py-docstring"> { netsrc }.{ netstrt }.1.1 on the copied file.</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"><tt class="py-docstring"> Check every single response for reachable or unreachable. If all are</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"><tt class="py-docstring"> reachable, function returns true. If a SINGLE host is unreachable,</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"><tt class="py-docstring"> then the function stops and returns false. If fping is not installed,</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"><tt class="py-docstring"> this function will install fping then run the same command</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-20', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-21', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"scp "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">destlogin</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">destip</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-string">":/tmp/local_ip.txt /tmp/ip_table"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">netsrc</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">".txt"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-string">"100%"</tt><tt class="py-op">,</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-string">"password"</tt><tt class="py-op">,</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">30</tt> <tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-22', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Copied ping file successfully"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-23', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"100%"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-24', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Copied ping file successfully"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-25', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-26', 'error', 'link-19');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"COULD NOT COPY PING FILE FROM "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">destip</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-27', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-28', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Pinging interfaces on the "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">netdst</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-string">" network from "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">netsrc</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">netstrt</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">".1.1"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-29', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"sudo fping -S "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">netsrc</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">netstrt</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">".1.1 -f /tmp/ip_table"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">netdst</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">".txt"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-string">"reachable"</tt><tt class="py-op">,</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-string">"unreachable"</tt><tt class="py-op">,</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-string">"\$"</tt><tt class="py-op">,</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-string">"password"</tt><tt class="py-op">,</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">,</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-string">"not installed"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">45</tt> <tt class="py-op">)</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-30', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-31', 'error', 'link-19');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"An interface was unreachable"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-32', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"All interfaces reachable"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-33', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-34', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-35', 'error', 'link-19');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Unable to fping"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">5</tt><tt class="py-op">:</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-36', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"fping not installed, installing fping"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-37', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"sudo apt-get install fping"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"password"</tt><tt class="py-op">,</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-string">"\$"</tt><tt class="py-op">,</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-38', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">30</tt> <tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-39', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"fping installed, now pinging interfaces"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-40', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-string">"sudo fping -S "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-name">netsrc</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">netstrt</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">".1.1 -f /tmp/ip_table"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-name">netdst</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">".txt"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-41', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"fping installed, now pinging interfaces"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-42', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-string">"sudo fping -S "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">netsrc</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">netstrt</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">".1.1 -f /tmp/ip_table"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">netdst</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">".txt"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-43', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-44', 'error', 'link-19');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Could not install fping"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-</div><a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> </tt>
-<a name="DPCliDriver.disconnect"></a><div id="DPCliDriver.disconnect-def"><a name="L182"></a><tt class="py-lineno">182</tt> <a class="py-toggle" href="#" id="DPCliDriver.disconnect-toggle" onclick="return toggle('DPCliDriver.disconnect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#disconnect">disconnect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DPCliDriver.disconnect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DPCliDriver.disconnect-expanded"><a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-45', 'sendline', 'link-9');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"exit"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"closed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">ExceptionPexpect</tt><tt class="py-op">:</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-46', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-</div></div><a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html
deleted file mode 100644
index 561d4de..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html
+++ /dev/null
@@ -1,539 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.dpclidriver.DPCliDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.dpclidriver-module.html">Module dpclidriver</a> ::
- Class DPCliDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class DPCliDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.dpclidriver-pysrc.html#DPCliDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_dpclidrive" name="class_hierarchy_for_dpclidrive">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html" title="DPCliDriver" alt="" coords="5,6,96,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="121,6,212,31"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="component.Component" alt="" coords="237,6,395,31"/>
-</map>
- <img src="class_hierarchy_for_dpclidrive.gif" alt='' usemap="#class_hierarchy_for_dpclidrive" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.dpclidriver-pysrc.html#DPCliDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Connection will establish to the remote host using ssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.dpclidriver-pysrc.html#DPCliDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#create_interfaces" class="summary-sig-name">create_interfaces</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">net</span>,
- <span class="summary-sig-arg">number</span>,
- <span class="summary-sig-arg">start</span>)</span><br />
- Creates a number,specified by 'number,' of subinterfaces on eth0.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.dpclidriver-pysrc.html#DPCliDriver.create_interfaces">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#pingall_interfaces" class="summary-sig-name">pingall_interfaces</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">netsrc</span>,
- <span class="summary-sig-arg">netstrt</span>,
- <span class="summary-sig-arg">netdst</span>,
- <span class="summary-sig-arg">destlogin</span>,
- <span class="summary-sig-arg">destip</span>)</span><br />
- Copies the /tmp/ip_table{ net }.txt file from the machine you wish to
- ping, then runs fping with a source address of { netsrc }.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.dpclidriver-pysrc.html#DPCliDriver.pingall_interfaces">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.dpclidriver-pysrc.html#DPCliDriver.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.dpclidriver-pysrc.html#DPCliDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.dpclidriver-pysrc.html#DPCliDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Connection will establish to the remote host using ssh. It will take
- user_name ,ip_address and password as arguments<br> and will return
- the handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="create_interfaces"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">create_interfaces</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">net</span>,
- <span class="sig-arg">number</span>,
- <span class="sig-arg">start</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.dpclidriver-pysrc.html#DPCliDriver.create_interfaces">source code</a></span>
- </td>
- </tr></table>
-
- <p>Creates a number,specified by 'number,' of subinterfaces on eth0. Ip
- addresses start at 'net'.'start'.1.1 with a 24 bit netmask. Addresses
- increment sequentially in the third quad, therefore all interfaces are in
- different subnets on the same machine. When the third quad reaches 255,
- it is reset to 1 and the second quad is incremented. Every single ip
- address is placed in a file in /tmp titled 'ip_table{net}.txt'. The file
- is used by 'pingall_interfaces()' as a fping argument</p>
- <p>This method returns true if all interfaces are created without a
- hitch, and false if a single interface has issues</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="pingall_interfaces"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">pingall_interfaces</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">netsrc</span>,
- <span class="sig-arg">netstrt</span>,
- <span class="sig-arg">netdst</span>,
- <span class="sig-arg">destlogin</span>,
- <span class="sig-arg">destip</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.dpclidriver-pysrc.html#DPCliDriver.pingall_interfaces">source code</a></span>
- </td>
- </tr></table>
-
- <p>Copies the /tmp/ip_table{ net }.txt file from the machine you wish to
- ping, then runs fping with a source address of { netsrc }.{ netstrt }.1.1
- on the copied file. Check every single response for reachable or
- unreachable. If all are reachable, function returns true. If a SINGLE
- host is unreachable, then the function stops and returns false. If fping
- is not installed, this function will install fping then run the same
- command</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="disconnect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">disconnect</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.dpclidriver-pysrc.html#DPCliDriver.disconnect">source code</a></span>
- </td>
- </tr></table>
-
-
- <dl class="fields">
- <dt>Overrides:
- component.Component.disconnect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator-module.html
deleted file mode 100644
index ecd0e7c..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator-module.html
+++ /dev/null
@@ -1,171 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Package emulator
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package emulator</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.emulator-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-module.html">TestON.drivers.common.cli.emulator.flowvisordriver</a></strong>: <em class="summary">Created on 26-Mar-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-module.html">TestON.drivers.common.cli.emulator.lincoedriver</a></strong>: <em class="summary">This driver handles the optical switch emulator linc-oe.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-module.html">TestON.drivers.common.cli.emulator.mininetclidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-module.html">TestON.drivers.common.cli.emulator.poxclidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-module.html">TestON.drivers.common.cli.emulator.remotemininetdriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator-pysrc.html
deleted file mode 100644
index 66e0599..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator-pysrc.html
+++ /dev/null
@@ -1,125 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Package emulator
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.emulator-module.html">Package TestON.drivers.common.cli.emulator</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.flowvisordriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.flowvisordriver-module.html
deleted file mode 100644
index fb40ec2..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.flowvisordriver-module.html
+++ /dev/null
@@ -1,170 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator.flowvisordriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.emulator-module.html">Package emulator</a> ::
- Module flowvisordriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator.flowvisordriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module flowvisordriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 26-Mar-2013
-
-author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )
-
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- ( at your option ) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-
-FlowVisorDriver is the basic driver which will handle the Mininet functions
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html" class="summary-name">FlowVisorDriver</a><br />
- FlowVisorDriver is the basic driver which will handle the Mininet
- functions
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.flowvisordriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.flowvisordriver-pysrc.html
deleted file mode 100644
index 3cd07b8..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.flowvisordriver-pysrc.html
+++ /dev/null
@@ -1,438 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator.flowvisordriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.emulator-module.html">Package emulator</a> ::
- Module flowvisordriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator.flowvisordriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.emulator.flowvisordriver-module.html">Module TestON.drivers.common.cli.emulator.flowvisordriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 26-Mar-2013</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"> ( at your option ) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">FlowVisorDriver is the basic driver which will handle the Mininet functions</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.bin.cli=TestON.bin.cli-module.html,Package TestON.drivers.common.cli=TestON.drivers.common.cli-module.html"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-2', 'cli', 'link-2');">cli</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module TestON.drivers.common.cli.emulatordriver=TestON.drivers.common.cli.emulatordriver-module.html"><a title="TestON.drivers.common.cli.emulatordriver" class="py-name" href="#" onclick="return doclink('link-3', 'emulatordriver', 'link-3');">emulatordriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class TestON.drivers.common.cli.emulatordriver.Emulator=TestON.drivers.common.cli.emulatordriver.Emulator-class.html"><a title="TestON.drivers.common.cli.emulatordriver.Emulator" class="py-name" href="#" onclick="return doclink('link-4', 'Emulator', 'link-4');">Emulator</a></tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="FlowVisorDriver"></a><div id="FlowVisorDriver-def"><a name="L29"></a><tt class="py-lineno"> 29</tt> <a class="py-toggle" href="#" id="FlowVisorDriver-toggle" onclick="return toggle('FlowVisorDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html">FlowVisorDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">Emulator</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FlowVisorDriver-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="FlowVisorDriver-expanded"><a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring"> FlowVisorDriver is the basic driver which will handle the Mininet functions</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="FlowVisorDriver.__init__"></a><div id="FlowVisorDriver.__init__-def"><a name="L34"></a><tt class="py-lineno"> 34</tt> <a class="py-toggle" href="#" id="FlowVisorDriver.__init__-toggle" onclick="return toggle('FlowVisorDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FlowVisorDriver.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FlowVisorDriver.__init__-expanded"><a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.emulatordriver.Emulator" class="py-name" href="#" onclick="return doclink('link-5', 'Emulator', 'link-4');">Emulator</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-6', '__init__', 'link-6');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">wrapped</tt> <tt class="py-op">=</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">modules</tt><tt class="py-op">[</tt> <tt class="py-name">__name__</tt> <tt class="py-op">]</tt> </tt>
-</div><a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="FlowVisorDriver.connect"></a><div id="FlowVisorDriver.connect-def"><a name="L39"></a><tt class="py-lineno"> 39</tt> <a class="py-toggle" href="#" id="FlowVisorDriver.connect-toggle" onclick="return toggle('FlowVisorDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FlowVisorDriver.connect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FlowVisorDriver.connect-expanded"><a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-comment">#,user_name, ip_address, pwd,options ):</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-comment"># Here the main is the TestON instance after creating all the log</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-comment"># handles.</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt id="link-7" class="py-name" targets="Class TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html"><a title="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver" class="py-name" href="#" onclick="return doclink('link-7', 'FlowVisorDriver', 'link-7');">FlowVisorDriver</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-8', 'connect', 'link-8');">connect</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ssh_handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-comment"># Copying the readme file to process the</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.execute()=TestON.bin.generatedriver.GenerateDriver-class.html#execute,Method TestON.drivers.common.clidriver.CLI.execute()=TestON.drivers.common.clidriver.CLI-class.html#execute"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-9', 'execute', 'link-9');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">'\r'</tt><tt class="py-op">,</tt> <tt id="link-10" class="py-name" targets="Variable TestON.bin.cli.CLI.prompt=TestON.bin.cli.CLI-class.html#prompt"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-10', 'prompt', 'link-10');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">'\$'</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'path'</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-string">'/home/openflow/flowvisor/scripts/'</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-comment">#self.handle.logfile = sys.stdout</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-11', 'execute', 'link-9');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">'cd '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'path'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt id="link-12" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-12', 'prompt', 'link-10');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">'\$'</tt><tt class="py-op">,</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-13', 'log', 'link-13');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Starting FlowVisor "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-14', 'execute', 'link-9');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">'./flowvisor.sh &'</tt><tt class="py-op">,</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt id="link-15" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-15', 'prompt', 'link-10');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">'---\sSetting\slogging\slevel\sto\sNOTE'</tt><tt class="py-op">,</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">pattern</tt> <tt class="py-op">=</tt> <tt class="py-string">'\d+'</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">process_id_search</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"\[\d+\]\s+(\d+)"</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fvprocess_id</tt> <tt class="py-op">=</tt> <tt class="py-string">"None"</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">process_id_search</tt><tt class="py-op">:</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fvprocess_id</tt> <tt class="py-op">=</tt> <tt class="py-name">process_id_search</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_matches</tt><tt class="py-op">(</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">pattern</tt><tt class="py-op">,</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">response</tt><tt class="py-op">,</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"FlowVisor Started Successfully : Proceess Id :"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fvprocess_id</tt><tt class="py-op">,</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt id="link-16" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-16', 'onfail', 'link-16');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to start FlowVisor"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-17', 'log', 'link-13');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-comment">#import time</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-comment"># time.sleep( 10 )</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-comment">#response = self.execute( cmd='./start_visualizer.sh & \r',prompt='\$',timeout=10 )</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-18', 'log', 'link-13');">log</a></tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-19', 'error', 'link-19');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-string">"Connection failed to the host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-20', 'log', 'link-13');">log</a></tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-21', 'error', 'link-19');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to connect to the FlowVisor"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> </tt>
-<a name="FlowVisorDriver.removeFlowSpace"></a><div id="FlowVisorDriver.removeFlowSpace-def"><a name="L102"></a><tt class="py-lineno">102</tt> <a class="py-toggle" href="#" id="FlowVisorDriver.removeFlowSpace-toggle" onclick="return toggle('FlowVisorDriver.removeFlowSpace');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#removeFlowSpace">removeFlowSpace</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">id</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FlowVisorDriver.removeFlowSpace-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FlowVisorDriver.removeFlowSpace-expanded"><a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">id</tt> <tt class="py-op">==</tt> <tt class="py-string">"all"</tt><tt class="py-op">:</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">flow_space</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.listFlowSpace()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#listFlowSpace"><a title="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.listFlowSpace" class="py-name" href="#" onclick="return doclink('link-22', 'listFlowSpace', 'link-22');">listFlowSpace</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">flow_ids</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">findall</tt><tt class="py-op">(</tt> <tt class="py-string">"\,id=\[(\d+)\]"</tt><tt class="py-op">,</tt> <tt class="py-name">flow_space</tt> <tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">id</tt> <tt class="py-keyword">in</tt> <tt class="py-name">flow_ids</tt><tt class="py-op">:</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.removeFlowSpace()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#removeFlowSpace"><a title="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.removeFlowSpace" class="py-name" href="#" onclick="return doclink('link-23', 'removeFlowSpace', 'link-23');">removeFlowSpace</a></tt><tt class="py-op">(</tt> <tt class="py-name">id</tt> <tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-24', 'execute', 'link-9');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"clear"</tt><tt class="py-op">,</tt> <tt id="link-25" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-25', 'prompt', 'link-10');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-26', 'execute', 'link-9');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"./fvctl.sh removeFlowSpace "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">id</tt><tt class="py-op">,</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt id="link-27" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-27', 'prompt', 'link-10');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"passwd:"</tt><tt class="py-op">,</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-28', 'execute', 'link-9');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"\n"</tt><tt class="py-op">,</tt> <tt id="link-29" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-29', 'prompt', 'link-10');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-30', 'log', 'link-13');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Removed flowSpace which is having id :"</tt> <tt class="py-op">+</tt> <tt class="py-name">id</tt> <tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> </tt>
-<a name="FlowVisorDriver.addFlowSpace"></a><div id="FlowVisorDriver.addFlowSpace-def"><a name="L120"></a><tt class="py-lineno">120</tt> <a class="py-toggle" href="#" id="FlowVisorDriver.addFlowSpace-toggle" onclick="return toggle('FlowVisorDriver.addFlowSpace');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#addFlowSpace">addFlowSpace</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">flowspace_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FlowVisorDriver.addFlowSpace-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FlowVisorDriver.addFlowSpace-expanded"><a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">temp_string</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">flowspace_args</tt><tt class="py-op">:</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">temp_string</tt><tt class="py-op">:</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">temp_string</tt> <tt class="py-op">=</tt> <tt class="py-name">temp_string</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">+</tt> <tt class="py-string">'='</tt> <tt class="py-op">+</tt> <tt class="py-name">flowspace_args</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">temp_string</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">temp_string</tt> <tt class="py-op">=</tt> <tt class="py-name">temp_string</tt> <tt class="py-op">+</tt> <tt class="py-name">key</tt> <tt class="py-op">+</tt> <tt class="py-string">'='</tt> <tt class="py-op">+</tt> <tt class="py-name">flowspace_args</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">src_search</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">'dl_src'</tt><tt class="py-op">,</tt> <tt class="py-name">temp_string</tt> <tt class="py-op">)</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">src_search</tt><tt class="py-op">:</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">flowspace</tt> <tt class="py-op">=</tt> <tt class="py-string">"any 100 dl_type=0x806,nw_proto=6,"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">temp_string</tt> <tt class="py-op">+</tt> <tt class="py-string">" Slice:SSH=4"</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">flowspace</tt> <tt class="py-op">=</tt> <tt class="py-string">"any 100 dl_type=0x800,nw_proto=6,"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">temp_string</tt> <tt class="py-op">+</tt> <tt class="py-string">" Slice:SSH=4"</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-string">"""</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"><tt class="py-string"> try :</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"><tt class="py-string"> if self.dl_src and self.nw_dst:</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"><tt class="py-string"> flowspace = "any 100 dl_type=0x806,dl_src="+self.dl_src+",nw_dst="+self.nw_dst+" Slice:"+self.Slice+"=4"</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"><tt class="py-string"> except Exception:</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"><tt class="py-string"> try :</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"><tt class="py-string"> if self.nw_src and self.tp_dst:</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"><tt class="py-string"> flowspace = "any 100 dl_type=0x800,nw_proto=6,nw_src="+self.nw_src+",tp_dst="+self.tp_dst+" Slice:"+self.Slice+"=4"</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"><tt class="py-string"> except Exception:</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"><tt class="py-string"> try :</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"><tt class="py-string"> if self.nw_src and self.tp_src:</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"><tt class="py-string"> flowspace = "any 100 dl_type=0x800,nw_proto=6,nw_src="+self.nw_src+",tp_src="+self.tp_dst+" Slice:"+self.Slice+"=4"</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"><tt class="py-string"> except Exception:</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"><tt class="py-string"> main.log.error( "Please specify flowspace properly" )</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"><tt class="py-string"> """</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-comment"># self.execute( cmd="clear",prompt="\$",timeout=10 )</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-31', 'execute', 'link-9');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"./fvctl.sh addFlowSpace "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-name">flowspace</tt><tt class="py-op">,</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt id="link-32" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-32', 'prompt', 'link-10');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"passwd:"</tt><tt class="py-op">,</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-33', 'execute', 'link-9');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"\n"</tt><tt class="py-op">,</tt> <tt id="link-34" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-34', 'prompt', 'link-10');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">sucess_match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"success\:\s+(\d+)"</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">sucess_match</tt><tt class="py-op">:</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-35', 'log', 'link-13');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-string">"Added flow Space and id is "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">sucess_match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> </tt>
-<a name="FlowVisorDriver.listFlowSpace"></a><div id="FlowVisorDriver.listFlowSpace-def"><a name="L169"></a><tt class="py-lineno">169</tt> <a class="py-toggle" href="#" id="FlowVisorDriver.listFlowSpace-toggle" onclick="return toggle('FlowVisorDriver.listFlowSpace');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#listFlowSpace">listFlowSpace</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FlowVisorDriver.listFlowSpace-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FlowVisorDriver.listFlowSpace-expanded"><a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-36', 'execute', 'link-9');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"clear"</tt><tt class="py-op">,</tt> <tt id="link-37" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-37', 'prompt', 'link-10');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-38', 'execute', 'link-9');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"./fvctl.sh listFlowSpace "</tt><tt class="py-op">,</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt id="link-39" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-39', 'prompt', 'link-10');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"passwd:"</tt><tt class="py-op">,</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-40', 'execute', 'link-9');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"\n"</tt><tt class="py-op">,</tt> <tt id="link-41" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-41', 'prompt', 'link-10');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">flow_space</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_response</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">flow_space</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name" targets="Method TestON.drivers.common.clidriver.CLI.remove_contol_chars()=TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars"><a title="TestON.drivers.common.clidriver.CLI.remove_contol_chars" class="py-name" href="#" onclick="return doclink('link-42', 'remove_contol_chars', 'link-42');">remove_contol_chars</a></tt><tt class="py-op">(</tt> <tt class="py-name">flow_space</tt> <tt class="py-op">)</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">flow_space</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-string">"rule\s(\d+)\:"</tt><tt class="py-op">,</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-string">"\nrule "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-string">r'\1'</tt> <tt class="py-op">+</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-string">":"</tt><tt class="py-op">,</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-name">flow_space</tt> <tt class="py-op">)</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-43', 'log', 'link-13');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">flow_space</tt> <tt class="py-op">)</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">flow_space</tt> </tt>
-</div><a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> </tt>
-<a name="FlowVisorDriver.listDevices"></a><div id="FlowVisorDriver.listDevices-def"><a name="L188"></a><tt class="py-lineno">188</tt> <a class="py-toggle" href="#" id="FlowVisorDriver.listDevices-toggle" onclick="return toggle('FlowVisorDriver.listDevices');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#listDevices">listDevices</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FlowVisorDriver.listDevices-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FlowVisorDriver.listDevices-expanded"><a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-comment"># self.execute( cmd="clear",prompt="\$",timeout=10 )</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-comment">#self.execute( cmd="./fvctl.sh listDevices ",prompt="passwd:",timeout=10 )</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-comment"># self.execute( cmd="\n",prompt="\$",timeout=10 )</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">devices_list</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">last_response</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">findall</tt><tt class="py-op">(</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-string">"(Device\s\d+\:\s((\d|[a-z])(\d|[a-z])\:)+(\d|[a-z])(\d|[a-z]))"</tt><tt class="py-op">,</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">resp</tt> <tt class="py-keyword">in</tt> <tt class="py-name">last_response</tt><tt class="py-op">:</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-name">devices_match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-string">"(Device\s\d+\:\s((\d|[a-z])(\d|[a-z])\:)+(\d|[a-z])(\d|[a-z]))"</tt><tt class="py-op">,</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">resp</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">devices_match</tt><tt class="py-op">:</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-name">devices_list</tt> <tt class="py-op">=</tt> <tt class="py-name">devices_list</tt> <tt class="py-op">+</tt> <tt class="py-name">devices_match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-name">devices_list</tt> <tt class="py-op">=</tt> <tt class="py-string">"Device 0: 00:00:00:00:00:00:00:02 \n Device 1: 00:00:00:00:00:00:00:03"</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-44', 'log', 'link-13');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"List of Devices \n"</tt> <tt class="py-op">+</tt> <tt class="py-name">devices_list</tt> <tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> </tt>
-<a name="FlowVisorDriver.disconnect"></a><div id="FlowVisorDriver.disconnect-def"><a name="L208"></a><tt class="py-lineno">208</tt> <a class="py-toggle" href="#" id="FlowVisorDriver.disconnect-toggle" onclick="return toggle('FlowVisorDriver.disconnect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#disconnect">disconnect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FlowVisorDriver.disconnect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="FlowVisorDriver.disconnect-expanded"><a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-45', 'log', 'link-13');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Stopping the FlowVisor"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-46', 'sendline', 'link-46');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"kill -9 "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">fvprocess_id</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-47', 'log', 'link-13');">log</a></tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-48', 'error', 'link-19');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-</div></div><a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html
deleted file mode 100644
index a862ad1..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html
+++ /dev/null
@@ -1,507 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.emulator-module.html">Package emulator</a> ::
- <a href="TestON.drivers.common.cli.emulator.flowvisordriver-module.html">Module flowvisordriver</a> ::
- Class FlowVisorDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class FlowVisorDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-pysrc.html#FlowVisorDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_flowvisord" name="class_hierarchy_for_flowvisord">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html" title="FlowVisorDriver" alt="" coords="5,6,120,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html" title="emulatordriver.Emulator" alt="" coords="144,6,303,31"/>
-<area shape="rect" id="node3" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="329,6,420,31"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="component.Component" alt="" coords="445,6,603,31"/>
-</map>
- <img src="class_hierarchy_for_flowvisord.gif" alt='' usemap="#class_hierarchy_for_flowvisord" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<p>FlowVisorDriver is the basic driver which will handle the Mininet
- functions</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-pysrc.html#FlowVisorDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Connection will establish to the remote host using ssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-pysrc.html#FlowVisorDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="removeFlowSpace"></a><span class="summary-sig-name">removeFlowSpace</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">id</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-pysrc.html#FlowVisorDriver.removeFlowSpace">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="addFlowSpace"></a><span class="summary-sig-name">addFlowSpace</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**flowspace_args</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-pysrc.html#FlowVisorDriver.addFlowSpace">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="listFlowSpace"></a><span class="summary-sig-name">listFlowSpace</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-pysrc.html#FlowVisorDriver.listFlowSpace">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="listDevices"></a><span class="summary-sig-name">listDevices</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-pysrc.html#FlowVisorDriver.listDevices">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-pysrc.html#FlowVisorDriver.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-pysrc.html#FlowVisorDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-pysrc.html#FlowVisorDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Connection will establish to the remote host using ssh. It will take
- user_name ,ip_address and password as arguments<br> and will return
- the handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="disconnect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">disconnect</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-pysrc.html#FlowVisorDriver.disconnect">source code</a></span>
- </td>
- </tr></table>
-
-
- <dl class="fields">
- <dt>Overrides:
- component.Component.disconnect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.lincoedriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.lincoedriver-module.html
deleted file mode 100644
index 6ff553d..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.lincoedriver-module.html
+++ /dev/null
@@ -1,161 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator.lincoedriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.emulator-module.html">Package emulator</a> ::
- Module lincoedriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator.lincoedriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module lincoedriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-This driver handles the optical switch emulator linc-oe.
-
-Please follow the coding style demonstrated by existing
-functions and document properly.
-
-If you are a contributor to the driver, please
-list your email here for future contact:
-
- andrew@onlab.us
- shreya@onlab.us
-
-OCT 20 2014
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html" class="summary-name">LincOEDriver</a><br />
- LincOEDriver class will handle all emulator functions
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html
deleted file mode 100644
index 27ded8f..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html
+++ /dev/null
@@ -1,551 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator.lincoedriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.emulator-module.html">Package emulator</a> ::
- Module lincoedriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.emulator.lincoedriver-module.html">Module TestON.drivers.common.cli.emulator.lincoedriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring">This driver handles the optical switch emulator linc-oe.</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring">Please follow the coding style demonstrated by existing</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring">functions and document properly.</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring">If you are a contributor to the driver, please</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring">list your email here for future contact:</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"> andrew@onlab.us</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"> shreya@onlab.us</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring">OCT 20 2014</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">pexpect</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.bin.cli=TestON.bin.cli-module.html,Package TestON.drivers.common.cli=TestON.drivers.common.cli-module.html"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-2', 'cli', 'link-2');">cli</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module TestON.drivers.common.cli.emulatordriver=TestON.drivers.common.cli.emulatordriver-module.html"><a title="TestON.drivers.common.cli.emulatordriver" class="py-name" href="#" onclick="return doclink('link-3', 'emulatordriver', 'link-3');">emulatordriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class TestON.drivers.common.cli.emulatordriver.Emulator=TestON.drivers.common.cli.emulatordriver.Emulator-class.html"><a title="TestON.drivers.common.cli.emulatordriver.Emulator" class="py-name" href="#" onclick="return doclink('link-4', 'Emulator', 'link-4');">Emulator</a></tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="LincOEDriver"></a><div id="LincOEDriver-def"><a name="L23"></a><tt class="py-lineno"> 23</tt> <a class="py-toggle" href="#" id="LincOEDriver-toggle" onclick="return toggle('LincOEDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html">LincOEDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">Emulator</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="LincOEDriver-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="LincOEDriver-expanded"><a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-docstring"> LincOEDriver class will handle all emulator functions</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="LincOEDriver.__init__"></a><div id="LincOEDriver.__init__-def"><a name="L28"></a><tt class="py-lineno"> 28</tt> <a class="py-toggle" href="#" id="LincOEDriver.__init__-toggle" onclick="return toggle('LincOEDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="LincOEDriver.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="LincOEDriver.__init__-expanded"><a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.emulatordriver.Emulator" class="py-name" href="#" onclick="return doclink('link-5', 'Emulator', 'link-4');">Emulator</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-6', '__init__', 'link-6');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">wrapped</tt> <tt class="py-op">=</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">modules</tt><tt class="py-op">[</tt> <tt class="py-name">__name__</tt> <tt class="py-op">]</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-</div><a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> </tt>
-<a name="LincOEDriver.connect"></a><div id="LincOEDriver.connect-def"><a name="L34"></a><tt class="py-lineno"> 34</tt> <a class="py-toggle" href="#" id="LincOEDriver.connect-toggle" onclick="return toggle('LincOEDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="LincOEDriver.connect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="LincOEDriver.connect-expanded"><a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> Create ssh handle for Linc-OE cli</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> \ </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-7" class="py-name" targets="Class TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html"><a title="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver" class="py-name" href="#" onclick="return doclink('link-7', 'LincOEDriver', 'link-7');">LincOEDriver</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-8', 'connect', 'link-8');">connect</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sshHandle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Handle successfully created"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">=</tt> <tt class="py-string">"~/linc-oe"</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-10', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cd "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">)</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"oe$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"handle = "</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-11', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-12', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-string">": Connection failed to the host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-13', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-14', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-string">": Failed to connect to Linc-OE"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> </tt>
-<a name="LincOEDriver.startConsole"></a><div id="LincOEDriver.startConsole-def"><a name="L70"></a><tt class="py-lineno"> 70</tt> <a class="py-toggle" href="#" id="LincOEDriver.startConsole-toggle" onclick="return toggle('LincOEDriver.startConsole');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#startConsole">startConsole</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="LincOEDriver.startConsole-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="LincOEDriver.startConsole-expanded"><a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-15', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-string">": Starting Linc-OE CLI.. This may take a while"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">30</tt> <tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-16', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"sudo ./rel/linc/bin/linc console"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">j</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"linc@"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">startResult</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">j</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-17', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Linc-OE CLI started"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-18', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-19', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-string">": Connection failed to the host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-20', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-21', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-string">": Failed to connect to Linc-OE"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> </tt>
-<a name="LincOEDriver.build"></a><div id="LincOEDriver.build-def"><a name="L93"></a><tt class="py-lineno"> 93</tt> <a class="py-toggle" href="#" id="LincOEDriver.build-toggle" onclick="return toggle('LincOEDriver.build');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#build">build</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="LincOEDriver.build-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="LincOEDriver.build-expanded"><a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"><tt class="py-docstring"> Build Linc-OE with the specified settings</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-22', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"make rel"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-string">"\$"</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-23', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"sudo pkill -9 epmd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-24', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"make rel"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-25', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-26', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-27', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-28', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Method TestON.core.teston.TestON.cleanup()=TestON.core.teston.TestON-class.html#cleanup"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-29', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-30', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-31', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-32', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-33', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> </tt>
-<a name="LincOEDriver.setInterfaceUp"></a><div id="LincOEDriver.setInterfaceUp-def"><a name="L124"></a><tt class="py-lineno">124</tt> <a class="py-toggle" href="#" id="LincOEDriver.setInterfaceUp-toggle" onclick="return toggle('LincOEDriver.setInterfaceUp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#setInterfaceUp">setInterfaceUp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">intfs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="LincOEDriver.setInterfaceUp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="LincOEDriver.setInterfaceUp-expanded"><a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"><tt class="py-docstring"> Specify interface to bring up.</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"><tt class="py-docstring"> When Linc-OE is started, tap interfaces should</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"><tt class="py-docstring"> be created. They must be brought up manually</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-34', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ifconfig "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-35" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.intfs()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#intfs"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.intfs" class="py-name" href="#" onclick="return doclink('link-35', 'intfs', 'link-35');">intfs</a></tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"linc@"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-36', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-37', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-38', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-39', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-40', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-41', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-42', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-43', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-44', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> </tt>
-<a name="LincOEDriver.startSwitch"></a><div id="LincOEDriver.startSwitch-def"><a name="L148"></a><tt class="py-lineno">148</tt> <a class="py-toggle" href="#" id="LincOEDriver.startSwitch-toggle" onclick="return toggle('LincOEDriver.startSwitch');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#startSwitch">startSwitch</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">swId</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="LincOEDriver.startSwitch-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="LincOEDriver.startSwitch-expanded"><a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"><tt class="py-docstring"> Start a logical switch using switch id</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-45', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"linc:start_switch("</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">swId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">")."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"linc@"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-46', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-47', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-48', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-49', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-50', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-51', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-52', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-53', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-54', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> </tt>
-<a name="LincOEDriver.stopSwitch"></a><div id="LincOEDriver.stopSwitch-def"><a name="L168"></a><tt class="py-lineno">168</tt> <a class="py-toggle" href="#" id="LincOEDriver.stopSwitch-toggle" onclick="return toggle('LincOEDriver.stopSwitch');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#stopSwitch">stopSwitch</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">swId</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="LincOEDriver.stopSwitch-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="LincOEDriver.stopSwitch-expanded"><a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"><tt class="py-docstring"> Stop a logical switch using switch id</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-55', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"linc:stop_switch("</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">swId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">")."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"linc@"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-56', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-57', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-58', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-59', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-60', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-61', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-62', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-63', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-64', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> </tt>
-<a name="LincOEDriver.getDatapathId"></a><div id="LincOEDriver.getDatapathId-def"><a name="L188"></a><tt class="py-lineno">188</tt> <a class="py-toggle" href="#" id="LincOEDriver.getDatapathId-toggle" onclick="return toggle('LincOEDriver.getDatapathId');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#getDatapathId">getDatapathId</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">swId</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="LincOEDriver.getDatapathId-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="LincOEDriver.getDatapathId-expanded"><a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"><tt class="py-docstring"> Get datapath id of a specific switch by switch id</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-65', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"linc_logic:get_datapath_id("</tt> <tt class="py-op">+</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">swId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">")."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"linc@"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-66', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-67', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-68', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-69" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-69', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-70', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-71', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-72', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-73', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-74', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> </tt>
-<a name="LincOEDriver.attachLincOESession"></a><div id="LincOEDriver.attachLincOESession-def"><a name="L209"></a><tt class="py-lineno">209</tt> <a class="py-toggle" href="#" id="LincOEDriver.attachLincOESession-toggle" onclick="return toggle('LincOEDriver.attachLincOESession');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#attachLincOESession">attachLincOESession</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="LincOEDriver.attachLincOESession-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="LincOEDriver.attachLincOESession-expanded"><a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"><tt class="py-docstring"> Since executing opticalTest.py will give you mininet</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"><tt class="py-docstring"> prompt, you would at some point require to get onto</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"><tt class="py-docstring"> console of LincOE ((linc@onosTestBench)1>) to execute</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"><tt class="py-docstring"> commands like bring a optical port up or down on a ROADM</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"><tt class="py-docstring"> You can attach to console of Linc-OE session by a cmd:</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"><tt class="py-docstring"> sudo ~/linc-oe/rel/linc/bin/linc attach</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-75', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-76', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"sudo ~/linc-oe/rel/linc/bin/linc attach"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">">"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-77', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-78', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-79', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-80', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> </tt>
-<a name="LincOEDriver.listPorts"></a><div id="LincOEDriver.listPorts-def"><a name="L229"></a><tt class="py-lineno">229</tt> <a class="py-toggle" href="#" id="LincOEDriver.listPorts-toggle" onclick="return toggle('LincOEDriver.listPorts');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#listPorts">listPorts</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">swId</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="LincOEDriver.listPorts-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="LincOEDriver.listPorts-expanded"><a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"><tt class="py-docstring"> List all ports of a switch by switch id</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-81', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"linc:ports("</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">swId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">")."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"linc@"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-82', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-83', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-84', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-85', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-86', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-87', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-88', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-89', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-90', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> </tt>
-<a name="LincOEDriver.portUp"></a><div id="LincOEDriver.portUp-def"><a name="L249"></a><tt class="py-lineno">249</tt> <a class="py-toggle" href="#" id="LincOEDriver.portUp-toggle" onclick="return toggle('LincOEDriver.portUp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#portUp">portUp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">swId</tt><tt class="py-op">,</tt> <tt class="py-param">ptId</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="LincOEDriver.portUp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="LincOEDriver.portUp-expanded"><a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"><tt class="py-docstring"> Bring port up using switch id and port id</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-91', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"linc:port_up("</tt> <tt class="py-op">+</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">swId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">", "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ptId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">")."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"linc@"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-92', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-93', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-94', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-95', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-96', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-97', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-98', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-99', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-100', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> </tt>
-<a name="LincOEDriver.portDown"></a><div id="LincOEDriver.portDown-def"><a name="L270"></a><tt class="py-lineno">270</tt> <a class="py-toggle" href="#" id="LincOEDriver.portDown-toggle" onclick="return toggle('LincOEDriver.portDown');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#portDown">portDown</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">swId</tt><tt class="py-op">,</tt> <tt class="py-param">ptId</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="LincOEDriver.portDown-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="LincOEDriver.portDown-expanded"><a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"><tt class="py-docstring"> Bring port down using switch id and port id</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-101', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"linc:port_down("</tt> <tt class="py-op">+</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">swId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">", "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ptId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">")."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"linc@"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-102', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-103', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-104', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-105', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-106" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-106', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-107', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-108', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-109', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-110', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> </tt>
-<a name="LincOEDriver.stopLincOEConsole"></a><div id="LincOEDriver.stopLincOEConsole-def"><a name="L291"></a><tt class="py-lineno">291</tt> <a class="py-toggle" href="#" id="LincOEDriver.stopLincOEConsole-toggle" onclick="return toggle('LincOEDriver.stopLincOEConsole');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#stopLincOEConsole">stopLincOEConsole</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="LincOEDriver.stopLincOEConsole-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="LincOEDriver.stopLincOEConsole-expanded"><a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"><tt class="py-docstring"> This function is only used for packet optical testing</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"><tt class="py-docstring"> Send disconnect prompt to Linc-OE CLI</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"><tt class="py-docstring"> ( CTRL+C ) and kill the linc process</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"pgrep -f linc"</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-111', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pgrep -f linc"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"linc"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"stophandle = "</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-112', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-113', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-114', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-115" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-115', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> </tt>
-<a name="LincOEDriver.disconnect"></a><div id="LincOEDriver.disconnect-def"><a name="L306"></a><tt class="py-lineno">306</tt> <a class="py-toggle" href="#" id="LincOEDriver.disconnect-toggle" onclick="return toggle('LincOEDriver.disconnect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#disconnect">disconnect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="LincOEDriver.disconnect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="LincOEDriver.disconnect-expanded"><a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"><tt class="py-docstring"> Send disconnect prompt to Linc-OE CLI</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"><tt class="py-docstring"> ( CTRL+C ) and kill the linc process</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-comment"># Send CTRL+C twice to exit CLI</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#send"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-116', 'send', 'link-116');">send</a></tt><tt class="py-op">(</tt> <tt class="py-string">"\x03"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-117', 'send', 'link-116');">send</a></tt><tt class="py-op">(</tt> <tt class="py-string">"\x03"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-name">handle1</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"pgrep -f linc"</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-118', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-name">handle2</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-119', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"pid's = "</tt> <tt class="py-op">+</tt> <tt class="py-name">handle2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"sudo kill -9 `pgrep -f linc`"</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-120" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-120', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> <tt class="py-comment"># Close the ssh connection</tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-121" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-121', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-122', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"exit"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"closed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-123', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-124" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-124', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-125', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-126', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-127', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-128', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-129', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-130" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-130', 'cleanup', 'link-29');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-131', 'exit', 'link-30');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"><tt class="py-keyword">if</tt> <tt class="py-name">__name__</tt> <tt class="py-op">!=</tt> <tt class="py-string">"__main__"</tt><tt class="py-op">:</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">modules</tt><tt class="py-op">[</tt> <tt class="py-name">__name__</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-132" class="py-name"><a title="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver" class="py-name" href="#" onclick="return doclink('link-132', 'LincOEDriver', 'link-7');">LincOEDriver</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html
deleted file mode 100644
index 476b124..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html
+++ /dev/null
@@ -1,662 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.emulator-module.html">Package emulator</a> ::
- <a href="TestON.drivers.common.cli.emulator.lincoedriver-module.html">Module lincoedriver</a> ::
- Class LincOEDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class LincOEDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_lincoedriv" name="class_hierarchy_for_lincoedriv">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html" title="LincOEDriver" alt="" coords="5,6,104,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html" title="emulatordriver.Emulator" alt="" coords="128,6,287,31"/>
-<area shape="rect" id="node3" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="313,6,404,31"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="component.Component" alt="" coords="429,6,587,31"/>
-</map>
- <img src="class_hierarchy_for_lincoedriv.gif" alt='' usemap="#class_hierarchy_for_lincoedriv" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<p>LincOEDriver class will handle all emulator functions</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Create ssh handle for Linc-OE cli</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="startConsole"></a><span class="summary-sig-name">startConsole</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.startConsole">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="build"></a><span class="summary-sig-name">build</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Build Linc-OE with the specified settings</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.build">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#setInterfaceUp" class="summary-sig-name">setInterfaceUp</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">intfs</span>)</span><br />
- Specify interface to bring up.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.setInterfaceUp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="startSwitch"></a><span class="summary-sig-name">startSwitch</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">swId</span>)</span><br />
- Start a logical switch using switch id</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.startSwitch">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="stopSwitch"></a><span class="summary-sig-name">stopSwitch</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">swId</span>)</span><br />
- Stop a logical switch using switch id</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.stopSwitch">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getDatapathId"></a><span class="summary-sig-name">getDatapathId</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">swId</span>)</span><br />
- Get datapath id of a specific switch by switch id</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.getDatapathId">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="attachLincOESession"></a><span class="summary-sig-name">attachLincOESession</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Since executing opticalTest.py will give you mininet prompt, you
- would at some point require to get onto console of LincOE
- ((linc@onosTestBench)1>) to execute commands like bring a optical
- port up or down on a ROADM You can attach to console of Linc-OE
- session by a cmd: sudo ~/linc-oe/rel/linc/bin/linc attach</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.attachLincOESession">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="listPorts"></a><span class="summary-sig-name">listPorts</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">swId</span>)</span><br />
- List all ports of a switch by switch id</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.listPorts">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="portUp"></a><span class="summary-sig-name">portUp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">swId</span>,
- <span class="summary-sig-arg">ptId</span>)</span><br />
- Bring port up using switch id and port id</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.portUp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="portDown"></a><span class="summary-sig-name">portDown</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">swId</span>,
- <span class="summary-sig-arg">ptId</span>)</span><br />
- Bring port down using switch id and port id</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.portDown">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="stopLincOEConsole"></a><span class="summary-sig-name">stopLincOEConsole</span>(<span class="summary-sig-arg">self</span>)</span><br />
- This function is only used for packet optical testing Send disconnect
- prompt to Linc-OE CLI ( CTRL+C ) and kill the linc process</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.stopLincOEConsole">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Send disconnect prompt to Linc-OE CLI ( CTRL+C ) and kill the linc
- process</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Create ssh handle for Linc-OE cli</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="setInterfaceUp"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">setInterfaceUp</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">intfs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.setInterfaceUp">source code</a></span>
- </td>
- </tr></table>
-
- <p>Specify interface to bring up. When Linc-OE is started, tap interfaces
- should be created. They must be brought up manually</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="disconnect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">disconnect</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-pysrc.html#LincOEDriver.disconnect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Send disconnect prompt to Linc-OE CLI ( CTRL+C ) and kill the linc
- process</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.disconnect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.mininetclidriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.mininetclidriver-module.html
deleted file mode 100644
index 72ec301..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.mininetclidriver-module.html
+++ /dev/null
@@ -1,181 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator.mininetclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.emulator-module.html">Package emulator</a> ::
- Module mininetclidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator.mininetclidriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module mininetclidriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 26-Oct-2012
-
-author: Anil Kumar ( anilkumar.s@paxterrasolutions.com )
-
-
-TestON is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-( at your option ) any later version.
-
-TestON is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-MininetCliDriver is the basic driver which will handle the Mininet functions
-
-Some functions rely on a modified version of Mininet. These functions
-should all be noted in the comments. To get this MN version run these commands
-from within your Mininet folder:
- git remote add jhall11 https://github.com/jhall11/mininet.git
- git fetch jhall11
- git checkout -b dynamic_topo remotes/jhall11/dynamic_topo
- git pull
-
-
- Note that you may need to run 'sudo make develop' if your mnexec.c file
-changed when switching branches.
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html" class="summary-name">MininetCliDriver</a><br />
- MininetCliDriver is the basic driver which will handle the Mininet
- functions
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html
deleted file mode 100644
index 10a9729..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html
+++ /dev/null
@@ -1,2779 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator.mininetclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.emulator-module.html">Package emulator</a> ::
- Module mininetclidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.emulator.mininetclidriver-module.html">Module TestON.drivers.common.cli.emulator.mininetclidriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 26-Oct-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">author: Anil Kumar ( anilkumar.s@paxterrasolutions.com )</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring">TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring">it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring">the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring">( at your option ) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring">TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring">but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring">MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring">GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring">You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">MininetCliDriver is the basic driver which will handle the Mininet functions</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">Some functions rely on a modified version of Mininet. These functions</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-docstring">should all be noted in the comments. To get this MN version run these commands</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-docstring">from within your Mininet folder:</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-docstring"> git remote add jhall11 https://github.com/jhall11/mininet.git</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-docstring"> git fetch jhall11</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-docstring"> git checkout -b dynamic_topo remotes/jhall11/dynamic_topo</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-docstring"> git pull</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring"> Note that you may need to run 'sudo make develop' if your mnexec.c file</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring">changed when switching branches."""</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">pexpect</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">types</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">math</tt> <tt class="py-keyword">import</tt> <tt class="py-name">pow</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.bin.cli=TestON.bin.cli-module.html,Package TestON.drivers.common.cli=TestON.drivers.common.cli-module.html"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-2', 'cli', 'link-2');">cli</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module TestON.drivers.common.cli.emulatordriver=TestON.drivers.common.cli.emulatordriver-module.html"><a title="TestON.drivers.common.cli.emulatordriver" class="py-name" href="#" onclick="return doclink('link-3', 'emulatordriver', 'link-3');">emulatordriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class TestON.drivers.common.cli.emulatordriver.Emulator=TestON.drivers.common.cli.emulatordriver.Emulator-class.html"><a title="TestON.drivers.common.cli.emulatordriver.Emulator" class="py-name" href="#" onclick="return doclink('link-4', 'Emulator', 'link-4');">Emulator</a></tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver"></a><div id="MininetCliDriver-def"><a name="L43"></a><tt class="py-lineno"> 43</tt> <a class="py-toggle" href="#" id="MininetCliDriver-toggle" onclick="return toggle('MininetCliDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">Emulator</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="MininetCliDriver-expanded"><a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> MininetCliDriver is the basic driver which will handle</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-docstring"> the Mininet functions"""</tt> </tt>
-<a name="MininetCliDriver.__init__"></a><div id="MininetCliDriver.__init__-def"><a name="L48"></a><tt class="py-lineno"> 48</tt> <a class="py-toggle" href="#" id="MininetCliDriver.__init__-toggle" onclick="return toggle('MininetCliDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.__init__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.__init__-expanded"><a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.emulatordriver.Emulator" class="py-name" href="#" onclick="return doclink('link-5', 'Emulator', 'link-4');">Emulator</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-6', '__init__', 'link-6');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">wrapped</tt> <tt class="py-op">=</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">modules</tt><tt class="py-op">[</tt> <tt class="py-name">__name__</tt> <tt class="py-op">]</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-</div><a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.connect"></a><div id="MininetCliDriver.connect-def"><a name="L55"></a><tt class="py-lineno"> 55</tt> <a class="py-toggle" href="#" id="MininetCliDriver.connect-toggle" onclick="return toggle('MininetCliDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.connect-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.connect-expanded"><a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"><tt class="py-docstring"> Here the main is the TestON instance after creating</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"><tt class="py-docstring"> all the log handles."""</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">getenv</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">getenv</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-7', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-string">": Trying to connect to "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">:</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-8', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Invalid host name,"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-string">" connecting to local host instead"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">=</tt> <tt class="py-string">'localhost'</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">inst</tt><tt class="py-op">:</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-10', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Uncaught exception: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">inst</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt id="link-11" class="py-name" targets="Class TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver" class="py-name" href="#" onclick="return doclink('link-11', 'MininetCliDriver', 'link-11');">MininetCliDriver</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-12', 'connect', 'link-12');">connect</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-13', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Connection successful to the host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-14', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-15', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Connection failed to the host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-16', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-17', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to connect to the Mininet CLI"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno"> 100</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L101"></a><tt class="py-lineno"> 101</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L102"></a><tt class="py-lineno"> 102</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-18', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-19', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno"> 103</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-20', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-21', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno"> 104</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Method TestON.core.teston.TestON.cleanup()=TestON.core.teston.TestON-class.html#cleanup"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-22', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno"> 105</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-23', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno"> 106</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L107"></a><tt class="py-lineno"> 107</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-24', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno"> 108</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-25', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno"> 109</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-26', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L110"></a><tt class="py-lineno"> 110</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.startNet"></a><div id="MininetCliDriver.startNet-def"><a name="L111"></a><tt class="py-lineno"> 111</tt> <a class="py-toggle" href="#" id="MininetCliDriver.startNet-toggle" onclick="return toggle('MininetCliDriver.startNet');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startNet">startNet</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">topoFile</tt><tt class="py-op">=</tt><tt class="py-string">''</tt><tt class="py-op">,</tt> <tt class="py-param">args</tt><tt class="py-op">=</tt><tt class="py-string">''</tt><tt class="py-op">,</tt> <tt class="py-param">mnCmd</tt><tt class="py-op">=</tt><tt class="py-string">''</tt><tt class="py-op">,</tt> <tt class="py-param">timeout</tt><tt class="py-op">=</tt><tt class="py-number">120</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.startNet-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.startNet-expanded"><a name="L112"></a><tt class="py-lineno"> 112</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L113"></a><tt class="py-lineno"> 113</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L114"></a><tt class="py-lineno"> 114</tt> <tt class="py-line"><tt class="py-docstring"> Starts Mininet accepts a topology(.py) file and/or an optional</tt> </tt>
-<a name="L115"></a><tt class="py-lineno"> 115</tt> <tt class="py-line"><tt class="py-docstring"> argument, to start the mininet, as a parameter.</tt> </tt>
-<a name="L116"></a><tt class="py-lineno"> 116</tt> <tt class="py-line"><tt class="py-docstring"> Can also send regular mininet command to load up desired topology.</tt> </tt>
-<a name="L117"></a><tt class="py-lineno"> 117</tt> <tt class="py-line"><tt class="py-docstring"> Eg. Pass in a string 'sudo mn --topo=tree,3,3' to mnCmd</tt> </tt>
-<a name="L118"></a><tt class="py-lineno"> 118</tt> <tt class="py-line"><tt class="py-docstring"> Options:</tt> </tt>
-<a name="L119"></a><tt class="py-lineno"> 119</tt> <tt class="py-line"><tt class="py-docstring"> topoFile = file path for topology file (.py)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno"> 120</tt> <tt class="py-line"><tt class="py-docstring"> args = extra option added when starting the topology from the file</tt> </tt>
-<a name="L121"></a><tt class="py-lineno"> 121</tt> <tt class="py-line"><tt class="py-docstring"> mnCmd = Mininet command use to start topology</tt> </tt>
-<a name="L122"></a><tt class="py-lineno"> 122</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L123"></a><tt class="py-lineno"> 123</tt> <tt class="py-line"><tt class="py-docstring"> main.TRUE if the mininet starts successfully, main.FALSE</tt> </tt>
-<a name="L124"></a><tt class="py-lineno"> 124</tt> <tt class="py-line"><tt class="py-docstring"> otherwise</tt> </tt>
-<a name="L125"></a><tt class="py-lineno"> 125</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L126"></a><tt class="py-lineno"> 126</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L127"></a><tt class="py-lineno"> 127</tt> <tt class="py-line"> <tt class="py-comment"># make sure old networks are cleaned up</tt> </tt>
-<a name="L128"></a><tt class="py-lineno"> 128</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-27', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L129"></a><tt class="py-lineno"> 129</tt> <tt class="py-line"> <tt class="py-string">": Clearing any residual state or processes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L130"></a><tt class="py-lineno"> 130</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-28', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"sudo mn -c"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L131"></a><tt class="py-lineno"> 131</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">'password\sfor\s'</tt><tt class="py-op">,</tt> </tt>
-<a name="L132"></a><tt class="py-lineno"> 132</tt> <tt class="py-line"> <tt class="py-string">'Cleanup\scomplete'</tt><tt class="py-op">,</tt> </tt>
-<a name="L133"></a><tt class="py-lineno"> 133</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt> </tt>
-<a name="L134"></a><tt class="py-lineno"> 134</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L135"></a><tt class="py-lineno"> 135</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno"> 136</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L137"></a><tt class="py-lineno"> 137</tt> <tt class="py-line"> <tt class="py-comment"># Sudo asking for password</tt> </tt>
-<a name="L138"></a><tt class="py-lineno"> 138</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-29', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Sending sudo password"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L139"></a><tt class="py-lineno"> 139</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-30', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L140"></a><tt class="py-lineno"> 140</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">'%s:'</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user</tt><tt class="py-op">,</tt> </tt>
-<a name="L141"></a><tt class="py-lineno"> 141</tt> <tt class="py-line"> <tt class="py-string">'\$'</tt><tt class="py-op">,</tt> </tt>
-<a name="L142"></a><tt class="py-lineno"> 142</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt> </tt>
-<a name="L143"></a><tt class="py-lineno"> 143</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L144"></a><tt class="py-lineno"> 144</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L145"></a><tt class="py-lineno"> 145</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L146"></a><tt class="py-lineno"> 146</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-31', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Clean"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L147"></a><tt class="py-lineno"> 147</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L148"></a><tt class="py-lineno"> 148</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-32', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-33', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Connection terminated"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L149"></a><tt class="py-lineno"> 149</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> <tt class="py-comment"># timeout</tt> </tt>
-<a name="L150"></a><tt class="py-lineno"> 150</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-34', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-35', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Something while cleaning "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L151"></a><tt class="py-lineno"> 151</tt> <tt class="py-line"> <tt class="py-string">"Mininet took too long... "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno"> 152</tt> <tt class="py-line"> <tt class="py-comment"># Craft the string to start mininet</tt> </tt>
-<a name="L153"></a><tt class="py-lineno"> 153</tt> <tt class="py-line"> <tt class="py-name">cmdString</tt> <tt class="py-op">=</tt> <tt class="py-string">"sudo "</tt> </tt>
-<a name="L154"></a><tt class="py-lineno"> 154</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">mnCmd</tt><tt class="py-op">:</tt> </tt>
-<a name="L155"></a><tt class="py-lineno"> 155</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topoFile</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">topoFile</tt> <tt class="py-op">==</tt> <tt class="py-string">''</tt><tt class="py-op">:</tt> <tt class="py-comment"># If no file is given</tt> </tt>
-<a name="L156"></a><tt class="py-lineno"> 156</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-36', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": building fresh Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L157"></a><tt class="py-lineno"> 157</tt> <tt class="py-line"> <tt class="py-name">cmdString</tt> <tt class="py-op">+=</tt> <tt class="py-string">"mn "</tt> </tt>
-<a name="L158"></a><tt class="py-lineno"> 158</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">args</tt> <tt class="py-op">==</tt> <tt class="py-string">''</tt><tt class="py-op">:</tt> </tt>
-<a name="L159"></a><tt class="py-lineno"> 159</tt> <tt class="py-line"> <tt class="py-comment"># If no args given, use args from .topo file</tt> </tt>
-<a name="L160"></a><tt class="py-lineno"> 160</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'arg1'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L161"></a><tt class="py-lineno"> 161</tt> <tt class="py-line"> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'arg2'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L162"></a><tt class="py-lineno"> 162</tt> <tt class="py-line"> <tt class="py-string">" --mac --controller "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L163"></a><tt class="py-lineno"> 163</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'controller'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L164"></a><tt class="py-lineno"> 164</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'arg3'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L165"></a><tt class="py-lineno"> 165</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># else only use given args</tt> </tt>
-<a name="L166"></a><tt class="py-lineno"> 166</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L167"></a><tt class="py-lineno"> 167</tt> <tt class="py-line"> <tt class="py-comment"># TODO: allow use of topo args and method args?</tt> </tt>
-<a name="L168"></a><tt class="py-lineno"> 168</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># Use given topology file</tt> </tt>
-<a name="L169"></a><tt class="py-lineno"> 169</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-37', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L170"></a><tt class="py-lineno"> 170</tt> <tt class="py-line"> <tt class="py-string">"Starting Mininet from topo file "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L171"></a><tt class="py-lineno"> 171</tt> <tt class="py-line"> <tt class="py-name">topoFile</tt> <tt class="py-op">)</tt> </tt>
-<a name="L172"></a><tt class="py-lineno"> 172</tt> <tt class="py-line"> <tt class="py-name">cmdString</tt> <tt class="py-op">+=</tt> <tt class="py-name">topoFile</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> </tt>
-<a name="L173"></a><tt class="py-lineno"> 173</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L174"></a><tt class="py-lineno"> 174</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L175"></a><tt class="py-lineno"> 175</tt> <tt class="py-line"> <tt class="py-comment"># TODO: allow use of args from .topo file?</tt> </tt>
-<a name="L176"></a><tt class="py-lineno"> 176</tt> <tt class="py-line"> <tt class="py-name">cmdString</tt> <tt class="py-op">+=</tt> <tt class="py-name">args</tt> </tt>
-<a name="L177"></a><tt class="py-lineno"> 177</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L178"></a><tt class="py-lineno"> 178</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-38', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Starting Mininet topology using '"</tt> <tt class="py-op">+</tt> <tt class="py-name">mnCmd</tt> <tt class="py-op">+</tt> </tt>
-<a name="L179"></a><tt class="py-lineno"> 179</tt> <tt class="py-line"> <tt class="py-string">"' command"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L180"></a><tt class="py-lineno"> 180</tt> <tt class="py-line"> <tt class="py-name">cmdString</tt> <tt class="py-op">+=</tt> <tt class="py-name">mnCmd</tt> </tt>
-<a name="L181"></a><tt class="py-lineno"> 181</tt> <tt class="py-line"> <tt class="py-comment"># Send the command and check if network started</tt> </tt>
-<a name="L182"></a><tt class="py-lineno"> 182</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-39', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L183"></a><tt class="py-lineno"> 183</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">'\$'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L184"></a><tt class="py-lineno"> 184</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-40', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Sending '"</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdString</tt> <tt class="py-op">+</tt> <tt class="py-string">"' to "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> </tt>
-<a name="L185"></a><tt class="py-lineno"> 185</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-41', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdString</tt> <tt class="py-op">)</tt> </tt>
-<a name="L186"></a><tt class="py-lineno"> 186</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L187"></a><tt class="py-lineno"> 187</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">'mininet>'</tt><tt class="py-op">,</tt> </tt>
-<a name="L188"></a><tt class="py-lineno"> 188</tt> <tt class="py-line"> <tt class="py-string">'Exception'</tt><tt class="py-op">,</tt> </tt>
-<a name="L189"></a><tt class="py-lineno"> 189</tt> <tt class="py-line"> <tt class="py-string">'\*\*\*'</tt><tt class="py-op">,</tt> </tt>
-<a name="L190"></a><tt class="py-lineno"> 190</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt> </tt>
-<a name="L191"></a><tt class="py-lineno"> 191</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L192"></a><tt class="py-lineno"> 192</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L193"></a><tt class="py-lineno"> 193</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L194"></a><tt class="py-lineno"> 194</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-42', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Mininet built"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L195"></a><tt class="py-lineno"> 195</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L196"></a><tt class="py-lineno"> 196</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L197"></a><tt class="py-lineno"> 197</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">+</tt> </tt>
-<a name="L198"></a><tt class="py-lineno"> 198</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> <tt class="py-op">)</tt> </tt>
-<a name="L199"></a><tt class="py-lineno"> 199</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">'\$'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L200"></a><tt class="py-lineno"> 200</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">+=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">+</tt> </tt>
-<a name="L201"></a><tt class="py-lineno"> 201</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> <tt class="py-op">)</tt> </tt>
-<a name="L202"></a><tt class="py-lineno"> 202</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-43', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-44', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L203"></a><tt class="py-lineno"> 203</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L204"></a><tt class="py-lineno"> 204</tt> <tt class="py-line"> <tt class="py-string">": Launching Mininet failed: "</tt> <tt class="py-op">+</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno"> 205</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L206"></a><tt class="py-lineno"> 206</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L207"></a><tt class="py-lineno"> 207</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"\n"</tt><tt class="py-op">,</tt> </tt>
-<a name="L208"></a><tt class="py-lineno"> 208</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt> </tt>
-<a name="L209"></a><tt class="py-lineno"> 209</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L210"></a><tt class="py-lineno"> 210</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno"> 211</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-45', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L212"></a><tt class="py-lineno"> 212</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L213"></a><tt class="py-lineno"> 213</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-46', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-47', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Connection timeout"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L214"></a><tt class="py-lineno"> 214</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L215"></a><tt class="py-lineno"> 215</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> <tt class="py-comment"># timeout</tt> </tt>
-<a name="L216"></a><tt class="py-lineno"> 216</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-48', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-49', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L217"></a><tt class="py-lineno"> 217</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L218"></a><tt class="py-lineno"> 218</tt> <tt class="py-line"> <tt class="py-string">": Something took too long... "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L219"></a><tt class="py-lineno"> 219</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L220"></a><tt class="py-lineno"> 220</tt> <tt class="py-line"> <tt class="py-comment"># Why did we hit this part?</tt> </tt>
-<a name="L221"></a><tt class="py-lineno"> 221</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-50', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-51', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"startNet did not return correctly"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L222"></a><tt class="py-lineno"> 222</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FASLE</tt> </tt>
-<a name="L223"></a><tt class="py-lineno"> 223</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># if no handle</tt> </tt>
-<a name="L224"></a><tt class="py-lineno"> 224</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-52', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-53', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Connection failed to the host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L225"></a><tt class="py-lineno"> 225</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L226"></a><tt class="py-lineno"> 226</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-54', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-55', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Failed to connect to the Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L227"></a><tt class="py-lineno"> 227</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L228"></a><tt class="py-lineno"> 228</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.numSwitchesNlinks"></a><div id="MininetCliDriver.numSwitchesNlinks-def"><a name="L229"></a><tt class="py-lineno"> 229</tt> <a class="py-toggle" href="#" id="MininetCliDriver.numSwitchesNlinks-toggle" onclick="return toggle('MininetCliDriver.numSwitchesNlinks');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#numSwitchesNlinks">numSwitchesNlinks</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">topoType</tt><tt class="py-op">,</tt> <tt class="py-param">depth</tt><tt class="py-op">,</tt> <tt class="py-param">fanout</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.numSwitchesNlinks-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.numSwitchesNlinks-expanded"><a name="L230"></a><tt class="py-lineno"> 230</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topoType</tt> <tt class="py-op">==</tt> <tt class="py-string">'tree'</tt><tt class="py-op">:</tt> </tt>
-<a name="L231"></a><tt class="py-lineno"> 231</tt> <tt class="py-line"> <tt class="py-comment"># In tree topology, if fanout arg is not given, by default it is 2</tt> </tt>
-<a name="L232"></a><tt class="py-lineno"> 232</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">fanout</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L233"></a><tt class="py-lineno"> 233</tt> <tt class="py-line"> <tt class="py-name">fanout</tt> <tt class="py-op">=</tt> <tt class="py-number">2</tt> </tt>
-<a name="L234"></a><tt class="py-lineno"> 234</tt> <tt class="py-line"> <tt class="py-name">k</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L235"></a><tt class="py-lineno"> 235</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L236"></a><tt class="py-lineno"> 236</tt> <tt class="py-line"> <tt class="py-keyword">while</tt><tt class="py-op">(</tt> <tt class="py-name">k</tt> <tt class="py-op"><=</tt> <tt class="py-name">depth</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L237"></a><tt class="py-lineno"> 237</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-name">count</tt> <tt class="py-op">+</tt> <tt class="py-name">pow</tt><tt class="py-op">(</tt> <tt class="py-name">fanout</tt><tt class="py-op">,</tt> <tt class="py-name">k</tt> <tt class="py-op">)</tt> </tt>
-<a name="L238"></a><tt class="py-lineno"> 238</tt> <tt class="py-line"> <tt class="py-name">k</tt> <tt class="py-op">=</tt> <tt class="py-name">k</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L239"></a><tt class="py-lineno"> 239</tt> <tt class="py-line"> <tt class="py-name">numSwitches</tt> <tt class="py-op">=</tt> <tt class="py-name">count</tt> </tt>
-<a name="L240"></a><tt class="py-lineno"> 240</tt> <tt class="py-line"> <tt class="py-keyword">while</tt><tt class="py-op">(</tt> <tt class="py-name">k</tt> <tt class="py-op"><=</tt> <tt class="py-name">depth</tt> <tt class="py-op">-</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L241"></a><tt class="py-lineno"> 241</tt> <tt class="py-line"> <tt class="py-comment"># depth-2 gives you only core links and not considering</tt> </tt>
-<a name="L242"></a><tt class="py-lineno"> 242</tt> <tt class="py-line"> <tt class="py-comment"># edge links as seen by ONOS. If all the links including</tt> </tt>
-<a name="L243"></a><tt class="py-lineno"> 243</tt> <tt class="py-line"> <tt class="py-comment"># edge links are required, do depth-1</tt> </tt>
-<a name="L244"></a><tt class="py-lineno"> 244</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-name">count</tt> <tt class="py-op">+</tt> <tt class="py-name">pow</tt><tt class="py-op">(</tt> <tt class="py-name">fanout</tt><tt class="py-op">,</tt> <tt class="py-name">k</tt> <tt class="py-op">)</tt> </tt>
-<a name="L245"></a><tt class="py-lineno"> 245</tt> <tt class="py-line"> <tt class="py-name">k</tt> <tt class="py-op">=</tt> <tt class="py-name">k</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L246"></a><tt class="py-lineno"> 246</tt> <tt class="py-line"> <tt class="py-name">numLinks</tt> <tt class="py-op">=</tt> <tt class="py-name">count</tt> <tt class="py-op">*</tt> <tt class="py-name">fanout</tt> </tt>
-<a name="L247"></a><tt class="py-lineno"> 247</tt> <tt class="py-line"> <tt class="py-comment"># print "num_switches for %s(%d,%d) = %d and links=%d" %(</tt> </tt>
-<a name="L248"></a><tt class="py-lineno"> 248</tt> <tt class="py-line"> <tt class="py-comment"># topoType,depth,fanout,numSwitches,numLinks )</tt> </tt>
-<a name="L249"></a><tt class="py-lineno"> 249</tt> <tt class="py-line"> </tt>
-<a name="L250"></a><tt class="py-lineno"> 250</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">topoType</tt> <tt class="py-op">==</tt> <tt class="py-string">'linear'</tt><tt class="py-op">:</tt> </tt>
-<a name="L251"></a><tt class="py-lineno"> 251</tt> <tt class="py-line"> <tt class="py-comment"># In linear topology, if fanout or numHostsPerSw is not given,</tt> </tt>
-<a name="L252"></a><tt class="py-lineno"> 252</tt> <tt class="py-line"> <tt class="py-comment"># by default it is 1</tt> </tt>
-<a name="L253"></a><tt class="py-lineno"> 253</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">fanout</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L254"></a><tt class="py-lineno"> 254</tt> <tt class="py-line"> <tt class="py-name">fanout</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L255"></a><tt class="py-lineno"> 255</tt> <tt class="py-line"> <tt class="py-name">numSwitches</tt> <tt class="py-op">=</tt> <tt class="py-name">depth</tt> </tt>
-<a name="L256"></a><tt class="py-lineno"> 256</tt> <tt class="py-line"> <tt class="py-name">numHostsPerSw</tt> <tt class="py-op">=</tt> <tt class="py-name">fanout</tt> </tt>
-<a name="L257"></a><tt class="py-lineno"> 257</tt> <tt class="py-line"> <tt class="py-name">totalNumHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">numSwitches</tt> <tt class="py-op">*</tt> <tt class="py-name">numHostsPerSw</tt> </tt>
-<a name="L258"></a><tt class="py-lineno"> 258</tt> <tt class="py-line"> <tt class="py-name">numLinks</tt> <tt class="py-op">=</tt> <tt class="py-name">totalNumHosts</tt> <tt class="py-op">+</tt> <tt class="py-op">(</tt> <tt class="py-name">numSwitches</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L259"></a><tt class="py-lineno"> 259</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"num_switches for %s(%d,%d) = %d and links=%d"</tt> <tt class="py-op">%</tt>\ </tt>
-<a name="L260"></a><tt class="py-lineno"> 260</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">topoType</tt><tt class="py-op">,</tt> <tt class="py-name">depth</tt><tt class="py-op">,</tt> <tt class="py-name">fanout</tt><tt class="py-op">,</tt> <tt class="py-name">numSwitches</tt><tt class="py-op">,</tt> <tt class="py-name">numLinks</tt> <tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno"> 261</tt> <tt class="py-line"> <tt class="py-name">topoDict</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-string">"num_switches"</tt><tt class="py-op">:</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">numSwitches</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L262"></a><tt class="py-lineno"> 262</tt> <tt class="py-line"> <tt class="py-string">"num_corelinks"</tt><tt class="py-op">:</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">numLinks</tt> <tt class="py-op">)</tt> <tt class="py-op">}</tt> </tt>
-<a name="L263"></a><tt class="py-lineno"> 263</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">topoDict</tt> </tt>
-</div><a name="L264"></a><tt class="py-lineno"> 264</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.calculateSwAndLinks"></a><div id="MininetCliDriver.calculateSwAndLinks-def"><a name="L265"></a><tt class="py-lineno"> 265</tt> <a class="py-toggle" href="#" id="MininetCliDriver.calculateSwAndLinks-toggle" onclick="return toggle('MininetCliDriver.calculateSwAndLinks');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#calculateSwAndLinks">calculateSwAndLinks</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.calculateSwAndLinks-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.calculateSwAndLinks-expanded"><a name="L266"></a><tt class="py-lineno"> 266</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L267"></a><tt class="py-lineno"> 267</tt> <tt class="py-line"><tt class="py-docstring"> Calculate the number of switches and links in a topo."""</tt> </tt>
-<a name="L268"></a><tt class="py-lineno"> 268</tt> <tt class="py-line"> <tt class="py-comment"># TODO: combine this function and numSwitchesNlinks</tt> </tt>
-<a name="L269"></a><tt class="py-lineno"> 269</tt> <tt class="py-line"> <tt class="py-name">argList</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'arg1'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt> <tt class="py-op">)</tt> </tt>
-<a name="L270"></a><tt class="py-lineno"> 270</tt> <tt class="py-line"> <tt class="py-name">topoArgList</tt> <tt class="py-op">=</tt> <tt class="py-name">argList</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">" "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L271"></a><tt class="py-lineno"> 271</tt> <tt class="py-line"> <tt class="py-name">argList</tt> <tt class="py-op">=</tt> <tt class="py-name">map</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">,</tt> <tt class="py-name">argList</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L272"></a><tt class="py-lineno"> 272</tt> <tt class="py-line"> <tt class="py-name">topoArgList</tt> <tt class="py-op">=</tt> <tt class="py-name">topoArgList</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-name">argList</tt> </tt>
-<a name="L273"></a><tt class="py-lineno"> 273</tt> <tt class="py-line"> </tt>
-<a name="L274"></a><tt class="py-lineno"> 274</tt> <tt class="py-line"> <tt class="py-name">topoDict</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.numSwitchesNlinks()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#numSwitchesNlinks"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.numSwitchesNlinks" class="py-name" href="#" onclick="return doclink('link-56', 'numSwitchesNlinks', 'link-56');">numSwitchesNlinks</a></tt><tt class="py-op">(</tt> <tt class="py-op">*</tt><tt class="py-name">topoArgList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L275"></a><tt class="py-lineno"> 275</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">topoDict</tt> </tt>
-</div><a name="L276"></a><tt class="py-lineno"> 276</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.pingall"></a><div id="MininetCliDriver.pingall-def"><a name="L277"></a><tt class="py-lineno"> 277</tt> <a class="py-toggle" href="#" id="MininetCliDriver.pingall-toggle" onclick="return toggle('MininetCliDriver.pingall');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingall">pingall</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">timeout</tt><tt class="py-op">=</tt><tt class="py-number">300</tt><tt class="py-op">,</tt> <tt class="py-param">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> <tt class="py-param">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">0</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.pingall-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.pingall-expanded"><a name="L278"></a><tt class="py-lineno"> 278</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L279"></a><tt class="py-lineno"> 279</tt> <tt class="py-line"><tt class="py-docstring"> Verifies the reachability of the hosts using pingall command.</tt> </tt>
-<a name="L280"></a><tt class="py-lineno"> 280</tt> <tt class="py-line"><tt class="py-docstring"> Optional parameter timeout allows you to specify how long to</tt> </tt>
-<a name="L281"></a><tt class="py-lineno"> 281</tt> <tt class="py-line"><tt class="py-docstring"> wait for pingall to complete</tt> </tt>
-<a name="L282"></a><tt class="py-lineno"> 282</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L283"></a><tt class="py-lineno"> 283</tt> <tt class="py-line"><tt class="py-docstring"> timeout( seconds ) - How long to wait before breaking the pingall</tt> </tt>
-<a name="L284"></a><tt class="py-lineno"> 284</tt> <tt class="py-line"><tt class="py-docstring"> shortCircuit - Break the pingall based on the number of failed hosts</tt> </tt>
-<a name="L285"></a><tt class="py-lineno"> 285</tt> <tt class="py-line"><tt class="py-docstring"> ping</tt> </tt>
-<a name="L286"></a><tt class="py-lineno"> 286</tt> <tt class="py-line"><tt class="py-docstring"> acceptableFailed - Set the number of acceptable failed pings for the</tt> </tt>
-<a name="L287"></a><tt class="py-lineno"> 287</tt> <tt class="py-line"><tt class="py-docstring"> function to still return main.TRUE</tt> </tt>
-<a name="L288"></a><tt class="py-lineno"> 288</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L289"></a><tt class="py-lineno"> 289</tt> <tt class="py-line"><tt class="py-docstring"> main.TRUE if pingall completes with no pings dropped</tt> </tt>
-<a name="L290"></a><tt class="py-lineno"> 290</tt> <tt class="py-line"><tt class="py-docstring"> otherwise main.FALSE</tt> </tt>
-<a name="L291"></a><tt class="py-lineno"> 291</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L292"></a><tt class="py-lineno"> 292</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L293"></a><tt class="py-lineno"> 293</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L294"></a><tt class="py-lineno"> 294</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L295"></a><tt class="py-lineno"> 295</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L296"></a><tt class="py-lineno"> 296</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-57', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L297"></a><tt class="py-lineno"> 297</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L298"></a><tt class="py-lineno"> 298</tt> <tt class="py-line"> <tt class="py-string">": Checking reachabilty to the hosts using pingall"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L299"></a><tt class="py-lineno"> 299</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L300"></a><tt class="py-lineno"> 300</tt> <tt class="py-line"> <tt class="py-name">failedPings</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L301"></a><tt class="py-lineno"> 301</tt> <tt class="py-line"> <tt class="py-name">returnValue</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L302"></a><tt class="py-lineno"> 302</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-58', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pingall"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L303"></a><tt class="py-lineno"> 303</tt> <tt class="py-line"> <tt class="py-name">startTime</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L304"></a><tt class="py-lineno"> 304</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L305"></a><tt class="py-lineno"> 305</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> <tt class="py-string">"X"</tt><tt class="py-op">,</tt> </tt>
-<a name="L306"></a><tt class="py-lineno"> 306</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt> </tt>
-<a name="L307"></a><tt class="py-lineno"> 307</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L308"></a><tt class="py-lineno"> 308</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L309"></a><tt class="py-lineno"> 309</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L310"></a><tt class="py-lineno"> 310</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-59', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": pingall finished"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno"> 311</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">+=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L312"></a><tt class="py-lineno"> 312</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L313"></a><tt class="py-lineno"> 313</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L314"></a><tt class="py-lineno"> 314</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">+=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> </tt>
-<a name="L315"></a><tt class="py-lineno"> 315</tt> <tt class="py-line"> <tt class="py-name">failedPings</tt> <tt class="py-op">=</tt> <tt class="py-name">failedPings</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L316"></a><tt class="py-lineno"> 316</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">failedPings</tt> <tt class="py-op">></tt> <tt class="py-name">acceptableFailed</tt><tt class="py-op">:</tt> </tt>
-<a name="L317"></a><tt class="py-lineno"> 317</tt> <tt class="py-line"> <tt class="py-name">returnValue</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L318"></a><tt class="py-lineno"> 318</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">shortCircuit</tt><tt class="py-op">:</tt> </tt>
-<a name="L319"></a><tt class="py-lineno"> 319</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-60', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-61" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-61', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L320"></a><tt class="py-lineno"> 320</tt> <tt class="py-line"> <tt class="py-string">": Aborting pingall - "</tt> </tt>
-<a name="L321"></a><tt class="py-lineno"> 321</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">failedPings</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L322"></a><tt class="py-lineno"> 322</tt> <tt class="py-line"> <tt class="py-string">" pings failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L323"></a><tt class="py-lineno"> 323</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L324"></a><tt class="py-lineno"> 324</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">startTime</tt> <tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-name">timeout</tt><tt class="py-op">:</tt> </tt>
-<a name="L325"></a><tt class="py-lineno"> 325</tt> <tt class="py-line"> <tt class="py-name">returnValue</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L326"></a><tt class="py-lineno"> 326</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-62', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-63', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L327"></a><tt class="py-lineno"> 327</tt> <tt class="py-line"> <tt class="py-string">": Aborting pingall - "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L328"></a><tt class="py-lineno"> 328</tt> <tt class="py-line"> <tt class="py-string">"Function took too long "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L329"></a><tt class="py-lineno"> 329</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L330"></a><tt class="py-lineno"> 330</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L331"></a><tt class="py-lineno"> 331</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-64', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-65', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L332"></a><tt class="py-lineno"> 332</tt> <tt class="py-line"> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L333"></a><tt class="py-lineno"> 333</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-66', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-67', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L334"></a><tt class="py-lineno"> 334</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L335"></a><tt class="py-lineno"> 335</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-68', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L336"></a><tt class="py-lineno"> 336</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-69" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-69', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L337"></a><tt class="py-lineno"> 337</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L338"></a><tt class="py-lineno"> 338</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">+=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L339"></a><tt class="py-lineno"> 339</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-70', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-71', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L340"></a><tt class="py-lineno"> 340</tt> <tt class="py-line"> <tt class="py-string">": TIMEOUT exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L341"></a><tt class="py-lineno"> 341</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-72', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-73', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L342"></a><tt class="py-lineno"> 342</tt> <tt class="py-line"> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L343"></a><tt class="py-lineno"> 343</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L344"></a><tt class="py-lineno"> 344</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Send ctrl-c to make sure pingall is done</tt> </tt>
-<a name="L345"></a><tt class="py-lineno"> 345</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-74', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"\x03"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L346"></a><tt class="py-lineno"> 346</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"Interrupt"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L347"></a><tt class="py-lineno"> 347</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L348"></a><tt class="py-lineno"> 348</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L349"></a><tt class="py-lineno"> 349</tt> <tt class="py-line"> <tt class="py-name">pattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"Results\:"</tt> </tt>
-<a name="L350"></a><tt class="py-lineno"> 350</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-75', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Pingall output: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L351"></a><tt class="py-lineno"> 351</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">pattern</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L352"></a><tt class="py-lineno"> 352</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-76', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Pingall finished with "</tt> </tt>
-<a name="L353"></a><tt class="py-lineno"> 353</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">failedPings</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" failed pings"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L354"></a><tt class="py-lineno"> 354</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">returnValue</tt> </tt>
-<a name="L355"></a><tt class="py-lineno"> 355</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L356"></a><tt class="py-lineno"> 356</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Send ctrl-c to make sure pingall is done</tt> </tt>
-<a name="L357"></a><tt class="py-lineno"> 357</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-77', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"\x03"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L358"></a><tt class="py-lineno"> 358</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"Interrupt"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L359"></a><tt class="py-lineno"> 359</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L360"></a><tt class="py-lineno"> 360</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L361"></a><tt class="py-lineno"> 361</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L362"></a><tt class="py-lineno"> 362</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-78', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-79', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L363"></a><tt class="py-lineno"> 363</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-80', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L364"></a><tt class="py-lineno"> 364</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-81', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L365"></a><tt class="py-lineno"> 365</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">:</tt> </tt>
-<a name="L366"></a><tt class="py-lineno"> 366</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L367"></a><tt class="py-lineno"> 367</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-82', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Pingall output: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L368"></a><tt class="py-lineno"> 368</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-83', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-84', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": pexpect.TIMEOUT found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L369"></a><tt class="py-lineno"> 369</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L370"></a><tt class="py-lineno"> 370</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L371"></a><tt class="py-lineno"> 371</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-85', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-86', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L372"></a><tt class="py-lineno"> 372</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-87', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-88', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L373"></a><tt class="py-lineno"> 373</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-89', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L374"></a><tt class="py-lineno"> 374</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-90', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L375"></a><tt class="py-lineno"> 375</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.fpingHost"></a><div id="MininetCliDriver.fpingHost-def"><a name="L376"></a><tt class="py-lineno"> 376</tt> <a class="py-toggle" href="#" id="MininetCliDriver.fpingHost-toggle" onclick="return toggle('MininetCliDriver.fpingHost');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#fpingHost">fpingHost</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">pingParams</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.fpingHost-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.fpingHost-expanded"><a name="L377"></a><tt class="py-lineno"> 377</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L378"></a><tt class="py-lineno"> 378</tt> <tt class="py-line"><tt class="py-docstring"> Uses the fping package for faster pinging...</tt> </tt>
-<a name="L379"></a><tt class="py-lineno"> 379</tt> <tt class="py-line"><tt class="py-docstring"> *requires fping to be installed on machine running mininet"""</tt> </tt>
-<a name="L380"></a><tt class="py-lineno"> 380</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.parse_args()=TestON.core.openspeak.OpenSpeak-class.html#parse_args"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-91', 'parse_args', 'link-91');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"SRC"</tt><tt class="py-op">,</tt> <tt class="py-string">"TARGET"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">pingParams</tt> <tt class="py-op">)</tt> </tt>
-<a name="L381"></a><tt class="py-lineno"> 381</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"SRC"</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L382"></a><tt class="py-lineno"> 382</tt> <tt class="py-line"> <tt class="py-string">" fping -i 100 -t 20 -C 1 -q "</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TARGET"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L383"></a><tt class="py-lineno"> 383</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-92', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">command</tt> <tt class="py-op">)</tt> </tt>
-<a name="L384"></a><tt class="py-lineno"> 384</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> </tt>
-<a name="L385"></a><tt class="py-lineno"> 385</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TARGET"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L386"></a><tt class="py-lineno"> 386</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"mininet"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L387"></a><tt class="py-lineno"> 387</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L388"></a><tt class="py-lineno"> 388</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">":\s-"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L389"></a><tt class="py-lineno"> 389</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-93', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Ping fail"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L390"></a><tt class="py-lineno"> 390</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L391"></a><tt class="py-lineno"> 391</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">":\s\d{1,2}\.\d\d"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L392"></a><tt class="py-lineno"> 392</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-94', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Ping good!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L393"></a><tt class="py-lineno"> 393</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L394"></a><tt class="py-lineno"> 394</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-95', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Install fping on mininet machine... "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L395"></a><tt class="py-lineno"> 395</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-96', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": \n---\n"</tt> <tt class="py-op">+</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L396"></a><tt class="py-lineno"> 396</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L397"></a><tt class="py-lineno"> 397</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.pingallHosts"></a><div id="MininetCliDriver.pingallHosts-def"><a name="L398"></a><tt class="py-lineno"> 398</tt> <a class="py-toggle" href="#" id="MininetCliDriver.pingallHosts-toggle" onclick="return toggle('MininetCliDriver.pingallHosts');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingallHosts">pingallHosts</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostList</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.pingallHosts-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.pingallHosts-expanded"><a name="L399"></a><tt class="py-lineno"> 399</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L400"></a><tt class="py-lineno"> 400</tt> <tt class="py-line"><tt class="py-docstring"> Ping all specified IPv4 hosts</tt> </tt>
-<a name="L401"></a><tt class="py-lineno"> 401</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L402"></a><tt class="py-lineno"> 402</tt> <tt class="py-line"><tt class="py-docstring"> Acceptable hostList:</tt> </tt>
-<a name="L403"></a><tt class="py-lineno"> 403</tt> <tt class="py-line"><tt class="py-docstring"> - [ 'h1','h2','h3','h4' ]</tt> </tt>
-<a name="L404"></a><tt class="py-lineno"> 404</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L405"></a><tt class="py-lineno"> 405</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE if all hosts specified can reach</tt> </tt>
-<a name="L406"></a><tt class="py-lineno"> 406</tt> <tt class="py-line"><tt class="py-docstring"> each other</tt> </tt>
-<a name="L407"></a><tt class="py-lineno"> 407</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L408"></a><tt class="py-lineno"> 408</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.FALSE if one or more of hosts specified</tt> </tt>
-<a name="L409"></a><tt class="py-lineno"> 409</tt> <tt class="py-line"><tt class="py-docstring"> cannot reach each other"""</tt> </tt>
-<a name="L410"></a><tt class="py-lineno"> 410</tt> <tt class="py-line"> </tt>
-<a name="L411"></a><tt class="py-lineno"> 411</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">" ping -c 1 -i 1 -W 8 "</tt> </tt>
-<a name="L412"></a><tt class="py-lineno"> 412</tt> <tt class="py-line"> </tt>
-<a name="L413"></a><tt class="py-lineno"> 413</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L414"></a><tt class="py-lineno"> 414</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-97', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Testing reachability between specified hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L415"></a><tt class="py-lineno"> 415</tt> <tt class="py-line"> </tt>
-<a name="L416"></a><tt class="py-lineno"> 416</tt> <tt class="py-line"> <tt class="py-name">isReachable</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L417"></a><tt class="py-lineno"> 417</tt> <tt class="py-line"> </tt>
-<a name="L418"></a><tt class="py-lineno"> 418</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt class="py-name">hostList</tt><tt class="py-op">:</tt> </tt>
-<a name="L419"></a><tt class="py-lineno"> 419</tt> <tt class="py-line"> <tt class="py-name">listIndex</tt> <tt class="py-op">=</tt> <tt class="py-name">hostList</tt><tt class="py-op">.</tt><tt class="py-name">index</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> </tt>
-<a name="L420"></a><tt class="py-lineno"> 420</tt> <tt class="py-line"> <tt class="py-comment"># List of hosts to ping other than itself</tt> </tt>
-<a name="L421"></a><tt class="py-lineno"> 421</tt> <tt class="py-line"> <tt class="py-name">pingList</tt> <tt class="py-op">=</tt> <tt class="py-name">hostList</tt><tt class="py-op">[</tt> <tt class="py-op">:</tt><tt class="py-name">listIndex</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L422"></a><tt class="py-lineno"> 422</tt> <tt class="py-line"> <tt class="py-name">hostList</tt><tt class="py-op">[</tt> <tt class="py-op">(</tt> <tt class="py-name">listIndex</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-op">]</tt> </tt>
-<a name="L423"></a><tt class="py-lineno"> 423</tt> <tt class="py-line"> </tt>
-<a name="L424"></a><tt class="py-lineno"> 424</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">temp</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pingList</tt><tt class="py-op">:</tt> </tt>
-<a name="L425"></a><tt class="py-lineno"> 425</tt> <tt class="py-line"> <tt class="py-comment"># Current host pings all other hosts specified</tt> </tt>
-<a name="L426"></a><tt class="py-lineno"> 426</tt> <tt class="py-line"> <tt class="py-name">pingCmd</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">cmd</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">temp</tt> <tt class="py-op">)</tt> </tt>
-<a name="L427"></a><tt class="py-lineno"> 427</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-98', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">pingCmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L428"></a><tt class="py-lineno"> 428</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-name">pingCmd</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L429"></a><tt class="py-lineno"> 429</tt> <tt class="py-line"> <tt class="py-name">j</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L430"></a><tt class="py-lineno"> 430</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L431"></a><tt class="py-lineno"> 431</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">',\s0\%\spacket\sloss'</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L432"></a><tt class="py-lineno"> 432</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-99', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" -> "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">temp</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L433"></a><tt class="py-lineno"> 433</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L434"></a><tt class="py-lineno"> 434</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-100', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L435"></a><tt class="py-lineno"> 435</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" -> X ("</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">temp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">") "</tt> </tt>
-<a name="L436"></a><tt class="py-lineno"> 436</tt> <tt class="py-line"> <tt class="py-string">" Destination Unreachable"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L437"></a><tt class="py-lineno"> 437</tt> <tt class="py-line"> <tt class="py-comment"># One of the host to host pair is unreachable</tt> </tt>
-<a name="L438"></a><tt class="py-lineno"> 438</tt> <tt class="py-line"> <tt class="py-name">isReachable</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L439"></a><tt class="py-lineno"> 439</tt> <tt class="py-line"> </tt>
-<a name="L440"></a><tt class="py-lineno"> 440</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">isReachable</tt> </tt>
-<a name="L441"></a><tt class="py-lineno"> 441</tt> <tt class="py-line"> </tt>
-<a name="L442"></a><tt class="py-lineno"> 442</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L443"></a><tt class="py-lineno"> 443</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-101', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-102', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L444"></a><tt class="py-lineno"> 444</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-103', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-104" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-104', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L445"></a><tt class="py-lineno"> 445</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-105', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L446"></a><tt class="py-lineno"> 446</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-106" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-106', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L447"></a><tt class="py-lineno"> 447</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.pingIpv6Hosts"></a><div id="MininetCliDriver.pingIpv6Hosts-def"><a name="L448"></a><tt class="py-lineno"> 448</tt> <a class="py-toggle" href="#" id="MininetCliDriver.pingIpv6Hosts-toggle" onclick="return toggle('MininetCliDriver.pingIpv6Hosts');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingIpv6Hosts">pingIpv6Hosts</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostList</tt><tt class="py-op">,</tt> <tt class="py-param">prefix</tt><tt class="py-op">=</tt><tt class="py-string">'1000::'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.pingIpv6Hosts-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.pingIpv6Hosts-expanded"><a name="L449"></a><tt class="py-lineno"> 449</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L450"></a><tt class="py-lineno"> 450</tt> <tt class="py-line"><tt class="py-docstring"> IPv6 ping all hosts in hostList. If no prefix passed this will use</tt> </tt>
-<a name="L451"></a><tt class="py-lineno"> 451</tt> <tt class="py-line"><tt class="py-docstring"> default prefix of 1000::</tt> </tt>
-<a name="L452"></a><tt class="py-lineno"> 452</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L453"></a><tt class="py-lineno"> 453</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE if all hosts specified can reach each other</tt> </tt>
-<a name="L454"></a><tt class="py-lineno"> 454</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L455"></a><tt class="py-lineno"> 455</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.FALSE if one or more of hosts specified cannot reach each other </tt> </tt>
-<a name="L456"></a><tt class="py-lineno"> 456</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L457"></a><tt class="py-lineno"> 457</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L458"></a><tt class="py-lineno"> 458</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-107', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Testing reachability between specified IPv6 hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L459"></a><tt class="py-lineno"> 459</tt> <tt class="py-line"> <tt class="py-name">isReachable</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L460"></a><tt class="py-lineno"> 460</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">" ping6 -c 1 -i 1 -W 8 "</tt> </tt>
-<a name="L461"></a><tt class="py-lineno"> 461</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt class="py-name">hostList</tt><tt class="py-op">:</tt> </tt>
-<a name="L462"></a><tt class="py-lineno"> 462</tt> <tt class="py-line"> <tt class="py-name">listIndex</tt> <tt class="py-op">=</tt> <tt class="py-name">hostList</tt><tt class="py-op">.</tt><tt class="py-name">index</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> </tt>
-<a name="L463"></a><tt class="py-lineno"> 463</tt> <tt class="py-line"> <tt class="py-comment"># List of hosts to ping other than itself</tt> </tt>
-<a name="L464"></a><tt class="py-lineno"> 464</tt> <tt class="py-line"> <tt class="py-name">pingList</tt> <tt class="py-op">=</tt> <tt class="py-name">hostList</tt><tt class="py-op">[</tt> <tt class="py-op">:</tt><tt class="py-name">listIndex</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L465"></a><tt class="py-lineno"> 465</tt> <tt class="py-line"> <tt class="py-name">hostList</tt><tt class="py-op">[</tt> <tt class="py-op">(</tt> <tt class="py-name">listIndex</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-op">]</tt> </tt>
-<a name="L466"></a><tt class="py-lineno"> 466</tt> <tt class="py-line"> </tt>
-<a name="L467"></a><tt class="py-lineno"> 467</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">temp</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pingList</tt><tt class="py-op">:</tt> </tt>
-<a name="L468"></a><tt class="py-lineno"> 468</tt> <tt class="py-line"> <tt class="py-comment"># Current host pings all other hosts specified</tt> </tt>
-<a name="L469"></a><tt class="py-lineno"> 469</tt> <tt class="py-line"> <tt class="py-name">pingCmd</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">cmd</tt> <tt class="py-op">+</tt> <tt class="py-name">prefix</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">temp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L470"></a><tt class="py-lineno"> 470</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-name">pingCmd</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L471"></a><tt class="py-lineno"> 471</tt> <tt class="py-line"> <tt class="py-name">j</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L472"></a><tt class="py-lineno"> 472</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L473"></a><tt class="py-lineno"> 473</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">',\s0\%\spacket\sloss'</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L474"></a><tt class="py-lineno"> 474</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-108', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" -> "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">temp</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L475"></a><tt class="py-lineno"> 475</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L476"></a><tt class="py-lineno"> 476</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-109', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L477"></a><tt class="py-lineno"> 477</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" -> X ("</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">temp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">") "</tt> </tt>
-<a name="L478"></a><tt class="py-lineno"> 478</tt> <tt class="py-line"> <tt class="py-string">" Destination Unreachable"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L479"></a><tt class="py-lineno"> 479</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-110', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-111', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Response from Mininet: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L480"></a><tt class="py-lineno"> 480</tt> <tt class="py-line"> <tt class="py-comment"># One of the host to host pair is unreachable</tt> </tt>
-<a name="L481"></a><tt class="py-lineno"> 481</tt> <tt class="py-line"> <tt class="py-name">isReachable</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L482"></a><tt class="py-lineno"> 482</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">isReachable</tt> </tt>
-<a name="L483"></a><tt class="py-lineno"> 483</tt> <tt class="py-line"> </tt>
-<a name="L484"></a><tt class="py-lineno"> 484</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L485"></a><tt class="py-lineno"> 485</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-112', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-113', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L486"></a><tt class="py-lineno"> 486</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-114', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-115" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-115', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L487"></a><tt class="py-lineno"> 487</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-116', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L488"></a><tt class="py-lineno"> 488</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-117', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L489"></a><tt class="py-lineno"> 489</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.pingHost"></a><div id="MininetCliDriver.pingHost-def"><a name="L490"></a><tt class="py-lineno"> 490</tt> <a class="py-toggle" href="#" id="MininetCliDriver.pingHost-toggle" onclick="return toggle('MininetCliDriver.pingHost');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingHost">pingHost</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">pingParams</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.pingHost-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.pingHost-expanded"><a name="L491"></a><tt class="py-lineno"> 491</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L492"></a><tt class="py-lineno"> 492</tt> <tt class="py-line"><tt class="py-docstring"> Ping from one mininet host to another</tt> </tt>
-<a name="L493"></a><tt class="py-lineno"> 493</tt> <tt class="py-line"><tt class="py-docstring"> Currently the only supported Params: SRC and TARGET"""</tt> </tt>
-<a name="L494"></a><tt class="py-lineno"> 494</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-118', 'parse_args', 'link-91');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"SRC"</tt><tt class="py-op">,</tt> <tt class="py-string">"TARGET"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">pingParams</tt> <tt class="py-op">)</tt> </tt>
-<a name="L495"></a><tt class="py-lineno"> 495</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"SRC"</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" ping "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L496"></a><tt class="py-lineno"> 496</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TARGET"</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" -c 1 -i 1 -W 8"</tt> </tt>
-<a name="L497"></a><tt class="py-lineno"> 497</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L498"></a><tt class="py-lineno"> 498</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-119', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Sending: "</tt> <tt class="py-op">+</tt> <tt class="py-name">command</tt> <tt class="py-op">)</tt> </tt>
-<a name="L499"></a><tt class="py-lineno"> 499</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-120" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-120', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">command</tt> <tt class="py-op">)</tt> </tt>
-<a name="L500"></a><tt class="py-lineno"> 500</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-name">command</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L501"></a><tt class="py-lineno"> 501</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L502"></a><tt class="py-lineno"> 502</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-121" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-121', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-122" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-122', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L503"></a><tt class="py-lineno"> 503</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L504"></a><tt class="py-lineno"> 504</tt> <tt class="py-line"> <tt class="py-string">": timeout when waiting for response from mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L505"></a><tt class="py-lineno"> 505</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-123', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-124" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-124', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"response: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L506"></a><tt class="py-lineno"> 506</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L507"></a><tt class="py-lineno"> 507</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L508"></a><tt class="py-lineno"> 508</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-125', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-126', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L509"></a><tt class="py-lineno"> 509</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L510"></a><tt class="py-lineno"> 510</tt> <tt class="py-line"> <tt class="py-string">": timeout when waiting for response from mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L511"></a><tt class="py-lineno"> 511</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-127', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-128', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"response: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L512"></a><tt class="py-lineno"> 512</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L513"></a><tt class="py-lineno"> 513</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L514"></a><tt class="py-lineno"> 514</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-129', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-130" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-130', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L515"></a><tt class="py-lineno"> 515</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-131', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-132', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L516"></a><tt class="py-lineno"> 516</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-133', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L517"></a><tt class="py-lineno"> 517</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-134" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-134', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L518"></a><tt class="py-lineno"> 518</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-135', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Ping Response: "</tt> <tt class="py-op">+</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L519"></a><tt class="py-lineno"> 519</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">',\s0\%\spacket\sloss'</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L520"></a><tt class="py-lineno"> 520</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-136" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-136', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": no packets lost, host is reachable"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L521"></a><tt class="py-lineno"> 521</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">lastResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L522"></a><tt class="py-lineno"> 522</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L523"></a><tt class="py-lineno"> 523</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L524"></a><tt class="py-lineno"> 524</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-137', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-138', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L525"></a><tt class="py-lineno"> 525</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L526"></a><tt class="py-lineno"> 526</tt> <tt class="py-line"> <tt class="py-string">": PACKET LOST, HOST IS NOT REACHABLE"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L527"></a><tt class="py-lineno"> 527</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">lastResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L528"></a><tt class="py-lineno"> 528</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L529"></a><tt class="py-lineno"> 529</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.checkIP"></a><div id="MininetCliDriver.checkIP-def"><a name="L530"></a><tt class="py-lineno"> 530</tt> <a class="py-toggle" href="#" id="MininetCliDriver.checkIP-toggle" onclick="return toggle('MininetCliDriver.checkIP');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#checkIP">checkIP</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">host</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.checkIP-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.checkIP-expanded"><a name="L531"></a><tt class="py-lineno"> 531</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L532"></a><tt class="py-lineno"> 532</tt> <tt class="py-line"><tt class="py-docstring"> Verifies the host's ip configured or not."""</tt> </tt>
-<a name="L533"></a><tt class="py-lineno"> 533</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L534"></a><tt class="py-lineno"> 534</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L535"></a><tt class="py-lineno"> 535</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-139" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.execute()=TestON.bin.generatedriver.GenerateDriver-class.html#execute,Method TestON.drivers.common.clidriver.CLI.execute()=TestON.drivers.common.clidriver.CLI-class.html#execute"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-139', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L536"></a><tt class="py-lineno"> 536</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">host</tt> <tt class="py-op">+</tt> </tt>
-<a name="L537"></a><tt class="py-lineno"> 537</tt> <tt class="py-line"> <tt class="py-string">" ifconfig"</tt><tt class="py-op">,</tt> </tt>
-<a name="L538"></a><tt class="py-lineno"> 538</tt> <tt class="py-line"> <tt id="link-140" class="py-name" targets="Variable TestON.bin.cli.CLI.prompt=TestON.bin.cli.CLI-class.html#prompt"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-140', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L539"></a><tt class="py-lineno"> 539</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L540"></a><tt class="py-lineno"> 540</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L541"></a><tt class="py-lineno"> 541</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-141" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-141', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-142', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L542"></a><tt class="py-lineno"> 542</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-143', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-144" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-144', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L543"></a><tt class="py-lineno"> 543</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-145" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-145', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L544"></a><tt class="py-lineno"> 544</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-146" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-146', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L545"></a><tt class="py-lineno"> 545</tt> <tt class="py-line"> </tt>
-<a name="L546"></a><tt class="py-lineno"> 546</tt> <tt class="py-line"> <tt class="py-name">pattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"inet\s(addr|Mask):([0-1]{1}[0-9]{1,2}|"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L547"></a><tt class="py-lineno"> 547</tt> <tt class="py-line"> <tt class="py-string">"2[0-4][0-9]|25[0-5]|[0-9]{1,2}).([0-1]{1}"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L548"></a><tt class="py-lineno"> 548</tt> <tt class="py-line"> <tt class="py-string">"[0-9]{1,2}|2[0-4][0-9]|25[0-5]|[0-9]{1,2})."</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L549"></a><tt class="py-lineno"> 549</tt> <tt class="py-line"> <tt class="py-string">"([0-1]{1}[0-9]{1,2}|2[0-4][0-9]|25[0-5]|"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L550"></a><tt class="py-lineno"> 550</tt> <tt class="py-line"> <tt class="py-string">"[0-9]{1,2}).([0-1]{1}[0-9]{1,2}|2[0-4]"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L551"></a><tt class="py-lineno"> 551</tt> <tt class="py-line"> <tt class="py-string">"[0-9]|25[0-5]|[0-9]{1,2})"</tt> </tt>
-<a name="L552"></a><tt class="py-lineno"> 552</tt> <tt class="py-line"> <tt class="py-comment"># pattern = "inet addr:10.0.0.6"</tt> </tt>
-<a name="L553"></a><tt class="py-lineno"> 553</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">pattern</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L554"></a><tt class="py-lineno"> 554</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-147', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Host Ip configured properly"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L555"></a><tt class="py-lineno"> 555</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L556"></a><tt class="py-lineno"> 556</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L557"></a><tt class="py-lineno"> 557</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-148" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-148', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-149" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-149', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Host IP not found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L558"></a><tt class="py-lineno"> 558</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L559"></a><tt class="py-lineno"> 559</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L560"></a><tt class="py-lineno"> 560</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-150" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-150', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-151" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-151', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L561"></a><tt class="py-lineno"> 561</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.verifySSH"></a><div id="MininetCliDriver.verifySSH-def"><a name="L562"></a><tt class="py-lineno"> 562</tt> <a class="py-toggle" href="#" id="MininetCliDriver.verifySSH-toggle" onclick="return toggle('MininetCliDriver.verifySSH');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#verifySSH">verifySSH</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.verifySSH-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.verifySSH-expanded"><a name="L563"></a><tt class="py-lineno"> 563</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: Who uses this and what is the purpose? seems very specific</tt> </tt>
-<a name="L564"></a><tt class="py-lineno"> 564</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L565"></a><tt class="py-lineno"> 565</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-152', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L566"></a><tt class="py-lineno"> 566</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"h1 /usr/sbin/sshd -D&"</tt><tt class="py-op">,</tt> </tt>
-<a name="L567"></a><tt class="py-lineno"> 567</tt> <tt class="py-line"> <tt id="link-153" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-153', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L568"></a><tt class="py-lineno"> 568</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L569"></a><tt class="py-lineno"> 569</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-154" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-154', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L570"></a><tt class="py-lineno"> 570</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"h4 /usr/sbin/sshd -D&"</tt><tt class="py-op">,</tt> </tt>
-<a name="L571"></a><tt class="py-lineno"> 571</tt> <tt class="py-line"> <tt id="link-155" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-155', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L572"></a><tt class="py-lineno"> 572</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L573"></a><tt class="py-lineno"> 573</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L574"></a><tt class="py-lineno"> 574</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L575"></a><tt class="py-lineno"> 575</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-156" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-156', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L576"></a><tt class="py-lineno"> 576</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"xterm h1 h4 "</tt><tt class="py-op">,</tt> </tt>
-<a name="L577"></a><tt class="py-lineno"> 577</tt> <tt class="py-line"> <tt id="link-157" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-157', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L578"></a><tt class="py-lineno"> 578</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L579"></a><tt class="py-lineno"> 579</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L580"></a><tt class="py-lineno"> 580</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-158" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-158', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-159" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-159', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L581"></a><tt class="py-lineno"> 581</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-160" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-160', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-161" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-161', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L582"></a><tt class="py-lineno"> 582</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-162', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L583"></a><tt class="py-lineno"> 583</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-163" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-163', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L584"></a><tt class="py-lineno"> 584</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L585"></a><tt class="py-lineno"> 585</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">20</tt> <tt class="py-op">)</tt> </tt>
-<a name="L586"></a><tt class="py-lineno"> 586</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L587"></a><tt class="py-lineno"> 587</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L588"></a><tt class="py-lineno"> 588</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L589"></a><tt class="py-lineno"> 589</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L590"></a><tt class="py-lineno"> 590</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L591"></a><tt class="py-lineno"> 591</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.moveHost"></a><div id="MininetCliDriver.moveHost-def"><a name="L592"></a><tt class="py-lineno"> 592</tt> <a class="py-toggle" href="#" id="MininetCliDriver.moveHost-toggle" onclick="return toggle('MininetCliDriver.moveHost');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#moveHost">moveHost</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">host</tt><tt class="py-op">,</tt> <tt class="py-param">oldSw</tt><tt class="py-op">,</tt> <tt class="py-param">newSw</tt><tt class="py-op">,</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.moveHost-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.moveHost-expanded"><a name="L593"></a><tt class="py-lineno"> 593</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L594"></a><tt class="py-lineno"> 594</tt> <tt class="py-line"><tt class="py-docstring"> Moves a host from one switch to another on the fly</tt> </tt>
-<a name="L595"></a><tt class="py-lineno"> 595</tt> <tt class="py-line"><tt class="py-docstring"> Note: The intf between host and oldSw when detached</tt> </tt>
-<a name="L596"></a><tt class="py-lineno"> 596</tt> <tt class="py-line"><tt class="py-docstring"> using detach(), will still show up in the 'net'</tt> </tt>
-<a name="L597"></a><tt class="py-lineno"> 597</tt> <tt class="py-line"><tt class="py-docstring"> cmd, because switch.detach() doesn't affect switch.intfs[]</tt> </tt>
-<a name="L598"></a><tt class="py-lineno"> 598</tt> <tt class="py-line"><tt class="py-docstring"> ( which is correct behavior since the interfaces</tt> </tt>
-<a name="L599"></a><tt class="py-lineno"> 599</tt> <tt class="py-line"><tt class="py-docstring"> haven't moved ).</tt> </tt>
-<a name="L600"></a><tt class="py-lineno"> 600</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L601"></a><tt class="py-lineno"> 601</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L602"></a><tt class="py-lineno"> 602</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L603"></a><tt class="py-lineno"> 603</tt> <tt class="py-line"> <tt class="py-comment"># Bring link between oldSw-host down</tt> </tt>
-<a name="L604"></a><tt class="py-lineno"> 604</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"py net.configLinkStatus('"</tt> <tt class="py-op">+</tt> <tt class="py-name">oldSw</tt> <tt class="py-op">+</tt> <tt class="py-string">"',"</tt> <tt class="py-op">+</tt> <tt class="py-string">"'"</tt> <tt class="py-op">+</tt> <tt class="py-name">host</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L605"></a><tt class="py-lineno"> 605</tt> <tt class="py-line"> <tt class="py-string">"',"</tt> <tt class="py-op">+</tt> <tt class="py-string">"'down')"</tt> </tt>
-<a name="L606"></a><tt class="py-lineno"> 606</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"cmd1= "</tt><tt class="py-op">,</tt> <tt class="py-name">cmd</tt> </tt>
-<a name="L607"></a><tt class="py-lineno"> 607</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-164" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-164', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">cmd</tt><tt class="py-op">,</tt> </tt>
-<a name="L608"></a><tt class="py-lineno"> 608</tt> <tt class="py-line"> <tt id="link-165" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-165', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L609"></a><tt class="py-lineno"> 609</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L610"></a><tt class="py-lineno"> 610</tt> <tt class="py-line"> </tt>
-<a name="L611"></a><tt class="py-lineno"> 611</tt> <tt class="py-line"> <tt class="py-comment"># Determine hostintf and Oldswitchintf</tt> </tt>
-<a name="L612"></a><tt class="py-lineno"> 612</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"px hintf,sintf = "</tt> <tt class="py-op">+</tt> <tt class="py-name">host</tt> <tt class="py-op">+</tt> <tt class="py-string">".connectionsTo("</tt> <tt class="py-op">+</tt> <tt class="py-name">oldSw</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L613"></a><tt class="py-lineno"> 613</tt> <tt class="py-line"> <tt class="py-string">")[0]"</tt> </tt>
-<a name="L614"></a><tt class="py-lineno"> 614</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"cmd2= "</tt><tt class="py-op">,</tt> <tt class="py-name">cmd</tt> </tt>
-<a name="L615"></a><tt class="py-lineno"> 615</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-166" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-166', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L616"></a><tt class="py-lineno"> 616</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L617"></a><tt class="py-lineno"> 617</tt> <tt class="py-line"> </tt>
-<a name="L618"></a><tt class="py-lineno"> 618</tt> <tt class="py-line"> <tt class="py-comment"># Determine ip and mac address of the host-oldSw interface</tt> </tt>
-<a name="L619"></a><tt class="py-lineno"> 619</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"px ipaddr = hintf.IP()"</tt> </tt>
-<a name="L620"></a><tt class="py-lineno"> 620</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"cmd3= "</tt><tt class="py-op">,</tt> <tt class="py-name">cmd</tt> </tt>
-<a name="L621"></a><tt class="py-lineno"> 621</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-167', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L622"></a><tt class="py-lineno"> 622</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L623"></a><tt class="py-lineno"> 623</tt> <tt class="py-line"> </tt>
-<a name="L624"></a><tt class="py-lineno"> 624</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"px macaddr = hintf.MAC()"</tt> </tt>
-<a name="L625"></a><tt class="py-lineno"> 625</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"cmd3= "</tt><tt class="py-op">,</tt> <tt class="py-name">cmd</tt> </tt>
-<a name="L626"></a><tt class="py-lineno"> 626</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-168', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L627"></a><tt class="py-lineno"> 627</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L628"></a><tt class="py-lineno"> 628</tt> <tt class="py-line"> </tt>
-<a name="L629"></a><tt class="py-lineno"> 629</tt> <tt class="py-line"> <tt class="py-comment"># Detach interface between oldSw-host</tt> </tt>
-<a name="L630"></a><tt class="py-lineno"> 630</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"px "</tt> <tt class="py-op">+</tt> <tt class="py-name">oldSw</tt> <tt class="py-op">+</tt> <tt class="py-string">".detach( sintf )"</tt> </tt>
-<a name="L631"></a><tt class="py-lineno"> 631</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"cmd4= "</tt><tt class="py-op">,</tt> <tt class="py-name">cmd</tt> </tt>
-<a name="L632"></a><tt class="py-lineno"> 632</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-169" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-169', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L633"></a><tt class="py-lineno"> 633</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L634"></a><tt class="py-lineno"> 634</tt> <tt class="py-line"> </tt>
-<a name="L635"></a><tt class="py-lineno"> 635</tt> <tt class="py-line"> <tt class="py-comment"># Add link between host-newSw</tt> </tt>
-<a name="L636"></a><tt class="py-lineno"> 636</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"py net.addLink("</tt> <tt class="py-op">+</tt> <tt class="py-name">host</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt> <tt class="py-op">+</tt> <tt class="py-name">newSw</tt> <tt class="py-op">+</tt> <tt class="py-string">")"</tt> </tt>
-<a name="L637"></a><tt class="py-lineno"> 637</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"cmd5= "</tt><tt class="py-op">,</tt> <tt class="py-name">cmd</tt> </tt>
-<a name="L638"></a><tt class="py-lineno"> 638</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-170" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-170', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L639"></a><tt class="py-lineno"> 639</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L640"></a><tt class="py-lineno"> 640</tt> <tt class="py-line"> </tt>
-<a name="L641"></a><tt class="py-lineno"> 641</tt> <tt class="py-line"> <tt class="py-comment"># Determine hostintf and Newswitchintf</tt> </tt>
-<a name="L642"></a><tt class="py-lineno"> 642</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"px hintf,sintf = "</tt> <tt class="py-op">+</tt> <tt class="py-name">host</tt> <tt class="py-op">+</tt> <tt class="py-string">".connectionsTo("</tt> <tt class="py-op">+</tt> <tt class="py-name">newSw</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L643"></a><tt class="py-lineno"> 643</tt> <tt class="py-line"> <tt class="py-string">")[0]"</tt> </tt>
-<a name="L644"></a><tt class="py-lineno"> 644</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"cmd6= "</tt><tt class="py-op">,</tt> <tt class="py-name">cmd</tt> </tt>
-<a name="L645"></a><tt class="py-lineno"> 645</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-171" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-171', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L646"></a><tt class="py-lineno"> 646</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L647"></a><tt class="py-lineno"> 647</tt> <tt class="py-line"> </tt>
-<a name="L648"></a><tt class="py-lineno"> 648</tt> <tt class="py-line"> <tt class="py-comment"># Attach interface between newSw-host</tt> </tt>
-<a name="L649"></a><tt class="py-lineno"> 649</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"px "</tt> <tt class="py-op">+</tt> <tt class="py-name">newSw</tt> <tt class="py-op">+</tt> <tt class="py-string">".attach( sintf )"</tt> </tt>
-<a name="L650"></a><tt class="py-lineno"> 650</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"cmd3= "</tt><tt class="py-op">,</tt> <tt class="py-name">cmd</tt> </tt>
-<a name="L651"></a><tt class="py-lineno"> 651</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-172" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-172', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L652"></a><tt class="py-lineno"> 652</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L653"></a><tt class="py-lineno"> 653</tt> <tt class="py-line"> </tt>
-<a name="L654"></a><tt class="py-lineno"> 654</tt> <tt class="py-line"> <tt class="py-comment"># Set ipaddress of the host-newSw interface</tt> </tt>
-<a name="L655"></a><tt class="py-lineno"> 655</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"px "</tt> <tt class="py-op">+</tt> <tt class="py-name">host</tt> <tt class="py-op">+</tt> <tt class="py-string">".setIP( ip = ipaddr, intf = hintf)"</tt> </tt>
-<a name="L656"></a><tt class="py-lineno"> 656</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"cmd7 = "</tt><tt class="py-op">,</tt> <tt class="py-name">cmd</tt> </tt>
-<a name="L657"></a><tt class="py-lineno"> 657</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-173', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L658"></a><tt class="py-lineno"> 658</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L659"></a><tt class="py-lineno"> 659</tt> <tt class="py-line"> </tt>
-<a name="L660"></a><tt class="py-lineno"> 660</tt> <tt class="py-line"> <tt class="py-comment"># Set macaddress of the host-newSw interface</tt> </tt>
-<a name="L661"></a><tt class="py-lineno"> 661</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"px "</tt> <tt class="py-op">+</tt> <tt class="py-name">host</tt> <tt class="py-op">+</tt> <tt class="py-string">".setMAC( mac = macaddr, intf = hintf)"</tt> </tt>
-<a name="L662"></a><tt class="py-lineno"> 662</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"cmd8 = "</tt><tt class="py-op">,</tt> <tt class="py-name">cmd</tt> </tt>
-<a name="L663"></a><tt class="py-lineno"> 663</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-174" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-174', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L664"></a><tt class="py-lineno"> 664</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L665"></a><tt class="py-lineno"> 665</tt> <tt class="py-line"> </tt>
-<a name="L666"></a><tt class="py-lineno"> 666</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"net"</tt> </tt>
-<a name="L667"></a><tt class="py-lineno"> 667</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"cmd9 = "</tt><tt class="py-op">,</tt> <tt class="py-name">cmd</tt> </tt>
-<a name="L668"></a><tt class="py-lineno"> 668</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-175" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-175', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L669"></a><tt class="py-lineno"> 669</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L670"></a><tt class="py-lineno"> 670</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"output = "</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L671"></a><tt class="py-lineno"> 671</tt> <tt class="py-line"> </tt>
-<a name="L672"></a><tt class="py-lineno"> 672</tt> <tt class="py-line"> <tt class="py-comment"># Determine ipaddress of the host-newSw interface</tt> </tt>
-<a name="L673"></a><tt class="py-lineno"> 673</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt> <tt class="py-op">+</tt> <tt class="py-string">" ifconfig"</tt> </tt>
-<a name="L674"></a><tt class="py-lineno"> 674</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"cmd10= "</tt><tt class="py-op">,</tt> <tt class="py-name">cmd</tt> </tt>
-<a name="L675"></a><tt class="py-lineno"> 675</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-176" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-176', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L676"></a><tt class="py-lineno"> 676</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L677"></a><tt class="py-lineno"> 677</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"ifconfig o/p = "</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L678"></a><tt class="py-lineno"> 678</tt> <tt class="py-line"> </tt>
-<a name="L679"></a><tt class="py-lineno"> 679</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L680"></a><tt class="py-lineno"> 680</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L681"></a><tt class="py-lineno"> 681</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-177" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-177', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-178" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-178', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L682"></a><tt class="py-lineno"> 682</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-179" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-179', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-180" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-180', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L683"></a><tt class="py-lineno"> 683</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L684"></a><tt class="py-lineno"> 684</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.changeIP"></a><div id="MininetCliDriver.changeIP-def"><a name="L685"></a><tt class="py-lineno"> 685</tt> <a class="py-toggle" href="#" id="MininetCliDriver.changeIP-toggle" onclick="return toggle('MininetCliDriver.changeIP');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#changeIP">changeIP</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">host</tt><tt class="py-op">,</tt> <tt class="py-param">intf</tt><tt class="py-op">,</tt> <tt class="py-param">newIP</tt><tt class="py-op">,</tt> <tt class="py-param">newNetmask</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.changeIP-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.changeIP-expanded"><a name="L686"></a><tt class="py-lineno"> 686</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L687"></a><tt class="py-lineno"> 687</tt> <tt class="py-line"><tt class="py-docstring"> Changes the ip address of a host on the fly</tt> </tt>
-<a name="L688"></a><tt class="py-lineno"> 688</tt> <tt class="py-line"><tt class="py-docstring"> Ex: h2 ifconfig h2-eth0 10.0.1.2 netmask 255.255.255.0"""</tt> </tt>
-<a name="L689"></a><tt class="py-lineno"> 689</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L690"></a><tt class="py-lineno"> 690</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L691"></a><tt class="py-lineno"> 691</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt> <tt class="py-op">+</tt> <tt class="py-string">" ifconfig "</tt> <tt class="py-op">+</tt> <tt class="py-name">intf</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L692"></a><tt class="py-lineno"> 692</tt> <tt class="py-line"> <tt class="py-name">newIP</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-string">'netmask'</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">newNetmask</tt> </tt>
-<a name="L693"></a><tt class="py-lineno"> 693</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-181" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-181', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L694"></a><tt class="py-lineno"> 694</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L695"></a><tt class="py-lineno"> 695</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L696"></a><tt class="py-lineno"> 696</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-182" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-182', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"response = "</tt> <tt class="py-op">+</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L697"></a><tt class="py-lineno"> 697</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-183" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-183', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L698"></a><tt class="py-lineno"> 698</tt> <tt class="py-line"> <tt class="py-string">"Ip of host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L699"></a><tt class="py-lineno"> 699</tt> <tt class="py-line"> <tt class="py-name">host</tt> <tt class="py-op">+</tt> </tt>
-<a name="L700"></a><tt class="py-lineno"> 700</tt> <tt class="py-line"> <tt class="py-string">" changed to new IP "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L701"></a><tt class="py-lineno"> 701</tt> <tt class="py-line"> <tt class="py-name">newIP</tt> <tt class="py-op">)</tt> </tt>
-<a name="L702"></a><tt class="py-lineno"> 702</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L703"></a><tt class="py-lineno"> 703</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L704"></a><tt class="py-lineno"> 704</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-184" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-184', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-185" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-185', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L705"></a><tt class="py-lineno"> 705</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-186" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-186', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-187" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-187', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L706"></a><tt class="py-lineno"> 706</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L707"></a><tt class="py-lineno"> 707</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.changeDefaultGateway"></a><div id="MininetCliDriver.changeDefaultGateway-def"><a name="L708"></a><tt class="py-lineno"> 708</tt> <a class="py-toggle" href="#" id="MininetCliDriver.changeDefaultGateway-toggle" onclick="return toggle('MininetCliDriver.changeDefaultGateway');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#changeDefaultGateway">changeDefaultGateway</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">host</tt><tt class="py-op">,</tt> <tt class="py-param">newGW</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.changeDefaultGateway-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.changeDefaultGateway-expanded"><a name="L709"></a><tt class="py-lineno"> 709</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L710"></a><tt class="py-lineno"> 710</tt> <tt class="py-line"><tt class="py-docstring"> Changes the default gateway of a host</tt> </tt>
-<a name="L711"></a><tt class="py-lineno"> 711</tt> <tt class="py-line"><tt class="py-docstring"> Ex: h1 route add default gw 10.0.1.2"""</tt> </tt>
-<a name="L712"></a><tt class="py-lineno"> 712</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L713"></a><tt class="py-lineno"> 713</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L714"></a><tt class="py-lineno"> 714</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt> <tt class="py-op">+</tt> <tt class="py-string">" route add default gw "</tt> <tt class="py-op">+</tt> <tt class="py-name">newGW</tt> </tt>
-<a name="L715"></a><tt class="py-lineno"> 715</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-188" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-188', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L716"></a><tt class="py-lineno"> 716</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L717"></a><tt class="py-lineno"> 717</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L718"></a><tt class="py-lineno"> 718</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-189" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-189', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"response = "</tt> <tt class="py-op">+</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L719"></a><tt class="py-lineno"> 719</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-190" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-190', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L720"></a><tt class="py-lineno"> 720</tt> <tt class="py-line"> <tt class="py-string">"Default gateway of host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L721"></a><tt class="py-lineno"> 721</tt> <tt class="py-line"> <tt class="py-name">host</tt> <tt class="py-op">+</tt> </tt>
-<a name="L722"></a><tt class="py-lineno"> 722</tt> <tt class="py-line"> <tt class="py-string">" changed to "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L723"></a><tt class="py-lineno"> 723</tt> <tt class="py-line"> <tt class="py-name">newGW</tt> <tt class="py-op">)</tt> </tt>
-<a name="L724"></a><tt class="py-lineno"> 724</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L725"></a><tt class="py-lineno"> 725</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L726"></a><tt class="py-lineno"> 726</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-191" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-191', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-192" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-192', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L727"></a><tt class="py-lineno"> 727</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-193" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-193', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-194" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-194', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L728"></a><tt class="py-lineno"> 728</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L729"></a><tt class="py-lineno"> 729</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.addStaticMACAddress"></a><div id="MininetCliDriver.addStaticMACAddress-def"><a name="L730"></a><tt class="py-lineno"> 730</tt> <a class="py-toggle" href="#" id="MininetCliDriver.addStaticMACAddress-toggle" onclick="return toggle('MininetCliDriver.addStaticMACAddress');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addStaticMACAddress">addStaticMACAddress</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">host</tt><tt class="py-op">,</tt> <tt class="py-param">GW</tt><tt class="py-op">,</tt> <tt class="py-param">macaddr</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.addStaticMACAddress-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.addStaticMACAddress-expanded"><a name="L731"></a><tt class="py-lineno"> 731</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L732"></a><tt class="py-lineno"> 732</tt> <tt class="py-line"><tt class="py-docstring"> Changes the mac address of a gateway host"""</tt> </tt>
-<a name="L733"></a><tt class="py-lineno"> 733</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L734"></a><tt class="py-lineno"> 734</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L735"></a><tt class="py-lineno"> 735</tt> <tt class="py-line"> <tt class="py-comment"># h1 arp -s 10.0.1.254 00:00:00:00:11:11</tt> </tt>
-<a name="L736"></a><tt class="py-lineno"> 736</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt> <tt class="py-op">+</tt> <tt class="py-string">" arp -s "</tt> <tt class="py-op">+</tt> <tt class="py-name">GW</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">macaddr</tt> </tt>
-<a name="L737"></a><tt class="py-lineno"> 737</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-195" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-195', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L738"></a><tt class="py-lineno"> 738</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L739"></a><tt class="py-lineno"> 739</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L740"></a><tt class="py-lineno"> 740</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-196" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-196', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"response = "</tt> <tt class="py-op">+</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L741"></a><tt class="py-lineno"> 741</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-197" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-197', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L742"></a><tt class="py-lineno"> 742</tt> <tt class="py-line"> <tt class="py-string">"Mac address of gateway "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L743"></a><tt class="py-lineno"> 743</tt> <tt class="py-line"> <tt class="py-name">GW</tt> <tt class="py-op">+</tt> </tt>
-<a name="L744"></a><tt class="py-lineno"> 744</tt> <tt class="py-line"> <tt class="py-string">" changed to "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L745"></a><tt class="py-lineno"> 745</tt> <tt class="py-line"> <tt class="py-name">macaddr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L746"></a><tt class="py-lineno"> 746</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L747"></a><tt class="py-lineno"> 747</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L748"></a><tt class="py-lineno"> 748</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-198" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-198', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-199" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-199', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L749"></a><tt class="py-lineno"> 749</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-200" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-200', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-201" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-201', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L750"></a><tt class="py-lineno"> 750</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L751"></a><tt class="py-lineno"> 751</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.verifyStaticGWandMAC"></a><div id="MininetCliDriver.verifyStaticGWandMAC-def"><a name="L752"></a><tt class="py-lineno"> 752</tt> <a class="py-toggle" href="#" id="MininetCliDriver.verifyStaticGWandMAC-toggle" onclick="return toggle('MininetCliDriver.verifyStaticGWandMAC');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#verifyStaticGWandMAC">verifyStaticGWandMAC</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">host</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.verifyStaticGWandMAC-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.verifyStaticGWandMAC-expanded"><a name="L753"></a><tt class="py-lineno"> 753</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L754"></a><tt class="py-lineno"> 754</tt> <tt class="py-line"><tt class="py-docstring"> Verify if the static gateway and mac address assignment"""</tt> </tt>
-<a name="L755"></a><tt class="py-lineno"> 755</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L756"></a><tt class="py-lineno"> 756</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L757"></a><tt class="py-lineno"> 757</tt> <tt class="py-line"> <tt class="py-comment"># h1 arp -an</tt> </tt>
-<a name="L758"></a><tt class="py-lineno"> 758</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt> <tt class="py-op">+</tt> <tt class="py-string">" arp -an "</tt> </tt>
-<a name="L759"></a><tt class="py-lineno"> 759</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-202" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-202', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L760"></a><tt class="py-lineno"> 760</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L761"></a><tt class="py-lineno"> 761</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L762"></a><tt class="py-lineno"> 762</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-203" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-203', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">+</tt> <tt class="py-string">" arp -an = "</tt> <tt class="py-op">+</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L763"></a><tt class="py-lineno"> 763</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L764"></a><tt class="py-lineno"> 764</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L765"></a><tt class="py-lineno"> 765</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-204" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-204', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-205" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-205', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L766"></a><tt class="py-lineno"> 766</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-206" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-206', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-207" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-207', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L767"></a><tt class="py-lineno"> 767</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L768"></a><tt class="py-lineno"> 768</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.getMacAddress"></a><div id="MininetCliDriver.getMacAddress-def"><a name="L769"></a><tt class="py-lineno"> 769</tt> <a class="py-toggle" href="#" id="MininetCliDriver.getMacAddress-toggle" onclick="return toggle('MininetCliDriver.getMacAddress');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getMacAddress">getMacAddress</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">host</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.getMacAddress-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.getMacAddress-expanded"><a name="L770"></a><tt class="py-lineno"> 770</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L771"></a><tt class="py-lineno"> 771</tt> <tt class="py-line"><tt class="py-docstring"> Verifies the host's ip configured or not."""</tt> </tt>
-<a name="L772"></a><tt class="py-lineno"> 772</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L773"></a><tt class="py-lineno"> 773</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L774"></a><tt class="py-lineno"> 774</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-208" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-208', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L775"></a><tt class="py-lineno"> 775</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">host</tt> <tt class="py-op">+</tt> </tt>
-<a name="L776"></a><tt class="py-lineno"> 776</tt> <tt class="py-line"> <tt class="py-string">" ifconfig"</tt><tt class="py-op">,</tt> </tt>
-<a name="L777"></a><tt class="py-lineno"> 777</tt> <tt class="py-line"> <tt id="link-209" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-209', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L778"></a><tt class="py-lineno"> 778</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L779"></a><tt class="py-lineno"> 779</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L780"></a><tt class="py-lineno"> 780</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-210" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-210', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-211" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-211', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L781"></a><tt class="py-lineno"> 781</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-212" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-212', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-213" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-213', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L782"></a><tt class="py-lineno"> 782</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-214" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-214', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L783"></a><tt class="py-lineno"> 783</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-215" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-215', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L784"></a><tt class="py-lineno"> 784</tt> <tt class="py-line"> </tt>
-<a name="L785"></a><tt class="py-lineno"> 785</tt> <tt class="py-line"> <tt class="py-name">pattern</tt> <tt class="py-op">=</tt> <tt class="py-string">r'HWaddr\s([0-9A-F]{2}[:-]){5}([0-9A-F]{2})'</tt> </tt>
-<a name="L786"></a><tt class="py-lineno"> 786</tt> <tt class="py-line"> <tt class="py-name">macAddressSearch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">pattern</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt><tt class="py-op">,</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">I</tt> <tt class="py-op">)</tt> </tt>
-<a name="L787"></a><tt class="py-lineno"> 787</tt> <tt class="py-line"> <tt class="py-name">macAddress</tt> <tt class="py-op">=</tt> <tt class="py-name">macAddressSearch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">" "</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L788"></a><tt class="py-lineno"> 788</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-216" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-216', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L789"></a><tt class="py-lineno"> 789</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L790"></a><tt class="py-lineno"> 790</tt> <tt class="py-line"> <tt class="py-string">": Mac-Address of Host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L791"></a><tt class="py-lineno"> 791</tt> <tt class="py-line"> <tt class="py-name">host</tt> <tt class="py-op">+</tt> </tt>
-<a name="L792"></a><tt class="py-lineno"> 792</tt> <tt class="py-line"> <tt class="py-string">" is "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L793"></a><tt class="py-lineno"> 793</tt> <tt class="py-line"> <tt class="py-name">macAddress</tt> <tt class="py-op">)</tt> </tt>
-<a name="L794"></a><tt class="py-lineno"> 794</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">macAddress</tt> </tt>
-<a name="L795"></a><tt class="py-lineno"> 795</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L796"></a><tt class="py-lineno"> 796</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-217" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-217', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-218" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-218', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L797"></a><tt class="py-lineno"> 797</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.getInterfaceMACAddress"></a><div id="MininetCliDriver.getInterfaceMACAddress-def"><a name="L798"></a><tt class="py-lineno"> 798</tt> <a class="py-toggle" href="#" id="MininetCliDriver.getInterfaceMACAddress-toggle" onclick="return toggle('MininetCliDriver.getInterfaceMACAddress');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getInterfaceMACAddress">getInterfaceMACAddress</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">host</tt><tt class="py-op">,</tt> <tt class="py-param">interface</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.getInterfaceMACAddress-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.getInterfaceMACAddress-expanded"><a name="L799"></a><tt class="py-lineno"> 799</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L800"></a><tt class="py-lineno"> 800</tt> <tt class="py-line"><tt class="py-docstring"> Return the IP address of the interface on the given host"""</tt> </tt>
-<a name="L801"></a><tt class="py-lineno"> 801</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L802"></a><tt class="py-lineno"> 802</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L803"></a><tt class="py-lineno"> 803</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-219" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-219', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">host</tt> <tt class="py-op">+</tt> <tt class="py-string">" ifconfig "</tt> <tt class="py-op">+</tt> <tt class="py-name">interface</tt><tt class="py-op">,</tt> </tt>
-<a name="L804"></a><tt class="py-lineno"> 804</tt> <tt class="py-line"> <tt id="link-220" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-220', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L805"></a><tt class="py-lineno"> 805</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L806"></a><tt class="py-lineno"> 806</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-221" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-221', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-222" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-222', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L807"></a><tt class="py-lineno"> 807</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-223" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-223', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-224" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-224', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L808"></a><tt class="py-lineno"> 808</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-225" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-225', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L809"></a><tt class="py-lineno"> 809</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-226" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-226', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L810"></a><tt class="py-lineno"> 810</tt> <tt class="py-line"> </tt>
-<a name="L811"></a><tt class="py-lineno"> 811</tt> <tt class="py-line"> <tt class="py-name">pattern</tt> <tt class="py-op">=</tt> <tt class="py-string">r'HWaddr\s([0-9A-F]{2}[:-]){5}([0-9A-F]{2})'</tt> </tt>
-<a name="L812"></a><tt class="py-lineno"> 812</tt> <tt class="py-line"> <tt class="py-name">macAddressSearch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">pattern</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt><tt class="py-op">,</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">I</tt> <tt class="py-op">)</tt> </tt>
-<a name="L813"></a><tt class="py-lineno"> 813</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">macAddressSearch</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L814"></a><tt class="py-lineno"> 814</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-227" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-227', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"No mac address found in %s"</tt> <tt class="py-op">%</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L815"></a><tt class="py-lineno"> 815</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L816"></a><tt class="py-lineno"> 816</tt> <tt class="py-line"> <tt class="py-name">macAddress</tt> <tt class="py-op">=</tt> <tt class="py-name">macAddressSearch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">" "</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L817"></a><tt class="py-lineno"> 817</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-228" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-228', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L818"></a><tt class="py-lineno"> 818</tt> <tt class="py-line"> <tt class="py-string">"Mac-Address of "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L819"></a><tt class="py-lineno"> 819</tt> <tt class="py-line"> <tt class="py-name">host</tt> <tt class="py-op">+</tt> </tt>
-<a name="L820"></a><tt class="py-lineno"> 820</tt> <tt class="py-line"> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L821"></a><tt class="py-lineno"> 821</tt> <tt class="py-line"> <tt class="py-name">interface</tt> <tt class="py-op">+</tt> </tt>
-<a name="L822"></a><tt class="py-lineno"> 822</tt> <tt class="py-line"> <tt class="py-string">" is "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L823"></a><tt class="py-lineno"> 823</tt> <tt class="py-line"> <tt class="py-name">macAddress</tt> <tt class="py-op">)</tt> </tt>
-<a name="L824"></a><tt class="py-lineno"> 824</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">macAddress</tt> </tt>
-<a name="L825"></a><tt class="py-lineno"> 825</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L826"></a><tt class="py-lineno"> 826</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-229" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-229', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-230" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-230', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L827"></a><tt class="py-lineno"> 827</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.getIPAddress"></a><div id="MininetCliDriver.getIPAddress-def"><a name="L828"></a><tt class="py-lineno"> 828</tt> <a class="py-toggle" href="#" id="MininetCliDriver.getIPAddress-toggle" onclick="return toggle('MininetCliDriver.getIPAddress');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getIPAddress">getIPAddress</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">host</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.getIPAddress-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.getIPAddress-expanded"><a name="L829"></a><tt class="py-lineno"> 829</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L830"></a><tt class="py-lineno"> 830</tt> <tt class="py-line"><tt class="py-docstring"> Verifies the host's ip configured or not."""</tt> </tt>
-<a name="L831"></a><tt class="py-lineno"> 831</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L832"></a><tt class="py-lineno"> 832</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L833"></a><tt class="py-lineno"> 833</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-231" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-231', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L834"></a><tt class="py-lineno"> 834</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">host</tt> <tt class="py-op">+</tt> </tt>
-<a name="L835"></a><tt class="py-lineno"> 835</tt> <tt class="py-line"> <tt class="py-string">" ifconfig"</tt><tt class="py-op">,</tt> </tt>
-<a name="L836"></a><tt class="py-lineno"> 836</tt> <tt class="py-line"> <tt id="link-232" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-232', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L837"></a><tt class="py-lineno"> 837</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L838"></a><tt class="py-lineno"> 838</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L839"></a><tt class="py-lineno"> 839</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-233" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-233', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-234" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-234', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L840"></a><tt class="py-lineno"> 840</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-235" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-235', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-236" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-236', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L841"></a><tt class="py-lineno"> 841</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-237" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-237', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L842"></a><tt class="py-lineno"> 842</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-238" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-238', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L843"></a><tt class="py-lineno"> 843</tt> <tt class="py-line"> </tt>
-<a name="L844"></a><tt class="py-lineno"> 844</tt> <tt class="py-line"> <tt class="py-name">pattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"inet\saddr:(\d+\.\d+\.\d+\.\d+)"</tt> </tt>
-<a name="L845"></a><tt class="py-lineno"> 845</tt> <tt class="py-line"> <tt class="py-name">ipAddressSearch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">pattern</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L846"></a><tt class="py-lineno"> 846</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-239" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-239', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L847"></a><tt class="py-lineno"> 847</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L848"></a><tt class="py-lineno"> 848</tt> <tt class="py-line"> <tt class="py-string">": IP-Address of Host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L849"></a><tt class="py-lineno"> 849</tt> <tt class="py-line"> <tt class="py-name">host</tt> <tt class="py-op">+</tt> </tt>
-<a name="L850"></a><tt class="py-lineno"> 850</tt> <tt class="py-line"> <tt class="py-string">" is "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L851"></a><tt class="py-lineno"> 851</tt> <tt class="py-line"> <tt class="py-name">ipAddressSearch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L852"></a><tt class="py-lineno"> 852</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">ipAddressSearch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L853"></a><tt class="py-lineno"> 853</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L854"></a><tt class="py-lineno"> 854</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-240" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-240', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-241" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-241', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L855"></a><tt class="py-lineno"> 855</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.getSwitchDPID"></a><div id="MininetCliDriver.getSwitchDPID-def"><a name="L856"></a><tt class="py-lineno"> 856</tt> <a class="py-toggle" href="#" id="MininetCliDriver.getSwitchDPID-toggle" onclick="return toggle('MininetCliDriver.getSwitchDPID');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitchDPID">getSwitchDPID</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">switch</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.getSwitchDPID-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.getSwitchDPID-expanded"><a name="L857"></a><tt class="py-lineno"> 857</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L858"></a><tt class="py-lineno"> 858</tt> <tt class="py-line"><tt class="py-docstring"> return the datapath ID of the switch"""</tt> </tt>
-<a name="L859"></a><tt class="py-lineno"> 859</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L860"></a><tt class="py-lineno"> 860</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"py %s.dpid"</tt> <tt class="py-op">%</tt> <tt class="py-name">switch</tt> </tt>
-<a name="L861"></a><tt class="py-lineno"> 861</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L862"></a><tt class="py-lineno"> 862</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-242" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-242', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L863"></a><tt class="py-lineno"> 863</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">cmd</tt><tt class="py-op">,</tt> </tt>
-<a name="L864"></a><tt class="py-lineno"> 864</tt> <tt class="py-line"> <tt id="link-243" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-243', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L865"></a><tt class="py-lineno"> 865</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L866"></a><tt class="py-lineno"> 866</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L867"></a><tt class="py-lineno"> 867</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-244" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-244', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-245" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-245', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L868"></a><tt class="py-lineno"> 868</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-246" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-246', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-247" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-247', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L869"></a><tt class="py-lineno"> 869</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-248" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-248', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L870"></a><tt class="py-lineno"> 870</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-249" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-249', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L871"></a><tt class="py-lineno"> 871</tt> <tt class="py-line"> <tt class="py-name">pattern</tt> <tt class="py-op">=</tt> <tt class="py-string">r'^(?P<dpid>\w)+'</tt> </tt>
-<a name="L872"></a><tt class="py-lineno"> 872</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">pattern</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt><tt class="py-op">,</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">MULTILINE</tt> <tt class="py-op">)</tt> </tt>
-<a name="L873"></a><tt class="py-lineno"> 873</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">result</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L874"></a><tt class="py-lineno"> 874</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-250" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-250', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L875"></a><tt class="py-lineno"> 875</tt> <tt class="py-line"> <tt class="py-string">"Couldn't find DPID for switch %s, found: %s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L876"></a><tt class="py-lineno"> 876</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L877"></a><tt class="py-lineno"> 877</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L878"></a><tt class="py-lineno"> 878</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">result</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L879"></a><tt class="py-lineno"> 879</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L880"></a><tt class="py-lineno"> 880</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-251" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-251', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-252" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-252', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L881"></a><tt class="py-lineno"> 881</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.getDPID"></a><div id="MininetCliDriver.getDPID-def"><a name="L882"></a><tt class="py-lineno"> 882</tt> <a class="py-toggle" href="#" id="MininetCliDriver.getDPID-toggle" onclick="return toggle('MininetCliDriver.getDPID');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getDPID">getDPID</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">switch</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.getDPID-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.getDPID-expanded"><a name="L883"></a><tt class="py-lineno"> 883</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L884"></a><tt class="py-lineno"> 884</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-253" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-253', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L885"></a><tt class="py-lineno"> 885</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L886"></a><tt class="py-lineno"> 886</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"py %s.dpid"</tt> <tt class="py-op">%</tt> <tt class="py-name">switch</tt> </tt>
-<a name="L887"></a><tt class="py-lineno"> 887</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L888"></a><tt class="py-lineno"> 888</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-254" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-254', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L889"></a><tt class="py-lineno"> 889</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">cmd</tt><tt class="py-op">,</tt> </tt>
-<a name="L890"></a><tt class="py-lineno"> 890</tt> <tt class="py-line"> <tt id="link-255" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-255', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L891"></a><tt class="py-lineno"> 891</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L892"></a><tt class="py-lineno"> 892</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L893"></a><tt class="py-lineno"> 893</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L894"></a><tt class="py-lineno"> 894</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-<a name="L895"></a><tt class="py-lineno"> 895</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L896"></a><tt class="py-lineno"> 896</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-256" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-256', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-257" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-257', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L897"></a><tt class="py-lineno"> 897</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-258" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-258', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-259" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-259', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L898"></a><tt class="py-lineno"> 898</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-260" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-260', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L899"></a><tt class="py-lineno"> 899</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-261" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-261', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L900"></a><tt class="py-lineno"> 900</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.getInterfaces"></a><div id="MininetCliDriver.getInterfaces-def"><a name="L901"></a><tt class="py-lineno"> 901</tt> <a class="py-toggle" href="#" id="MininetCliDriver.getInterfaces-toggle" onclick="return toggle('MininetCliDriver.getInterfaces');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getInterfaces">getInterfaces</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">node</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.getInterfaces-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.getInterfaces-expanded"><a name="L902"></a><tt class="py-lineno"> 902</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L903"></a><tt class="py-lineno"> 903</tt> <tt class="py-line"><tt class="py-docstring"> return information dict about interfaces connected to the node"""</tt> </tt>
-<a name="L904"></a><tt class="py-lineno"> 904</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L905"></a><tt class="py-lineno"> 905</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">'py "\\n".join(["name=%s,mac=%s,ip=%s,enabled=%s"'</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L906"></a><tt class="py-lineno"> 906</tt> <tt class="py-line"> <tt class="py-string">' % (i.name, i.MAC(), i.IP(), i.isUp())'</tt> </tt>
-<a name="L907"></a><tt class="py-lineno"> 907</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">' for i in %s.intfs.values()])'</tt> <tt class="py-op">%</tt> <tt class="py-name">node</tt> </tt>
-<a name="L908"></a><tt class="py-lineno"> 908</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L909"></a><tt class="py-lineno"> 909</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-262" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-262', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L910"></a><tt class="py-lineno"> 910</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">cmd</tt><tt class="py-op">,</tt> </tt>
-<a name="L911"></a><tt class="py-lineno"> 911</tt> <tt class="py-line"> <tt id="link-263" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-263', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L912"></a><tt class="py-lineno"> 912</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L913"></a><tt class="py-lineno"> 913</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L914"></a><tt class="py-lineno"> 914</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-264" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-264', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-265" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-265', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L915"></a><tt class="py-lineno"> 915</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-266" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-266', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-267" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-267', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L916"></a><tt class="py-lineno"> 916</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-268" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-268', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L917"></a><tt class="py-lineno"> 917</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-269" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-269', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L918"></a><tt class="py-lineno"> 918</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-<a name="L919"></a><tt class="py-lineno"> 919</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L920"></a><tt class="py-lineno"> 920</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-270" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-270', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-271" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-271', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Connection failed to the node"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L921"></a><tt class="py-lineno"> 921</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.dump"></a><div id="MininetCliDriver.dump-def"><a name="L922"></a><tt class="py-lineno"> 922</tt> <a class="py-toggle" href="#" id="MininetCliDriver.dump-toggle" onclick="return toggle('MininetCliDriver.dump');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#dump">dump</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.dump-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.dump-expanded"><a name="L923"></a><tt class="py-lineno"> 923</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-272" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-272', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Dump node info"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L924"></a><tt class="py-lineno"> 924</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L925"></a><tt class="py-lineno"> 925</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-273" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-273', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L926"></a><tt class="py-lineno"> 926</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">'dump'</tt><tt class="py-op">,</tt> </tt>
-<a name="L927"></a><tt class="py-lineno"> 927</tt> <tt class="py-line"> <tt id="link-274" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-274', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">'mininet>'</tt><tt class="py-op">,</tt> </tt>
-<a name="L928"></a><tt class="py-lineno"> 928</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L929"></a><tt class="py-lineno"> 929</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L930"></a><tt class="py-lineno"> 930</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-275" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-275', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-276" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-276', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L931"></a><tt class="py-lineno"> 931</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-277" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-277', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-278" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-278', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L932"></a><tt class="py-lineno"> 932</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-279" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-279', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L933"></a><tt class="py-lineno"> 933</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-280" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-280', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L934"></a><tt class="py-lineno"> 934</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-</div><a name="L935"></a><tt class="py-lineno"> 935</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.intfs"></a><div id="MininetCliDriver.intfs-def"><a name="L936"></a><tt class="py-lineno"> 936</tt> <a class="py-toggle" href="#" id="MininetCliDriver.intfs-toggle" onclick="return toggle('MininetCliDriver.intfs');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#intfs">intfs</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.intfs-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.intfs-expanded"><a name="L937"></a><tt class="py-lineno"> 937</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-281" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-281', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": List interfaces"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L938"></a><tt class="py-lineno"> 938</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L939"></a><tt class="py-lineno"> 939</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-282" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-282', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L940"></a><tt class="py-lineno"> 940</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">'intfs'</tt><tt class="py-op">,</tt> </tt>
-<a name="L941"></a><tt class="py-lineno"> 941</tt> <tt class="py-line"> <tt id="link-283" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-283', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">'mininet>'</tt><tt class="py-op">,</tt> </tt>
-<a name="L942"></a><tt class="py-lineno"> 942</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L943"></a><tt class="py-lineno"> 943</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L944"></a><tt class="py-lineno"> 944</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-284" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-284', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-285" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-285', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L945"></a><tt class="py-lineno"> 945</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-286" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-286', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-287" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-287', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L946"></a><tt class="py-lineno"> 946</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-288" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-288', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L947"></a><tt class="py-lineno"> 947</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-289" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-289', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L948"></a><tt class="py-lineno"> 948</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-</div><a name="L949"></a><tt class="py-lineno"> 949</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.net"></a><div id="MininetCliDriver.net-def"><a name="L950"></a><tt class="py-lineno"> 950</tt> <a class="py-toggle" href="#" id="MininetCliDriver.net-toggle" onclick="return toggle('MininetCliDriver.net');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#net">net</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.net-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.net-expanded"><a name="L951"></a><tt class="py-lineno"> 951</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-290" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-290', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": List network connections"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L952"></a><tt class="py-lineno"> 952</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L953"></a><tt class="py-lineno"> 953</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-291" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-291', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">'net'</tt><tt class="py-op">,</tt> <tt id="link-292" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-292', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">'mininet>'</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L954"></a><tt class="py-lineno"> 954</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L955"></a><tt class="py-lineno"> 955</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-293" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-293', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-294" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-294', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L956"></a><tt class="py-lineno"> 956</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-295" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-295', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-296" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-296', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L957"></a><tt class="py-lineno"> 957</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-297" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-297', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L958"></a><tt class="py-lineno"> 958</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-298" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-298', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L959"></a><tt class="py-lineno"> 959</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-</div><a name="L960"></a><tt class="py-lineno"> 960</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.links"></a><div id="MininetCliDriver.links-def"><a name="L961"></a><tt class="py-lineno"> 961</tt> <a class="py-toggle" href="#" id="MininetCliDriver.links-toggle" onclick="return toggle('MininetCliDriver.links');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#links">links</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.links-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.links-expanded"><a name="L962"></a><tt class="py-lineno"> 962</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-299" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-299', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": List network links"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L963"></a><tt class="py-lineno"> 963</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L964"></a><tt class="py-lineno"> 964</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-300" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-300', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">'links'</tt><tt class="py-op">,</tt> <tt id="link-301" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-301', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">'mininet>'</tt><tt class="py-op">,</tt> </tt>
-<a name="L965"></a><tt class="py-lineno"> 965</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L966"></a><tt class="py-lineno"> 966</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L967"></a><tt class="py-lineno"> 967</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-302" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-302', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-303" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-303', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L968"></a><tt class="py-lineno"> 968</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-304" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-304', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-305" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-305', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L969"></a><tt class="py-lineno"> 969</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-306" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-306', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L970"></a><tt class="py-lineno"> 970</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-307" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-307', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L971"></a><tt class="py-lineno"> 971</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-</div><a name="L972"></a><tt class="py-lineno"> 972</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.iperftcpAll"></a><div id="MininetCliDriver.iperftcpAll-def"><a name="L973"></a><tt class="py-lineno"> 973</tt> <a class="py-toggle" href="#" id="MininetCliDriver.iperftcpAll-toggle" onclick="return toggle('MininetCliDriver.iperftcpAll');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperftcpAll">iperftcpAll</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hosts</tt><tt class="py-op">,</tt> <tt class="py-param">timeout</tt><tt class="py-op">=</tt><tt class="py-number">6</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.iperftcpAll-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.iperftcpAll-expanded"><a name="L974"></a><tt class="py-lineno"> 974</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L975"></a><tt class="py-lineno"> 975</tt> <tt class="py-line"><tt class="py-docstring"> Runs the iperftcp function with a given set of hosts and specified timeout.</tt> </tt>
-<a name="L976"></a><tt class="py-lineno"> 976</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L977"></a><tt class="py-lineno"> 977</tt> <tt class="py-line"><tt class="py-docstring"> @parm:</tt> </tt>
-<a name="L978"></a><tt class="py-lineno"> 978</tt> <tt class="py-line"><tt class="py-docstring"> timeout: The defualt timeout is 6 sec to allow enough time for a successful test to complete,</tt> </tt>
-<a name="L979"></a><tt class="py-lineno"> 979</tt> <tt class="py-line"><tt class="py-docstring"> and short enough to stop an unsuccessful test from quiting and cleaning up mininet.</tt> </tt>
-<a name="L980"></a><tt class="py-lineno"> 980</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L981"></a><tt class="py-lineno"> 981</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host1</tt> <tt class="py-keyword">in</tt> <tt id="link-308" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#hosts,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#hosts"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-308', 'hosts', 'link-308');">hosts</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L982"></a><tt class="py-lineno"> 982</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host2</tt> <tt class="py-keyword">in</tt> <tt id="link-309" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-309', 'hosts', 'link-308');">hosts</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L983"></a><tt class="py-lineno"> 983</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">host1</tt> <tt class="py-op">!=</tt> <tt class="py-name">host2</tt><tt class="py-op">:</tt> </tt>
-<a name="L984"></a><tt class="py-lineno"> 984</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-310" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.iperftcp()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperftcp"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.iperftcp" class="py-name" href="#" onclick="return doclink('link-310', 'iperftcp', 'link-310');">iperftcp</a></tt><tt class="py-op">(</tt><tt class="py-name">host1</tt><tt class="py-op">,</tt> <tt class="py-name">host2</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L985"></a><tt class="py-lineno"> 985</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-311" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-311', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-312" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-312', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": iperftcp test failed for "</tt> <tt class="py-op">+</tt> <tt class="py-name">host1</tt> <tt class="py-op">+</tt> <tt class="py-string">" and "</tt> <tt class="py-op">+</tt> <tt class="py-name">host2</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L986"></a><tt class="py-lineno"> 986</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.iperftcp"></a><div id="MininetCliDriver.iperftcp-def"><a name="L987"></a><tt class="py-lineno"> 987</tt> <a class="py-toggle" href="#" id="MininetCliDriver.iperftcp-toggle" onclick="return toggle('MininetCliDriver.iperftcp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperftcp">iperftcp</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">host1</tt><tt class="py-op">=</tt><tt class="py-string">"h1"</tt><tt class="py-op">,</tt> <tt class="py-param">host2</tt><tt class="py-op">=</tt><tt class="py-string">"h2"</tt><tt class="py-op">,</tt> <tt class="py-param">timeout</tt><tt class="py-op">=</tt><tt class="py-number">6</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.iperftcp-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.iperftcp-expanded"><a name="L988"></a><tt class="py-lineno"> 988</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L989"></a><tt class="py-lineno"> 989</tt> <tt class="py-line"><tt class="py-docstring"> Creates an iperf TCP test between two hosts. Returns main.TRUE if test results</tt> </tt>
-<a name="L990"></a><tt class="py-lineno"> 990</tt> <tt class="py-line"><tt class="py-docstring"> are valid.</tt> </tt>
-<a name="L991"></a><tt class="py-lineno"> 991</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L992"></a><tt class="py-lineno"> 992</tt> <tt class="py-line"><tt class="py-docstring"> @parm:</tt> </tt>
-<a name="L993"></a><tt class="py-lineno"> 993</tt> <tt class="py-line"><tt class="py-docstring"> timeout: The defualt timeout is 6 sec to allow enough time for a successful test to complete,</tt> </tt>
-<a name="L994"></a><tt class="py-lineno"> 994</tt> <tt class="py-line"><tt class="py-docstring"> and short enough to stop an unsuccessful test from quiting and cleaning up mininet.</tt> </tt>
-<a name="L995"></a><tt class="py-lineno"> 995</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L996"></a><tt class="py-lineno"> 996</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-313" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-313', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Simple iperf TCP test between two hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L997"></a><tt class="py-lineno"> 997</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L998"></a><tt class="py-lineno"> 998</tt> <tt class="py-line"> <tt class="py-comment"># Setup the mininet command</tt> </tt>
-<a name="L999"></a><tt class="py-lineno"> 999</tt> <tt class="py-line"> <tt class="py-name">cmd1</tt> <tt class="py-op">=</tt> <tt class="py-string">'iperf '</tt> <tt class="py-op">+</tt> <tt class="py-name">host1</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">host2</tt> </tt>
-<a name="L1000"></a><tt class="py-lineno">1000</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-314" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-314', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1001"></a><tt class="py-lineno">1001</tt> <tt class="py-line"> <tt class="py-name">outcome</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1002"></a><tt class="py-lineno">1002</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L1003"></a><tt class="py-lineno">1003</tt> <tt class="py-line"> </tt>
-<a name="L1004"></a><tt class="py-lineno">1004</tt> <tt class="py-line"> <tt class="py-comment"># checks if there are results in the mininet response</tt> </tt>
-<a name="L1005"></a><tt class="py-lineno">1005</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Results:"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L1006"></a><tt class="py-lineno">1006</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-315" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-315', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": iperf test completed"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1007"></a><tt class="py-lineno">1007</tt> <tt class="py-line"> <tt class="py-comment"># parse the mn results</tt> </tt>
-<a name="L1008"></a><tt class="py-lineno">1008</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"\r\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1009"></a><tt class="py-lineno">1009</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">response</tt><tt class="py-op">)</tt><tt class="py-op">-</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> </tt>
-<a name="L1010"></a><tt class="py-lineno">1010</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">": "</tt><tt class="py-op">)</tt> </tt>
-<a name="L1011"></a><tt class="py-lineno">1011</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">response</tt><tt class="py-op">)</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L1012"></a><tt class="py-lineno">1012</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"["</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L1013"></a><tt class="py-lineno">1013</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"]"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L1014"></a><tt class="py-lineno">1014</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"\'"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L1015"></a><tt class="py-lineno">1015</tt> <tt class="py-line"> </tt>
-<a name="L1016"></a><tt class="py-lineno">1016</tt> <tt class="py-line"> <tt class="py-comment"># this is the bandwith two and from the two hosts</tt> </tt>
-<a name="L1017"></a><tt class="py-lineno">1017</tt> <tt class="py-line"> <tt class="py-name">bandwidth</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">", "</tt><tt class="py-op">)</tt> </tt>
-<a name="L1018"></a><tt class="py-lineno">1018</tt> <tt class="py-line"> </tt>
-<a name="L1019"></a><tt class="py-lineno">1019</tt> <tt class="py-line"> <tt class="py-comment"># there should be two elements in the bandwidth list</tt> </tt>
-<a name="L1020"></a><tt class="py-lineno">1020</tt> <tt class="py-line"> <tt class="py-comment"># ['host1 to host2', 'host2 to host1"]</tt> </tt>
-<a name="L1021"></a><tt class="py-lineno">1021</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">bandwidth</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L1022"></a><tt class="py-lineno">1022</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-316" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-316', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": iperf test successful"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1023"></a><tt class="py-lineno">1023</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1024"></a><tt class="py-lineno">1024</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1025"></a><tt class="py-lineno">1025</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-317" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-317', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-318" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-318', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": invalid iperf results"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1026"></a><tt class="py-lineno">1026</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1027"></a><tt class="py-lineno">1027</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1028"></a><tt class="py-lineno">1028</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-319" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-319', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-320" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-320', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": iperf test failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1029"></a><tt class="py-lineno">1029</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1030"></a><tt class="py-lineno">1030</tt> <tt class="py-line"> </tt>
-<a name="L1031"></a><tt class="py-lineno">1031</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">:</tt> </tt>
-<a name="L1032"></a><tt class="py-lineno">1032</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-321" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-321', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-322" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-322', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": TIMEOUT exception found"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1033"></a><tt class="py-lineno">1033</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-323" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-323', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-324" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-324', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Exception: Cannot connect to iperf on port 5001"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1034"></a><tt class="py-lineno">1034</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1035"></a><tt class="py-lineno">1035</tt> <tt class="py-line"> </tt>
-<a name="L1036"></a><tt class="py-lineno">1036</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1037"></a><tt class="py-lineno">1037</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-325" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-325', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-326" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-326', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1038"></a><tt class="py-lineno">1038</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-327" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-327', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-328" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-328', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1039"></a><tt class="py-lineno">1039</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-329" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-329', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1040"></a><tt class="py-lineno">1040</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-330" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-330', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1041"></a><tt class="py-lineno">1041</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.iperfudpAll"></a><div id="MininetCliDriver.iperfudpAll-def"><a name="L1042"></a><tt class="py-lineno">1042</tt> <a class="py-toggle" href="#" id="MininetCliDriver.iperfudpAll-toggle" onclick="return toggle('MininetCliDriver.iperfudpAll');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperfudpAll">iperfudpAll</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hosts</tt><tt class="py-op">,</tt> <tt class="py-param">bandwidth</tt><tt class="py-op">=</tt><tt class="py-string">"10M"</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.iperfudpAll-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.iperfudpAll-expanded"><a name="L1043"></a><tt class="py-lineno">1043</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L1044"></a><tt class="py-lineno">1044</tt> <tt class="py-line"><tt class="py-docstring"> Runs the iperfudp function with a given set of hosts and specified</tt> </tt>
-<a name="L1045"></a><tt class="py-lineno">1045</tt> <tt class="py-line"><tt class="py-docstring"> bandwidth</tt> </tt>
-<a name="L1046"></a><tt class="py-lineno">1046</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1047"></a><tt class="py-lineno">1047</tt> <tt class="py-line"><tt class="py-docstring"> @param:</tt> </tt>
-<a name="L1048"></a><tt class="py-lineno">1048</tt> <tt class="py-line"><tt class="py-docstring"> bandwidth: the targeted bandwidth, in megabits ('M')</tt> </tt>
-<a name="L1049"></a><tt class="py-lineno">1049</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L1050"></a><tt class="py-lineno">1050</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host1</tt> <tt class="py-keyword">in</tt> <tt id="link-331" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-331', 'hosts', 'link-308');">hosts</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1051"></a><tt class="py-lineno">1051</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host2</tt> <tt class="py-keyword">in</tt> <tt id="link-332" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-332', 'hosts', 'link-308');">hosts</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1052"></a><tt class="py-lineno">1052</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">host1</tt> <tt class="py-op">!=</tt> <tt class="py-name">host2</tt><tt class="py-op">:</tt> </tt>
-<a name="L1053"></a><tt class="py-lineno">1053</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-333" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.iperfudp()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperfudp"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.iperfudp" class="py-name" href="#" onclick="return doclink('link-333', 'iperfudp', 'link-333');">iperfudp</a></tt><tt class="py-op">(</tt><tt class="py-name">host1</tt><tt class="py-op">,</tt> <tt class="py-name">host2</tt><tt class="py-op">,</tt> <tt class="py-name">bandwidth</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1054"></a><tt class="py-lineno">1054</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-334" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-334', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-335" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-335', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": iperfudp test failed for "</tt> <tt class="py-op">+</tt> <tt class="py-name">host1</tt> <tt class="py-op">+</tt> <tt class="py-string">" and "</tt> <tt class="py-op">+</tt> <tt class="py-name">host2</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1055"></a><tt class="py-lineno">1055</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.iperfudp"></a><div id="MininetCliDriver.iperfudp-def"><a name="L1056"></a><tt class="py-lineno">1056</tt> <a class="py-toggle" href="#" id="MininetCliDriver.iperfudp-toggle" onclick="return toggle('MininetCliDriver.iperfudp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperfudp">iperfudp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">bandwidth</tt><tt class="py-op">=</tt><tt class="py-string">"10M"</tt><tt class="py-op">,</tt> <tt class="py-param">host1</tt><tt class="py-op">=</tt><tt class="py-string">"h1"</tt><tt class="py-op">,</tt> <tt class="py-param">host2</tt><tt class="py-op">=</tt><tt class="py-string">"h2"</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.iperfudp-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.iperfudp-expanded"><a name="L1057"></a><tt class="py-lineno">1057</tt> <tt class="py-line"> </tt>
-<a name="L1058"></a><tt class="py-lineno">1058</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L1059"></a><tt class="py-lineno">1059</tt> <tt class="py-line"><tt class="py-docstring"> Creates an iperf UDP test with a specific bandwidth.</tt> </tt>
-<a name="L1060"></a><tt class="py-lineno">1060</tt> <tt class="py-line"><tt class="py-docstring"> Returns true if results are valid.</tt> </tt>
-<a name="L1061"></a><tt class="py-lineno">1061</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1062"></a><tt class="py-lineno">1062</tt> <tt class="py-line"><tt class="py-docstring"> @param:</tt> </tt>
-<a name="L1063"></a><tt class="py-lineno">1063</tt> <tt class="py-line"><tt class="py-docstring"> bandwidth: the targeted bandwidth, in megabits ('M'), to run the test</tt> </tt>
-<a name="L1064"></a><tt class="py-lineno">1064</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L1065"></a><tt class="py-lineno">1065</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-336" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-336', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Simple iperf UDP test between two hosts"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1066"></a><tt class="py-lineno">1066</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1067"></a><tt class="py-lineno">1067</tt> <tt class="py-line"> <tt class="py-comment"># setup the mininet command</tt> </tt>
-<a name="L1068"></a><tt class="py-lineno">1068</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">'iperfudp '</tt> <tt class="py-op">+</tt> <tt class="py-name">bandwidth</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">host1</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">host2</tt> </tt>
-<a name="L1069"></a><tt class="py-lineno">1069</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-337" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-337', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L1070"></a><tt class="py-lineno">1070</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1071"></a><tt class="py-lineno">1071</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L1072"></a><tt class="py-lineno">1072</tt> <tt class="py-line"> </tt>
-<a name="L1073"></a><tt class="py-lineno">1073</tt> <tt class="py-line"> <tt class="py-comment"># check if there are in results in the mininet response</tt> </tt>
-<a name="L1074"></a><tt class="py-lineno">1074</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Results:"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L1075"></a><tt class="py-lineno">1075</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-338" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-338', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": iperfudp test completed"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1076"></a><tt class="py-lineno">1076</tt> <tt class="py-line"> <tt class="py-comment"># parse the results</tt> </tt>
-<a name="L1077"></a><tt class="py-lineno">1077</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"\r\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1078"></a><tt class="py-lineno">1078</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">response</tt><tt class="py-op">)</tt><tt class="py-op">-</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> </tt>
-<a name="L1079"></a><tt class="py-lineno">1079</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">": "</tt><tt class="py-op">)</tt> </tt>
-<a name="L1080"></a><tt class="py-lineno">1080</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">response</tt><tt class="py-op">)</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L1081"></a><tt class="py-lineno">1081</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"["</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L1082"></a><tt class="py-lineno">1082</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"]"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L1083"></a><tt class="py-lineno">1083</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"\'"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L1084"></a><tt class="py-lineno">1084</tt> <tt class="py-line"> </tt>
-<a name="L1085"></a><tt class="py-lineno">1085</tt> <tt class="py-line"> <tt class="py-name">mnBandwidth</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">", "</tt><tt class="py-op">)</tt> </tt>
-<a name="L1086"></a><tt class="py-lineno">1086</tt> <tt class="py-line"> </tt>
-<a name="L1087"></a><tt class="py-lineno">1087</tt> <tt class="py-line"> <tt class="py-comment"># check to see if there are at least three entries</tt> </tt>
-<a name="L1088"></a><tt class="py-lineno">1088</tt> <tt class="py-line"> <tt class="py-comment"># ['bandwidth', 'host1 to host2', 'host2 to host1']</tt> </tt>
-<a name="L1089"></a><tt class="py-lineno">1089</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">mnBandwidth</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L1090"></a><tt class="py-lineno">1090</tt> <tt class="py-line"> <tt class="py-comment"># if one entry is blank then something is wrong</tt> </tt>
-<a name="L1091"></a><tt class="py-lineno">1091</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mnBandwidth</tt><tt class="py-op">:</tt> </tt>
-<a name="L1092"></a><tt class="py-lineno">1092</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">==</tt> <tt class="py-string">""</tt><tt class="py-op">:</tt> </tt>
-<a name="L1093"></a><tt class="py-lineno">1093</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-339" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-339', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-340" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-340', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Could not parse iperf output"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1094"></a><tt class="py-lineno">1094</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-341" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-341', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-342" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-342', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": invalid iperfudp results"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1095"></a><tt class="py-lineno">1095</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1096"></a><tt class="py-lineno">1096</tt> <tt class="py-line"> <tt class="py-comment"># otherwise results are vaild</tt> </tt>
-<a name="L1097"></a><tt class="py-lineno">1097</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-343" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-343', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": iperfudp test successful"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1098"></a><tt class="py-lineno">1098</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1099"></a><tt class="py-lineno">1099</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1100"></a><tt class="py-lineno">1100</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-344" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-344', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-345" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-345', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": invalid iperfudp results"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1101"></a><tt class="py-lineno">1101</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1102"></a><tt class="py-lineno">1102</tt> <tt class="py-line"> </tt>
-<a name="L1103"></a><tt class="py-lineno">1103</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1104"></a><tt class="py-lineno">1104</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-346" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-346', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-347" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-347', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1105"></a><tt class="py-lineno">1105</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-348" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-348', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-349" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-349', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1106"></a><tt class="py-lineno">1106</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-350" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-350', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1107"></a><tt class="py-lineno">1107</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-351" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-351', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1108"></a><tt class="py-lineno">1108</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.nodes"></a><div id="MininetCliDriver.nodes-def"><a name="L1109"></a><tt class="py-lineno">1109</tt> <a class="py-toggle" href="#" id="MininetCliDriver.nodes-toggle" onclick="return toggle('MininetCliDriver.nodes');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#nodes">nodes</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.nodes-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.nodes-expanded"><a name="L1110"></a><tt class="py-lineno">1110</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-352" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-352', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": List all nodes."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1111"></a><tt class="py-lineno">1111</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1112"></a><tt class="py-lineno">1112</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-353" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-353', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1113"></a><tt class="py-lineno">1113</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">'nodes'</tt><tt class="py-op">,</tt> </tt>
-<a name="L1114"></a><tt class="py-lineno">1114</tt> <tt class="py-line"> <tt id="link-354" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-354', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">'mininet>'</tt><tt class="py-op">,</tt> </tt>
-<a name="L1115"></a><tt class="py-lineno">1115</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1116"></a><tt class="py-lineno">1116</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1117"></a><tt class="py-lineno">1117</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-355" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-355', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-356" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-356', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1118"></a><tt class="py-lineno">1118</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-357" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-357', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-358" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-358', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1119"></a><tt class="py-lineno">1119</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-359" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-359', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1120"></a><tt class="py-lineno">1120</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-360" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-360', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1121"></a><tt class="py-lineno">1121</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-</div><a name="L1122"></a><tt class="py-lineno">1122</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.pingpair"></a><div id="MininetCliDriver.pingpair-def"><a name="L1123"></a><tt class="py-lineno">1123</tt> <a class="py-toggle" href="#" id="MininetCliDriver.pingpair-toggle" onclick="return toggle('MininetCliDriver.pingpair');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingpair">pingpair</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.pingpair-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.pingpair-expanded"><a name="L1124"></a><tt class="py-lineno">1124</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-361" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-361', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Ping between first two hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1125"></a><tt class="py-lineno">1125</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1126"></a><tt class="py-lineno">1126</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-362" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-362', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1127"></a><tt class="py-lineno">1127</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">'pingpair'</tt><tt class="py-op">,</tt> </tt>
-<a name="L1128"></a><tt class="py-lineno">1128</tt> <tt class="py-line"> <tt id="link-363" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-363', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">'mininet>'</tt><tt class="py-op">,</tt> </tt>
-<a name="L1129"></a><tt class="py-lineno">1129</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">20</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1130"></a><tt class="py-lineno">1130</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1131"></a><tt class="py-lineno">1131</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-364" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-364', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-365" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-365', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1132"></a><tt class="py-lineno">1132</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-366" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-366', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-367" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-367', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1133"></a><tt class="py-lineno">1133</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-368" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-368', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1134"></a><tt class="py-lineno">1134</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-369" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-369', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1135"></a><tt class="py-lineno">1135</tt> <tt class="py-line"> </tt>
-<a name="L1136"></a><tt class="py-lineno">1136</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">',\s0\%\spacket\sloss'</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1137"></a><tt class="py-lineno">1137</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-370" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-370', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Ping between two hosts SUCCESSFUL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1138"></a><tt class="py-lineno">1138</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">lastResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1139"></a><tt class="py-lineno">1139</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1140"></a><tt class="py-lineno">1140</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1141"></a><tt class="py-lineno">1141</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-371" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-371', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-372" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-372', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": PACKET LOST, HOSTS NOT REACHABLE"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1142"></a><tt class="py-lineno">1142</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">lastResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1143"></a><tt class="py-lineno">1143</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L1144"></a><tt class="py-lineno">1144</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.link"></a><div id="MininetCliDriver.link-def"><a name="L1145"></a><tt class="py-lineno">1145</tt> <a class="py-toggle" href="#" id="MininetCliDriver.link-toggle" onclick="return toggle('MininetCliDriver.link');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#link">link</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">linkargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.link-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.link-expanded"><a name="L1146"></a><tt class="py-lineno">1146</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1147"></a><tt class="py-lineno">1147</tt> <tt class="py-line"><tt class="py-docstring"> Bring link( s ) between two nodes up or down"""</tt> </tt>
-<a name="L1148"></a><tt class="py-lineno">1148</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-373" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-373', 'parse_args', 'link-91');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"END1"</tt><tt class="py-op">,</tt> <tt class="py-string">"END2"</tt><tt class="py-op">,</tt> <tt class="py-string">"OPTION"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">linkargs</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1149"></a><tt class="py-lineno">1149</tt> <tt class="py-line"> <tt class="py-name">end1</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"END1"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"END1"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">""</tt> </tt>
-<a name="L1150"></a><tt class="py-lineno">1150</tt> <tt class="py-line"> <tt class="py-name">end2</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"END2"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"END2"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">""</tt> </tt>
-<a name="L1151"></a><tt class="py-lineno">1151</tt> <tt class="py-line"> <tt class="py-name">option</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"OPTION"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"OPTION"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">""</tt> </tt>
-<a name="L1152"></a><tt class="py-lineno">1152</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-374" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-374', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L1153"></a><tt class="py-lineno">1153</tt> <tt class="py-line"> <tt class="py-string">"Bring link between '"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1154"></a><tt class="py-lineno">1154</tt> <tt class="py-line"> <tt class="py-name">end1</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1155"></a><tt class="py-lineno">1155</tt> <tt class="py-line"> <tt class="py-string">"' and '"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1156"></a><tt class="py-lineno">1156</tt> <tt class="py-line"> <tt class="py-name">end2</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1157"></a><tt class="py-lineno">1157</tt> <tt class="py-line"> <tt class="py-string">"' '"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1158"></a><tt class="py-lineno">1158</tt> <tt class="py-line"> <tt class="py-name">option</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1159"></a><tt class="py-lineno">1159</tt> <tt class="py-line"> <tt class="py-string">"'"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1160"></a><tt class="py-lineno">1160</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"link "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1161"></a><tt class="py-lineno">1161</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">end1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">end2</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">option</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1162"></a><tt class="py-lineno">1162</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1163"></a><tt class="py-lineno">1163</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-375" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-375', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">command</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1164"></a><tt class="py-lineno">1164</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1165"></a><tt class="py-lineno">1165</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1166"></a><tt class="py-lineno">1166</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-376" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-376', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-377" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-377', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1167"></a><tt class="py-lineno">1167</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-378" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-378', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-379" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-379', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1168"></a><tt class="py-lineno">1168</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-380" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-380', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1169"></a><tt class="py-lineno">1169</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-381" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-381', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1170"></a><tt class="py-lineno">1170</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L1171"></a><tt class="py-lineno">1171</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.yank"></a><div id="MininetCliDriver.yank-def"><a name="L1172"></a><tt class="py-lineno">1172</tt> <a class="py-toggle" href="#" id="MininetCliDriver.yank-toggle" onclick="return toggle('MininetCliDriver.yank');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#yank">yank</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">yankargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.yank-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.yank-expanded"><a name="L1173"></a><tt class="py-lineno">1173</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1174"></a><tt class="py-lineno">1174</tt> <tt class="py-line"><tt class="py-docstring"> yank a mininet switch interface to a host"""</tt> </tt>
-<a name="L1175"></a><tt class="py-lineno">1175</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-382" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-382', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">'Yank the switch interface attached to a host'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1176"></a><tt class="py-lineno">1176</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-383" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-383', 'parse_args', 'link-91');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"SW"</tt><tt class="py-op">,</tt> <tt class="py-string">"INTF"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">yankargs</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1177"></a><tt class="py-lineno">1177</tt> <tt class="py-line"> <tt class="py-name">sw</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"SW"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"SW"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">""</tt> </tt>
-<a name="L1178"></a><tt class="py-lineno">1178</tt> <tt class="py-line"> <tt class="py-name">intf</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"INTF"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"INTF"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">""</tt> </tt>
-<a name="L1179"></a><tt class="py-lineno">1179</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"py "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">'.detach("'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">intf</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">'")'</tt> </tt>
-<a name="L1180"></a><tt class="py-lineno">1180</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1181"></a><tt class="py-lineno">1181</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-384" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-384', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1182"></a><tt class="py-lineno">1182</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L1183"></a><tt class="py-lineno">1183</tt> <tt class="py-line"> <tt id="link-385" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-385', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1184"></a><tt class="py-lineno">1184</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1185"></a><tt class="py-lineno">1185</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1186"></a><tt class="py-lineno">1186</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-386" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-386', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-387" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-387', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1187"></a><tt class="py-lineno">1187</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-388" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-388', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-389" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-389', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1188"></a><tt class="py-lineno">1188</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-390" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-390', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1189"></a><tt class="py-lineno">1189</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-391" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-391', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1190"></a><tt class="py-lineno">1190</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L1191"></a><tt class="py-lineno">1191</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.plug"></a><div id="MininetCliDriver.plug-def"><a name="L1192"></a><tt class="py-lineno">1192</tt> <a class="py-toggle" href="#" id="MininetCliDriver.plug-toggle" onclick="return toggle('MininetCliDriver.plug');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#plug">plug</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">plugargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.plug-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.plug-expanded"><a name="L1193"></a><tt class="py-lineno">1193</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1194"></a><tt class="py-lineno">1194</tt> <tt class="py-line"><tt class="py-docstring"> plug the yanked mininet switch interface to a switch"""</tt> </tt>
-<a name="L1195"></a><tt class="py-lineno">1195</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-392" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-392', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">'Plug the switch interface attached to a switch'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1196"></a><tt class="py-lineno">1196</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-393" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-393', 'parse_args', 'link-91');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"SW"</tt><tt class="py-op">,</tt> <tt class="py-string">"INTF"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">plugargs</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1197"></a><tt class="py-lineno">1197</tt> <tt class="py-line"> <tt class="py-name">sw</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"SW"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"SW"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">""</tt> </tt>
-<a name="L1198"></a><tt class="py-lineno">1198</tt> <tt class="py-line"> <tt class="py-name">intf</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"INTF"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"INTF"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">""</tt> </tt>
-<a name="L1199"></a><tt class="py-lineno">1199</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"py "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">'.attach("'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">intf</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">'")'</tt> </tt>
-<a name="L1200"></a><tt class="py-lineno">1200</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1201"></a><tt class="py-lineno">1201</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-394" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-394', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1202"></a><tt class="py-lineno">1202</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L1203"></a><tt class="py-lineno">1203</tt> <tt class="py-line"> <tt id="link-395" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-395', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1204"></a><tt class="py-lineno">1204</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1205"></a><tt class="py-lineno">1205</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1206"></a><tt class="py-lineno">1206</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-396" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-396', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-397" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-397', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1207"></a><tt class="py-lineno">1207</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-398" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-398', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-399" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-399', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1208"></a><tt class="py-lineno">1208</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-400" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-400', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1209"></a><tt class="py-lineno">1209</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-401" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-401', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1210"></a><tt class="py-lineno">1210</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L1211"></a><tt class="py-lineno">1211</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.dpctl"></a><div id="MininetCliDriver.dpctl-def"><a name="L1212"></a><tt class="py-lineno">1212</tt> <a class="py-toggle" href="#" id="MininetCliDriver.dpctl-toggle" onclick="return toggle('MininetCliDriver.dpctl');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#dpctl">dpctl</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">dpctlargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.dpctl-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.dpctl-expanded"><a name="L1213"></a><tt class="py-lineno">1213</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1214"></a><tt class="py-lineno">1214</tt> <tt class="py-line"><tt class="py-docstring"> Run dpctl command on all switches."""</tt> </tt>
-<a name="L1215"></a><tt class="py-lineno">1215</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-402" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-402', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">'Run dpctl command on all switches'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1216"></a><tt class="py-lineno">1216</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-403" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-403', 'parse_args', 'link-91');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"CMD"</tt><tt class="py-op">,</tt> <tt class="py-string">"ARGS"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">dpctlargs</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1217"></a><tt class="py-lineno">1217</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"CMD"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"CMD"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">""</tt> </tt>
-<a name="L1218"></a><tt class="py-lineno">1218</tt> <tt class="py-line"> <tt class="py-name">cmdargs</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"ARGS"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"ARGS"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">""</tt> </tt>
-<a name="L1219"></a><tt class="py-lineno">1219</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"dpctl "</tt> <tt class="py-op">+</tt> <tt class="py-name">cmd</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">cmdargs</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1220"></a><tt class="py-lineno">1220</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1221"></a><tt class="py-lineno">1221</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-404" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-404', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1222"></a><tt class="py-lineno">1222</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L1223"></a><tt class="py-lineno">1223</tt> <tt class="py-line"> <tt id="link-405" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-405', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1224"></a><tt class="py-lineno">1224</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1225"></a><tt class="py-lineno">1225</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1226"></a><tt class="py-lineno">1226</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-406" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-406', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-407" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-407', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1227"></a><tt class="py-lineno">1227</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-408" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-408', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-409" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-409', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1228"></a><tt class="py-lineno">1228</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-410" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-410', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1229"></a><tt class="py-lineno">1229</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-411" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-411', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1230"></a><tt class="py-lineno">1230</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L1231"></a><tt class="py-lineno">1231</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.getVersion"></a><div id="MininetCliDriver.getVersion-def"><a name="L1232"></a><tt class="py-lineno">1232</tt> <a class="py-toggle" href="#" id="MininetCliDriver.getVersion-toggle" onclick="return toggle('MininetCliDriver.getVersion');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion">getVersion</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.getVersion-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.getVersion-expanded"><a name="L1233"></a><tt class="py-lineno">1233</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: What uses this? This should be refactored to get</tt> </tt>
-<a name="L1234"></a><tt class="py-lineno">1234</tt> <tt class="py-line"> <tt class="py-comment"># version from MN and not some other file</tt> </tt>
-<a name="L1235"></a><tt class="py-lineno">1235</tt> <tt class="py-line"> <tt class="py-name">fileInput</tt> <tt class="py-op">=</tt> <tt id="link-412" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-412', 'path', 'link-412');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">'/lib/Mininet/INSTALL'</tt> </tt>
-<a name="L1236"></a><tt class="py-lineno">1236</tt> <tt class="py-line"> <tt class="py-name">version</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt class="py-name">Mininet</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-413" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion,Method TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion
-TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion" class="py-name" href="#" onclick="return doclink('link-413', 'getVersion', 'link-413');">getVersion</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1237"></a><tt class="py-lineno">1237</tt> <tt class="py-line"> <tt class="py-name">pattern</tt> <tt class="py-op">=</tt> <tt class="py-string">'Mininet\s\w\.\w\.\w\w*'</tt> </tt>
-<a name="L1238"></a><tt class="py-lineno">1238</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt> <tt class="py-name">fileInput</tt><tt class="py-op">,</tt> <tt class="py-string">'r'</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">readlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1239"></a><tt class="py-lineno">1239</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt> <tt class="py-name">pattern</tt><tt class="py-op">,</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1240"></a><tt class="py-lineno">1240</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">result</tt><tt class="py-op">:</tt> </tt>
-<a name="L1241"></a><tt class="py-lineno">1241</tt> <tt class="py-line"> <tt class="py-name">version</tt> <tt class="py-op">=</tt> <tt class="py-name">result</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1242"></a><tt class="py-lineno">1242</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">version</tt> </tt>
-</div><a name="L1243"></a><tt class="py-lineno">1243</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.getSwController"></a><div id="MininetCliDriver.getSwController-def"><a name="L1244"></a><tt class="py-lineno">1244</tt> <a class="py-toggle" href="#" id="MininetCliDriver.getSwController-toggle" onclick="return toggle('MininetCliDriver.getSwController');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwController">getSwController</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sw</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.getSwController-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.getSwController-expanded"><a name="L1245"></a><tt class="py-lineno">1245</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1246"></a><tt class="py-lineno">1246</tt> <tt class="py-line"><tt class="py-docstring"> Parameters:</tt> </tt>
-<a name="L1247"></a><tt class="py-lineno">1247</tt> <tt class="py-line"><tt class="py-docstring"> sw: The name of an OVS switch. Example "s1"</tt> </tt>
-<a name="L1248"></a><tt class="py-lineno">1248</tt> <tt class="py-line"><tt class="py-docstring"> Return:</tt> </tt>
-<a name="L1249"></a><tt class="py-lineno">1249</tt> <tt class="py-line"><tt class="py-docstring"> The output of the command from the mininet cli</tt> </tt>
-<a name="L1250"></a><tt class="py-lineno">1250</tt> <tt class="py-line"><tt class="py-docstring"> or main.FALSE on timeout"""</tt> </tt>
-<a name="L1251"></a><tt class="py-lineno">1251</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"sh ovs-vsctl get-controller "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1252"></a><tt class="py-lineno">1252</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1253"></a><tt class="py-lineno">1253</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-414" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-414', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1254"></a><tt class="py-lineno">1254</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L1255"></a><tt class="py-lineno">1255</tt> <tt class="py-line"> <tt id="link-415" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-415', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1256"></a><tt class="py-lineno">1256</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1257"></a><tt class="py-lineno">1257</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L1258"></a><tt class="py-lineno">1258</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-<a name="L1259"></a><tt class="py-lineno">1259</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1260"></a><tt class="py-lineno">1260</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1261"></a><tt class="py-lineno">1261</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1262"></a><tt class="py-lineno">1262</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-416" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-416', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-417" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-417', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1263"></a><tt class="py-lineno">1263</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-418" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-418', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-419" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-419', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1264"></a><tt class="py-lineno">1264</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-420" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-420', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1265"></a><tt class="py-lineno">1265</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-421" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-421', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1266"></a><tt class="py-lineno">1266</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.assignSwController"></a><div id="MininetCliDriver.assignSwController-def"><a name="L1267"></a><tt class="py-lineno">1267</tt> <a class="py-toggle" href="#" id="MininetCliDriver.assignSwController-toggle" onclick="return toggle('MininetCliDriver.assignSwController');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignSwController">assignSwController</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sw</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"6633"</tt><tt class="py-op">,</tt> <tt class="py-param">ptcp</tt><tt class="py-op">=</tt><tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.assignSwController-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.assignSwController-expanded"><a name="L1268"></a><tt class="py-lineno">1268</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1269"></a><tt class="py-lineno">1269</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1270"></a><tt class="py-lineno">1270</tt> <tt class="py-line"><tt class="py-docstring"> Assign switches to the controllers ( for ovs use only )</tt> </tt>
-<a name="L1271"></a><tt class="py-lineno">1271</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L1272"></a><tt class="py-lineno">1272</tt> <tt class="py-line"><tt class="py-docstring"> sw - Name of the switch. This can be a list or a string.</tt> </tt>
-<a name="L1273"></a><tt class="py-lineno">1273</tt> <tt class="py-line"><tt class="py-docstring"> ip - Ip addresses of controllers. This can be a list or a string.</tt> </tt>
-<a name="L1274"></a><tt class="py-lineno">1274</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L1275"></a><tt class="py-lineno">1275</tt> <tt class="py-line"><tt class="py-docstring"> port - ONOS use port 6633, if no list of ports is passed, then</tt> </tt>
-<a name="L1276"></a><tt class="py-lineno">1276</tt> <tt class="py-line"><tt class="py-docstring"> the all the controller will use 6633 as their port number</tt> </tt>
-<a name="L1277"></a><tt class="py-lineno">1277</tt> <tt class="py-line"><tt class="py-docstring"> ptcp - ptcp number, This can be a string or a list that has</tt> </tt>
-<a name="L1278"></a><tt class="py-lineno">1278</tt> <tt class="py-line"><tt class="py-docstring"> the same length as switch. This is optional and not required</tt> </tt>
-<a name="L1279"></a><tt class="py-lineno">1279</tt> <tt class="py-line"><tt class="py-docstring"> when using ovs switches.</tt> </tt>
-<a name="L1280"></a><tt class="py-lineno">1280</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: If switches and ptcp are given in a list type they should have the</tt> </tt>
-<a name="L1281"></a><tt class="py-lineno">1281</tt> <tt class="py-line"><tt class="py-docstring"> same length and should be in the same order, Eg. sw=[ 's1' ... n ]</tt> </tt>
-<a name="L1282"></a><tt class="py-lineno">1282</tt> <tt class="py-line"><tt class="py-docstring"> ptcp=[ '6637' ... n ], s1 has ptcp number 6637 and so on.</tt> </tt>
-<a name="L1283"></a><tt class="py-lineno">1283</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1284"></a><tt class="py-lineno">1284</tt> <tt class="py-line"><tt class="py-docstring"> Return:</tt> </tt>
-<a name="L1285"></a><tt class="py-lineno">1285</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE if mininet correctly assigned switches to</tt> </tt>
-<a name="L1286"></a><tt class="py-lineno">1286</tt> <tt class="py-line"><tt class="py-docstring"> controllers, otherwise it will return main.FALSE or an appropriate</tt> </tt>
-<a name="L1287"></a><tt class="py-lineno">1287</tt> <tt class="py-line"><tt class="py-docstring"> exception(s)</tt> </tt>
-<a name="L1288"></a><tt class="py-lineno">1288</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1289"></a><tt class="py-lineno">1289</tt> <tt class="py-line"> <tt class="py-name">assignResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1290"></a><tt class="py-lineno">1290</tt> <tt class="py-line"> <tt class="py-comment"># Initial ovs command</tt> </tt>
-<a name="L1291"></a><tt class="py-lineno">1291</tt> <tt class="py-line"> <tt class="py-name">commandList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1292"></a><tt class="py-lineno">1292</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"sh ovs-vsctl set-controller "</tt> </tt>
-<a name="L1293"></a><tt class="py-lineno">1293</tt> <tt class="py-line"> <tt class="py-name">onosIp</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L1294"></a><tt class="py-lineno">1294</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1295"></a><tt class="py-lineno">1295</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1296"></a><tt class="py-lineno">1296</tt> <tt class="py-line"> <tt class="py-name">onosIp</tt> <tt class="py-op">=</tt> <tt class="py-string">"tcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> </tt>
-<a name="L1297"></a><tt class="py-lineno">1297</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt> <tt class="py-keyword">or</tt> \ </tt>
-<a name="L1298"></a><tt class="py-lineno">1298</tt> <tt class="py-line"> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">IntType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1299"></a><tt class="py-lineno">1299</tt> <tt class="py-line"> <tt class="py-name">onosIp</tt> <tt class="py-op">+=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1300"></a><tt class="py-lineno">1300</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">ListType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1301"></a><tt class="py-lineno">1301</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-422" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-422', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-423" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-423', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Only one controller "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1302"></a><tt class="py-lineno">1302</tt> <tt class="py-line"> <tt class="py-string">"assigned and a list of ports has"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1303"></a><tt class="py-lineno">1303</tt> <tt class="py-line"> <tt class="py-string">" been passed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1304"></a><tt class="py-lineno">1304</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1305"></a><tt class="py-lineno">1305</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1306"></a><tt class="py-lineno">1306</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-424" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-424', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-425" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-425', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Invalid controller port "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1307"></a><tt class="py-lineno">1307</tt> <tt class="py-line"> <tt class="py-string">"number. Please specify correct "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1308"></a><tt class="py-lineno">1308</tt> <tt class="py-line"> <tt class="py-string">"controller port"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1309"></a><tt class="py-lineno">1309</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1310"></a><tt class="py-lineno">1310</tt> <tt class="py-line"> </tt>
-<a name="L1311"></a><tt class="py-lineno">1311</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">ListType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1312"></a><tt class="py-lineno">1312</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt> <tt class="py-keyword">or</tt> \ </tt>
-<a name="L1313"></a><tt class="py-lineno">1313</tt> <tt class="py-line"> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">IntType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1314"></a><tt class="py-lineno">1314</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">ipAddress</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ip</tt><tt class="py-op">:</tt> </tt>
-<a name="L1315"></a><tt class="py-lineno">1315</tt> <tt class="py-line"> <tt class="py-name">onosIp</tt> <tt class="py-op">+=</tt> <tt class="py-string">"tcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ipAddress</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1316"></a><tt class="py-lineno">1316</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> </tt>
-<a name="L1317"></a><tt class="py-lineno">1317</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">ListType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1318"></a><tt class="py-lineno">1318</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1319"></a><tt class="py-lineno">1319</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-426" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-426', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-427" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-427', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Port list = "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1320"></a><tt class="py-lineno">1320</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1321"></a><tt class="py-lineno">1321</tt> <tt class="py-line"> <tt class="py-string">"should be the same as controller"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1322"></a><tt class="py-lineno">1322</tt> <tt class="py-line"> <tt class="py-string">" ip list = "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1323"></a><tt class="py-lineno">1323</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1324"></a><tt class="py-lineno">1324</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1325"></a><tt class="py-lineno">1325</tt> <tt class="py-line"> <tt class="py-name">onosIp</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L1326"></a><tt class="py-lineno">1326</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">ipAddress</tt><tt class="py-op">,</tt> <tt class="py-name">portNum</tt> <tt class="py-keyword">in</tt> <tt class="py-name">zip</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1327"></a><tt class="py-lineno">1327</tt> <tt class="py-line"> <tt class="py-name">onosIp</tt> <tt class="py-op">+=</tt> <tt class="py-string">"tcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ipAddress</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1328"></a><tt class="py-lineno">1328</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">portNum</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> </tt>
-<a name="L1329"></a><tt class="py-lineno">1329</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1330"></a><tt class="py-lineno">1330</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-428" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-428', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-429" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-429', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Invalid controller port "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1331"></a><tt class="py-lineno">1331</tt> <tt class="py-line"> <tt class="py-string">"number. Please specify correct "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1332"></a><tt class="py-lineno">1332</tt> <tt class="py-line"> <tt class="py-string">"controller port"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1333"></a><tt class="py-lineno">1333</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1334"></a><tt class="py-lineno">1334</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1335"></a><tt class="py-lineno">1335</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-430" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-430', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-431" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-431', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Invalid ip address"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1336"></a><tt class="py-lineno">1336</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1337"></a><tt class="py-lineno">1337</tt> <tt class="py-line"> </tt>
-<a name="L1338"></a><tt class="py-lineno">1338</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1339"></a><tt class="py-lineno">1339</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">+=</tt> <tt class="py-name">sw</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> </tt>
-<a name="L1340"></a><tt class="py-lineno">1340</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ptcp</tt><tt class="py-op">:</tt> </tt>
-<a name="L1341"></a><tt class="py-lineno">1341</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">ptcp</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1342"></a><tt class="py-lineno">1342</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">+=</tt> <tt class="py-string">"ptcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ptcp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> </tt>
-<a name="L1343"></a><tt class="py-lineno">1343</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">ptcp</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">ListType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1344"></a><tt class="py-lineno">1344</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-432" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-432', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-433" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-433', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Only one switch is "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1345"></a><tt class="py-lineno">1345</tt> <tt class="py-line"> <tt class="py-string">"being set and multiple PTCP is "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1346"></a><tt class="py-lineno">1346</tt> <tt class="py-line"> <tt class="py-string">"being passed "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1347"></a><tt class="py-lineno">1347</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1348"></a><tt class="py-lineno">1348</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-434" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-434', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-435" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-435', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Invalid PTCP"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1349"></a><tt class="py-lineno">1349</tt> <tt class="py-line"> <tt class="py-name">ptcp</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L1350"></a><tt class="py-lineno">1350</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">+=</tt> <tt class="py-name">onosIp</tt> </tt>
-<a name="L1351"></a><tt class="py-lineno">1351</tt> <tt class="py-line"> <tt class="py-name">commandList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">command</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1352"></a><tt class="py-lineno">1352</tt> <tt class="py-line"> </tt>
-<a name="L1353"></a><tt class="py-lineno">1353</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">ListType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1354"></a><tt class="py-lineno">1354</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ptcp</tt><tt class="py-op">:</tt> </tt>
-<a name="L1355"></a><tt class="py-lineno">1355</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">ptcp</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">ListType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1356"></a><tt class="py-lineno">1356</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">ptcp</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1357"></a><tt class="py-lineno">1357</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-436" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-436', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-437" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-437', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": PTCP length = "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1358"></a><tt class="py-lineno">1358</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">ptcp</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1359"></a><tt class="py-lineno">1359</tt> <tt class="py-line"> <tt class="py-string">" is not the same as switch"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1360"></a><tt class="py-lineno">1360</tt> <tt class="py-line"> <tt class="py-string">" length = "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1361"></a><tt class="py-lineno">1361</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1362"></a><tt class="py-lineno">1362</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1363"></a><tt class="py-lineno">1363</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1364"></a><tt class="py-lineno">1364</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">ptcpNum</tt> <tt class="py-keyword">in</tt> <tt class="py-name">zip</tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt><tt class="py-op">,</tt> <tt class="py-name">ptcp</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1365"></a><tt class="py-lineno">1365</tt> <tt class="py-line"> <tt class="py-name">tempCmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"sh ovs-vsctl set-controller "</tt> </tt>
-<a name="L1366"></a><tt class="py-lineno">1366</tt> <tt class="py-line"> <tt class="py-name">tempCmd</tt> <tt class="py-op">+=</tt> <tt class="py-name">switch</tt> <tt class="py-op">+</tt> <tt class="py-string">" ptcp:"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1367"></a><tt class="py-lineno">1367</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ptcpNum</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> </tt>
-<a name="L1368"></a><tt class="py-lineno">1368</tt> <tt class="py-line"> <tt class="py-name">tempCmd</tt> <tt class="py-op">+=</tt> <tt class="py-name">onosIp</tt> </tt>
-<a name="L1369"></a><tt class="py-lineno">1369</tt> <tt class="py-line"> <tt class="py-name">commandList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">tempCmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1370"></a><tt class="py-lineno">1370</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1371"></a><tt class="py-lineno">1371</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-438" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-438', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-439" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-439', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Invalid PTCP"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1372"></a><tt class="py-lineno">1372</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1373"></a><tt class="py-lineno">1373</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1374"></a><tt class="py-lineno">1374</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">sw</tt><tt class="py-op">:</tt> </tt>
-<a name="L1375"></a><tt class="py-lineno">1375</tt> <tt class="py-line"> <tt class="py-name">tempCmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"sh ovs-vsctl set-controller "</tt> </tt>
-<a name="L1376"></a><tt class="py-lineno">1376</tt> <tt class="py-line"> <tt class="py-name">tempCmd</tt> <tt class="py-op">+=</tt> <tt class="py-name">switch</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosIp</tt> </tt>
-<a name="L1377"></a><tt class="py-lineno">1377</tt> <tt class="py-line"> <tt class="py-name">commandList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">tempCmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1378"></a><tt class="py-lineno">1378</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1379"></a><tt class="py-lineno">1379</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-440" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-440', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-441" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-441', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Invalid switch type "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1380"></a><tt class="py-lineno">1380</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1381"></a><tt class="py-lineno">1381</tt> <tt class="py-line"> </tt>
-<a name="L1382"></a><tt class="py-lineno">1382</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">cmd</tt> <tt class="py-keyword">in</tt> <tt class="py-name">commandList</tt><tt class="py-op">:</tt> </tt>
-<a name="L1383"></a><tt class="py-lineno">1383</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1384"></a><tt class="py-lineno">1384</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-442" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-442', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">cmd</tt><tt class="py-op">,</tt> <tt id="link-443" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-443', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1385"></a><tt class="py-lineno">1385</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">:</tt> </tt>
-<a name="L1386"></a><tt class="py-lineno">1386</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-444" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-444', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-445" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-445', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": pexpect.TIMEOUT found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1387"></a><tt class="py-lineno">1387</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1388"></a><tt class="py-lineno">1388</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1389"></a><tt class="py-lineno">1389</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-446" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-446', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-447" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-447', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1390"></a><tt class="py-lineno">1390</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-448" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-448', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-449" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-449', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1391"></a><tt class="py-lineno">1391</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-450" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-450', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1392"></a><tt class="py-lineno">1392</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-451" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-451', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1393"></a><tt class="py-lineno">1393</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1394"></a><tt class="py-lineno">1394</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1395"></a><tt class="py-lineno">1395</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-452" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-452', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1396"></a><tt class="py-lineno">1396</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-453" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-453', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1397"></a><tt class="py-lineno">1397</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-454" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-454', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1398"></a><tt class="py-lineno">1398</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.deleteSwController"></a><div id="MininetCliDriver.deleteSwController-def"><a name="L1399"></a><tt class="py-lineno">1399</tt> <a class="py-toggle" href="#" id="MininetCliDriver.deleteSwController-toggle" onclick="return toggle('MininetCliDriver.deleteSwController');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#deleteSwController">deleteSwController</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sw</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.deleteSwController-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.deleteSwController-expanded"><a name="L1400"></a><tt class="py-lineno">1400</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1401"></a><tt class="py-lineno">1401</tt> <tt class="py-line"><tt class="py-docstring"> Removes the controller target from sw"""</tt> </tt>
-<a name="L1402"></a><tt class="py-lineno">1402</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"sh ovs-vsctl del-controller "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1403"></a><tt class="py-lineno">1403</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1404"></a><tt class="py-lineno">1404</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-455" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-455', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1405"></a><tt class="py-lineno">1405</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L1406"></a><tt class="py-lineno">1406</tt> <tt class="py-line"> <tt id="link-456" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-456', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1407"></a><tt class="py-lineno">1407</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1408"></a><tt class="py-lineno">1408</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1409"></a><tt class="py-lineno">1409</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-457" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-457', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-458" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-458', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1410"></a><tt class="py-lineno">1410</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-459" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-459', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-460" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-460', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1411"></a><tt class="py-lineno">1411</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-461" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-461', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1412"></a><tt class="py-lineno">1412</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-462" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-462', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1413"></a><tt class="py-lineno">1413</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1414"></a><tt class="py-lineno">1414</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-463" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-463', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1415"></a><tt class="py-lineno">1415</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.addSwitch"></a><div id="MininetCliDriver.addSwitch-def"><a name="L1416"></a><tt class="py-lineno">1416</tt> <a class="py-toggle" href="#" id="MininetCliDriver.addSwitch-toggle" onclick="return toggle('MininetCliDriver.addSwitch');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addSwitch">addSwitch</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sw</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">kwargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.addSwitch-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.addSwitch-expanded"><a name="L1417"></a><tt class="py-lineno">1417</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1418"></a><tt class="py-lineno">1418</tt> <tt class="py-line"><tt class="py-docstring"> adds a switch to the mininet topology</tt> </tt>
-<a name="L1419"></a><tt class="py-lineno">1419</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: This uses a custom mn function. MN repo should be on</tt> </tt>
-<a name="L1420"></a><tt class="py-lineno">1420</tt> <tt class="py-line"><tt class="py-docstring"> dynamic_topo branch</tt> </tt>
-<a name="L1421"></a><tt class="py-lineno">1421</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: cannot currently specify what type of switch</tt> </tt>
-<a name="L1422"></a><tt class="py-lineno">1422</tt> <tt class="py-line"><tt class="py-docstring"> required params:</tt> </tt>
-<a name="L1423"></a><tt class="py-lineno">1423</tt> <tt class="py-line"><tt class="py-docstring"> sw = name of the new switch as a string</tt> </tt>
-<a name="L1424"></a><tt class="py-lineno">1424</tt> <tt class="py-line"><tt class="py-docstring"> optional keywords:</tt> </tt>
-<a name="L1425"></a><tt class="py-lineno">1425</tt> <tt class="py-line"><tt class="py-docstring"> dpid = "dpid"</tt> </tt>
-<a name="L1426"></a><tt class="py-lineno">1426</tt> <tt class="py-line"><tt class="py-docstring"> returns: main.FALSE on an error, else main.TRUE</tt> </tt>
-<a name="L1427"></a><tt class="py-lineno">1427</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1428"></a><tt class="py-lineno">1428</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-name">kwargs</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'dpid'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1429"></a><tt class="py-lineno">1429</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"addswitch "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1430"></a><tt class="py-lineno">1430</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1431"></a><tt class="py-lineno">1431</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-464" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-464', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1432"></a><tt class="py-lineno">1432</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L1433"></a><tt class="py-lineno">1433</tt> <tt class="py-line"> <tt id="link-465" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-465', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1434"></a><tt class="py-lineno">1434</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1435"></a><tt class="py-lineno">1435</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"already exists!"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1436"></a><tt class="py-lineno">1436</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-466" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-466', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1437"></a><tt class="py-lineno">1437</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1438"></a><tt class="py-lineno">1438</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1439"></a><tt class="py-lineno">1439</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-467" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-467', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1440"></a><tt class="py-lineno">1440</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1441"></a><tt class="py-lineno">1441</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"usage:"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1442"></a><tt class="py-lineno">1442</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-468" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-468', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1443"></a><tt class="py-lineno">1443</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1444"></a><tt class="py-lineno">1444</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1445"></a><tt class="py-lineno">1445</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1446"></a><tt class="py-lineno">1446</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1447"></a><tt class="py-lineno">1447</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-469" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-469', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-470" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-470', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1448"></a><tt class="py-lineno">1448</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-471" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-471', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-472" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-472', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1449"></a><tt class="py-lineno">1449</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-473" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-473', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1450"></a><tt class="py-lineno">1450</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-474" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-474', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1451"></a><tt class="py-lineno">1451</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.delSwitch"></a><div id="MininetCliDriver.delSwitch-def"><a name="L1452"></a><tt class="py-lineno">1452</tt> <a class="py-toggle" href="#" id="MininetCliDriver.delSwitch-toggle" onclick="return toggle('MininetCliDriver.delSwitch');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delSwitch">delSwitch</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sw</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.delSwitch-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.delSwitch-expanded"><a name="L1453"></a><tt class="py-lineno">1453</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1454"></a><tt class="py-lineno">1454</tt> <tt class="py-line"><tt class="py-docstring"> delete a switch from the mininet topology</tt> </tt>
-<a name="L1455"></a><tt class="py-lineno">1455</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: This uses a custom mn function. MN repo should be on</tt> </tt>
-<a name="L1456"></a><tt class="py-lineno">1456</tt> <tt class="py-line"><tt class="py-docstring"> dynamic_topo branch</tt> </tt>
-<a name="L1457"></a><tt class="py-lineno">1457</tt> <tt class="py-line"><tt class="py-docstring"> required params:</tt> </tt>
-<a name="L1458"></a><tt class="py-lineno">1458</tt> <tt class="py-line"><tt class="py-docstring"> sw = name of the switch as a string</tt> </tt>
-<a name="L1459"></a><tt class="py-lineno">1459</tt> <tt class="py-line"><tt class="py-docstring"> returns: main.FALSE on an error, else main.TRUE"""</tt> </tt>
-<a name="L1460"></a><tt class="py-lineno">1460</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"delswitch "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1461"></a><tt class="py-lineno">1461</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1462"></a><tt class="py-lineno">1462</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-475" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-475', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1463"></a><tt class="py-lineno">1463</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L1464"></a><tt class="py-lineno">1464</tt> <tt class="py-line"> <tt id="link-476" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-476', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1465"></a><tt class="py-lineno">1465</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1466"></a><tt class="py-lineno">1466</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"no switch named"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1467"></a><tt class="py-lineno">1467</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-477" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-477', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1468"></a><tt class="py-lineno">1468</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1469"></a><tt class="py-lineno">1469</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1470"></a><tt class="py-lineno">1470</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-478" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-478', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1471"></a><tt class="py-lineno">1471</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1472"></a><tt class="py-lineno">1472</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"usage:"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1473"></a><tt class="py-lineno">1473</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-479" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-479', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1474"></a><tt class="py-lineno">1474</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1475"></a><tt class="py-lineno">1475</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1476"></a><tt class="py-lineno">1476</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1477"></a><tt class="py-lineno">1477</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1478"></a><tt class="py-lineno">1478</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-480" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-480', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-481" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-481', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1479"></a><tt class="py-lineno">1479</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-482" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-482', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-483" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-483', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1480"></a><tt class="py-lineno">1480</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-484" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-484', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1481"></a><tt class="py-lineno">1481</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-485" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-485', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1482"></a><tt class="py-lineno">1482</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.addLink"></a><div id="MininetCliDriver.addLink-def"><a name="L1483"></a><tt class="py-lineno">1483</tt> <a class="py-toggle" href="#" id="MininetCliDriver.addLink-toggle" onclick="return toggle('MininetCliDriver.addLink');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addLink">addLink</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">node1</tt><tt class="py-op">,</tt> <tt class="py-param">node2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.addLink-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.addLink-expanded"><a name="L1484"></a><tt class="py-lineno">1484</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1485"></a><tt class="py-lineno">1485</tt> <tt class="py-line"><tt class="py-docstring"> add a link to the mininet topology</tt> </tt>
-<a name="L1486"></a><tt class="py-lineno">1486</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: This uses a custom mn function. MN repo should be on</tt> </tt>
-<a name="L1487"></a><tt class="py-lineno">1487</tt> <tt class="py-line"><tt class="py-docstring"> dynamic_topo branch</tt> </tt>
-<a name="L1488"></a><tt class="py-lineno">1488</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: cannot currently specify what type of link</tt> </tt>
-<a name="L1489"></a><tt class="py-lineno">1489</tt> <tt class="py-line"><tt class="py-docstring"> required params:</tt> </tt>
-<a name="L1490"></a><tt class="py-lineno">1490</tt> <tt class="py-line"><tt class="py-docstring"> node1 = the string node name of the first endpoint of the link</tt> </tt>
-<a name="L1491"></a><tt class="py-lineno">1491</tt> <tt class="py-line"><tt class="py-docstring"> node2 = the string node name of the second endpoint of the link</tt> </tt>
-<a name="L1492"></a><tt class="py-lineno">1492</tt> <tt class="py-line"><tt class="py-docstring"> returns: main.FALSE on an error, else main.TRUE"""</tt> </tt>
-<a name="L1493"></a><tt class="py-lineno">1493</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"addlink "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1494"></a><tt class="py-lineno">1494</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1495"></a><tt class="py-lineno">1495</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-486" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-486', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1496"></a><tt class="py-lineno">1496</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L1497"></a><tt class="py-lineno">1497</tt> <tt class="py-line"> <tt id="link-487" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-487', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1498"></a><tt class="py-lineno">1498</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1499"></a><tt class="py-lineno">1499</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"doesnt exist!"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1500"></a><tt class="py-lineno">1500</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-488" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-488', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1501"></a><tt class="py-lineno">1501</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1502"></a><tt class="py-lineno">1502</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1503"></a><tt class="py-lineno">1503</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-489" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-489', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1504"></a><tt class="py-lineno">1504</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1505"></a><tt class="py-lineno">1505</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"usage:"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1506"></a><tt class="py-lineno">1506</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-490" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-490', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1507"></a><tt class="py-lineno">1507</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1508"></a><tt class="py-lineno">1508</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1509"></a><tt class="py-lineno">1509</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1510"></a><tt class="py-lineno">1510</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1511"></a><tt class="py-lineno">1511</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-491" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-491', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-492" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-492', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1512"></a><tt class="py-lineno">1512</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-493" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-493', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-494" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-494', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1513"></a><tt class="py-lineno">1513</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-495" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-495', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1514"></a><tt class="py-lineno">1514</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-496" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-496', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1515"></a><tt class="py-lineno">1515</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.delLink"></a><div id="MininetCliDriver.delLink-def"><a name="L1516"></a><tt class="py-lineno">1516</tt> <a class="py-toggle" href="#" id="MininetCliDriver.delLink-toggle" onclick="return toggle('MininetCliDriver.delLink');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delLink">delLink</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">node1</tt><tt class="py-op">,</tt> <tt class="py-param">node2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.delLink-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.delLink-expanded"><a name="L1517"></a><tt class="py-lineno">1517</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1518"></a><tt class="py-lineno">1518</tt> <tt class="py-line"><tt class="py-docstring"> delete a link from the mininet topology</tt> </tt>
-<a name="L1519"></a><tt class="py-lineno">1519</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: This uses a custom mn function. MN repo should be on</tt> </tt>
-<a name="L1520"></a><tt class="py-lineno">1520</tt> <tt class="py-line"><tt class="py-docstring"> dynamic_topo branch</tt> </tt>
-<a name="L1521"></a><tt class="py-lineno">1521</tt> <tt class="py-line"><tt class="py-docstring"> required params:</tt> </tt>
-<a name="L1522"></a><tt class="py-lineno">1522</tt> <tt class="py-line"><tt class="py-docstring"> node1 = the string node name of the first endpoint of the link</tt> </tt>
-<a name="L1523"></a><tt class="py-lineno">1523</tt> <tt class="py-line"><tt class="py-docstring"> node2 = the string node name of the second endpoint of the link</tt> </tt>
-<a name="L1524"></a><tt class="py-lineno">1524</tt> <tt class="py-line"><tt class="py-docstring"> returns: main.FALSE on an error, else main.TRUE"""</tt> </tt>
-<a name="L1525"></a><tt class="py-lineno">1525</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"dellink "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1526"></a><tt class="py-lineno">1526</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1527"></a><tt class="py-lineno">1527</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-497" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-497', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1528"></a><tt class="py-lineno">1528</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L1529"></a><tt class="py-lineno">1529</tt> <tt class="py-line"> <tt id="link-498" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-498', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1530"></a><tt class="py-lineno">1530</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1531"></a><tt class="py-lineno">1531</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"no node named"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1532"></a><tt class="py-lineno">1532</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-499" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-499', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1533"></a><tt class="py-lineno">1533</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1534"></a><tt class="py-lineno">1534</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1535"></a><tt class="py-lineno">1535</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-500" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-500', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1536"></a><tt class="py-lineno">1536</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1537"></a><tt class="py-lineno">1537</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"usage:"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1538"></a><tt class="py-lineno">1538</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-501" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-501', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1539"></a><tt class="py-lineno">1539</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1540"></a><tt class="py-lineno">1540</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1541"></a><tt class="py-lineno">1541</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1542"></a><tt class="py-lineno">1542</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1543"></a><tt class="py-lineno">1543</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-502" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-502', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-503" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-503', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1544"></a><tt class="py-lineno">1544</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-504" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-504', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-505" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-505', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1545"></a><tt class="py-lineno">1545</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-506" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-506', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1546"></a><tt class="py-lineno">1546</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-507" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-507', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1547"></a><tt class="py-lineno">1547</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.addHost"></a><div id="MininetCliDriver.addHost-def"><a name="L1548"></a><tt class="py-lineno">1548</tt> <a class="py-toggle" href="#" id="MininetCliDriver.addHost-toggle" onclick="return toggle('MininetCliDriver.addHost');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addHost">addHost</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostname</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">kwargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.addHost-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.addHost-expanded"><a name="L1549"></a><tt class="py-lineno">1549</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1550"></a><tt class="py-lineno">1550</tt> <tt class="py-line"><tt class="py-docstring"> Add a host to the mininet topology</tt> </tt>
-<a name="L1551"></a><tt class="py-lineno">1551</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: This uses a custom mn function. MN repo should be on</tt> </tt>
-<a name="L1552"></a><tt class="py-lineno">1552</tt> <tt class="py-line"><tt class="py-docstring"> dynamic_topo branch</tt> </tt>
-<a name="L1553"></a><tt class="py-lineno">1553</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: cannot currently specify what type of host</tt> </tt>
-<a name="L1554"></a><tt class="py-lineno">1554</tt> <tt class="py-line"><tt class="py-docstring"> required params:</tt> </tt>
-<a name="L1555"></a><tt class="py-lineno">1555</tt> <tt class="py-line"><tt class="py-docstring"> hostname = the string hostname</tt> </tt>
-<a name="L1556"></a><tt class="py-lineno">1556</tt> <tt class="py-line"><tt class="py-docstring"> optional key-value params</tt> </tt>
-<a name="L1557"></a><tt class="py-lineno">1557</tt> <tt class="py-line"><tt class="py-docstring"> switch = "switch name"</tt> </tt>
-<a name="L1558"></a><tt class="py-lineno">1558</tt> <tt class="py-line"><tt class="py-docstring"> returns: main.FALSE on an error, else main.TRUE</tt> </tt>
-<a name="L1559"></a><tt class="py-lineno">1559</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1560"></a><tt class="py-lineno">1560</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">kwargs</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'switch'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1561"></a><tt class="py-lineno">1561</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"addhost "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hostname</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1562"></a><tt class="py-lineno">1562</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1563"></a><tt class="py-lineno">1563</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-508" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-508', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1564"></a><tt class="py-lineno">1564</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L1565"></a><tt class="py-lineno">1565</tt> <tt class="py-line"> <tt id="link-509" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-509', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1566"></a><tt class="py-lineno">1566</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1567"></a><tt class="py-lineno">1567</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"already exists!"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1568"></a><tt class="py-lineno">1568</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-510" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-510', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1569"></a><tt class="py-lineno">1569</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1570"></a><tt class="py-lineno">1570</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"doesnt exists!"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1571"></a><tt class="py-lineno">1571</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-511" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-511', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1572"></a><tt class="py-lineno">1572</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1573"></a><tt class="py-lineno">1573</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1574"></a><tt class="py-lineno">1574</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-512" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-512', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1575"></a><tt class="py-lineno">1575</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1576"></a><tt class="py-lineno">1576</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"usage:"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1577"></a><tt class="py-lineno">1577</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-513" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-513', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1578"></a><tt class="py-lineno">1578</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1579"></a><tt class="py-lineno">1579</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1580"></a><tt class="py-lineno">1580</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1581"></a><tt class="py-lineno">1581</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1582"></a><tt class="py-lineno">1582</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-514" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-514', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-515" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-515', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1583"></a><tt class="py-lineno">1583</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-516" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-516', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-517" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-517', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1584"></a><tt class="py-lineno">1584</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-518" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-518', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1585"></a><tt class="py-lineno">1585</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-519" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-519', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1586"></a><tt class="py-lineno">1586</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.delHost"></a><div id="MininetCliDriver.delHost-def"><a name="L1587"></a><tt class="py-lineno">1587</tt> <a class="py-toggle" href="#" id="MininetCliDriver.delHost-toggle" onclick="return toggle('MininetCliDriver.delHost');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delHost">delHost</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostname</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.delHost-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.delHost-expanded"><a name="L1588"></a><tt class="py-lineno">1588</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1589"></a><tt class="py-lineno">1589</tt> <tt class="py-line"><tt class="py-docstring"> delete a host from the mininet topology</tt> </tt>
-<a name="L1590"></a><tt class="py-lineno">1590</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: This uses a custom mn function. MN repo should be on</tt> </tt>
-<a name="L1591"></a><tt class="py-lineno">1591</tt> <tt class="py-line"><tt class="py-docstring"> dynamic_topo branch</tt> </tt>
-<a name="L1592"></a><tt class="py-lineno">1592</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: this uses a custom mn function</tt> </tt>
-<a name="L1593"></a><tt class="py-lineno">1593</tt> <tt class="py-line"><tt class="py-docstring"> required params:</tt> </tt>
-<a name="L1594"></a><tt class="py-lineno">1594</tt> <tt class="py-line"><tt class="py-docstring"> hostname = the string hostname</tt> </tt>
-<a name="L1595"></a><tt class="py-lineno">1595</tt> <tt class="py-line"><tt class="py-docstring"> returns: main.FALSE on an error, else main.TRUE"""</tt> </tt>
-<a name="L1596"></a><tt class="py-lineno">1596</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"delhost "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hostname</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1597"></a><tt class="py-lineno">1597</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1598"></a><tt class="py-lineno">1598</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-520" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-520', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1599"></a><tt class="py-lineno">1599</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L1600"></a><tt class="py-lineno">1600</tt> <tt class="py-line"> <tt id="link-521" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-521', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1601"></a><tt class="py-lineno">1601</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1602"></a><tt class="py-lineno">1602</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"no host named"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1603"></a><tt class="py-lineno">1603</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-522" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-522', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1604"></a><tt class="py-lineno">1604</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1605"></a><tt class="py-lineno">1605</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1606"></a><tt class="py-lineno">1606</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-523" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-523', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1607"></a><tt class="py-lineno">1607</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1608"></a><tt class="py-lineno">1608</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"usage:"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1609"></a><tt class="py-lineno">1609</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-524" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-524', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1610"></a><tt class="py-lineno">1610</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1611"></a><tt class="py-lineno">1611</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1612"></a><tt class="py-lineno">1612</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1613"></a><tt class="py-lineno">1613</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1614"></a><tt class="py-lineno">1614</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-525" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-525', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-526" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-526', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1615"></a><tt class="py-lineno">1615</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-527" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-527', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-528" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-528', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1616"></a><tt class="py-lineno">1616</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-529" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-529', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1617"></a><tt class="py-lineno">1617</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-530" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-530', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1618"></a><tt class="py-lineno">1618</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.disconnect"></a><div id="MininetCliDriver.disconnect-def"><a name="L1619"></a><tt class="py-lineno">1619</tt> <a class="py-toggle" href="#" id="MininetCliDriver.disconnect-toggle" onclick="return toggle('MininetCliDriver.disconnect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#disconnect">disconnect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.disconnect-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.disconnect-expanded"><a name="L1620"></a><tt class="py-lineno">1620</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1621"></a><tt class="py-lineno">1621</tt> <tt class="py-line"><tt class="py-docstring"> Called at the end of the test to stop the mininet and</tt> </tt>
-<a name="L1622"></a><tt class="py-lineno">1622</tt> <tt class="py-line"><tt class="py-docstring"> disconnect the handle.</tt> </tt>
-<a name="L1623"></a><tt class="py-lineno">1623</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1624"></a><tt class="py-lineno">1624</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-531" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-531', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">''</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1625"></a><tt class="py-lineno">1625</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">'mininet>'</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1626"></a><tt class="py-lineno">1626</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1627"></a><tt class="py-lineno">1627</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1628"></a><tt class="py-lineno">1628</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1629"></a><tt class="py-lineno">1629</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-532" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet" class="py-name" href="#" onclick="return doclink('link-532', 'stopNet', 'link-532');">stopNet</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1630"></a><tt class="py-lineno">1630</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1631"></a><tt class="py-lineno">1631</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1632"></a><tt class="py-lineno">1632</tt> <tt class="py-line"> <tt class="py-comment"># print "Disconnecting Mininet"</tt> </tt>
-<a name="L1633"></a><tt class="py-lineno">1633</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L1634"></a><tt class="py-lineno">1634</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-533" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-533', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"exit"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1635"></a><tt class="py-lineno">1635</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"exit"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1636"></a><tt class="py-lineno">1636</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"(.*)"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1637"></a><tt class="py-lineno">1637</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1638"></a><tt class="py-lineno">1638</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-534" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-534', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-535" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-535', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1639"></a><tt class="py-lineno">1639</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-</div><a name="L1640"></a><tt class="py-lineno">1640</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.stopNet"></a><div id="MininetCliDriver.stopNet-def"><a name="L1641"></a><tt class="py-lineno">1641</tt> <a class="py-toggle" href="#" id="MininetCliDriver.stopNet-toggle" onclick="return toggle('MininetCliDriver.stopNet');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopNet">stopNet</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">fileName</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-param">timeout</tt><tt class="py-op">=</tt><tt class="py-number">5</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.stopNet-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.stopNet-expanded"><a name="L1642"></a><tt class="py-lineno">1642</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1643"></a><tt class="py-lineno">1643</tt> <tt class="py-line"><tt class="py-docstring"> Stops mininet.</tt> </tt>
-<a name="L1644"></a><tt class="py-lineno">1644</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE if the mininet successfully stops and</tt> </tt>
-<a name="L1645"></a><tt class="py-lineno">1645</tt> <tt class="py-line"><tt class="py-docstring"> main.FALSE if the pexpect handle does not exist.</tt> </tt>
-<a name="L1646"></a><tt class="py-lineno">1646</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1647"></a><tt class="py-lineno">1647</tt> <tt class="py-line"><tt class="py-docstring"> Will cleanup and exit the test if mininet fails to stop</tt> </tt>
-<a name="L1648"></a><tt class="py-lineno">1648</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1649"></a><tt class="py-lineno">1649</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-536" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-536', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Stopping mininet..."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1650"></a><tt class="py-lineno">1650</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L1651"></a><tt class="py-lineno">1651</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L1652"></a><tt class="py-lineno">1652</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1653"></a><tt class="py-lineno">1653</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-537" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-537', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1654"></a><tt class="py-lineno">1654</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">'mininet>'</tt><tt class="py-op">,</tt> </tt>
-<a name="L1655"></a><tt class="py-lineno">1655</tt> <tt class="py-line"> <tt class="py-string">'\$'</tt><tt class="py-op">,</tt> </tt>
-<a name="L1656"></a><tt class="py-lineno">1656</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt> </tt>
-<a name="L1657"></a><tt class="py-lineno">1657</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1658"></a><tt class="py-lineno">1658</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1659"></a><tt class="py-lineno">1659</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1660"></a><tt class="py-lineno">1660</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-538" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-538', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Exiting mininet..."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1661"></a><tt class="py-lineno">1661</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-539" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-539', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1662"></a><tt class="py-lineno">1662</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"exit"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1663"></a><tt class="py-lineno">1663</tt> <tt class="py-line"> <tt id="link-540" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-540', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"(.*)"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1664"></a><tt class="py-lineno">1664</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1665"></a><tt class="py-lineno">1665</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-541" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-541', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Stopped"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1666"></a><tt class="py-lineno">1666</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-542" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-542', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"sudo mn -c"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1667"></a><tt class="py-lineno">1667</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1668"></a><tt class="py-lineno">1668</tt> <tt class="py-line"> </tt>
-<a name="L1669"></a><tt class="py-lineno">1669</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1670"></a><tt class="py-lineno">1670</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-543" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-543', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">" Mininet trying to exit while not "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1671"></a><tt class="py-lineno">1671</tt> <tt class="py-line"> <tt class="py-string">"in the mininet prompt"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1672"></a><tt class="py-lineno">1672</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L1673"></a><tt class="py-lineno">1673</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-544" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-544', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-545" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-545', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Something went wrong exiting mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1674"></a><tt class="py-lineno">1674</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> <tt class="py-comment"># timeout</tt> </tt>
-<a name="L1675"></a><tt class="py-lineno">1675</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-546" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-546', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-547" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-547', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Something went wrong exiting mininet "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1676"></a><tt class="py-lineno">1676</tt> <tt class="py-line"> <tt class="py-string">"TIMEOUT"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1677"></a><tt class="py-lineno">1677</tt> <tt class="py-line"> </tt>
-<a name="L1678"></a><tt class="py-lineno">1678</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">fileName</tt><tt class="py-op">:</tt> </tt>
-<a name="L1679"></a><tt class="py-lineno">1679</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-548" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-548', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1680"></a><tt class="py-lineno">1680</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">'\$'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1681"></a><tt class="py-lineno">1681</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-549" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-549', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1682"></a><tt class="py-lineno">1682</tt> <tt class="py-line"> <tt class="py-string">"sudo kill -9 \`ps -ef | grep \""</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1683"></a><tt class="py-lineno">1683</tt> <tt class="py-line"> <tt class="py-name">fileName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1684"></a><tt class="py-lineno">1684</tt> <tt class="py-line"> <tt class="py-string">"\" | grep -v grep | awk '{print $2}'\`"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1685"></a><tt class="py-lineno">1685</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1686"></a><tt class="py-lineno">1686</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-550" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-550', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-551" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-551', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1687"></a><tt class="py-lineno">1687</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-552" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-552', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-553" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-553', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1688"></a><tt class="py-lineno">1688</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-554" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-554', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1689"></a><tt class="py-lineno">1689</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-555" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-555', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1690"></a><tt class="py-lineno">1690</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1691"></a><tt class="py-lineno">1691</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-556" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-556', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-557" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-557', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1692"></a><tt class="py-lineno">1692</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1693"></a><tt class="py-lineno">1693</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-</div><a name="L1694"></a><tt class="py-lineno">1694</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.arping"></a><div id="MininetCliDriver.arping-def"><a name="L1695"></a><tt class="py-lineno">1695</tt> <a class="py-toggle" href="#" id="MininetCliDriver.arping-toggle" onclick="return toggle('MininetCliDriver.arping');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#arping">arping</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">host</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">=</tt><tt class="py-string">"10.128.20.211"</tt><tt class="py-op">,</tt> <tt class="py-param">ethDevice</tt><tt class="py-op">=</tt><tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.arping-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.arping-expanded"><a name="L1696"></a><tt class="py-lineno">1696</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1697"></a><tt class="py-lineno">1697</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1698"></a><tt class="py-lineno">1698</tt> <tt class="py-line"><tt class="py-docstring"> Sends arp message from mininet host for hosts discovery</tt> </tt>
-<a name="L1699"></a><tt class="py-lineno">1699</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L1700"></a><tt class="py-lineno">1700</tt> <tt class="py-line"><tt class="py-docstring"> host - hosts name</tt> </tt>
-<a name="L1701"></a><tt class="py-lineno">1701</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L1702"></a><tt class="py-lineno">1702</tt> <tt class="py-line"><tt class="py-docstring"> ip - ip address that does not exist in the network so there would</tt> </tt>
-<a name="L1703"></a><tt class="py-lineno">1703</tt> <tt class="py-line"><tt class="py-docstring"> be no reply.</tt> </tt>
-<a name="L1704"></a><tt class="py-lineno">1704</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1705"></a><tt class="py-lineno">1705</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethDevice</tt><tt class="py-op">:</tt> </tt>
-<a name="L1706"></a><tt class="py-lineno">1706</tt> <tt class="py-line"> <tt class="py-name">ethDevice</tt> <tt class="py-op">=</tt> <tt class="py-string">'-I '</tt> <tt class="py-op">+</tt> <tt class="py-name">ethDevice</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L1707"></a><tt class="py-lineno">1707</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">" py "</tt> <tt class="py-op">+</tt> <tt class="py-name">host</tt> <tt class="py-op">+</tt> <tt class="py-string">".cmd(\"arping -c 1 "</tt> <tt class="py-op">+</tt> <tt class="py-name">ethDevice</tt> <tt class="py-op">+</tt> <tt class="py-name">ip</tt> <tt class="py-op">+</tt> <tt class="py-string">"\")"</tt> </tt>
-<a name="L1708"></a><tt class="py-lineno">1708</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1709"></a><tt class="py-lineno">1709</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-558" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-558', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Sending: "</tt> <tt class="py-op">+</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1710"></a><tt class="py-lineno">1710</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-559" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-559', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1711"></a><tt class="py-lineno">1711</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L1712"></a><tt class="py-lineno">1712</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-560" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-560', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1713"></a><tt class="py-lineno">1713</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1714"></a><tt class="py-lineno">1714</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1715"></a><tt class="py-lineno">1715</tt> <tt class="py-line"> </tt>
-<a name="L1716"></a><tt class="py-lineno">1716</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1717"></a><tt class="py-lineno">1717</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-561" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-561', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-562" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-562', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1718"></a><tt class="py-lineno">1718</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-563" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-563', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-564" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-564', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1719"></a><tt class="py-lineno">1719</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-565" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-565', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1720"></a><tt class="py-lineno">1720</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-566" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-566', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1721"></a><tt class="py-lineno">1721</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.decToHex"></a><div id="MininetCliDriver.decToHex-def"><a name="L1722"></a><tt class="py-lineno">1722</tt> <a class="py-toggle" href="#" id="MininetCliDriver.decToHex-toggle" onclick="return toggle('MininetCliDriver.decToHex');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#decToHex">decToHex</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">num</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.decToHex-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.decToHex-expanded"><a name="L1723"></a><tt class="py-lineno">1723</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt> <tt class="py-name">num</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">'x'</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-</div><a name="L1724"></a><tt class="py-lineno">1724</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.getSwitchFlowCount"></a><div id="MininetCliDriver.getSwitchFlowCount-def"><a name="L1725"></a><tt class="py-lineno">1725</tt> <a class="py-toggle" href="#" id="MininetCliDriver.getSwitchFlowCount-toggle" onclick="return toggle('MininetCliDriver.getSwitchFlowCount');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitchFlowCount">getSwitchFlowCount</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">switch</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.getSwitchFlowCount-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.getSwitchFlowCount-expanded"><a name="L1726"></a><tt class="py-lineno">1726</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1727"></a><tt class="py-lineno">1727</tt> <tt class="py-line"><tt class="py-docstring"> return the Flow Count of the switch"""</tt> </tt>
-<a name="L1728"></a><tt class="py-lineno">1728</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L1729"></a><tt class="py-lineno">1729</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"sh ovs-ofctl dump-aggregate %s"</tt> <tt class="py-op">%</tt> <tt class="py-name">switch</tt> </tt>
-<a name="L1730"></a><tt class="py-lineno">1730</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1731"></a><tt class="py-lineno">1731</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-567" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-567', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1732"></a><tt class="py-lineno">1732</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">cmd</tt><tt class="py-op">,</tt> </tt>
-<a name="L1733"></a><tt class="py-lineno">1733</tt> <tt class="py-line"> <tt id="link-568" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-568', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1734"></a><tt class="py-lineno">1734</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1735"></a><tt class="py-lineno">1735</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1736"></a><tt class="py-lineno">1736</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-569" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-569', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-570" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-570', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1737"></a><tt class="py-lineno">1737</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-571" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-571', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-572" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-572', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1738"></a><tt class="py-lineno">1738</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-573" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-573', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1739"></a><tt class="py-lineno">1739</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-574" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-574', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1740"></a><tt class="py-lineno">1740</tt> <tt class="py-line"> <tt class="py-name">pattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"flow_count=(\d+)"</tt> </tt>
-<a name="L1741"></a><tt class="py-lineno">1741</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">pattern</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt><tt class="py-op">,</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">MULTILINE</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1742"></a><tt class="py-lineno">1742</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">result</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1743"></a><tt class="py-lineno">1743</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-575" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-575', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L1744"></a><tt class="py-lineno">1744</tt> <tt class="py-line"> <tt class="py-string">"Couldn't find flows on switch %s, found: %s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L1745"></a><tt class="py-lineno">1745</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1746"></a><tt class="py-lineno">1746</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1747"></a><tt class="py-lineno">1747</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1748"></a><tt class="py-lineno">1748</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1749"></a><tt class="py-lineno">1749</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-576" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-576', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-577" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-577', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Connection failed to the Mininet host"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1750"></a><tt class="py-lineno">1750</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.checkFlows"></a><div id="MininetCliDriver.checkFlows-def"><a name="L1751"></a><tt class="py-lineno">1751</tt> <a class="py-toggle" href="#" id="MininetCliDriver.checkFlows-toggle" onclick="return toggle('MininetCliDriver.checkFlows');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#checkFlows">checkFlows</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sw</tt><tt class="py-op">,</tt> <tt class="py-param">dumpFormat</tt><tt class="py-op">=</tt><tt class="py-name">None</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.checkFlows-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.checkFlows-expanded"><a name="L1752"></a><tt class="py-lineno">1752</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">dumpFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L1753"></a><tt class="py-lineno">1753</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"sh ovs-ofctl -F "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1754"></a><tt class="py-lineno">1754</tt> <tt class="py-line"> <tt class="py-name">dumpFormat</tt> <tt class="py-op">+</tt> <tt class="py-string">" dump-flows "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1755"></a><tt class="py-lineno">1755</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1756"></a><tt class="py-lineno">1756</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"sh ovs-ofctl dump-flows "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1757"></a><tt class="py-lineno">1757</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1758"></a><tt class="py-lineno">1758</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-578" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-578', 'execute', 'link-139');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1759"></a><tt class="py-lineno">1759</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L1760"></a><tt class="py-lineno">1760</tt> <tt class="py-line"> <tt id="link-579" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-579', 'prompt', 'link-140');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1761"></a><tt class="py-lineno">1761</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1762"></a><tt class="py-lineno">1762</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-<a name="L1763"></a><tt class="py-lineno">1763</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1764"></a><tt class="py-lineno">1764</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-580" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-580', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-581" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-581', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1765"></a><tt class="py-lineno">1765</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-582" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-582', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-583" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-583', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1766"></a><tt class="py-lineno">1766</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-584" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-584', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1767"></a><tt class="py-lineno">1767</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-585" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-585', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1768"></a><tt class="py-lineno">1768</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.getFlowTable"></a><div id="MininetCliDriver.getFlowTable-def"><a name="L1769"></a><tt class="py-lineno">1769</tt> <a class="py-toggle" href="#" id="MininetCliDriver.getFlowTable-toggle" onclick="return toggle('MininetCliDriver.getFlowTable');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getFlowTable">getFlowTable</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">protoVersion</tt><tt class="py-op">,</tt> <tt class="py-param">sw</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.getFlowTable-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.getFlowTable-expanded"><a name="L1770"></a><tt class="py-lineno">1770</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1771"></a><tt class="py-lineno">1771</tt> <tt class="py-line"><tt class="py-docstring"> Returns certain fields of an OVS flow table. Will force output to</tt> </tt>
-<a name="L1772"></a><tt class="py-lineno">1772</tt> <tt class="py-line"><tt class="py-docstring"> either OF 1.0 or 1.3 format for consistency.</tt> </tt>
-<a name="L1773"></a><tt class="py-lineno">1773</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1774"></a><tt class="py-lineno">1774</tt> <tt class="py-line"><tt class="py-docstring"> TODO add option to look at cookies. ignoring them for now</tt> </tt>
-<a name="L1775"></a><tt class="py-lineno">1775</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1776"></a><tt class="py-lineno">1776</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: Use format to force consistent flow table output across</tt> </tt>
-<a name="L1777"></a><tt class="py-lineno">1777</tt> <tt class="py-line"><tt class="py-docstring"> versions</tt> </tt>
-<a name="L1778"></a><tt class="py-lineno">1778</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1779"></a><tt class="py-lineno">1779</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1780"></a><tt class="py-lineno">1780</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-586" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-586', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1781"></a><tt class="py-lineno">1781</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1782"></a><tt class="py-lineno">1782</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"sh ovs-ofctl dump-flows "</tt> <tt class="py-op">+</tt> <tt class="py-name">sw</tt> </tt>
-<a name="L1783"></a><tt class="py-lineno">1783</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">protoVersion</tt> <tt class="py-op">==</tt> <tt class="py-number">1.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1784"></a><tt class="py-lineno">1784</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -F OpenFlow10-table_id | awk '{OFS=\",\" ;"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1785"></a><tt class="py-lineno">1785</tt> <tt class="py-line"> <tt class="py-string">" print $1 $3 $6 $7 $8}' | "</tt> </tt>
-<a name="L1786"></a><tt class="py-lineno">1786</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">protoVersion</tt> <tt class="py-op">==</tt> <tt class="py-number">1.3</tt><tt class="py-op">:</tt> </tt>
-<a name="L1787"></a><tt class="py-lineno">1787</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -O OpenFlow13 | awk '{OFS=\",\" ;"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1788"></a><tt class="py-lineno">1788</tt> <tt class="py-line"> <tt class="py-string">" print $1 $3 $6 $7}' | "</tt> </tt>
-<a name="L1789"></a><tt class="py-lineno">1789</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1790"></a><tt class="py-lineno">1790</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-587" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-587', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-588" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-588', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1791"></a><tt class="py-lineno">1791</tt> <tt class="py-line"> <tt class="py-string">"Unknown protoVersion in getFlowTable(). given: ("</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1792"></a><tt class="py-lineno">1792</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt> <tt class="py-name">protoVersion</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1793"></a><tt class="py-lineno">1793</tt> <tt class="py-line"> <tt class="py-string">") '"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">protoVersion</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"'"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1794"></a><tt class="py-lineno">1794</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1795"></a><tt class="py-lineno">1795</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">+=</tt> <tt class="py-string">"cut -d ',' -f 2- | sort -n -k1 -r"</tt> </tt>
-<a name="L1796"></a><tt class="py-lineno">1796</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-589" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-589', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">command</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1797"></a><tt class="py-lineno">1797</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"sort"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1798"></a><tt class="py-lineno">1798</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"OFPST_FLOW"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1799"></a><tt class="py-lineno">1799</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L1800"></a><tt class="py-lineno">1800</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-<a name="L1801"></a><tt class="py-lineno">1801</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1802"></a><tt class="py-lineno">1802</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-590" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-590', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-591" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-591', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1803"></a><tt class="py-lineno">1803</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-592" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-592', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-593" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-593', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1804"></a><tt class="py-lineno">1804</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-594" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-594', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1805"></a><tt class="py-lineno">1805</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-595" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-595', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1806"></a><tt class="py-lineno">1806</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">:</tt> </tt>
-<a name="L1807"></a><tt class="py-lineno">1807</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-596" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-596', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Timeout exception: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1808"></a><tt class="py-lineno">1808</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L1809"></a><tt class="py-lineno">1809</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.flowComp"></a><div id="MininetCliDriver.flowComp-def"><a name="L1810"></a><tt class="py-lineno">1810</tt> <a class="py-toggle" href="#" id="MininetCliDriver.flowComp-toggle" onclick="return toggle('MininetCliDriver.flowComp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#flowComp">flowComp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">flow1</tt><tt class="py-op">,</tt> <tt class="py-param">flow2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.flowComp-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.flowComp-expanded"><a name="L1811"></a><tt class="py-lineno">1811</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">flow1</tt> <tt class="py-op">==</tt> <tt class="py-name">flow2</tt><tt class="py-op">:</tt> </tt>
-<a name="L1812"></a><tt class="py-lineno">1812</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1813"></a><tt class="py-lineno">1813</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1814"></a><tt class="py-lineno">1814</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-597" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-597', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Flow tables do not match, printing tables:"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1815"></a><tt class="py-lineno">1815</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-598" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-598', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Flow Table 1:"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1816"></a><tt class="py-lineno">1816</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-599" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-599', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">flow1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1817"></a><tt class="py-lineno">1817</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-600" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-600', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Flow Table 2:"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1818"></a><tt class="py-lineno">1818</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-601" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-601', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">flow2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1819"></a><tt class="py-lineno">1819</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L1820"></a><tt class="py-lineno">1820</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.startTcpdump"></a><div id="MininetCliDriver.startTcpdump-def"><a name="L1821"></a><tt class="py-lineno">1821</tt> <a class="py-toggle" href="#" id="MininetCliDriver.startTcpdump-toggle" onclick="return toggle('MininetCliDriver.startTcpdump');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startTcpdump">startTcpdump</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">,</tt> <tt class="py-param">intf</tt><tt class="py-op">=</tt><tt class="py-string">"eth0"</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"port 6633"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.startTcpdump-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.startTcpdump-expanded"><a name="L1822"></a><tt class="py-lineno">1822</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1823"></a><tt class="py-lineno">1823</tt> <tt class="py-line"><tt class="py-docstring"> Runs tpdump on an interface and saves the file</tt> </tt>
-<a name="L1824"></a><tt class="py-lineno">1824</tt> <tt class="py-line"><tt class="py-docstring"> intf can be specified, or the default eth0 is used"""</tt> </tt>
-<a name="L1825"></a><tt class="py-lineno">1825</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1826"></a><tt class="py-lineno">1826</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-602" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-602', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1827"></a><tt class="py-lineno">1827</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1828"></a><tt class="py-lineno">1828</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-603" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-603', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1829"></a><tt class="py-lineno">1829</tt> <tt class="py-line"> <tt class="py-string">"sh sudo tcpdump -n -i "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1830"></a><tt class="py-lineno">1830</tt> <tt class="py-line"> <tt class="py-name">intf</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1831"></a><tt class="py-lineno">1831</tt> <tt class="py-line"> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1832"></a><tt class="py-lineno">1832</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1833"></a><tt class="py-lineno">1833</tt> <tt class="py-line"> <tt class="py-string">" -w "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1834"></a><tt class="py-lineno">1834</tt> <tt class="py-line"> <tt class="py-name">filename</tt><tt class="py-op">.</tt><tt class="py-name">strip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1835"></a><tt class="py-lineno">1835</tt> <tt class="py-line"> <tt class="py-string">" &"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1836"></a><tt class="py-lineno">1836</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-604" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-604', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1837"></a><tt class="py-lineno">1837</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">'No\ssuch\device'</tt><tt class="py-op">,</tt> </tt>
-<a name="L1838"></a><tt class="py-lineno">1838</tt> <tt class="py-line"> <tt class="py-string">'listening\son'</tt><tt class="py-op">,</tt> </tt>
-<a name="L1839"></a><tt class="py-lineno">1839</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">,</tt> </tt>
-<a name="L1840"></a><tt class="py-lineno">1840</tt> <tt class="py-line"> <tt class="py-string">"mininet>"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1841"></a><tt class="py-lineno">1841</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1842"></a><tt class="py-lineno">1842</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-605" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-605', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1843"></a><tt class="py-lineno">1843</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-606" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-606', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1844"></a><tt class="py-lineno">1844</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1845"></a><tt class="py-lineno">1845</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1846"></a><tt class="py-lineno">1846</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-607" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-607', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-608" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-608', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1847"></a><tt class="py-lineno">1847</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1848"></a><tt class="py-lineno">1848</tt> <tt class="py-line"> <tt class="py-string">": tcpdump - No such device exists. "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1849"></a><tt class="py-lineno">1849</tt> <tt class="py-line"> <tt class="py-string">"tcpdump attempted on: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1850"></a><tt class="py-lineno">1850</tt> <tt class="py-line"> <tt class="py-name">intf</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1851"></a><tt class="py-lineno">1851</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1852"></a><tt class="py-lineno">1852</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1853"></a><tt class="py-lineno">1853</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-609" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-609', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": tcpdump started on "</tt> <tt class="py-op">+</tt> <tt class="py-name">intf</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1854"></a><tt class="py-lineno">1854</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1855"></a><tt class="py-lineno">1855</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L1856"></a><tt class="py-lineno">1856</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-610" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-610', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-611" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-611', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1857"></a><tt class="py-lineno">1857</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1858"></a><tt class="py-lineno">1858</tt> <tt class="py-line"> <tt class="py-string">": tcpdump command timed out! Check interface name,"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1859"></a><tt class="py-lineno">1859</tt> <tt class="py-line"> <tt class="py-string">" given interface was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1860"></a><tt class="py-lineno">1860</tt> <tt class="py-line"> <tt class="py-name">intf</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1861"></a><tt class="py-lineno">1861</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1862"></a><tt class="py-lineno">1862</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L1863"></a><tt class="py-lineno">1863</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-612" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-612', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1864"></a><tt class="py-lineno">1864</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1865"></a><tt class="py-lineno">1865</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1866"></a><tt class="py-lineno">1866</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-613" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-613', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-614" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-614', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": tcpdump - unexpected response"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1867"></a><tt class="py-lineno">1867</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1868"></a><tt class="py-lineno">1868</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1869"></a><tt class="py-lineno">1869</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-615" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-615', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-616" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-616', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1870"></a><tt class="py-lineno">1870</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-617" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-617', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-618" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-618', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1871"></a><tt class="py-lineno">1871</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-619" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-619', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1872"></a><tt class="py-lineno">1872</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-620" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-620', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1873"></a><tt class="py-lineno">1873</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1874"></a><tt class="py-lineno">1874</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-621" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-621', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1875"></a><tt class="py-lineno">1875</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-622" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-622', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1876"></a><tt class="py-lineno">1876</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-623" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-623', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1877"></a><tt class="py-lineno">1877</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.stopTcpdump"></a><div id="MininetCliDriver.stopTcpdump-def"><a name="L1878"></a><tt class="py-lineno">1878</tt> <a class="py-toggle" href="#" id="MininetCliDriver.stopTcpdump-toggle" onclick="return toggle('MininetCliDriver.stopTcpdump');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopTcpdump">stopTcpdump</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.stopTcpdump-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.stopTcpdump-expanded"><a name="L1879"></a><tt class="py-lineno">1879</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1880"></a><tt class="py-lineno">1880</tt> <tt class="py-line"><tt class="py-docstring"> pkills tcpdump"""</tt> </tt>
-<a name="L1881"></a><tt class="py-lineno">1881</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1882"></a><tt class="py-lineno">1882</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-624" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-624', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"sh sudo pkill tcpdump"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1883"></a><tt class="py-lineno">1883</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1884"></a><tt class="py-lineno">1884</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-625" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-625', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1885"></a><tt class="py-lineno">1885</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1886"></a><tt class="py-lineno">1886</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1887"></a><tt class="py-lineno">1887</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-626" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-626', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-627" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-627', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1888"></a><tt class="py-lineno">1888</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-628" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-628', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-629" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-629', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1889"></a><tt class="py-lineno">1889</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-630" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-630', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1890"></a><tt class="py-lineno">1890</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-631" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-631', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1891"></a><tt class="py-lineno">1891</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1892"></a><tt class="py-lineno">1892</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-632" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-632', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1893"></a><tt class="py-lineno">1893</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-633" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-633', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1894"></a><tt class="py-lineno">1894</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-634" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-634', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1895"></a><tt class="py-lineno">1895</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.getPorts"></a><div id="MininetCliDriver.getPorts-def"><a name="L1896"></a><tt class="py-lineno">1896</tt> <a class="py-toggle" href="#" id="MininetCliDriver.getPorts-toggle" onclick="return toggle('MininetCliDriver.getPorts');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getPorts">getPorts</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">nodeName</tt><tt class="py-op">,</tt> <tt class="py-param">verbose</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.getPorts-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.getPorts-expanded"><a name="L1897"></a><tt class="py-lineno">1897</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1898"></a><tt class="py-lineno">1898</tt> <tt class="py-line"><tt class="py-docstring"> Read ports from a Mininet switch.</tt> </tt>
-<a name="L1899"></a><tt class="py-lineno">1899</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1900"></a><tt class="py-lineno">1900</tt> <tt class="py-line"><tt class="py-docstring"> Returns a json structure containing information about the</tt> </tt>
-<a name="L1901"></a><tt class="py-lineno">1901</tt> <tt class="py-line"><tt class="py-docstring"> ports of the given switch.</tt> </tt>
-<a name="L1902"></a><tt class="py-lineno">1902</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1903"></a><tt class="py-lineno">1903</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-635" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getInterfaces()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getInterfaces"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getInterfaces" class="py-name" href="#" onclick="return doclink('link-635', 'getInterfaces', 'link-635');">getInterfaces</a></tt><tt class="py-op">(</tt> <tt class="py-name">nodeName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1904"></a><tt class="py-lineno">1904</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Sanity check on response. log if no such switch exists</tt> </tt>
-<a name="L1905"></a><tt class="py-lineno">1905</tt> <tt class="py-line"> <tt id="link-636" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#ports"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-636', 'ports', 'link-636');">ports</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1906"></a><tt class="py-lineno">1906</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1907"></a><tt class="py-lineno">1907</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">startswith</tt><tt class="py-op">(</tt> <tt class="py-string">"name="</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1908"></a><tt class="py-lineno">1908</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L1909"></a><tt class="py-lineno">1909</tt> <tt class="py-line"> <tt class="py-name">portVars</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L1910"></a><tt class="py-lineno">1910</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">var</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1911"></a><tt class="py-lineno">1911</tt> <tt class="py-line"> <tt class="py-name">key</tt><tt class="py-op">,</tt> <tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt class="py-name">var</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"="</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1912"></a><tt class="py-lineno">1912</tt> <tt class="py-line"> <tt class="py-name">portVars</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">value</tt> </tt>
-<a name="L1913"></a><tt class="py-lineno">1913</tt> <tt class="py-line"> <tt class="py-name">isUp</tt> <tt class="py-op">=</tt> <tt class="py-name">portVars</tt><tt class="py-op">.</tt><tt class="py-name">pop</tt><tt class="py-op">(</tt> <tt class="py-string">'enabled'</tt><tt class="py-op">,</tt> <tt class="py-string">"True"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1914"></a><tt class="py-lineno">1914</tt> <tt class="py-line"> <tt class="py-name">isUp</tt> <tt class="py-op">=</tt> <tt class="py-string">"True"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">isUp</tt> </tt>
-<a name="L1915"></a><tt class="py-lineno">1915</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">verbose</tt><tt class="py-op">:</tt> </tt>
-<a name="L1916"></a><tt class="py-lineno">1916</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-637" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-637', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Reading switch port %s(%s)"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L1917"></a><tt class="py-lineno">1917</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">portVars</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">portVars</tt><tt class="py-op">[</tt> <tt class="py-string">'mac'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1918"></a><tt class="py-lineno">1918</tt> <tt class="py-line"> <tt class="py-name">mac</tt> <tt class="py-op">=</tt> <tt class="py-name">portVars</tt><tt class="py-op">[</tt> <tt class="py-string">'mac'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1919"></a><tt class="py-lineno">1919</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">mac</tt> <tt class="py-op">==</tt> <tt class="py-string">'None'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1920"></a><tt class="py-lineno">1920</tt> <tt class="py-line"> <tt class="py-name">mac</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1921"></a><tt class="py-lineno">1921</tt> <tt class="py-line"> <tt class="py-name">ips</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1922"></a><tt class="py-lineno">1922</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">portVars</tt><tt class="py-op">[</tt> <tt class="py-string">'ip'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1923"></a><tt class="py-lineno">1923</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">'None'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1924"></a><tt class="py-lineno">1924</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1925"></a><tt class="py-lineno">1925</tt> <tt class="py-line"> <tt class="py-name">ips</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1926"></a><tt class="py-lineno">1926</tt> <tt class="py-line"> <tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">portVars</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1927"></a><tt class="py-lineno">1927</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">name</tt> <tt class="py-op">==</tt> <tt class="py-string">'None'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1928"></a><tt class="py-lineno">1928</tt> <tt class="py-line"> <tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1929"></a><tt class="py-lineno">1929</tt> <tt class="py-line"> <tt class="py-name">portRe</tt> <tt class="py-op">=</tt> <tt class="py-string">r'[^\-]\d\-eth(?P<port>\d+)'</tt> </tt>
-<a name="L1930"></a><tt class="py-lineno">1930</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">name</tt> <tt class="py-op">==</tt> <tt class="py-string">'lo'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1931"></a><tt class="py-lineno">1931</tt> <tt class="py-line"> <tt class="py-name">portNo</tt> <tt class="py-op">=</tt> <tt class="py-number">0xfffe</tt> <tt class="py-comment"># TODO: 1.0 value - Should we just return lo?</tt> </tt>
-<a name="L1932"></a><tt class="py-lineno">1932</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1933"></a><tt class="py-lineno">1933</tt> <tt class="py-line"> <tt class="py-name">portNo</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">portRe</tt><tt class="py-op">,</tt> <tt class="py-name">name</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-string">'port'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1934"></a><tt class="py-lineno">1934</tt> <tt class="py-line"> <tt id="link-638" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-638', 'ports', 'link-636');">ports</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">{</tt> <tt class="py-string">'of_port'</tt><tt class="py-op">:</tt> <tt class="py-name">portNo</tt><tt class="py-op">,</tt> </tt>
-<a name="L1935"></a><tt class="py-lineno">1935</tt> <tt class="py-line"> <tt class="py-string">'mac'</tt><tt class="py-op">:</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">'\''</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1936"></a><tt class="py-lineno">1936</tt> <tt class="py-line"> <tt class="py-string">'name'</tt><tt class="py-op">:</tt> <tt class="py-name">name</tt><tt class="py-op">,</tt> </tt>
-<a name="L1937"></a><tt class="py-lineno">1937</tt> <tt class="py-line"> <tt class="py-string">'ips'</tt><tt class="py-op">:</tt> <tt class="py-name">ips</tt><tt class="py-op">,</tt> </tt>
-<a name="L1938"></a><tt class="py-lineno">1938</tt> <tt class="py-line"> <tt class="py-string">'enabled'</tt><tt class="py-op">:</tt> <tt class="py-name">isUp</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1939"></a><tt class="py-lineno">1939</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-639" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-639', 'ports', 'link-636');">ports</a></tt> </tt>
-</div><a name="L1940"></a><tt class="py-lineno">1940</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.getSwitches"></a><div id="MininetCliDriver.getSwitches-def"><a name="L1941"></a><tt class="py-lineno">1941</tt> <a class="py-toggle" href="#" id="MininetCliDriver.getSwitches-toggle" onclick="return toggle('MininetCliDriver.getSwitches');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitches">getSwitches</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">verbose</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.getSwitches-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.getSwitches-expanded"><a name="L1942"></a><tt class="py-lineno">1942</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1943"></a><tt class="py-lineno">1943</tt> <tt class="py-line"><tt class="py-docstring"> Read switches from Mininet.</tt> </tt>
-<a name="L1944"></a><tt class="py-lineno">1944</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1945"></a><tt class="py-lineno">1945</tt> <tt class="py-line"><tt class="py-docstring"> Returns a dictionary whose keys are the switch names and the value is</tt> </tt>
-<a name="L1946"></a><tt class="py-lineno">1946</tt> <tt class="py-line"><tt class="py-docstring"> a dictionary containing information about the switch.</tt> </tt>
-<a name="L1947"></a><tt class="py-lineno">1947</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1948"></a><tt class="py-lineno">1948</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: To support new Mininet switch classes, just append the new</tt> </tt>
-<a name="L1949"></a><tt class="py-lineno">1949</tt> <tt class="py-line"> <tt class="py-comment"># class to the switchClasses variable</tt> </tt>
-<a name="L1950"></a><tt class="py-lineno">1950</tt> <tt class="py-line"> </tt>
-<a name="L1951"></a><tt class="py-lineno">1951</tt> <tt class="py-line"> <tt class="py-comment"># Regex patterns to parse 'dump' output</tt> </tt>
-<a name="L1952"></a><tt class="py-lineno">1952</tt> <tt class="py-line"> <tt class="py-comment"># Example Switches:</tt> </tt>
-<a name="L1953"></a><tt class="py-lineno">1953</tt> <tt class="py-line"> <tt class="py-comment"># <OVSSwitch s1: lo:127.0.0.1,s1-eth1:None,s1-eth2:None,s1-eth3:None pid=5238></tt> </tt>
-<a name="L1954"></a><tt class="py-lineno">1954</tt> <tt class="py-line"> <tt class="py-comment"># <OVSSwitch{ 'protocols': 'OpenFlow10' } s1: lo:127.0.0.1,s1-eth1:None,s1-eth2:None pid=25974></tt> </tt>
-<a name="L1955"></a><tt class="py-lineno">1955</tt> <tt class="py-line"> <tt class="py-comment"># <OVSSwitchNS s1: lo:127.0.0.1,s1-eth1:None,s1-eth2:None,s1-eth3:None pid=22550></tt> </tt>
-<a name="L1956"></a><tt class="py-lineno">1956</tt> <tt class="py-line"> <tt class="py-comment"># <OVSBridge s1: lo:127.0.0.1,s1-eth1:None,s1-eth2:None pid=26830></tt> </tt>
-<a name="L1957"></a><tt class="py-lineno">1957</tt> <tt class="py-line"> <tt class="py-comment"># <UserSwitch s1: lo:127.0.0.1,s1-eth1:None,s1-eth2:None pid=14737></tt> </tt>
-<a name="L1958"></a><tt class="py-lineno">1958</tt> <tt class="py-line"> <tt class="py-name">switchClasses</tt> <tt class="py-op">=</tt> <tt class="py-string">r"(OVSSwitch)|(OVSBridge)|(OVSSwitchNS)|(IVSSwitch)|(LinuxBridge)|(UserSwitch)"</tt> </tt>
-<a name="L1959"></a><tt class="py-lineno">1959</tt> <tt class="py-line"> <tt class="py-name">swRE</tt> <tt class="py-op">=</tt> <tt class="py-string">r"<(?P<class>"</tt> <tt class="py-op">+</tt> <tt class="py-name">switchClasses</tt> <tt class="py-op">+</tt> <tt class="py-string">r")"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1960"></a><tt class="py-lineno">1960</tt> <tt class="py-line"> <tt class="py-string">r"(?P<options>\{.*\})?\s"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1961"></a><tt class="py-lineno">1961</tt> <tt class="py-line"> <tt class="py-string">r"(?P<name>[^:]+)\:\s"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1962"></a><tt class="py-lineno">1962</tt> <tt class="py-line"> <tt class="py-string">r"(?P<ports>([^,]+,)*[^,\s]+)"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1963"></a><tt class="py-lineno">1963</tt> <tt class="py-line"> <tt class="py-string">r"\spid=(?P<pid>(\d)+)"</tt> </tt>
-<a name="L1964"></a><tt class="py-lineno">1964</tt> <tt class="py-line"> <tt class="py-comment"># Update mn port info</tt> </tt>
-<a name="L1965"></a><tt class="py-lineno">1965</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-640" class="py-name" targets="Method TestON.core.dicttoobject.DictToObject.update()=TestON.core.dicttoobject.DictToObject-class.html#update,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#update"><a title="TestON.core.dicttoobject.DictToObject.update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update" class="py-name" href="#" onclick="return doclink('link-640', 'update', 'link-640');">update</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1966"></a><tt class="py-lineno">1966</tt> <tt class="py-line"> <tt id="link-641" class="py-name" targets="Function TestON.bin.cli.output()=TestON.bin.cli-module.html#output"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-641', 'output', 'link-641');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L1967"></a><tt class="py-lineno">1967</tt> <tt class="py-line"> <tt id="link-642" class="py-name" targets="Variable TestON.bin.cli.dump=TestON.bin.cli-module.html#dump,Function TestON.core.ast.dump()=TestON.core.ast-module.html#dump,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.dump()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#dump"><a title="TestON.bin.cli.dump
-TestON.core.ast.dump
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.dump" class="py-name" href="#" onclick="return doclink('link-642', 'dump', 'link-642');">dump</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-643" class="py-name"><a title="TestON.bin.cli.dump
-TestON.core.ast.dump
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.dump" class="py-name" href="#" onclick="return doclink('link-643', 'dump', 'link-642');">dump</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1968"></a><tt class="py-lineno">1968</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt id="link-644" class="py-name"><a title="TestON.bin.cli.dump
-TestON.core.ast.dump
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.dump" class="py-name" href="#" onclick="return doclink('link-644', 'dump', 'link-642');">dump</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1969"></a><tt class="py-lineno">1969</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">swRE</tt><tt class="py-op">,</tt> <tt class="py-name">line</tt><tt class="py-op">,</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">I</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1970"></a><tt class="py-lineno">1970</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">result</tt><tt class="py-op">:</tt> </tt>
-<a name="L1971"></a><tt class="py-lineno">1971</tt> <tt class="py-line"> <tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">result</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-string">'name'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1972"></a><tt class="py-lineno">1972</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-645" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitchDPID()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitchDPID"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitchDPID" class="py-name" href="#" onclick="return doclink('link-645', 'getSwitchDPID', 'link-645');">getSwitchDPID</a></tt><tt class="py-op">(</tt> <tt class="py-name">name</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">16</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1973"></a><tt class="py-lineno">1973</tt> <tt class="py-line"> <tt class="py-name">pid</tt> <tt class="py-op">=</tt> <tt class="py-name">result</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-string">'pid'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1974"></a><tt class="py-lineno">1974</tt> <tt class="py-line"> <tt class="py-name">swClass</tt> <tt class="py-op">=</tt> <tt class="py-name">result</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-string">'class'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1975"></a><tt class="py-lineno">1975</tt> <tt class="py-line"> <tt class="py-name">options</tt> <tt class="py-op">=</tt> <tt class="py-name">result</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-string">'options'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1976"></a><tt class="py-lineno">1976</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">verbose</tt><tt class="py-op">:</tt> </tt>
-<a name="L1977"></a><tt class="py-lineno">1977</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-646" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-646', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Reading switch %s(%s)"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-name">name</tt><tt class="py-op">,</tt> <tt class="py-name">dpid</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1978"></a><tt class="py-lineno">1978</tt> <tt class="py-line"> <tt id="link-647" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-647', 'ports', 'link-636');">ports</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-648" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getPorts()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getPorts"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getPorts" class="py-name" href="#" onclick="return doclink('link-648', 'getPorts', 'link-648');">getPorts</a></tt><tt class="py-op">(</tt> <tt class="py-name">name</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1979"></a><tt class="py-lineno">1979</tt> <tt class="py-line"> <tt id="link-649" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-649', 'output', 'link-641');">output</a></tt><tt class="py-op">[</tt> <tt class="py-name">name</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-string">"dpid"</tt><tt class="py-op">:</tt> <tt class="py-name">dpid</tt><tt class="py-op">,</tt> </tt>
-<a name="L1980"></a><tt class="py-lineno">1980</tt> <tt class="py-line"> <tt class="py-string">"ports"</tt><tt class="py-op">:</tt> <tt id="link-650" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-650', 'ports', 'link-636');">ports</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1981"></a><tt class="py-lineno">1981</tt> <tt class="py-line"> <tt class="py-string">"swClass"</tt><tt class="py-op">:</tt> <tt class="py-name">swClass</tt><tt class="py-op">,</tt> </tt>
-<a name="L1982"></a><tt class="py-lineno">1982</tt> <tt class="py-line"> <tt class="py-string">"pid"</tt><tt class="py-op">:</tt> <tt class="py-name">pid</tt><tt class="py-op">,</tt> </tt>
-<a name="L1983"></a><tt class="py-lineno">1983</tt> <tt class="py-line"> <tt class="py-string">"options"</tt><tt class="py-op">:</tt> <tt class="py-name">options</tt> <tt class="py-op">}</tt> </tt>
-<a name="L1984"></a><tt class="py-lineno">1984</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-651" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-651', 'output', 'link-641');">output</a></tt> </tt>
-</div><a name="L1985"></a><tt class="py-lineno">1985</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.getHosts"></a><div id="MininetCliDriver.getHosts-def"><a name="L1986"></a><tt class="py-lineno">1986</tt> <a class="py-toggle" href="#" id="MininetCliDriver.getHosts-toggle" onclick="return toggle('MininetCliDriver.getHosts');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getHosts">getHosts</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">verbose</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.getHosts-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.getHosts-expanded"><a name="L1987"></a><tt class="py-lineno">1987</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1988"></a><tt class="py-lineno">1988</tt> <tt class="py-line"><tt class="py-docstring"> Read hosts from Mininet.</tt> </tt>
-<a name="L1989"></a><tt class="py-lineno">1989</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1990"></a><tt class="py-lineno">1990</tt> <tt class="py-line"><tt class="py-docstring"> Returns a dictionary whose keys are the host names and the value is</tt> </tt>
-<a name="L1991"></a><tt class="py-lineno">1991</tt> <tt class="py-line"><tt class="py-docstring"> a dictionary containing information about the host.</tt> </tt>
-<a name="L1992"></a><tt class="py-lineno">1992</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1993"></a><tt class="py-lineno">1993</tt> <tt class="py-line"> <tt class="py-comment"># Regex patterns to parse dump output</tt> </tt>
-<a name="L1994"></a><tt class="py-lineno">1994</tt> <tt class="py-line"> <tt class="py-comment"># Example host: <Host h1: h1-eth0:10.0.0.1 pid=5227></tt> </tt>
-<a name="L1995"></a><tt class="py-lineno">1995</tt> <tt class="py-line"> <tt class="py-comment"># <Host h1: pid=12725></tt> </tt>
-<a name="L1996"></a><tt class="py-lineno">1996</tt> <tt class="py-line"> <tt class="py-comment"># <VLANHost h12: h12-eth0.100.100.100:100.1.0.3 pid=30186></tt> </tt>
-<a name="L1997"></a><tt class="py-lineno">1997</tt> <tt class="py-line"> <tt class="py-comment"># <dualStackHost h19: h19-eth0:10.1.0.9 pid=30200></tt> </tt>
-<a name="L1998"></a><tt class="py-lineno">1998</tt> <tt class="py-line"> <tt class="py-comment"># <IPv6Host h18: h18-eth0:10.0.0.18 pid=30198></tt> </tt>
-<a name="L1999"></a><tt class="py-lineno">1999</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Does not correctly match hosts with multi-links</tt> </tt>
-<a name="L2000"></a><tt class="py-lineno">2000</tt> <tt class="py-line"> <tt class="py-comment"># <Host h2: h2-eth0:10.0.0.2,h2-eth1:10.0.1.2 pid=14386></tt> </tt>
-<a name="L2001"></a><tt class="py-lineno">2001</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: Fix that</tt> </tt>
-<a name="L2002"></a><tt class="py-lineno">2002</tt> <tt class="py-line"> <tt class="py-name">hostRE</tt> <tt class="py-op">=</tt> <tt class="py-string">r"Host\s(?P<name>[^:]+)\:((\s(?P<ifname>[^:]+)\:"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2003"></a><tt class="py-lineno">2003</tt> <tt class="py-line"> <tt class="py-string">"(?P<ip>[^\s]+))|(\s)\spid=(?P<pid>[^>]+))"</tt> </tt>
-<a name="L2004"></a><tt class="py-lineno">2004</tt> <tt class="py-line"> <tt class="py-comment"># update mn port info</tt> </tt>
-<a name="L2005"></a><tt class="py-lineno">2005</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-652" class="py-name"><a title="TestON.core.dicttoobject.DictToObject.update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update" class="py-name" href="#" onclick="return doclink('link-652', 'update', 'link-640');">update</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2006"></a><tt class="py-lineno">2006</tt> <tt class="py-line"> <tt class="py-comment"># Get mininet dump</tt> </tt>
-<a name="L2007"></a><tt class="py-lineno">2007</tt> <tt class="py-line"> <tt id="link-653" class="py-name"><a title="TestON.bin.cli.dump
-TestON.core.ast.dump
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.dump" class="py-name" href="#" onclick="return doclink('link-653', 'dump', 'link-642');">dump</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-654" class="py-name"><a title="TestON.bin.cli.dump
-TestON.core.ast.dump
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.dump" class="py-name" href="#" onclick="return doclink('link-654', 'dump', 'link-642');">dump</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2008"></a><tt class="py-lineno">2008</tt> <tt class="py-line"> <tt id="link-655" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-655', 'hosts', 'link-308');">hosts</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L2009"></a><tt class="py-lineno">2009</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt id="link-656" class="py-name"><a title="TestON.bin.cli.dump
-TestON.core.ast.dump
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.dump" class="py-name" href="#" onclick="return doclink('link-656', 'dump', 'link-642');">dump</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2010"></a><tt class="py-lineno">2010</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Host"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt> <tt class="py-op">:</tt> </tt>
-<a name="L2011"></a><tt class="py-lineno">2011</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">hostRE</tt><tt class="py-op">,</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2012"></a><tt class="py-lineno">2012</tt> <tt class="py-line"> <tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">result</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-string">'name'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2013"></a><tt class="py-lineno">2013</tt> <tt class="py-line"> <tt class="py-name">interfaces</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2014"></a><tt class="py-lineno">2014</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-657" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getInterfaces" class="py-name" href="#" onclick="return doclink('link-657', 'getInterfaces', 'link-635');">getInterfaces</a></tt><tt class="py-op">(</tt> <tt class="py-name">name</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2015"></a><tt class="py-lineno">2015</tt> <tt class="py-line"> <tt class="py-comment"># Populate interface info</tt> </tt>
-<a name="L2016"></a><tt class="py-lineno">2016</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2017"></a><tt class="py-lineno">2017</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">startswith</tt><tt class="py-op">(</tt> <tt class="py-string">"name="</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2018"></a><tt class="py-lineno">2018</tt> <tt class="py-line"> <tt class="py-name">portVars</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L2019"></a><tt class="py-lineno">2019</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">var</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2020"></a><tt class="py-lineno">2020</tt> <tt class="py-line"> <tt class="py-name">key</tt><tt class="py-op">,</tt> <tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt class="py-name">var</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"="</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2021"></a><tt class="py-lineno">2021</tt> <tt class="py-line"> <tt class="py-name">portVars</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">value</tt> </tt>
-<a name="L2022"></a><tt class="py-lineno">2022</tt> <tt class="py-line"> <tt class="py-name">isUp</tt> <tt class="py-op">=</tt> <tt class="py-name">portVars</tt><tt class="py-op">.</tt><tt class="py-name">pop</tt><tt class="py-op">(</tt> <tt class="py-string">'enabled'</tt><tt class="py-op">,</tt> <tt class="py-string">"True"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2023"></a><tt class="py-lineno">2023</tt> <tt class="py-line"> <tt class="py-name">isUp</tt> <tt class="py-op">=</tt> <tt class="py-string">"True"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">isUp</tt> </tt>
-<a name="L2024"></a><tt class="py-lineno">2024</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">verbose</tt><tt class="py-op">:</tt> </tt>
-<a name="L2025"></a><tt class="py-lineno">2025</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-658" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-658', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Reading host port %s(%s)"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L2026"></a><tt class="py-lineno">2026</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">portVars</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L2027"></a><tt class="py-lineno">2027</tt> <tt class="py-line"> <tt class="py-name">portVars</tt><tt class="py-op">[</tt> <tt class="py-string">'mac'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2028"></a><tt class="py-lineno">2028</tt> <tt class="py-line"> <tt class="py-name">mac</tt> <tt class="py-op">=</tt> <tt class="py-name">portVars</tt><tt class="py-op">[</tt> <tt class="py-string">'mac'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2029"></a><tt class="py-lineno">2029</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">mac</tt> <tt class="py-op">==</tt> <tt class="py-string">'None'</tt><tt class="py-op">:</tt> </tt>
-<a name="L2030"></a><tt class="py-lineno">2030</tt> <tt class="py-line"> <tt class="py-name">mac</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2031"></a><tt class="py-lineno">2031</tt> <tt class="py-line"> <tt class="py-name">ips</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2032"></a><tt class="py-lineno">2032</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">portVars</tt><tt class="py-op">[</tt> <tt class="py-string">'ip'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2033"></a><tt class="py-lineno">2033</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-op">==</tt> <tt class="py-string">'None'</tt><tt class="py-op">:</tt> </tt>
-<a name="L2034"></a><tt class="py-lineno">2034</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2035"></a><tt class="py-lineno">2035</tt> <tt class="py-line"> <tt class="py-name">ips</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2036"></a><tt class="py-lineno">2036</tt> <tt class="py-line"> <tt class="py-name">intfName</tt> <tt class="py-op">=</tt> <tt class="py-name">portVars</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2037"></a><tt class="py-lineno">2037</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">name</tt> <tt class="py-op">==</tt> <tt class="py-string">'None'</tt><tt class="py-op">:</tt> </tt>
-<a name="L2038"></a><tt class="py-lineno">2038</tt> <tt class="py-line"> <tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2039"></a><tt class="py-lineno">2039</tt> <tt class="py-line"> <tt class="py-name">interfaces</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">{</tt> </tt>
-<a name="L2040"></a><tt class="py-lineno">2040</tt> <tt class="py-line"> <tt class="py-string">"name"</tt><tt class="py-op">:</tt> <tt class="py-name">intfName</tt><tt class="py-op">,</tt> </tt>
-<a name="L2041"></a><tt class="py-lineno">2041</tt> <tt class="py-line"> <tt class="py-string">"ips"</tt><tt class="py-op">:</tt> <tt class="py-name">ips</tt><tt class="py-op">,</tt> </tt>
-<a name="L2042"></a><tt class="py-lineno">2042</tt> <tt class="py-line"> <tt class="py-string">"mac"</tt><tt class="py-op">:</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2043"></a><tt class="py-lineno">2043</tt> <tt class="py-line"> <tt class="py-string">"isUp"</tt><tt class="py-op">:</tt> <tt class="py-name">isUp</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2044"></a><tt class="py-lineno">2044</tt> <tt class="py-line"> <tt id="link-659" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-659', 'hosts', 'link-308');">hosts</a></tt><tt class="py-op">[</tt> <tt class="py-name">name</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-string">"interfaces"</tt><tt class="py-op">:</tt> <tt class="py-name">interfaces</tt> <tt class="py-op">}</tt> </tt>
-<a name="L2045"></a><tt class="py-lineno">2045</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-660" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-660', 'hosts', 'link-308');">hosts</a></tt> </tt>
-</div><a name="L2046"></a><tt class="py-lineno">2046</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.getLinks"></a><div id="MininetCliDriver.getLinks-def"><a name="L2047"></a><tt class="py-lineno">2047</tt> <a class="py-toggle" href="#" id="MininetCliDriver.getLinks-toggle" onclick="return toggle('MininetCliDriver.getLinks');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getLinks">getLinks</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.getLinks-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.getLinks-expanded"><a name="L2048"></a><tt class="py-lineno">2048</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2049"></a><tt class="py-lineno">2049</tt> <tt class="py-line"><tt class="py-docstring"> Gathers information about current Mininet links. These links may not</tt> </tt>
-<a name="L2050"></a><tt class="py-lineno">2050</tt> <tt class="py-line"><tt class="py-docstring"> be up if one of the ports is down.</tt> </tt>
-<a name="L2051"></a><tt class="py-lineno">2051</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L2052"></a><tt class="py-lineno">2052</tt> <tt class="py-line"><tt class="py-docstring"> Returns a list of dictionaries with link endpoints.</tt> </tt>
-<a name="L2053"></a><tt class="py-lineno">2053</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L2054"></a><tt class="py-lineno">2054</tt> <tt class="py-line"><tt class="py-docstring"> The dictionary structure is:</tt> </tt>
-<a name="L2055"></a><tt class="py-lineno">2055</tt> <tt class="py-line"><tt class="py-docstring"> { 'node1': str( node1 name )</tt> </tt>
-<a name="L2056"></a><tt class="py-lineno">2056</tt> <tt class="py-line"><tt class="py-docstring"> 'node2': str( node2 name )</tt> </tt>
-<a name="L2057"></a><tt class="py-lineno">2057</tt> <tt class="py-line"><tt class="py-docstring"> 'port1': str( port1 of_port )</tt> </tt>
-<a name="L2058"></a><tt class="py-lineno">2058</tt> <tt class="py-line"><tt class="py-docstring"> 'port2': str( port2 of_port ) }</tt> </tt>
-<a name="L2059"></a><tt class="py-lineno">2059</tt> <tt class="py-line"><tt class="py-docstring"> Note: The port number returned is the eth#, not necessarily the of_port</tt> </tt>
-<a name="L2060"></a><tt class="py-lineno">2060</tt> <tt class="py-line"><tt class="py-docstring"> number. In Mininet, for OVS switch, these should be the same. For</tt> </tt>
-<a name="L2061"></a><tt class="py-lineno">2061</tt> <tt class="py-line"><tt class="py-docstring"> hosts, this is just the eth#.</tt> </tt>
-<a name="L2062"></a><tt class="py-lineno">2062</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2063"></a><tt class="py-lineno">2063</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-661" class="py-name"><a title="TestON.core.dicttoobject.DictToObject.update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update" class="py-name" href="#" onclick="return doclink('link-661', 'update', 'link-640');">update</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2064"></a><tt class="py-lineno">2064</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-662" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#links,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#links"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-662', 'links', 'link-662');">links</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">'\n'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2065"></a><tt class="py-lineno">2065</tt> <tt class="py-line"> </tt>
-<a name="L2066"></a><tt class="py-lineno">2066</tt> <tt class="py-line"> <tt class="py-comment"># Examples:</tt> </tt>
-<a name="L2067"></a><tt class="py-lineno">2067</tt> <tt class="py-line"> <tt class="py-comment"># s1-eth3<->s2-eth1 (OK OK)</tt> </tt>
-<a name="L2068"></a><tt class="py-lineno">2068</tt> <tt class="py-line"> <tt class="py-comment"># s13-eth3<->h27-eth0 (OK OK)</tt> </tt>
-<a name="L2069"></a><tt class="py-lineno">2069</tt> <tt class="py-line"> <tt class="py-name">linkRE</tt> <tt class="py-op">=</tt> <tt class="py-string">"(?P<node1>[\w]+)\-eth(?P<port1>[\d]+)\<\-\>"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2070"></a><tt class="py-lineno">2070</tt> <tt class="py-line"> <tt class="py-string">"(?P<node2>[\w]+)\-eth(?P<port2>[\d]+)"</tt> </tt>
-<a name="L2071"></a><tt class="py-lineno">2071</tt> <tt class="py-line"> <tt id="link-663" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-663', 'links', 'link-662');">links</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2072"></a><tt class="py-lineno">2072</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">response</tt><tt class="py-op">:</tt> </tt>
-<a name="L2073"></a><tt class="py-lineno">2073</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">linkRE</tt><tt class="py-op">,</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2074"></a><tt class="py-lineno">2074</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">match</tt><tt class="py-op">:</tt> </tt>
-<a name="L2075"></a><tt class="py-lineno">2075</tt> <tt class="py-line"> <tt class="py-name">node1</tt> <tt class="py-op">=</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-string">'node1'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2076"></a><tt class="py-lineno">2076</tt> <tt class="py-line"> <tt class="py-name">node2</tt> <tt class="py-op">=</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-string">'node2'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2077"></a><tt class="py-lineno">2077</tt> <tt class="py-line"> <tt class="py-name">port1</tt> <tt class="py-op">=</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-string">'port1'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2078"></a><tt class="py-lineno">2078</tt> <tt class="py-line"> <tt class="py-name">port2</tt> <tt class="py-op">=</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-string">'port2'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2079"></a><tt class="py-lineno">2079</tt> <tt class="py-line"> <tt id="link-664" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-664', 'links', 'link-662');">links</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">{</tt> <tt class="py-string">'node1'</tt><tt class="py-op">:</tt> <tt class="py-name">node1</tt><tt class="py-op">,</tt> </tt>
-<a name="L2080"></a><tt class="py-lineno">2080</tt> <tt class="py-line"> <tt class="py-string">'node2'</tt><tt class="py-op">:</tt> <tt class="py-name">node2</tt><tt class="py-op">,</tt> </tt>
-<a name="L2081"></a><tt class="py-lineno">2081</tt> <tt class="py-line"> <tt class="py-string">'port1'</tt><tt class="py-op">:</tt> <tt class="py-name">port1</tt><tt class="py-op">,</tt> </tt>
-<a name="L2082"></a><tt class="py-lineno">2082</tt> <tt class="py-line"> <tt class="py-string">'port2'</tt><tt class="py-op">:</tt> <tt class="py-name">port2</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2083"></a><tt class="py-lineno">2083</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-665" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-665', 'links', 'link-662');">links</a></tt> </tt>
-</div><a name="L2084"></a><tt class="py-lineno">2084</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.compareSwitches"></a><div id="MininetCliDriver.compareSwitches-def"><a name="L2085"></a><tt class="py-lineno">2085</tt> <a class="py-toggle" href="#" id="MininetCliDriver.compareSwitches-toggle" onclick="return toggle('MininetCliDriver.compareSwitches');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareSwitches">compareSwitches</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">switches</tt><tt class="py-op">,</tt> <tt class="py-param">switchesJson</tt><tt class="py-op">,</tt> <tt class="py-param">portsJson</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.compareSwitches-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.compareSwitches-expanded"><a name="L2086"></a><tt class="py-lineno">2086</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2087"></a><tt class="py-lineno">2087</tt> <tt class="py-line"><tt class="py-docstring"> Compare mn and onos switches</tt> </tt>
-<a name="L2088"></a><tt class="py-lineno">2088</tt> <tt class="py-line"><tt class="py-docstring"> switchesJson: parsed json object from the onos devices api</tt> </tt>
-<a name="L2089"></a><tt class="py-lineno">2089</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L2090"></a><tt class="py-lineno">2090</tt> <tt class="py-line"><tt class="py-docstring"> Dependencies:</tt> </tt>
-<a name="L2091"></a><tt class="py-lineno">2091</tt> <tt class="py-line"><tt class="py-docstring"> 1. numpy - "sudo pip install numpy"</tt> </tt>
-<a name="L2092"></a><tt class="py-lineno">2092</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2093"></a><tt class="py-lineno">2093</tt> <tt class="py-line"> <tt class="py-keyword">from</tt> <tt class="py-name">numpy</tt> <tt class="py-keyword">import</tt> <tt class="py-name">uint64</tt> </tt>
-<a name="L2094"></a><tt class="py-lineno">2094</tt> <tt class="py-line"> <tt class="py-comment"># created sorted list of dpid's in MN and ONOS for comparison</tt> </tt>
-<a name="L2095"></a><tt class="py-lineno">2095</tt> <tt class="py-line"> <tt class="py-name">mnDPIDs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2096"></a><tt class="py-lineno">2096</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">swName</tt><tt class="py-op">,</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">switches</tt><tt class="py-op">.</tt><tt class="py-name">iteritems</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2097"></a><tt class="py-lineno">2097</tt> <tt class="py-line"> <tt class="py-name">mnDPIDs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">switch</tt><tt class="py-op">[</tt> <tt class="py-string">'dpid'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2098"></a><tt class="py-lineno">2098</tt> <tt class="py-line"> <tt class="py-name">mnDPIDs</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2099"></a><tt class="py-lineno">2099</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">switchesJson</tt> <tt class="py-op">==</tt> <tt class="py-string">""</tt><tt class="py-op">:</tt> <tt class="py-comment"># if rest call fails</tt> </tt>
-<a name="L2100"></a><tt class="py-lineno">2100</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-666" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-666', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-667" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-667', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2101"></a><tt class="py-lineno">2101</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2102"></a><tt class="py-lineno">2102</tt> <tt class="py-line"> <tt class="py-string">".compareSwitches(): Empty JSON object given from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2103"></a><tt class="py-lineno">2103</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2104"></a><tt class="py-lineno">2104</tt> <tt class="py-line"> <tt class="py-name">onos</tt> <tt class="py-op">=</tt> <tt class="py-name">switchesJson</tt> </tt>
-<a name="L2105"></a><tt class="py-lineno">2105</tt> <tt class="py-line"> <tt class="py-name">onosDPIDs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2106"></a><tt class="py-lineno">2106</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onos</tt><tt class="py-op">:</tt> </tt>
-<a name="L2107"></a><tt class="py-lineno">2107</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">switch</tt><tt class="py-op">[</tt> <tt class="py-string">'available'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2108"></a><tt class="py-lineno">2108</tt> <tt class="py-line"> <tt class="py-name">onosDPIDs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L2109"></a><tt class="py-lineno">2109</tt> <tt class="py-line"> <tt class="py-name">switch</tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> </tt>
-<a name="L2110"></a><tt class="py-lineno">2110</tt> <tt class="py-line"> <tt class="py-string">":"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2111"></a><tt class="py-lineno">2111</tt> <tt class="py-line"> <tt class="py-string">''</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> </tt>
-<a name="L2112"></a><tt class="py-lineno">2112</tt> <tt class="py-line"> <tt class="py-string">"of"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2113"></a><tt class="py-lineno">2113</tt> <tt class="py-line"> <tt class="py-string">''</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2114"></a><tt class="py-lineno">2114</tt> <tt class="py-line"> <tt class="py-name">onosDPIDs</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2115"></a><tt class="py-lineno">2115</tt> <tt class="py-line"> </tt>
-<a name="L2116"></a><tt class="py-lineno">2116</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">mnDPIDs</tt> <tt class="py-op">!=</tt> <tt class="py-name">onosDPIDs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2117"></a><tt class="py-lineno">2117</tt> <tt class="py-line"> <tt class="py-name">switchResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2118"></a><tt class="py-lineno">2118</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-668" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-668', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-669" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-669', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Switches in MN but not in ONOS:"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2119"></a><tt class="py-lineno">2119</tt> <tt class="py-line"> <tt class="py-name">list1</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">for</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mnDPIDs</tt> <tt class="py-keyword">if</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosDPIDs</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2120"></a><tt class="py-lineno">2120</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-670" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-670', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-671" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-671', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">list1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2121"></a><tt class="py-lineno">2121</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-672" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-672', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-673" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-673', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Switches in ONOS but not in MN:"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2122"></a><tt class="py-lineno">2122</tt> <tt class="py-line"> <tt class="py-name">list2</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">for</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosDPIDs</tt> <tt class="py-keyword">if</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mnDPIDs</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2123"></a><tt class="py-lineno">2123</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-674" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-674', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-675" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-675', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">list2</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2124"></a><tt class="py-lineno">2124</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># list of dpid's match in onos and mn</tt> </tt>
-<a name="L2125"></a><tt class="py-lineno">2125</tt> <tt class="py-line"> <tt class="py-name">switchResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2126"></a><tt class="py-lineno">2126</tt> <tt class="py-line"> <tt class="py-name">finalResults</tt> <tt class="py-op">=</tt> <tt class="py-name">switchResults</tt> </tt>
-<a name="L2127"></a><tt class="py-lineno">2127</tt> <tt class="py-line"> </tt>
-<a name="L2128"></a><tt class="py-lineno">2128</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: this does not look for extra ports in ONOS, only checks that</tt> </tt>
-<a name="L2129"></a><tt class="py-lineno">2129</tt> <tt class="py-line"> <tt class="py-comment"># ONOS has what is in MN</tt> </tt>
-<a name="L2130"></a><tt class="py-lineno">2130</tt> <tt class="py-line"> <tt class="py-name">portsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2131"></a><tt class="py-lineno">2131</tt> <tt class="py-line"> </tt>
-<a name="L2132"></a><tt class="py-lineno">2132</tt> <tt class="py-line"> <tt class="py-comment"># PORTS</tt> </tt>
-<a name="L2133"></a><tt class="py-lineno">2133</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">name</tt><tt class="py-op">,</tt> <tt class="py-name">mnSwitch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">switches</tt><tt class="py-op">.</tt><tt class="py-name">iteritems</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2134"></a><tt class="py-lineno">2134</tt> <tt class="py-line"> <tt class="py-name">mnPorts</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2135"></a><tt class="py-lineno">2135</tt> <tt class="py-line"> <tt class="py-name">onosPorts</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2136"></a><tt class="py-lineno">2136</tt> <tt class="py-line"> <tt class="py-name">switchResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2137"></a><tt class="py-lineno">2137</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">port</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mnSwitch</tt><tt class="py-op">[</tt> <tt class="py-string">'ports'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2138"></a><tt class="py-lineno">2138</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt><tt class="py-op">[</tt> <tt class="py-string">'enabled'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2139"></a><tt class="py-lineno">2139</tt> <tt class="py-line"> <tt class="py-name">mnPorts</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt><tt class="py-op">[</tt> <tt class="py-string">'of_port'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2140"></a><tt class="py-lineno">2140</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">onosSwitch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">portsJson</tt><tt class="py-op">:</tt> </tt>
-<a name="L2141"></a><tt class="py-lineno">2141</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSwitch</tt><tt class="py-op">[</tt> <tt class="py-string">'device'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'available'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2142"></a><tt class="py-lineno">2142</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSwitch</tt><tt class="py-op">[</tt> <tt class="py-string">'device'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> </tt>
-<a name="L2143"></a><tt class="py-lineno">2143</tt> <tt class="py-line"> <tt class="py-string">':'</tt><tt class="py-op">,</tt> </tt>
-<a name="L2144"></a><tt class="py-lineno">2144</tt> <tt class="py-line"> <tt class="py-string">''</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> </tt>
-<a name="L2145"></a><tt class="py-lineno">2145</tt> <tt class="py-line"> <tt class="py-string">"of"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2146"></a><tt class="py-lineno">2146</tt> <tt class="py-line"> <tt class="py-string">''</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">mnSwitch</tt><tt class="py-op">[</tt> <tt class="py-string">'dpid'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2147"></a><tt class="py-lineno">2147</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">port</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosSwitch</tt><tt class="py-op">[</tt> <tt class="py-string">'ports'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2148"></a><tt class="py-lineno">2148</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt><tt class="py-op">[</tt> <tt class="py-string">'isEnabled'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2149"></a><tt class="py-lineno">2149</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt><tt class="py-op">[</tt> <tt class="py-string">'port'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'local'</tt><tt class="py-op">:</tt> </tt>
-<a name="L2150"></a><tt class="py-lineno">2150</tt> <tt class="py-line"> <tt class="py-comment"># onosPorts.append( 'local' )</tt> </tt>
-<a name="L2151"></a><tt class="py-lineno">2151</tt> <tt class="py-line"> <tt class="py-name">onosPorts</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt> <tt class="py-name">uint64</tt><tt class="py-op">(</tt> <tt class="py-op">-</tt><tt class="py-number">2</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2152"></a><tt class="py-lineno">2152</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2153"></a><tt class="py-lineno">2153</tt> <tt class="py-line"> <tt class="py-name">onosPorts</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt><tt class="py-op">[</tt> <tt class="py-string">'port'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2154"></a><tt class="py-lineno">2154</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2155"></a><tt class="py-lineno">2155</tt> <tt class="py-line"> <tt class="py-name">mnPorts</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt> <tt class="py-name">key</tt><tt class="py-op">=</tt><tt class="py-name">float</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2156"></a><tt class="py-lineno">2156</tt> <tt class="py-line"> <tt class="py-name">onosPorts</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt> <tt class="py-name">key</tt><tt class="py-op">=</tt><tt class="py-name">float</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2157"></a><tt class="py-lineno">2157</tt> <tt class="py-line"> </tt>
-<a name="L2158"></a><tt class="py-lineno">2158</tt> <tt class="py-line"> <tt class="py-name">mnPortsLog</tt> <tt class="py-op">=</tt> <tt class="py-name">mnPorts</tt> </tt>
-<a name="L2159"></a><tt class="py-lineno">2159</tt> <tt class="py-line"> <tt class="py-name">onosPortsLog</tt> <tt class="py-op">=</tt> <tt class="py-name">onosPorts</tt> </tt>
-<a name="L2160"></a><tt class="py-lineno">2160</tt> <tt class="py-line"> <tt class="py-name">mnPorts</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">x</tt> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mnPorts</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2161"></a><tt class="py-lineno">2161</tt> <tt class="py-line"> <tt class="py-name">onosPorts</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">x</tt> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosPorts</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2162"></a><tt class="py-lineno">2162</tt> <tt class="py-line"> </tt>
-<a name="L2163"></a><tt class="py-lineno">2163</tt> <tt class="py-line"> <tt class="py-comment"># TODO: handle other reserved port numbers besides LOCAL</tt> </tt>
-<a name="L2164"></a><tt class="py-lineno">2164</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Reserved ports</tt> </tt>
-<a name="L2165"></a><tt class="py-lineno">2165</tt> <tt class="py-line"> <tt class="py-comment"># Local port: -2 in Openflow, ONOS shows 'local', we store as</tt> </tt>
-<a name="L2166"></a><tt class="py-lineno">2166</tt> <tt class="py-line"> <tt class="py-comment"># long( uint64( -2 ) )</tt> </tt>
-<a name="L2167"></a><tt class="py-lineno">2167</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">mnPort</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mnPortsLog</tt><tt class="py-op">:</tt> </tt>
-<a name="L2168"></a><tt class="py-lineno">2168</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">mnPort</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosPorts</tt><tt class="py-op">:</tt> </tt>
-<a name="L2169"></a><tt class="py-lineno">2169</tt> <tt class="py-line"> <tt class="py-comment"># don't set results to true here as this is just one of</tt> </tt>
-<a name="L2170"></a><tt class="py-lineno">2170</tt> <tt class="py-line"> <tt class="py-comment"># many checks and it might override a failure</tt> </tt>
-<a name="L2171"></a><tt class="py-lineno">2171</tt> <tt class="py-line"> <tt class="py-name">mnPorts</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt> <tt class="py-name">mnPort</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2172"></a><tt class="py-lineno">2172</tt> <tt class="py-line"> <tt class="py-name">onosPorts</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt> <tt class="py-name">mnPort</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2173"></a><tt class="py-lineno">2173</tt> <tt class="py-line"> </tt>
-<a name="L2174"></a><tt class="py-lineno">2174</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: OVS reports this as down since there is no link</tt> </tt>
-<a name="L2175"></a><tt class="py-lineno">2175</tt> <tt class="py-line"> <tt class="py-comment"># So ignoring these for now</tt> </tt>
-<a name="L2176"></a><tt class="py-lineno">2176</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Come up with a better way of handling these</tt> </tt>
-<a name="L2177"></a><tt class="py-lineno">2177</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">65534</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mnPorts</tt><tt class="py-op">:</tt> </tt>
-<a name="L2178"></a><tt class="py-lineno">2178</tt> <tt class="py-line"> <tt class="py-name">mnPorts</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt> <tt class="py-number">65534</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2179"></a><tt class="py-lineno">2179</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt> <tt class="py-name">uint64</tt><tt class="py-op">(</tt> <tt class="py-op">-</tt><tt class="py-number">2</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosPorts</tt><tt class="py-op">:</tt> </tt>
-<a name="L2180"></a><tt class="py-lineno">2180</tt> <tt class="py-line"> <tt class="py-name">onosPorts</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt> <tt class="py-name">uint64</tt><tt class="py-op">(</tt> <tt class="py-op">-</tt><tt class="py-number">2</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2181"></a><tt class="py-lineno">2181</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">mnPorts</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># the ports of this switch don't match</tt> </tt>
-<a name="L2182"></a><tt class="py-lineno">2182</tt> <tt class="py-line"> <tt class="py-name">switchResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2183"></a><tt class="py-lineno">2183</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-676" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-676', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Ports in MN but not ONOS: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mnPorts</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2184"></a><tt class="py-lineno">2184</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosPorts</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># the ports of this switch don't match</tt> </tt>
-<a name="L2185"></a><tt class="py-lineno">2185</tt> <tt class="py-line"> <tt class="py-name">switchResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2186"></a><tt class="py-lineno">2186</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-677" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-677', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L2187"></a><tt class="py-lineno">2187</tt> <tt class="py-line"> <tt class="py-string">"Ports in ONOS but not MN: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2188"></a><tt class="py-lineno">2188</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosPorts</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2189"></a><tt class="py-lineno">2189</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">switchResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2190"></a><tt class="py-lineno">2190</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-678" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-678', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-679" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-679', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2191"></a><tt class="py-lineno">2191</tt> <tt class="py-line"> <tt class="py-string">"The list of ports for switch %s(%s) does not match:"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L2192"></a><tt class="py-lineno">2192</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">name</tt><tt class="py-op">,</tt> <tt class="py-name">mnSwitch</tt><tt class="py-op">[</tt> <tt class="py-string">'dpid'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2193"></a><tt class="py-lineno">2193</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-680" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-680', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"mn_ports[] = "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mnPortsLog</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2194"></a><tt class="py-lineno">2194</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-681" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-681', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"onos_ports[] = "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosPortsLog</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2195"></a><tt class="py-lineno">2195</tt> <tt class="py-line"> <tt class="py-name">portsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">portsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">switchResult</tt> </tt>
-<a name="L2196"></a><tt class="py-lineno">2196</tt> <tt class="py-line"> <tt class="py-name">finalResults</tt> <tt class="py-op">=</tt> <tt class="py-name">finalResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">portsResults</tt> </tt>
-<a name="L2197"></a><tt class="py-lineno">2197</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">finalResults</tt> </tt>
-</div><a name="L2198"></a><tt class="py-lineno">2198</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.compareLinks"></a><div id="MininetCliDriver.compareLinks-def"><a name="L2199"></a><tt class="py-lineno">2199</tt> <a class="py-toggle" href="#" id="MininetCliDriver.compareLinks-toggle" onclick="return toggle('MininetCliDriver.compareLinks');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareLinks">compareLinks</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">switches</tt><tt class="py-op">,</tt> <tt class="py-param">links</tt><tt class="py-op">,</tt> <tt class="py-param">linksJson</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.compareLinks-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.compareLinks-expanded"><a name="L2200"></a><tt class="py-lineno">2200</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2201"></a><tt class="py-lineno">2201</tt> <tt class="py-line"><tt class="py-docstring"> Compare mn and onos links</tt> </tt>
-<a name="L2202"></a><tt class="py-lineno">2202</tt> <tt class="py-line"><tt class="py-docstring"> linksJson: parsed json object from the onos links api</tt> </tt>
-<a name="L2203"></a><tt class="py-lineno">2203</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L2204"></a><tt class="py-lineno">2204</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2205"></a><tt class="py-lineno">2205</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: this does not look for extra links in ONOS, only checks that</tt> </tt>
-<a name="L2206"></a><tt class="py-lineno">2206</tt> <tt class="py-line"> <tt class="py-comment"># ONOS has what is in MN</tt> </tt>
-<a name="L2207"></a><tt class="py-lineno">2207</tt> <tt class="py-line"> <tt class="py-name">onos</tt> <tt class="py-op">=</tt> <tt class="py-name">linksJson</tt> </tt>
-<a name="L2208"></a><tt class="py-lineno">2208</tt> <tt class="py-line"> </tt>
-<a name="L2209"></a><tt class="py-lineno">2209</tt> <tt class="py-line"> <tt class="py-name">mnLinks</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2210"></a><tt class="py-lineno">2210</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">l</tt> <tt class="py-keyword">in</tt> <tt id="link-682" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-682', 'links', 'link-662');">links</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2211"></a><tt class="py-lineno">2211</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2212"></a><tt class="py-lineno">2212</tt> <tt class="py-line"> <tt class="py-name">node1</tt> <tt class="py-op">=</tt> <tt class="py-name">switches</tt><tt class="py-op">[</tt> <tt class="py-name">l</tt><tt class="py-op">[</tt> <tt class="py-string">'node1'</tt> <tt class="py-op">]</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2213"></a><tt class="py-lineno">2213</tt> <tt class="py-line"> <tt class="py-name">node2</tt> <tt class="py-op">=</tt> <tt class="py-name">switches</tt><tt class="py-op">[</tt> <tt class="py-name">l</tt><tt class="py-op">[</tt> <tt class="py-string">'node2'</tt> <tt class="py-op">]</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2214"></a><tt class="py-lineno">2214</tt> <tt class="py-line"> <tt class="py-name">enabled</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2215"></a><tt class="py-lineno">2215</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">port</tt> <tt class="py-keyword">in</tt> <tt class="py-name">node1</tt><tt class="py-op">[</tt> <tt class="py-string">'ports'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2216"></a><tt class="py-lineno">2216</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt><tt class="py-op">[</tt> <tt class="py-string">'of_port'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">l</tt><tt class="py-op">[</tt> <tt class="py-string">'port1'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2217"></a><tt class="py-lineno">2217</tt> <tt class="py-line"> <tt class="py-name">enabled</tt> <tt class="py-op">=</tt> <tt class="py-name">enabled</tt> <tt class="py-keyword">and</tt> <tt class="py-name">port</tt><tt class="py-op">[</tt> <tt class="py-string">'enabled'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2218"></a><tt class="py-lineno">2218</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">port</tt> <tt class="py-keyword">in</tt> <tt class="py-name">node2</tt><tt class="py-op">[</tt> <tt class="py-string">'ports'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2219"></a><tt class="py-lineno">2219</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt><tt class="py-op">[</tt> <tt class="py-string">'of_port'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">l</tt><tt class="py-op">[</tt> <tt class="py-string">'port2'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2220"></a><tt class="py-lineno">2220</tt> <tt class="py-line"> <tt class="py-name">enabled</tt> <tt class="py-op">=</tt> <tt class="py-name">enabled</tt> <tt class="py-keyword">and</tt> <tt class="py-name">port</tt><tt class="py-op">[</tt> <tt class="py-string">'enabled'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2221"></a><tt class="py-lineno">2221</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">enabled</tt><tt class="py-op">:</tt> </tt>
-<a name="L2222"></a><tt class="py-lineno">2222</tt> <tt class="py-line"> <tt class="py-name">mnLinks</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">l</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2223"></a><tt class="py-lineno">2223</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2224"></a><tt class="py-lineno">2224</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L2225"></a><tt class="py-lineno">2225</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-number">2</tt> <tt class="py-op">*</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">mnLinks</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onos</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2226"></a><tt class="py-lineno">2226</tt> <tt class="py-line"> <tt class="py-name">linkResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2227"></a><tt class="py-lineno">2227</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2228"></a><tt class="py-lineno">2228</tt> <tt class="py-line"> <tt class="py-name">linkResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2229"></a><tt class="py-lineno">2229</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-683" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-683', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-684" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-684', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2230"></a><tt class="py-lineno">2230</tt> <tt class="py-line"> <tt class="py-string">"Mininet has "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">mnLinks</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2231"></a><tt class="py-lineno">2231</tt> <tt class="py-line"> <tt class="py-string">" bidirectional links and ONOS has "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2232"></a><tt class="py-lineno">2232</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onos</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" unidirectional links"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2233"></a><tt class="py-lineno">2233</tt> <tt class="py-line"> </tt>
-<a name="L2234"></a><tt class="py-lineno">2234</tt> <tt class="py-line"> <tt class="py-comment"># iterate through MN links and check if an ONOS link exists in</tt> </tt>
-<a name="L2235"></a><tt class="py-lineno">2235</tt> <tt class="py-line"> <tt class="py-comment"># both directions</tt> </tt>
-<a name="L2236"></a><tt class="py-lineno">2236</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-685" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#link"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-685', 'link', 'link-685');">link</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">mnLinks</tt><tt class="py-op">:</tt> </tt>
-<a name="L2237"></a><tt class="py-lineno">2237</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Find a more efficient search method</tt> </tt>
-<a name="L2238"></a><tt class="py-lineno">2238</tt> <tt class="py-line"> <tt class="py-name">node1</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2239"></a><tt class="py-lineno">2239</tt> <tt class="py-line"> <tt class="py-name">port1</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2240"></a><tt class="py-lineno">2240</tt> <tt class="py-line"> <tt class="py-name">node2</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2241"></a><tt class="py-lineno">2241</tt> <tt class="py-line"> <tt class="py-name">port2</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2242"></a><tt class="py-lineno">2242</tt> <tt class="py-line"> <tt class="py-name">firstDir</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2243"></a><tt class="py-lineno">2243</tt> <tt class="py-line"> <tt class="py-name">secondDir</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2244"></a><tt class="py-lineno">2244</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">swName</tt><tt class="py-op">,</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">switches</tt><tt class="py-op">.</tt><tt class="py-name">iteritems</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2245"></a><tt class="py-lineno">2245</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">swName</tt> <tt class="py-op">==</tt> <tt id="link-686" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-686', 'link', 'link-685');">link</a></tt><tt class="py-op">[</tt> <tt class="py-string">'node1'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2246"></a><tt class="py-lineno">2246</tt> <tt class="py-line"> <tt class="py-name">node1</tt> <tt class="py-op">=</tt> <tt class="py-name">switch</tt><tt class="py-op">[</tt> <tt class="py-string">'dpid'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2247"></a><tt class="py-lineno">2247</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">port</tt> <tt class="py-keyword">in</tt> <tt class="py-name">switch</tt><tt class="py-op">[</tt> <tt class="py-string">'ports'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2248"></a><tt class="py-lineno">2248</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt><tt class="py-op">[</tt> <tt class="py-string">'of_port'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-687" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-687', 'link', 'link-685');">link</a></tt><tt class="py-op">[</tt> <tt class="py-string">'port1'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2249"></a><tt class="py-lineno">2249</tt> <tt class="py-line"> <tt class="py-name">port1</tt> <tt class="py-op">=</tt> <tt class="py-name">port</tt><tt class="py-op">[</tt> <tt class="py-string">'of_port'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2250"></a><tt class="py-lineno">2250</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">node1</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">and</tt> <tt class="py-name">node2</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L2251"></a><tt class="py-lineno">2251</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2252"></a><tt class="py-lineno">2252</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">swName</tt> <tt class="py-op">==</tt> <tt id="link-688" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-688', 'link', 'link-685');">link</a></tt><tt class="py-op">[</tt> <tt class="py-string">'node2'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2253"></a><tt class="py-lineno">2253</tt> <tt class="py-line"> <tt class="py-name">node2</tt> <tt class="py-op">=</tt> <tt class="py-name">switch</tt><tt class="py-op">[</tt> <tt class="py-string">'dpid'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2254"></a><tt class="py-lineno">2254</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">port</tt> <tt class="py-keyword">in</tt> <tt class="py-name">switch</tt><tt class="py-op">[</tt> <tt class="py-string">'ports'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2255"></a><tt class="py-lineno">2255</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt><tt class="py-op">[</tt> <tt class="py-string">'of_port'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-689" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-689', 'link', 'link-685');">link</a></tt><tt class="py-op">[</tt> <tt class="py-string">'port2'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2256"></a><tt class="py-lineno">2256</tt> <tt class="py-line"> <tt class="py-name">port2</tt> <tt class="py-op">=</tt> <tt class="py-name">port</tt><tt class="py-op">[</tt> <tt class="py-string">'of_port'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2257"></a><tt class="py-lineno">2257</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">node1</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">and</tt> <tt class="py-name">node2</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L2258"></a><tt class="py-lineno">2258</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2259"></a><tt class="py-lineno">2259</tt> <tt class="py-line"> </tt>
-<a name="L2260"></a><tt class="py-lineno">2260</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">onosLink</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onos</tt><tt class="py-op">:</tt> </tt>
-<a name="L2261"></a><tt class="py-lineno">2261</tt> <tt class="py-line"> <tt class="py-name">onosNode1</tt> <tt class="py-op">=</tt> <tt class="py-name">onosLink</tt><tt class="py-op">[</tt> <tt class="py-string">'src'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'device'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> </tt>
-<a name="L2262"></a><tt class="py-lineno">2262</tt> <tt class="py-line"> <tt class="py-string">":"</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"of"</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2263"></a><tt class="py-lineno">2263</tt> <tt class="py-line"> <tt class="py-name">onosNode2</tt> <tt class="py-op">=</tt> <tt class="py-name">onosLink</tt><tt class="py-op">[</tt> <tt class="py-string">'dst'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'device'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> </tt>
-<a name="L2264"></a><tt class="py-lineno">2264</tt> <tt class="py-line"> <tt class="py-string">":"</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"of"</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2265"></a><tt class="py-lineno">2265</tt> <tt class="py-line"> <tt class="py-name">onosPort1</tt> <tt class="py-op">=</tt> <tt class="py-name">onosLink</tt><tt class="py-op">[</tt> <tt class="py-string">'src'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2266"></a><tt class="py-lineno">2266</tt> <tt class="py-line"> <tt class="py-name">onosPort2</tt> <tt class="py-op">=</tt> <tt class="py-name">onosLink</tt><tt class="py-op">[</tt> <tt class="py-string">'dst'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2267"></a><tt class="py-lineno">2267</tt> <tt class="py-line"> </tt>
-<a name="L2268"></a><tt class="py-lineno">2268</tt> <tt class="py-line"> <tt class="py-comment"># check onos link from node1 to node2</tt> </tt>
-<a name="L2269"></a><tt class="py-lineno">2269</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosNode1</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node1</tt> <tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L2270"></a><tt class="py-lineno">2270</tt> <tt class="py-line"> <tt class="py-name">onosNode2</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2271"></a><tt class="py-lineno">2271</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">onosPort1</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">port1</tt> <tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> </tt>
-<a name="L2272"></a><tt class="py-lineno">2272</tt> <tt class="py-line"> <tt class="py-name">onosPort2</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">port2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2273"></a><tt class="py-lineno">2273</tt> <tt class="py-line"> <tt class="py-name">firstDir</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2274"></a><tt class="py-lineno">2274</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2275"></a><tt class="py-lineno">2275</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-690" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-690', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L2276"></a><tt class="py-lineno">2276</tt> <tt class="py-line"> <tt class="py-string">'The port numbers do not match for '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2277"></a><tt class="py-lineno">2277</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-691" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-691', 'link', 'link-685');">link</a></tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2278"></a><tt class="py-lineno">2278</tt> <tt class="py-line"> <tt class="py-string">' between ONOS and MN. When checking ONOS for '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2279"></a><tt class="py-lineno">2279</tt> <tt class="py-line"> <tt class="py-string">'link %s/%s -> %s/%s'</tt> <tt class="py-op">%</tt> </tt>
-<a name="L2280"></a><tt class="py-lineno">2280</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">node1</tt><tt class="py-op">,</tt> <tt class="py-name">port1</tt><tt class="py-op">,</tt> <tt class="py-name">node2</tt><tt class="py-op">,</tt> <tt class="py-name">port2</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2281"></a><tt class="py-lineno">2281</tt> <tt class="py-line"> <tt class="py-string">' ONOS has the values %s/%s -> %s/%s'</tt> <tt class="py-op">%</tt> </tt>
-<a name="L2282"></a><tt class="py-lineno">2282</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">onosNode1</tt><tt class="py-op">,</tt> <tt class="py-name">onosPort1</tt><tt class="py-op">,</tt> <tt class="py-name">onosNode2</tt><tt class="py-op">,</tt> <tt class="py-name">onosPort2</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2283"></a><tt class="py-lineno">2283</tt> <tt class="py-line"> </tt>
-<a name="L2284"></a><tt class="py-lineno">2284</tt> <tt class="py-line"> <tt class="py-comment"># check onos link from node2 to node1</tt> </tt>
-<a name="L2285"></a><tt class="py-lineno">2285</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosNode1</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node2</tt> <tt class="py-op">)</tt> <tt class="py-keyword">and</tt> </tt>
-<a name="L2286"></a><tt class="py-lineno">2286</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosNode2</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2287"></a><tt class="py-lineno">2287</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">onosPort1</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">port2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2288"></a><tt class="py-lineno">2288</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">onosPort2</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">port1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2289"></a><tt class="py-lineno">2289</tt> <tt class="py-line"> <tt class="py-name">secondDir</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2290"></a><tt class="py-lineno">2290</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2291"></a><tt class="py-lineno">2291</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-692" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-692', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L2292"></a><tt class="py-lineno">2292</tt> <tt class="py-line"> <tt class="py-string">'The port numbers do not match for '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2293"></a><tt class="py-lineno">2293</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-693" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-693', 'link', 'link-685');">link</a></tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2294"></a><tt class="py-lineno">2294</tt> <tt class="py-line"> <tt class="py-string">' between ONOS and MN. When checking ONOS for '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2295"></a><tt class="py-lineno">2295</tt> <tt class="py-line"> <tt class="py-string">'link %s/%s -> %s/%s'</tt> <tt class="py-op">%</tt> </tt>
-<a name="L2296"></a><tt class="py-lineno">2296</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">node1</tt><tt class="py-op">,</tt> <tt class="py-name">port1</tt><tt class="py-op">,</tt> <tt class="py-name">node2</tt><tt class="py-op">,</tt> <tt class="py-name">port2</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2297"></a><tt class="py-lineno">2297</tt> <tt class="py-line"> <tt class="py-string">' ONOS has the values %s/%s -> %s/%s'</tt> <tt class="py-op">%</tt> </tt>
-<a name="L2298"></a><tt class="py-lineno">2298</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">onosNode2</tt><tt class="py-op">,</tt> <tt class="py-name">onosPort2</tt><tt class="py-op">,</tt> <tt class="py-name">onosNode1</tt><tt class="py-op">,</tt> <tt class="py-name">onosPort1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2299"></a><tt class="py-lineno">2299</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># this is not the link you're looking for</tt> </tt>
-<a name="L2300"></a><tt class="py-lineno">2300</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L2301"></a><tt class="py-lineno">2301</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">firstDir</tt><tt class="py-op">:</tt> </tt>
-<a name="L2302"></a><tt class="py-lineno">2302</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-694" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-694', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-695" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-695', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2303"></a><tt class="py-lineno">2303</tt> <tt class="py-line"> <tt class="py-string">'ONOS does not have the link %s/%s -> %s/%s'</tt> <tt class="py-op">%</tt> </tt>
-<a name="L2304"></a><tt class="py-lineno">2304</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">node1</tt><tt class="py-op">,</tt> <tt class="py-name">port1</tt><tt class="py-op">,</tt> <tt class="py-name">node2</tt><tt class="py-op">,</tt> <tt class="py-name">port2</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2305"></a><tt class="py-lineno">2305</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">secondDir</tt><tt class="py-op">:</tt> </tt>
-<a name="L2306"></a><tt class="py-lineno">2306</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-696" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-696', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-697" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-697', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2307"></a><tt class="py-lineno">2307</tt> <tt class="py-line"> <tt class="py-string">'ONOS does not have the link %s/%s -> %s/%s'</tt> <tt class="py-op">%</tt> </tt>
-<a name="L2308"></a><tt class="py-lineno">2308</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">node2</tt><tt class="py-op">,</tt> <tt class="py-name">port2</tt><tt class="py-op">,</tt> <tt class="py-name">node1</tt><tt class="py-op">,</tt> <tt class="py-name">port1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2309"></a><tt class="py-lineno">2309</tt> <tt class="py-line"> <tt class="py-name">linkResults</tt> <tt class="py-op">=</tt> <tt class="py-name">linkResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">firstDir</tt> <tt class="py-keyword">and</tt> <tt class="py-name">secondDir</tt> </tt>
-<a name="L2310"></a><tt class="py-lineno">2310</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">linkResults</tt> </tt>
-</div><a name="L2311"></a><tt class="py-lineno">2311</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.compareHosts"></a><div id="MininetCliDriver.compareHosts-def"><a name="L2312"></a><tt class="py-lineno">2312</tt> <a class="py-toggle" href="#" id="MininetCliDriver.compareHosts-toggle" onclick="return toggle('MininetCliDriver.compareHosts');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareHosts">compareHosts</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hosts</tt><tt class="py-op">,</tt> <tt class="py-param">hostsJson</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.compareHosts-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.compareHosts-expanded"><a name="L2313"></a><tt class="py-lineno">2313</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2314"></a><tt class="py-lineno">2314</tt> <tt class="py-line"><tt class="py-docstring"> Compare mn and onos Hosts.</tt> </tt>
-<a name="L2315"></a><tt class="py-lineno">2315</tt> <tt class="py-line"><tt class="py-docstring"> Since Mininet hosts are quiet, ONOS will only know of them when they</tt> </tt>
-<a name="L2316"></a><tt class="py-lineno">2316</tt> <tt class="py-line"><tt class="py-docstring"> speak. For this reason, we will only check that the hosts in ONOS</tt> </tt>
-<a name="L2317"></a><tt class="py-lineno">2317</tt> <tt class="py-line"><tt class="py-docstring"> stores are in Mininet, and not vice versa.</tt> </tt>
-<a name="L2318"></a><tt class="py-lineno">2318</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L2319"></a><tt class="py-lineno">2319</tt> <tt class="py-line"><tt class="py-docstring"> Arguments:</tt> </tt>
-<a name="L2320"></a><tt class="py-lineno">2320</tt> <tt class="py-line"><tt class="py-docstring"> hostsJson: parsed json object from the onos hosts api</tt> </tt>
-<a name="L2321"></a><tt class="py-lineno">2321</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L2322"></a><tt class="py-lineno">2322</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2323"></a><tt class="py-lineno">2323</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L2324"></a><tt class="py-lineno">2324</tt> <tt class="py-line"> <tt class="py-name">hostResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2325"></a><tt class="py-lineno">2325</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">onosHost</tt> <tt class="py-keyword">in</tt> <tt class="py-name">hostsJson</tt><tt class="py-op">:</tt> </tt>
-<a name="L2326"></a><tt class="py-lineno">2326</tt> <tt class="py-line"> <tt class="py-name">onosMAC</tt> <tt class="py-op">=</tt> <tt class="py-name">onosHost</tt><tt class="py-op">[</tt> <tt class="py-string">'mac'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2327"></a><tt class="py-lineno">2327</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2328"></a><tt class="py-lineno">2328</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">mnHost</tt><tt class="py-op">,</tt> <tt class="py-name">info</tt> <tt class="py-keyword">in</tt> <tt id="link-698" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-698', 'hosts', 'link-308');">hosts</a></tt><tt class="py-op">.</tt><tt class="py-name">iteritems</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2329"></a><tt class="py-lineno">2329</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">mnIntf</tt> <tt class="py-keyword">in</tt> <tt class="py-name">info</tt><tt class="py-op">[</tt> <tt class="py-string">'interfaces'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2330"></a><tt class="py-lineno">2330</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosMAC</tt> <tt class="py-op">==</tt> <tt class="py-name">mnIntf</tt><tt class="py-op">[</tt> <tt class="py-string">'mac'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2331"></a><tt class="py-lineno">2331</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2332"></a><tt class="py-lineno">2332</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">ip</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mnIntf</tt><tt class="py-op">[</tt> <tt class="py-string">'ips'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2333"></a><tt class="py-lineno">2333</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosHost</tt><tt class="py-op">[</tt> <tt class="py-string">'ipAddresses'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2334"></a><tt class="py-lineno">2334</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> <tt class="py-comment"># all is well</tt> </tt>
-<a name="L2335"></a><tt class="py-lineno">2335</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2336"></a><tt class="py-lineno">2336</tt> <tt class="py-line"> <tt class="py-comment"># misssing ip</tt> </tt>
-<a name="L2337"></a><tt class="py-lineno">2337</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-699" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-699', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-700" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-700', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2338"></a><tt class="py-lineno">2338</tt> <tt class="py-line"> <tt class="py-name">onosHost</tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2339"></a><tt class="py-lineno">2339</tt> <tt class="py-line"> <tt class="py-string">" has a different IP("</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2340"></a><tt class="py-lineno">2340</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosHost</tt><tt class="py-op">[</tt> <tt class="py-string">'ipAddresses'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2341"></a><tt class="py-lineno">2341</tt> <tt class="py-line"> <tt class="py-string">") than the Mininet host("</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2342"></a><tt class="py-lineno">2342</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2343"></a><tt class="py-lineno">2343</tt> <tt class="py-line"> <tt class="py-string">")."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2344"></a><tt class="py-lineno">2344</tt> <tt class="py-line"> <tt id="link-701" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-701', 'output', 'link-641');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> </tt>
-<a name="L2345"></a><tt class="py-lineno">2345</tt> <tt class="py-line"> <tt class="py-name">onosHost</tt><tt class="py-op">,</tt> </tt>
-<a name="L2346"></a><tt class="py-lineno">2346</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2347"></a><tt class="py-lineno">2347</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L2348"></a><tt class="py-lineno">2348</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2349"></a><tt class="py-lineno">2349</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-702" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-702', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt id="link-703" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-703', 'output', 'link-641');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L2350"></a><tt class="py-lineno">2350</tt> <tt class="py-line"> <tt class="py-name">hostResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2351"></a><tt class="py-lineno">2351</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">match</tt><tt class="py-op">:</tt> </tt>
-<a name="L2352"></a><tt class="py-lineno">2352</tt> <tt class="py-line"> <tt class="py-name">hostResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2353"></a><tt class="py-lineno">2353</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-704" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-704', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-705" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-705', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS host "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosHost</tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" has no "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2354"></a><tt class="py-lineno">2354</tt> <tt class="py-line"> <tt class="py-string">"corresponding Mininet host."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2355"></a><tt class="py-lineno">2355</tt> <tt class="py-line"> <tt id="link-706" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-706', 'output', 'link-641');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">onosHost</tt><tt class="py-op">,</tt> </tt>
-<a name="L2356"></a><tt class="py-lineno">2356</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2357"></a><tt class="py-lineno">2357</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L2358"></a><tt class="py-lineno">2358</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2359"></a><tt class="py-lineno">2359</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-707" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-707', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt id="link-708" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-708', 'output', 'link-641');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L2360"></a><tt class="py-lineno">2360</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">hostResults</tt> </tt>
-</div><a name="L2361"></a><tt class="py-lineno">2361</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.getHostsOld"></a><div id="MininetCliDriver.getHostsOld-def"><a name="L2362"></a><tt class="py-lineno">2362</tt> <a class="py-toggle" href="#" id="MininetCliDriver.getHostsOld-toggle" onclick="return toggle('MininetCliDriver.getHostsOld');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getHostsOld">getHostsOld</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.getHostsOld-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.getHostsOld-expanded"><a name="L2363"></a><tt class="py-lineno">2363</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2364"></a><tt class="py-lineno">2364</tt> <tt class="py-line"><tt class="py-docstring"> Returns a list of all hosts</tt> </tt>
-<a name="L2365"></a><tt class="py-lineno">2365</tt> <tt class="py-line"><tt class="py-docstring"> Don't ask questions just use it"""</tt> </tt>
-<a name="L2366"></a><tt class="py-lineno">2366</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-709" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-709', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2367"></a><tt class="py-lineno">2367</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2368"></a><tt class="py-lineno">2368</tt> <tt class="py-line"> </tt>
-<a name="L2369"></a><tt class="py-lineno">2369</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-710" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-710', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"py [ host.name for host in net.hosts ]"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2370"></a><tt class="py-lineno">2370</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2371"></a><tt class="py-lineno">2371</tt> <tt class="py-line"> </tt>
-<a name="L2372"></a><tt class="py-lineno">2372</tt> <tt class="py-line"> <tt class="py-name">handlePy</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L2373"></a><tt class="py-lineno">2373</tt> <tt class="py-line"> <tt class="py-name">handlePy</tt> <tt class="py-op">=</tt> <tt class="py-name">handlePy</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"]\r\n"</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2374"></a><tt class="py-lineno">2374</tt> <tt class="py-line"> <tt class="py-name">handlePy</tt> <tt class="py-op">=</tt> <tt class="py-name">handlePy</tt><tt class="py-op">.</tt><tt class="py-name">rstrip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2375"></a><tt class="py-lineno">2375</tt> <tt class="py-line"> </tt>
-<a name="L2376"></a><tt class="py-lineno">2376</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-711" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-711', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2377"></a><tt class="py-lineno">2377</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2378"></a><tt class="py-lineno">2378</tt> <tt class="py-line"> </tt>
-<a name="L2379"></a><tt class="py-lineno">2379</tt> <tt class="py-line"> <tt class="py-name">hostStr</tt> <tt class="py-op">=</tt> <tt class="py-name">handlePy</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"]"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2380"></a><tt class="py-lineno">2380</tt> <tt class="py-line"> <tt class="py-name">hostStr</tt> <tt class="py-op">=</tt> <tt class="py-name">hostStr</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"'"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2381"></a><tt class="py-lineno">2381</tt> <tt class="py-line"> <tt class="py-name">hostStr</tt> <tt class="py-op">=</tt> <tt class="py-name">hostStr</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"["</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2382"></a><tt class="py-lineno">2382</tt> <tt class="py-line"> <tt class="py-name">hostStr</tt> <tt class="py-op">=</tt> <tt class="py-name">hostStr</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">" "</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2383"></a><tt class="py-lineno">2383</tt> <tt class="py-line"> <tt class="py-name">hostList</tt> <tt class="py-op">=</tt> <tt class="py-name">hostStr</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2384"></a><tt class="py-lineno">2384</tt> <tt class="py-line"> </tt>
-<a name="L2385"></a><tt class="py-lineno">2385</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">hostList</tt> </tt>
-</div><a name="L2386"></a><tt class="py-lineno">2386</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.getSwitch"></a><div id="MininetCliDriver.getSwitch-def"><a name="L2387"></a><tt class="py-lineno">2387</tt> <a class="py-toggle" href="#" id="MininetCliDriver.getSwitch-toggle" onclick="return toggle('MininetCliDriver.getSwitch');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitch">getSwitch</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.getSwitch-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.getSwitch-expanded"><a name="L2388"></a><tt class="py-lineno">2388</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2389"></a><tt class="py-lineno">2389</tt> <tt class="py-line"><tt class="py-docstring"> Returns a list of all switches</tt> </tt>
-<a name="L2390"></a><tt class="py-lineno">2390</tt> <tt class="py-line"><tt class="py-docstring"> Again, don't ask question just use it...</tt> </tt>
-<a name="L2391"></a><tt class="py-lineno">2391</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2392"></a><tt class="py-lineno">2392</tt> <tt class="py-line"> <tt class="py-comment"># get host list...</tt> </tt>
-<a name="L2393"></a><tt class="py-lineno">2393</tt> <tt class="py-line"> <tt class="py-name">hostList</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-712" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getHosts"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts" class="py-name" href="#" onclick="return doclink('link-712', 'getHosts', 'link-712');">getHosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2394"></a><tt class="py-lineno">2394</tt> <tt class="py-line"> <tt class="py-comment"># Make host set</tt> </tt>
-<a name="L2395"></a><tt class="py-lineno">2395</tt> <tt class="py-line"> <tt class="py-name">hostSet</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">hostList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2396"></a><tt class="py-lineno">2396</tt> <tt class="py-line"> </tt>
-<a name="L2397"></a><tt class="py-lineno">2397</tt> <tt class="py-line"> <tt class="py-comment"># Getting all the nodes in mininet</tt> </tt>
-<a name="L2398"></a><tt class="py-lineno">2398</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-713" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-713', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2399"></a><tt class="py-lineno">2399</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2400"></a><tt class="py-lineno">2400</tt> <tt class="py-line"> </tt>
-<a name="L2401"></a><tt class="py-lineno">2401</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-714" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-714', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"py [ node.name for node in net.values() ]"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2402"></a><tt class="py-lineno">2402</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2403"></a><tt class="py-lineno">2403</tt> <tt class="py-line"> </tt>
-<a name="L2404"></a><tt class="py-lineno">2404</tt> <tt class="py-line"> <tt class="py-name">handlePy</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L2405"></a><tt class="py-lineno">2405</tt> <tt class="py-line"> <tt class="py-name">handlePy</tt> <tt class="py-op">=</tt> <tt class="py-name">handlePy</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"]\r\n"</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2406"></a><tt class="py-lineno">2406</tt> <tt class="py-line"> <tt class="py-name">handlePy</tt> <tt class="py-op">=</tt> <tt class="py-name">handlePy</tt><tt class="py-op">.</tt><tt class="py-name">rstrip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2407"></a><tt class="py-lineno">2407</tt> <tt class="py-line"> </tt>
-<a name="L2408"></a><tt class="py-lineno">2408</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-715" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-715', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2409"></a><tt class="py-lineno">2409</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2410"></a><tt class="py-lineno">2410</tt> <tt class="py-line"> </tt>
-<a name="L2411"></a><tt class="py-lineno">2411</tt> <tt class="py-line"> <tt class="py-name">nodesStr</tt> <tt class="py-op">=</tt> <tt class="py-name">handlePy</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"]"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2412"></a><tt class="py-lineno">2412</tt> <tt class="py-line"> <tt class="py-name">nodesStr</tt> <tt class="py-op">=</tt> <tt class="py-name">nodesStr</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"'"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2413"></a><tt class="py-lineno">2413</tt> <tt class="py-line"> <tt class="py-name">nodesStr</tt> <tt class="py-op">=</tt> <tt class="py-name">nodesStr</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"["</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2414"></a><tt class="py-lineno">2414</tt> <tt class="py-line"> <tt class="py-name">nodesStr</tt> <tt class="py-op">=</tt> <tt class="py-name">nodesStr</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">" "</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2415"></a><tt class="py-lineno">2415</tt> <tt class="py-line"> <tt class="py-name">nodesList</tt> <tt class="py-op">=</tt> <tt class="py-name">nodesStr</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2416"></a><tt class="py-lineno">2416</tt> <tt class="py-line"> </tt>
-<a name="L2417"></a><tt class="py-lineno">2417</tt> <tt class="py-line"> <tt class="py-name">nodesSet</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">nodesList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2418"></a><tt class="py-lineno">2418</tt> <tt class="py-line"> <tt class="py-comment"># discarding default controller(s) node</tt> </tt>
-<a name="L2419"></a><tt class="py-lineno">2419</tt> <tt class="py-line"> <tt class="py-name">nodesSet</tt><tt class="py-op">.</tt><tt class="py-name">discard</tt><tt class="py-op">(</tt> <tt class="py-string">'c0'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2420"></a><tt class="py-lineno">2420</tt> <tt class="py-line"> <tt class="py-name">nodesSet</tt><tt class="py-op">.</tt><tt class="py-name">discard</tt><tt class="py-op">(</tt> <tt class="py-string">'c1'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2421"></a><tt class="py-lineno">2421</tt> <tt class="py-line"> <tt class="py-name">nodesSet</tt><tt class="py-op">.</tt><tt class="py-name">discard</tt><tt class="py-op">(</tt> <tt class="py-string">'c2'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2422"></a><tt class="py-lineno">2422</tt> <tt class="py-line"> </tt>
-<a name="L2423"></a><tt class="py-lineno">2423</tt> <tt class="py-line"> <tt class="py-name">switchSet</tt> <tt class="py-op">=</tt> <tt class="py-name">nodesSet</tt> <tt class="py-op">-</tt> <tt class="py-name">hostSet</tt> </tt>
-<a name="L2424"></a><tt class="py-lineno">2424</tt> <tt class="py-line"> <tt class="py-name">switchList</tt> <tt class="py-op">=</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt> <tt class="py-name">switchSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2425"></a><tt class="py-lineno">2425</tt> <tt class="py-line"> </tt>
-<a name="L2426"></a><tt class="py-lineno">2426</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">switchList</tt> </tt>
-</div><a name="L2427"></a><tt class="py-lineno">2427</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.update"></a><div id="MininetCliDriver.update-def"><a name="L2428"></a><tt class="py-lineno">2428</tt> <a class="py-toggle" href="#" id="MininetCliDriver.update-toggle" onclick="return toggle('MininetCliDriver.update');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#update">update</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.update-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.update-expanded"><a name="L2429"></a><tt class="py-lineno">2429</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2430"></a><tt class="py-lineno">2430</tt> <tt class="py-line"><tt class="py-docstring"> updates the port address and status information for</tt> </tt>
-<a name="L2431"></a><tt class="py-lineno">2431</tt> <tt class="py-line"><tt class="py-docstring"> each port in mn"""</tt> </tt>
-<a name="L2432"></a><tt class="py-lineno">2432</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Add error checking. currently the mininet command has no output</tt> </tt>
-<a name="L2433"></a><tt class="py-lineno">2433</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-716" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-716', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Updating MN port information"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2434"></a><tt class="py-lineno">2434</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2435"></a><tt class="py-lineno">2435</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-717" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-717', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2436"></a><tt class="py-lineno">2436</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2437"></a><tt class="py-lineno">2437</tt> <tt class="py-line"> </tt>
-<a name="L2438"></a><tt class="py-lineno">2438</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-718" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-718', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"update"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2439"></a><tt class="py-lineno">2439</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"update"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2440"></a><tt class="py-lineno">2440</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2441"></a><tt class="py-lineno">2441</tt> <tt class="py-line"> </tt>
-<a name="L2442"></a><tt class="py-lineno">2442</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-719" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-719', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2443"></a><tt class="py-lineno">2443</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2444"></a><tt class="py-lineno">2444</tt> <tt class="py-line"> </tt>
-<a name="L2445"></a><tt class="py-lineno">2445</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2446"></a><tt class="py-lineno">2446</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2447"></a><tt class="py-lineno">2447</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-720" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-720', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-721" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-721', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2448"></a><tt class="py-lineno">2448</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-722" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-722', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-723" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-723', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2449"></a><tt class="py-lineno">2449</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-724" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-724', 'cleanup', 'link-22');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2450"></a><tt class="py-lineno">2450</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-725" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-725', 'exit', 'link-23');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2451"></a><tt class="py-lineno">2451</tt> <tt class="py-line"> </tt>
-<a name="MininetCliDriver.assignVLAN"></a><div id="MininetCliDriver.assignVLAN-def"><a name="L2452"></a><tt class="py-lineno">2452</tt> <a class="py-toggle" href="#" id="MininetCliDriver.assignVLAN-toggle" onclick="return toggle('MininetCliDriver.assignVLAN');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignVLAN">assignVLAN</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">host</tt><tt class="py-op">,</tt> <tt class="py-param">intf</tt><tt class="py-op">,</tt> <tt class="py-param">vlan</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MininetCliDriver.assignVLAN-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="MininetCliDriver.assignVLAN-expanded"><a name="L2453"></a><tt class="py-lineno">2453</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2454"></a><tt class="py-lineno">2454</tt> <tt class="py-line"><tt class="py-docstring"> Add vlan tag to a host.</tt> </tt>
-<a name="L2455"></a><tt class="py-lineno">2455</tt> <tt class="py-line"><tt class="py-docstring"> Dependencies:</tt> </tt>
-<a name="L2456"></a><tt class="py-lineno">2456</tt> <tt class="py-line"><tt class="py-docstring"> This class depends on the "vlan" package</tt> </tt>
-<a name="L2457"></a><tt class="py-lineno">2457</tt> <tt class="py-line"><tt class="py-docstring"> $ sudo apt-get install vlan</tt> </tt>
-<a name="L2458"></a><tt class="py-lineno">2458</tt> <tt class="py-line"><tt class="py-docstring"> Configuration:</tt> </tt>
-<a name="L2459"></a><tt class="py-lineno">2459</tt> <tt class="py-line"><tt class="py-docstring"> Load the 8021q module into the kernel</tt> </tt>
-<a name="L2460"></a><tt class="py-lineno">2460</tt> <tt class="py-line"><tt class="py-docstring"> $sudo modprobe 8021q</tt> </tt>
-<a name="L2461"></a><tt class="py-lineno">2461</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L2462"></a><tt class="py-lineno">2462</tt> <tt class="py-line"><tt class="py-docstring"> To make this setup permanent:</tt> </tt>
-<a name="L2463"></a><tt class="py-lineno">2463</tt> <tt class="py-line"><tt class="py-docstring"> $ sudo su -c 'echo "8021q" >> /etc/modules'</tt> </tt>
-<a name="L2464"></a><tt class="py-lineno">2464</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2465"></a><tt class="py-lineno">2465</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L2466"></a><tt class="py-lineno">2466</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2467"></a><tt class="py-lineno">2467</tt> <tt class="py-line"> <tt class="py-comment"># get the ip address of the host</tt> </tt>
-<a name="L2468"></a><tt class="py-lineno">2468</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-726" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-726', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Get the ip address of the host"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2469"></a><tt class="py-lineno">2469</tt> <tt class="py-line"> <tt class="py-name">ipaddr</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-727" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getIPAddress()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getIPAddress"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getIPAddress" class="py-name" href="#" onclick="return doclink('link-727', 'getIPAddress', 'link-727');">getIPAddress</a></tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2470"></a><tt class="py-lineno">2470</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ipaddr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2471"></a><tt class="py-lineno">2471</tt> <tt class="py-line"> </tt>
-<a name="L2472"></a><tt class="py-lineno">2472</tt> <tt class="py-line"> <tt class="py-comment"># remove IP from interface intf</tt> </tt>
-<a name="L2473"></a><tt class="py-lineno">2473</tt> <tt class="py-line"> <tt class="py-comment"># Ex: h1 ifconfig h1-eth0 inet 0</tt> </tt>
-<a name="L2474"></a><tt class="py-lineno">2474</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-728" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-728', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Remove IP from interface "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2475"></a><tt class="py-lineno">2475</tt> <tt class="py-line"> <tt class="py-name">cmd2</tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt> <tt class="py-op">+</tt> <tt class="py-string">" ifconfig "</tt> <tt class="py-op">+</tt> <tt class="py-name">intf</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-string">" inet 0 "</tt> </tt>
-<a name="L2476"></a><tt class="py-lineno">2476</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-729" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-729', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2477"></a><tt class="py-lineno">2477</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2478"></a><tt class="py-lineno">2478</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L2479"></a><tt class="py-lineno">2479</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-730" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-730', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"====> %s "</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2480"></a><tt class="py-lineno">2480</tt> <tt class="py-line"> </tt>
-<a name="L2481"></a><tt class="py-lineno">2481</tt> <tt class="py-line"> <tt class="py-comment"># create VLAN interface</tt> </tt>
-<a name="L2482"></a><tt class="py-lineno">2482</tt> <tt class="py-line"> <tt class="py-comment"># Ex: h1 vconfig add h1-eth0 100</tt> </tt>
-<a name="L2483"></a><tt class="py-lineno">2483</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-731" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-731', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Create Vlan"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2484"></a><tt class="py-lineno">2484</tt> <tt class="py-line"> <tt class="py-name">cmd3</tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt> <tt class="py-op">+</tt> <tt class="py-string">" vconfig add "</tt> <tt class="py-op">+</tt> <tt class="py-name">intf</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">vlan</tt> </tt>
-<a name="L2485"></a><tt class="py-lineno">2485</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-732" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-732', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2486"></a><tt class="py-lineno">2486</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2487"></a><tt class="py-lineno">2487</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L2488"></a><tt class="py-lineno">2488</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-733" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-733', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"====> %s "</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2489"></a><tt class="py-lineno">2489</tt> <tt class="py-line"> </tt>
-<a name="L2490"></a><tt class="py-lineno">2490</tt> <tt class="py-line"> <tt class="py-comment"># assign the host's IP to the VLAN interface</tt> </tt>
-<a name="L2491"></a><tt class="py-lineno">2491</tt> <tt class="py-line"> <tt class="py-comment"># Ex: h1 ifconfig h1-eth0.100 inet 10.0.0.1</tt> </tt>
-<a name="L2492"></a><tt class="py-lineno">2492</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-734" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-734', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Assign the host IP to the vlan interface"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2493"></a><tt class="py-lineno">2493</tt> <tt class="py-line"> <tt class="py-name">vintf</tt> <tt class="py-op">=</tt> <tt class="py-name">intf</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">vlan</tt> </tt>
-<a name="L2494"></a><tt class="py-lineno">2494</tt> <tt class="py-line"> <tt class="py-name">cmd4</tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt> <tt class="py-op">+</tt> <tt class="py-string">" ifconfig "</tt> <tt class="py-op">+</tt> <tt class="py-name">vintf</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-string">" inet "</tt> <tt class="py-op">+</tt> <tt class="py-name">ipaddr</tt> </tt>
-<a name="L2495"></a><tt class="py-lineno">2495</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-735" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-735', 'sendline', 'link-28');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd4</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2496"></a><tt class="py-lineno">2496</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2497"></a><tt class="py-lineno">2497</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L2498"></a><tt class="py-lineno">2498</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-736" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-736', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"====> %s "</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2499"></a><tt class="py-lineno">2499</tt> <tt class="py-line"> </tt>
-<a name="L2500"></a><tt class="py-lineno">2500</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2501"></a><tt class="py-lineno">2501</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2502"></a><tt class="py-lineno">2502</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-737" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-737', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-738" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-738', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2503"></a><tt class="py-lineno">2503</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-739" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-739', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-740" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-740', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2504"></a><tt class="py-lineno">2504</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div></div><a name="L2505"></a><tt class="py-lineno">2505</tt> <tt class="py-line"> </tt>
-<a name="L2506"></a><tt class="py-lineno">2506</tt> <tt class="py-line"><tt class="py-keyword">if</tt> <tt class="py-name">__name__</tt> <tt class="py-op">!=</tt> <tt class="py-string">"__main__"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2507"></a><tt class="py-lineno">2507</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L2508"></a><tt class="py-lineno">2508</tt> <tt class="py-line"> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">modules</tt><tt class="py-op">[</tt> <tt class="py-name">__name__</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-741" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver" class="py-name" href="#" onclick="return doclink('link-741', 'MininetCliDriver', 'link-11');">MininetCliDriver</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2509"></a><tt class="py-lineno">2509</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html
deleted file mode 100644
index 9b08309..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html
+++ /dev/null
@@ -1,2421 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.emulator-module.html">Package emulator</a> ::
- <a href="TestON.drivers.common.cli.emulator.mininetclidriver-module.html">Module mininetclidriver</a> ::
- Class MininetCliDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class MininetCliDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_mininetcli" name="class_hierarchy_for_mininetcli">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html" title="MininetCliDriver" alt="" coords="5,6,120,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html" title="emulatordriver.Emulator" alt="" coords="144,6,303,31"/>
-<area shape="rect" id="node3" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="329,6,420,31"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="component.Component" alt="" coords="445,6,603,31"/>
-</map>
- <img src="class_hierarchy_for_mininetcli.gif" alt='' usemap="#class_hierarchy_for_mininetcli" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<p>MininetCliDriver is the basic driver which will handle the Mininet
- functions</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Here the main is the TestON instance after creating all the log
- handles.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startNet" class="summary-sig-name">startNet</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">topoFile</span>=<span class="summary-sig-default">''</span>,
- <span class="summary-sig-arg">args</span>=<span class="summary-sig-default">''</span>,
- <span class="summary-sig-arg">mnCmd</span>=<span class="summary-sig-default">''</span>,
- <span class="summary-sig-arg">timeout</span>=<span class="summary-sig-default">120</span>)</span><br />
- Description:
- Starts Mininet accepts a topology(.py) file and/or an optional
- argument, to start the mininet, as a parameter.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.startNet">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="numSwitchesNlinks"></a><span class="summary-sig-name">numSwitchesNlinks</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">topoType</span>,
- <span class="summary-sig-arg">depth</span>,
- <span class="summary-sig-arg">fanout</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.numSwitchesNlinks">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="calculateSwAndLinks"></a><span class="summary-sig-name">calculateSwAndLinks</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Calculate the number of switches and links in a topo.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.calculateSwAndLinks">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingall" class="summary-sig-name">pingall</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">timeout</span>=<span class="summary-sig-default">300</span>,
- <span class="summary-sig-arg">shortCircuit</span>=<span class="summary-sig-default">False</span>,
- <span class="summary-sig-arg">acceptableFailed</span>=<span class="summary-sig-default">0</span>)</span><br />
- Verifies the reachability of the hosts using pingall command.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.pingall">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#fpingHost" class="summary-sig-name">fpingHost</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**pingParams</span>)</span><br />
- Uses the fping package for faster pinging...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.fpingHost">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingallHosts" class="summary-sig-name">pingallHosts</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hostList</span>)</span><br />
- Ping all specified IPv4 hosts</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.pingallHosts">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingIpv6Hosts" class="summary-sig-name">pingIpv6Hosts</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hostList</span>,
- <span class="summary-sig-arg">prefix</span>=<span class="summary-sig-default">'1000::'</span>)</span><br />
- IPv6 ping all hosts in hostList.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.pingIpv6Hosts">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="pingHost"></a><span class="summary-sig-name">pingHost</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**pingParams</span>)</span><br />
- Ping from one mininet host to another Currently the only supported
- Params: SRC and TARGET</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.pingHost">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="checkIP"></a><span class="summary-sig-name">checkIP</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">host</span>)</span><br />
- Verifies the host's ip configured or not.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.checkIP">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="verifySSH"></a><span class="summary-sig-name">verifySSH</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.verifySSH">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="moveHost"></a><span class="summary-sig-name">moveHost</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">host</span>,
- <span class="summary-sig-arg">oldSw</span>,
- <span class="summary-sig-arg">newSw</span>)</span><br />
- Moves a host from one switch to another on the fly
-Note: The intf between host and oldSw when detached
- using detach(), will still show up in the 'net'
- cmd, because switch.detach() doesn't affect switch.intfs[]
- ( which is correct behavior since the interfaces
- haven't moved ).</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.moveHost">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="changeIP"></a><span class="summary-sig-name">changeIP</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">host</span>,
- <span class="summary-sig-arg">intf</span>,
- <span class="summary-sig-arg">newIP</span>,
- <span class="summary-sig-arg">newNetmask</span>)</span><br />
- Changes the ip address of a host on the fly Ex: h2 ifconfig h2-eth0
- 10.0.1.2 netmask 255.255.255.0</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.changeIP">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="changeDefaultGateway"></a><span class="summary-sig-name">changeDefaultGateway</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">host</span>,
- <span class="summary-sig-arg">newGW</span>)</span><br />
- Changes the default gateway of a host Ex: h1 route add default gw
- 10.0.1.2</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.changeDefaultGateway">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="addStaticMACAddress"></a><span class="summary-sig-name">addStaticMACAddress</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">host</span>,
- <span class="summary-sig-arg">GW</span>,
- <span class="summary-sig-arg">macaddr</span>)</span><br />
- Changes the mac address of a gateway host</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.addStaticMACAddress">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="verifyStaticGWandMAC"></a><span class="summary-sig-name">verifyStaticGWandMAC</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">host</span>)</span><br />
- Verify if the static gateway and mac address assignment</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.verifyStaticGWandMAC">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getMacAddress"></a><span class="summary-sig-name">getMacAddress</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">host</span>)</span><br />
- Verifies the host's ip configured or not.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getMacAddress">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getInterfaceMACAddress"></a><span class="summary-sig-name">getInterfaceMACAddress</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">host</span>,
- <span class="summary-sig-arg">interface</span>)</span><br />
- Return the IP address of the interface on the given host</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getInterfaceMACAddress">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getIPAddress"></a><span class="summary-sig-name">getIPAddress</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">host</span>)</span><br />
- Verifies the host's ip configured or not.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getIPAddress">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getSwitchDPID"></a><span class="summary-sig-name">getSwitchDPID</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">switch</span>)</span><br />
- return the datapath ID of the switch</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getSwitchDPID">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getDPID"></a><span class="summary-sig-name">getDPID</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">switch</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getDPID">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getInterfaces"></a><span class="summary-sig-name">getInterfaces</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">node</span>)</span><br />
- return information dict about interfaces connected to the node</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getInterfaces">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="dump"></a><span class="summary-sig-name">dump</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.dump">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="intfs"></a><span class="summary-sig-name">intfs</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.intfs">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="net"></a><span class="summary-sig-name">net</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.net">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="links"></a><span class="summary-sig-name">links</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.links">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperftcpAll" class="summary-sig-name">iperftcpAll</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hosts</span>,
- <span class="summary-sig-arg">timeout</span>=<span class="summary-sig-default">6</span>)</span><br />
- Runs the iperftcp function with a given set of hosts and specified timeout.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.iperftcpAll">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperftcp" class="summary-sig-name">iperftcp</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">host1</span>=<span class="summary-sig-default">"h1"</span>,
- <span class="summary-sig-arg">host2</span>=<span class="summary-sig-default">"h2"</span>,
- <span class="summary-sig-arg">timeout</span>=<span class="summary-sig-default">6</span>)</span><br />
- Creates an iperf TCP test between two hosts.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.iperftcp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="iperfudpAll"></a><span class="summary-sig-name">iperfudpAll</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hosts</span>,
- <span class="summary-sig-arg">bandwidth</span>=<span class="summary-sig-default">"10M"</span>)</span><br />
- Runs the iperfudp function with a given set of hosts and specified
- bandwidth</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.iperfudpAll">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperfudp" class="summary-sig-name">iperfudp</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">bandwidth</span>=<span class="summary-sig-default">"10M"</span>,
- <span class="summary-sig-arg">host1</span>=<span class="summary-sig-default">"h1"</span>,
- <span class="summary-sig-arg">host2</span>=<span class="summary-sig-default">"h2"</span>)</span><br />
- Creates an iperf UDP test with a specific bandwidth.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.iperfudp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="nodes"></a><span class="summary-sig-name">nodes</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.nodes">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="pingpair"></a><span class="summary-sig-name">pingpair</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.pingpair">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="link"></a><span class="summary-sig-name">link</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**linkargs</span>)</span><br />
- Bring link( s ) between two nodes up or down</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.link">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="yank"></a><span class="summary-sig-name">yank</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**yankargs</span>)</span><br />
- yank a mininet switch interface to a host</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.yank">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="plug"></a><span class="summary-sig-name">plug</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**plugargs</span>)</span><br />
- plug the yanked mininet switch interface to a switch</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.plug">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="dpctl"></a><span class="summary-sig-name">dpctl</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**dpctlargs</span>)</span><br />
- Run dpctl command on all switches.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.dpctl">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getVersion"></a><span class="summary-sig-name">getVersion</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getVersion">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwController" class="summary-sig-name">getSwController</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">sw</span>)</span><br />
- Parameters:
- sw: The name of an OVS switch.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getSwController">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignSwController" class="summary-sig-name">assignSwController</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">sw</span>,
- <span class="summary-sig-arg">ip</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"6633"</span>,
- <span class="summary-sig-arg">ptcp</span>=<span class="summary-sig-default">""</span>)</span><br />
- Description:
- Assign switches to the controllers ( for ovs use only )
-Required:
- sw - Name of the switch.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.assignSwController">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="deleteSwController"></a><span class="summary-sig-name">deleteSwController</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">sw</span>)</span><br />
- Removes the controller target from sw</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.deleteSwController">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addSwitch" class="summary-sig-name">addSwitch</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">sw</span>,
- <span class="summary-sig-arg">**kwargs</span>)</span><br />
- adds a switch to the mininet topology
-NOTE: This uses a custom mn function.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.addSwitch">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delSwitch" class="summary-sig-name">delSwitch</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">sw</span>)</span><br />
- delete a switch from the mininet topology
-NOTE: This uses a custom mn function.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.delSwitch">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addLink" class="summary-sig-name">addLink</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">node1</span>,
- <span class="summary-sig-arg">node2</span>)</span><br />
- add a link to the mininet topology
-NOTE: This uses a custom mn function.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.addLink">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delLink" class="summary-sig-name">delLink</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">node1</span>,
- <span class="summary-sig-arg">node2</span>)</span><br />
- delete a link from the mininet topology
-NOTE: This uses a custom mn function.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.delLink">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addHost" class="summary-sig-name">addHost</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hostname</span>,
- <span class="summary-sig-arg">**kwargs</span>)</span><br />
- Add a host to the mininet topology
-NOTE: This uses a custom mn function.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.addHost">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delHost" class="summary-sig-name">delHost</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hostname</span>)</span><br />
- delete a host from the mininet topology
-NOTE: This uses a custom mn function.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.delHost">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Called at the end of the test to stop the mininet and disconnect the
- handle.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopNet" class="summary-sig-name">stopNet</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">fileName</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">timeout</span>=<span class="summary-sig-default">5</span>)</span><br />
- Stops mininet.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.stopNet">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="arping"></a><span class="summary-sig-name">arping</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">host</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ip</span>=<span class="summary-sig-default">"10.128.20.211"</span>,
- <span class="summary-sig-arg">ethDevice</span>=<span class="summary-sig-default">""</span>)</span><br />
- Description:
- Sends arp message from mininet host for hosts discovery
-Required:
- host - hosts name
-Optional:
- ip - ip address that does not exist in the network so there would
- be no reply.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.arping">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="decToHex"></a><span class="summary-sig-name">decToHex</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">num</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.decToHex">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getSwitchFlowCount"></a><span class="summary-sig-name">getSwitchFlowCount</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">switch</span>)</span><br />
- return the Flow Count of the switch</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getSwitchFlowCount">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="checkFlows"></a><span class="summary-sig-name">checkFlows</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">sw</span>,
- <span class="summary-sig-arg">dumpFormat</span>=<span class="summary-sig-default">None</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.checkFlows">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getFlowTable" class="summary-sig-name">getFlowTable</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">protoVersion</span>,
- <span class="summary-sig-arg">sw</span>)</span><br />
- Returns certain fields of an OVS flow table.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getFlowTable">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="flowComp"></a><span class="summary-sig-name">flowComp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">flow1</span>,
- <span class="summary-sig-arg">flow2</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.flowComp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="startTcpdump"></a><span class="summary-sig-name">startTcpdump</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">filename</span>,
- <span class="summary-sig-arg">intf</span>=<span class="summary-sig-default">"eth0"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"port 6633"</span>)</span><br />
- Runs tpdump on an interface and saves the file intf can be specified,
- or the default eth0 is used</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.startTcpdump">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="stopTcpdump"></a><span class="summary-sig-name">stopTcpdump</span>(<span class="summary-sig-arg">self</span>)</span><br />
- pkills tcpdump</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.stopTcpdump">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getPorts" class="summary-sig-name">getPorts</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">nodeName</span>,
- <span class="summary-sig-arg">verbose</span>=<span class="summary-sig-default">False</span>)</span><br />
- Read ports from a Mininet switch.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getPorts">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitches" class="summary-sig-name">getSwitches</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">verbose</span>=<span class="summary-sig-default">False</span>)</span><br />
- Read switches from Mininet.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getSwitches">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getHosts" class="summary-sig-name">getHosts</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">verbose</span>=<span class="summary-sig-default">False</span>)</span><br />
- Read hosts from Mininet.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getHosts">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getLinks" class="summary-sig-name">getLinks</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Gathers information about current Mininet links.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getLinks">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareSwitches" class="summary-sig-name">compareSwitches</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">switches</span>,
- <span class="summary-sig-arg">switchesJson</span>,
- <span class="summary-sig-arg">portsJson</span>)</span><br />
- Compare mn and onos switches
- switchesJson: parsed json object from the onos devices api</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.compareSwitches">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="compareLinks"></a><span class="summary-sig-name">compareLinks</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">switches</span>,
- <span class="summary-sig-arg">links</span>,
- <span class="summary-sig-arg">linksJson</span>)</span><br />
- Compare mn and onos links linksJson: parsed json object from the onos
- links api</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.compareLinks">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareHosts" class="summary-sig-name">compareHosts</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hosts</span>,
- <span class="summary-sig-arg">hostsJson</span>)</span><br />
- Compare mn and onos Hosts.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.compareHosts">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getHostsOld"></a><span class="summary-sig-name">getHostsOld</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns a list of all hosts Don't ask questions just use it</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getHostsOld">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getSwitch"></a><span class="summary-sig-name">getSwitch</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns a list of all switches Again, don't ask question just use
- it...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getSwitch">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="update"></a><span class="summary-sig-name">update</span>(<span class="summary-sig-arg">self</span>)</span><br />
- updates the port address and status information for each port in mn</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.update">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignVLAN" class="summary-sig-name">assignVLAN</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">host</span>,
- <span class="summary-sig-arg">intf</span>,
- <span class="summary-sig-arg">vlan</span>)</span><br />
- Add vlan tag to a host.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.assignVLAN">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Here the main is the TestON instance after creating all the log
- handles.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="startNet"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">startNet</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">topoFile</span>=<span class="sig-default">''</span>,
- <span class="sig-arg">args</span>=<span class="sig-default">''</span>,
- <span class="sig-arg">mnCmd</span>=<span class="sig-default">''</span>,
- <span class="sig-arg">timeout</span>=<span class="sig-default">120</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.startNet">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Starts Mininet accepts a topology(.py) file and/or an optional
- argument, to start the mininet, as a parameter.
- Can also send regular mininet command to load up desired topology.
- Eg. Pass in a string 'sudo mn --topo=tree,3,3' to mnCmd
-Options:
- topoFile = file path for topology file (.py)
- args = extra option added when starting the topology from the file
- mnCmd = Mininet command use to start topology
-Returns:
- main.TRUE if the mininet starts successfully, main.FALSE
- otherwise
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="pingall"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">pingall</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">timeout</span>=<span class="sig-default">300</span>,
- <span class="sig-arg">shortCircuit</span>=<span class="sig-default">False</span>,
- <span class="sig-arg">acceptableFailed</span>=<span class="sig-default">0</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.pingall">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Verifies the reachability of the hosts using pingall command.
-Optional parameter timeout allows you to specify how long to
-wait for pingall to complete
-Optional:
-timeout( seconds ) - How long to wait before breaking the pingall
-shortCircuit - Break the pingall based on the number of failed hosts
- ping
-acceptableFailed - Set the number of acceptable failed pings for the
- function to still return main.TRUE
-Returns:
-main.TRUE if pingall completes with no pings dropped
-otherwise main.FALSE
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="fpingHost"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">fpingHost</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**pingParams</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.fpingHost">source code</a></span>
- </td>
- </tr></table>
-
- <p>Uses the fping package for faster pinging... *requires fping to be
- installed on machine running mininet</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="pingallHosts"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">pingallHosts</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hostList</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.pingallHosts">source code</a></span>
- </td>
- </tr></table>
-
- <p>Ping all specified IPv4 hosts</p>
- <p>Acceptable hostList:</p>
- <ul>
- <li>
- [ 'h1','h2','h3','h4' ]
- </li>
- </ul>
- <p>Returns main.TRUE if all hosts specified can reach each other</p>
- <p>Returns main.FALSE if one or more of hosts specified cannot reach each
- other</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="pingIpv6Hosts"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">pingIpv6Hosts</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hostList</span>,
- <span class="sig-arg">prefix</span>=<span class="sig-default">'1000::'</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.pingIpv6Hosts">source code</a></span>
- </td>
- </tr></table>
-
- <p>IPv6 ping all hosts in hostList. If no prefix passed this will use
- default prefix of 1000:</p>
-<pre class="literalblock">
-
-</pre>
- <p>Returns main.TRUE if all hosts specified can reach each other</p>
- <p>Returns main.FALSE if one or more of hosts specified cannot reach each
- other</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="iperftcpAll"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">iperftcpAll</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hosts</span>,
- <span class="sig-arg">timeout</span>=<span class="sig-default">6</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.iperftcpAll">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Runs the iperftcp function with a given set of hosts and specified timeout.
-
-@parm:
- timeout: The defualt timeout is 6 sec to allow enough time for a successful test to complete,
- and short enough to stop an unsuccessful test from quiting and cleaning up mininet.
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="iperftcp"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">iperftcp</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">host1</span>=<span class="sig-default">"h1"</span>,
- <span class="sig-arg">host2</span>=<span class="sig-default">"h2"</span>,
- <span class="sig-arg">timeout</span>=<span class="sig-default">6</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.iperftcp">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Creates an iperf TCP test between two hosts. Returns main.TRUE if test results
-are valid.
-
-@parm:
- timeout: The defualt timeout is 6 sec to allow enough time for a successful test to complete,
- and short enough to stop an unsuccessful test from quiting and cleaning up mininet.
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="iperfudp"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">iperfudp</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">bandwidth</span>=<span class="sig-default">"10M"</span>,
- <span class="sig-arg">host1</span>=<span class="sig-default">"h1"</span>,
- <span class="sig-arg">host2</span>=<span class="sig-default">"h2"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.iperfudp">source code</a></span>
- </td>
- </tr></table>
-
- <p>Creates an iperf UDP test with a specific bandwidth. Returns true if
- results are valid.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getSwController"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getSwController</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">sw</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getSwController">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Parameters:
- sw: The name of an OVS switch. Example "s1"
-Return:
- The output of the command from the mininet cli
- or main.FALSE on timeout
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="assignSwController"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">assignSwController</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">sw</span>,
- <span class="sig-arg">ip</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">"6633"</span>,
- <span class="sig-arg">ptcp</span>=<span class="sig-default">""</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.assignSwController">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Assign switches to the controllers ( for ovs use only )
-Required:
- sw - Name of the switch. This can be a list or a string.
- ip - Ip addresses of controllers. This can be a list or a string.
-Optional:
- port - ONOS use port 6633, if no list of ports is passed, then
- the all the controller will use 6633 as their port number
- ptcp - ptcp number, This can be a string or a list that has
- the same length as switch. This is optional and not required
- when using ovs switches.
-NOTE: If switches and ptcp are given in a list type they should have the
- same length and should be in the same order, Eg. sw=[ 's1' ... n ]
- ptcp=[ '6637' ... n ], s1 has ptcp number 6637 and so on.
-
-Return:
- Returns main.TRUE if mininet correctly assigned switches to
- controllers, otherwise it will return main.FALSE or an appropriate
- exception(s)
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="addSwitch"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">addSwitch</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">sw</span>,
- <span class="sig-arg">**kwargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.addSwitch">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-adds a switch to the mininet topology
-NOTE: This uses a custom mn function. MN repo should be on
- dynamic_topo branch
-NOTE: cannot currently specify what type of switch
-required params:
- sw = name of the new switch as a string
-optional keywords:
- dpid = "dpid"
-returns: main.FALSE on an error, else main.TRUE
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="delSwitch"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">delSwitch</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">sw</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.delSwitch">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-delete a switch from the mininet topology
-NOTE: This uses a custom mn function. MN repo should be on
- dynamic_topo branch
-required params:
- sw = name of the switch as a string
-returns: main.FALSE on an error, else main.TRUE
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="addLink"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">addLink</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">node1</span>,
- <span class="sig-arg">node2</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.addLink">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-add a link to the mininet topology
-NOTE: This uses a custom mn function. MN repo should be on
- dynamic_topo branch
-NOTE: cannot currently specify what type of link
-required params:
-node1 = the string node name of the first endpoint of the link
-node2 = the string node name of the second endpoint of the link
-returns: main.FALSE on an error, else main.TRUE
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="delLink"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">delLink</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">node1</span>,
- <span class="sig-arg">node2</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.delLink">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-delete a link from the mininet topology
-NOTE: This uses a custom mn function. MN repo should be on
- dynamic_topo branch
-required params:
-node1 = the string node name of the first endpoint of the link
-node2 = the string node name of the second endpoint of the link
-returns: main.FALSE on an error, else main.TRUE
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="addHost"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">addHost</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hostname</span>,
- <span class="sig-arg">**kwargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.addHost">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Add a host to the mininet topology
-NOTE: This uses a custom mn function. MN repo should be on
- dynamic_topo branch
-NOTE: cannot currently specify what type of host
-required params:
- hostname = the string hostname
-optional key-value params
- switch = "switch name"
- returns: main.FALSE on an error, else main.TRUE
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="delHost"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">delHost</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hostname</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.delHost">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-delete a host from the mininet topology
-NOTE: This uses a custom mn function. MN repo should be on
- dynamic_topo branch
-NOTE: this uses a custom mn function
-required params:
-hostname = the string hostname
-returns: main.FALSE on an error, else main.TRUE
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="disconnect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">disconnect</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.disconnect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Called at the end of the test to stop the mininet and disconnect the
- handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.disconnect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="stopNet"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">stopNet</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">fileName</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">timeout</span>=<span class="sig-default">5</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.stopNet">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Stops mininet.
-Returns main.TRUE if the mininet successfully stops and
- main.FALSE if the pexpect handle does not exist.
-
-Will cleanup and exit the test if mininet fails to stop
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getFlowTable"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getFlowTable</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">protoVersion</span>,
- <span class="sig-arg">sw</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getFlowTable">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Returns certain fields of an OVS flow table. Will force output to
-either OF 1.0 or 1.3 format for consistency.
-
-TODO add option to look at cookies. ignoring them for now
-
- NOTE: Use format to force consistent flow table output across
- versions
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getPorts"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getPorts</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">nodeName</span>,
- <span class="sig-arg">verbose</span>=<span class="sig-default">False</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getPorts">source code</a></span>
- </td>
- </tr></table>
-
- <p>Read ports from a Mininet switch.</p>
- <p>Returns a json structure containing information about the ports of the
- given switch.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getSwitches"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getSwitches</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">verbose</span>=<span class="sig-default">False</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getSwitches">source code</a></span>
- </td>
- </tr></table>
-
- <p>Read switches from Mininet.</p>
- <p>Returns a dictionary whose keys are the switch names and the value is
- a dictionary containing information about the switch.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getHosts"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getHosts</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">verbose</span>=<span class="sig-default">False</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getHosts">source code</a></span>
- </td>
- </tr></table>
-
- <p>Read hosts from Mininet.</p>
- <p>Returns a dictionary whose keys are the host names and the value is a
- dictionary containing information about the host.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getLinks"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getLinks</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.getLinks">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Gathers information about current Mininet links. These links may not
-be up if one of the ports is down.
-
-Returns a list of dictionaries with link endpoints.
-
-The dictionary structure is:
- { 'node1': str( node1 name )
- 'node2': str( node2 name )
- 'port1': str( port1 of_port )
- 'port2': str( port2 of_port ) }
-Note: The port number returned is the eth#, not necessarily the of_port
- number. In Mininet, for OVS switch, these should be the same. For
- hosts, this is just the eth#.
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="compareSwitches"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">compareSwitches</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">switches</span>,
- <span class="sig-arg">switchesJson</span>,
- <span class="sig-arg">portsJson</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.compareSwitches">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
- Compare mn and onos switches
- switchesJson: parsed json object from the onos devices api
-
-Dependencies:
- 1. numpy - "sudo pip install numpy"
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="compareHosts"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">compareHosts</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hosts</span>,
- <span class="sig-arg">hostsJson</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.compareHosts">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Compare mn and onos Hosts.
-Since Mininet hosts are quiet, ONOS will only know of them when they
-speak. For this reason, we will only check that the hosts in ONOS
-stores are in Mininet, and not vice versa.
-
-Arguments:
- hostsJson: parsed json object from the onos hosts api
-Returns:
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="assignVLAN"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">assignVLAN</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">host</span>,
- <span class="sig-arg">intf</span>,
- <span class="sig-arg">vlan</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-pysrc.html#MininetCliDriver.assignVLAN">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Add vlan tag to a host.
-Dependencies:
- This class depends on the "vlan" package
- $ sudo apt-get install vlan
-Configuration:
- Load the 8021q module into the kernel
- $sudo modprobe 8021q
-
- To make this setup permanent:
- $ sudo su -c 'echo "8021q" >> /etc/modules'
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.poxclidriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.poxclidriver-module.html
deleted file mode 100644
index 7ec7026..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.poxclidriver-module.html
+++ /dev/null
@@ -1,169 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator.poxclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.emulator-module.html">Package emulator</a> ::
- Module poxclidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator.poxclidriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module poxclidriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 26-Oct-2012
-
-author:: Raghav Kashyap( raghavkashyap@paxterrasolutions.com )
-
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- ( at your option ) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-
-pox driver provides the basic functions of POX controller
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html" class="summary-name">PoxCliDriver</a><br />
- PoxCliDriver driver provides the basic functions of POX controller
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.poxclidriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.poxclidriver-pysrc.html
deleted file mode 100644
index c6c301c..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.poxclidriver-pysrc.html
+++ /dev/null
@@ -1,370 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator.poxclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.emulator-module.html">Package emulator</a> ::
- Module poxclidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator.poxclidriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.emulator.poxclidriver-module.html">Module TestON.drivers.common.cli.emulator.poxclidriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 26-Oct-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">author:: Raghav Kashyap( raghavkashyap@paxterrasolutions.com )</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"> ( at your option ) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">pox driver provides the basic functions of POX controller</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">pexpect</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">struct</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">fcntl</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">signal</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.bin.cli=TestON.bin.cli-module.html,Package TestON.drivers.common.cli=TestON.drivers.common.cli-module.html"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-2', 'cli', 'link-2');">cli</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module TestON.drivers.common.cli.emulatordriver=TestON.drivers.common.cli.emulatordriver-module.html"><a title="TestON.drivers.common.cli.emulatordriver" class="py-name" href="#" onclick="return doclink('link-3', 'emulatordriver', 'link-3');">emulatordriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class TestON.drivers.common.cli.emulatordriver.Emulator=TestON.drivers.common.cli.emulatordriver.Emulator-class.html"><a title="TestON.drivers.common.cli.emulatordriver.Emulator" class="py-name" href="#" onclick="return doclink('link-4', 'Emulator', 'link-4');">Emulator</a></tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> </tt>
-<a name="PoxCliDriver"></a><div id="PoxCliDriver-def"><a name="L33"></a><tt class="py-lineno"> 33</tt> <a class="py-toggle" href="#" id="PoxCliDriver-toggle" onclick="return toggle('PoxCliDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html">PoxCliDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">Emulator</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PoxCliDriver-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="PoxCliDriver-expanded"><a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> PoxCliDriver driver provides the basic functions of POX controller</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="PoxCliDriver.__init__"></a><div id="PoxCliDriver.__init__-def"><a name="L38"></a><tt class="py-lineno"> 38</tt> <a class="py-toggle" href="#" id="PoxCliDriver.__init__-toggle" onclick="return toggle('PoxCliDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PoxCliDriver.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PoxCliDriver.__init__-expanded"><a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.emulatordriver.Emulator" class="py-name" href="#" onclick="return doclink('link-5', 'Emulator', 'link-4');">Emulator</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-6', '__init__', 'link-6');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">wrapped</tt> <tt class="py-op">=</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">modules</tt><tt class="py-op">[</tt> <tt class="py-name">__name__</tt> <tt class="py-op">]</tt> </tt>
-</div><a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> </tt>
-<a name="PoxCliDriver.connect"></a><div id="PoxCliDriver.connect-def"><a name="L43"></a><tt class="py-lineno"> 43</tt> <a class="py-toggle" href="#" id="PoxCliDriver.connect-toggle" onclick="return toggle('PoxCliDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PoxCliDriver.connect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PoxCliDriver.connect-expanded"><a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-comment">#,user_name, ip_address, pwd,options ):</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> this subroutine is to launch pox controller . It must have arguments as :</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-docstring"> user_name = host name ,</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-docstring"> ip_address = ip address of the host ,</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-docstring"> pwd = password of host ,</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"><tt class="py-docstring"> options = it is a topology hash which will consists the component's details for the test run</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"><tt class="py-docstring"> *** host is here a virtual mahine or system where pox framework hierarchy exists</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">poxLibPath</tt> <tt class="py-op">=</tt> <tt class="py-string">'default'</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">copy</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt id="link-7" class="py-name" targets="Class TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html"><a title="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver" class="py-name" href="#" onclick="return doclink('link-7', 'PoxCliDriver', 'link-7');">PoxCliDriver</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.drivers.common.clidriver.CLI.secureCopy()=TestON.drivers.common.clidriver.CLI-class.html#secureCopy"><a title="TestON.drivers.common.clidriver.CLI.secureCopy" class="py-name" href="#" onclick="return doclink('link-8', 'secureCopy', 'link-8');">secureCopy</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-string">'/home/openflow/pox/pox/core.py'</tt><tt class="py-op">,</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt><tt class="py-op">,</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt id="link-9" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-9', 'path', 'link-9');">path</a></tt> <tt class="py-op">+</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-string">'/lib/pox/'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver" class="py-name" href="#" onclick="return doclink('link-10', 'PoxCliDriver', 'link-7');">PoxCliDriver</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-11', 'connect', 'link-11');">connect</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"openflow"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.getcmd()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#getcmd"><a title="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.getcmd" class="py-name" href="#" onclick="return doclink('link-12', 'getcmd', 'link-12');">getcmd</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt> <tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-comment"># print command</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-13', 'log', 'link-13');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Entering into POX hierarchy"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'pox_lib_location'</tt> <tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">'default'</tt><tt class="py-op">:</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.execute()=TestON.bin.generatedriver.GenerateDriver-class.html#execute,Method TestON.drivers.common.clidriver.CLI.execute()=TestON.drivers.common.clidriver.CLI-class.html#execute"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-14', 'execute', 'link-14');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"cd "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'pox_lib_location'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt id="link-15" class="py-name" targets="Variable TestON.bin.cli.CLI.prompt=TestON.bin.cli.CLI-class.html#prompt"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-15', 'prompt', 'link-15');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"/pox\$"</tt><tt class="py-op">,</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-16', 'execute', 'link-14');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"cd ~/TestON/lib/pox/"</tt><tt class="py-op">,</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt id="link-17" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-17', 'prompt', 'link-15');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"/pox\$"</tt><tt class="py-op">,</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-comment"># launching pox with components</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-18', 'log', 'link-13');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"launching POX controller with given components"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-19', 'execute', 'link-14');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> <tt id="link-20" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-20', 'prompt', 'link-15');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"DEBUG:"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-21', 'log', 'link-13');">log</a></tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-22', 'error', 'link-22');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-string">"Connection failed to the host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-23', 'log', 'link-13');">log</a></tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-24', 'error', 'link-22');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to connect to the POX controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> </tt>
-<a name="PoxCliDriver.disconnect"></a><div id="PoxCliDriver.disconnect-def"><a name="L106"></a><tt class="py-lineno">106</tt> <a class="py-toggle" href="#" id="PoxCliDriver.disconnect-toggle" onclick="return toggle('PoxCliDriver.disconnect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#disconnect">disconnect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PoxCliDriver.disconnect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PoxCliDriver.disconnect-expanded"><a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-25', 'execute', 'link-14');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"exit()"</tt><tt class="py-op">,</tt> <tt id="link-26" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-26', 'prompt', 'link-15');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"/pox\$"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-27', 'log', 'link-13');">log</a></tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-28', 'error', 'link-22');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> </tt>
-<a name="PoxCliDriver.get_version"></a><div id="PoxCliDriver.get_version-def"><a name="L112"></a><tt class="py-lineno">112</tt> <a class="py-toggle" href="#" id="PoxCliDriver.get_version-toggle" onclick="return toggle('PoxCliDriver.get_version');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#get_version">get_version</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PoxCliDriver.get_version-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PoxCliDriver.get_version-expanded"><a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">file_input</tt> <tt class="py-op">=</tt> <tt id="link-29" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-29', 'path', 'link-9');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-string">'/lib/pox/core.py'</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">version</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-30" class="py-name"><a title="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver" class="py-name" href="#" onclick="return doclink('link-30', 'PoxCliDriver', 'link-7');">PoxCliDriver</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.get_version()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#get_version"><a title="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.get_version" class="py-name" href="#" onclick="return doclink('link-31', 'get_version', 'link-31');">get_version</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">pattern</tt> <tt class="py-op">=</tt> <tt class="py-string">'\s*self\.version(.*)'</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt> <tt class="py-name">file_input</tt><tt class="py-op">,</tt> <tt class="py-string">'r'</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">readlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">match</tt><tt class="py-op">(</tt> <tt class="py-name">pattern</tt><tt class="py-op">,</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">result</tt><tt class="py-op">:</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-name">version</tt> <tt class="py-op">=</tt> <tt class="py-name">result</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt> <tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">version</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-string">"\s*self\.version\s*=\s*|\(|\)"</tt><tt class="py-op">,</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-string">''</tt><tt class="py-op">,</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">version</tt> <tt class="py-op">)</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">version</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt><tt class="py-op">,</tt> <tt class="py-string">'.'</tt><tt class="py-op">,</tt> <tt class="py-name">version</tt> <tt class="py-op">)</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">version</tt> <tt class="py-op">=</tt> <tt class="py-string">"POX "</tt> <tt class="py-op">+</tt> <tt class="py-name">version</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">version</tt> </tt>
-</div><a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> </tt>
-<a name="PoxCliDriver.getcmd"></a><div id="PoxCliDriver.getcmd-def"><a name="L130"></a><tt class="py-lineno">130</tt> <a class="py-toggle" href="#" id="PoxCliDriver.getcmd-toggle" onclick="return toggle('PoxCliDriver.getcmd');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#getcmd">getcmd</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">options</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PoxCliDriver.getcmd-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PoxCliDriver.getcmd-expanded"><a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"./pox.py "</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-name">item</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">dict</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-name">command</tt> <tt class="py-op">+</tt> <tt class="py-name">item</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">items</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-name">item</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-name">item</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-name">items</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"None"</tt><tt class="py-op">:</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-name">command</tt> <tt class="py-op">+</tt> <tt class="py-string">" --"</tt> <tt class="py-op">+</tt> <tt class="py-name">items</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-name">command</tt> <tt class="py-op">+</tt> <tt class="py-string">" --"</tt> <tt class="py-op">+</tt> <tt class="py-name">items</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-string">"="</tt> <tt class="py-op">+</tt> <tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-name">item</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-name">items</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">==</tt> <tt class="py-string">'pox_lib_location'</tt><tt class="py-op">:</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-name">poxLibPath</tt> <tt class="py-op">=</tt> <tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-name">item</tt> <tt class="py-op">]</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">item</tt> <tt class="py-op">==</tt> <tt class="py-string">'type'</tt> <tt class="py-keyword">or</tt> <tt class="py-name">item</tt> <tt class="py-op">==</tt> <tt class="py-string">'name'</tt><tt class="py-op">:</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-name">command</tt> <tt class="py-op">+</tt> <tt class="py-name">item</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">command</tt> </tt>
-</div></div><a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"><tt class="py-keyword">if</tt> <tt class="py-name">__name__</tt> <tt class="py-op">!=</tt> <tt class="py-string">"__main__"</tt><tt class="py-op">:</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">modules</tt><tt class="py-op">[</tt> <tt class="py-name">__name__</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-32" class="py-name"><a title="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver" class="py-name" href="#" onclick="return doclink('link-32', 'PoxCliDriver', 'link-7');">PoxCliDriver</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html
deleted file mode 100644
index 3a1086e..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html
+++ /dev/null
@@ -1,499 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.emulator-module.html">Package emulator</a> ::
- <a href="TestON.drivers.common.cli.emulator.poxclidriver-module.html">Module poxclidriver</a> ::
- Class PoxCliDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class PoxCliDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-pysrc.html#PoxCliDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_poxclidriv" name="class_hierarchy_for_poxclidriv">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html" title="PoxCliDriver" alt="" coords="5,6,101,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html" title="emulatordriver.Emulator" alt="" coords="125,6,284,31"/>
-<area shape="rect" id="node3" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="310,6,401,31"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="component.Component" alt="" coords="427,6,584,31"/>
-</map>
- <img src="class_hierarchy_for_poxclidriv.gif" alt='' usemap="#class_hierarchy_for_poxclidriv" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<p>PoxCliDriver driver provides the basic functions of POX controller</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-pysrc.html#PoxCliDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- this subroutine is to launch pox controller .</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-pysrc.html#PoxCliDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-pysrc.html#PoxCliDriver.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#get_version" class="summary-sig-name">get_version</a>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-pysrc.html#PoxCliDriver.get_version">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getcmd"></a><span class="summary-sig-name">getcmd</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">options</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-pysrc.html#PoxCliDriver.getcmd">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-pysrc.html#PoxCliDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-pysrc.html#PoxCliDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>this subroutine is to launch pox controller . It must have arguments
- as : user_name = host name , ip_address = ip address of the host , pwd =
- password of host , options = it is a topology hash which will consists
- the component's details for the test run</p>
- <p>*** host is here a virtual mahine or system where pox framework
- hierarchy exists</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="disconnect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">disconnect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">handle</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-pysrc.html#PoxCliDriver.disconnect">source code</a></span>
- </td>
- </tr></table>
-
-
- <dl class="fields">
- <dt>Overrides:
- component.Component.disconnect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_version"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_version</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-pysrc.html#PoxCliDriver.get_version">source code</a></span>
- </td>
- </tr></table>
-
-
- <dl class="fields">
- <dt>Overrides:
- component.Component.get_version
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.remotemininetdriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.remotemininetdriver-module.html
deleted file mode 100644
index c738650..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.remotemininetdriver-module.html
+++ /dev/null
@@ -1,170 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator.remotemininetdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.emulator-module.html">Package emulator</a> ::
- Module remotemininetdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator.remotemininetdriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module remotemininetdriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 26-Oct-2012
-
-author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )
-
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- ( at your option ) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-
-MininetCliDriver is the basic driver which will handle the Mininet functions
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html" class="summary-name">RemoteMininetDriver</a><br />
- RemoteMininetCliDriver is the basic driver which will handle the
- Mininet functions.
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html
deleted file mode 100644
index b8782f1..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html
+++ /dev/null
@@ -1,874 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator.remotemininetdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.emulator-module.html">Package emulator</a> ::
- Module remotemininetdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.emulator.remotemininetdriver-module.html">Module TestON.drivers.common.cli.emulator.remotemininetdriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 26-Oct-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"> ( at your option ) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">MininetCliDriver is the basic driver which will handle the Mininet functions</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">pexpect</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.bin.cli=TestON.bin.cli-module.html,Package TestON.drivers.common.cli=TestON.drivers.common.cli-module.html"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-2', 'cli', 'link-2');">cli</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module TestON.drivers.common.cli.emulatordriver=TestON.drivers.common.cli.emulatordriver-module.html"><a title="TestON.drivers.common.cli.emulatordriver" class="py-name" href="#" onclick="return doclink('link-3', 'emulatordriver', 'link-3');">emulatordriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class TestON.drivers.common.cli.emulatordriver.Emulator=TestON.drivers.common.cli.emulatordriver.Emulator-class.html"><a title="TestON.drivers.common.cli.emulatordriver.Emulator" class="py-name" href="#" onclick="return doclink('link-4', 'Emulator', 'link-4');">Emulator</a></tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> </tt>
-<a name="RemoteMininetDriver"></a><div id="RemoteMininetDriver-def"><a name="L31"></a><tt class="py-lineno"> 31</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver-toggle" onclick="return toggle('RemoteMininetDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">Emulator</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="RemoteMininetDriver-expanded"><a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-docstring"> RemoteMininetCliDriver is the basic driver which will handle the Mininet</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"> functions. The main different between this and the MininetCliDriver is that</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> this one does not build the mininet. It assumes that there is already a</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> mininet running on the target.</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="RemoteMininetDriver.__init__"></a><div id="RemoteMininetDriver.__init__-def"><a name="L39"></a><tt class="py-lineno"> 39</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver.__init__-toggle" onclick="return toggle('RemoteMininetDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteMininetDriver.__init__-expanded"><a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.emulatordriver.Emulator" class="py-name" href="#" onclick="return doclink('link-5', 'Emulator', 'link-4');">Emulator</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-6', '__init__', 'link-6');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">wrapped</tt> <tt class="py-op">=</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">modules</tt><tt class="py-op">[</tt> <tt class="py-name">__name__</tt> <tt class="py-op">]</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">flag</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-</div><a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> </tt>
-<a name="RemoteMininetDriver.connect"></a><div id="RemoteMininetDriver.connect-def"><a name="L46"></a><tt class="py-lineno"> 46</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver.connect-toggle" onclick="return toggle('RemoteMininetDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver.connect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteMininetDriver.connect-expanded"><a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-docstring">""",user_name, ip_address, pwd,options ):</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-docstring"> Here the main is the TestON instance after creating all the log</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-docstring"> handles."""</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">getenv</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">getenv</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-7', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-string">": Trying to connect to "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">:</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-8', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Invalid host name,"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-string">" connecting to local host instead"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">=</tt> <tt class="py-string">'localhost'</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">inst</tt><tt class="py-op">:</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-10', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Uncaught exception: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">inst</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt id="link-11" class="py-name" targets="Class TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver" class="py-name" href="#" onclick="return doclink('link-11', 'RemoteMininetDriver', 'link-11');">RemoteMininetDriver</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-12', 'connect', 'link-12');">connect</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-comment"># Copying the readme file to process the</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-13', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-14', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-string">"Connection failed to the host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-15', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-16', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to connect to the Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> </tt>
-<a name="RemoteMininetDriver.checkForLoss"></a><div id="RemoteMininetDriver.checkForLoss-def"><a name="L91"></a><tt class="py-lineno"> 91</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver.checkForLoss-toggle" onclick="return toggle('RemoteMininetDriver.checkForLoss');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#checkForLoss">checkForLoss</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">pingList</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver.checkForLoss-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteMininetDriver.checkForLoss-expanded"><a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.FALSE for 0% packet loss and</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.ERROR if "found multiple mininet" is found and</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE else</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-17', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-18', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-19', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cat "</tt> <tt class="py-op">+</tt> <tt class="py-name">pingList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-name">pingList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">outputs</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">" 0% packet loss"</tt><tt class="py-op">,</tt> <tt class="py-name">outputs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"found multiple mininet"</tt><tt class="py-op">,</tt> <tt class="py-name">outputs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Parse for failed pings, give some truncated output</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-20', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-21', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, unexpected output in the ping file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-22', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">outputs</tt> <tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> </tt>
-<a name="RemoteMininetDriver.pingLong"></a><div id="RemoteMininetDriver.pingLong-def"><a name="L115"></a><tt class="py-lineno">115</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver.pingLong-toggle" onclick="return toggle('RemoteMininetDriver.pingLong');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingLong">pingLong</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">pingParams</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver.pingLong-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteMininetDriver.pingLong-expanded"><a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"><tt class="py-docstring"> Starts a continuous ping on the mininet host outputting</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"><tt class="py-docstring"> to a file in the /tmp dir.</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-23', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.parse_args()=TestON.core.openspeak.OpenSpeak-class.html#parse_args"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-24', 'parse_args', 'link-24');">parse_args</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">"SRC"</tt><tt class="py-op">,</tt> <tt class="py-string">"TARGET"</tt><tt class="py-op">,</tt> <tt class="py-string">"PINGTIME"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">pingParams</tt> <tt class="py-op">)</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">precmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"sudo rm /tmp/ping."</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"SRC"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.execute()=TestON.bin.generatedriver.GenerateDriver-class.html#execute,Method TestON.drivers.common.clidriver.CLI.execute()=TestON.drivers.common.clidriver.CLI-class.html#execute"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-25', 'execute', 'link-25');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">precmd</tt><tt class="py-op">,</tt> <tt id="link-26" class="py-name" targets="Variable TestON.bin.cli.CLI.prompt=TestON.bin.cli.CLI-class.html#prompt"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-26', 'prompt', 'link-26');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"(.*)"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"sudo mininet/util/m "</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"SRC"</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" ping "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TARGET"</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" -i .2 -w "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">'PINGTIME'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" -D > /tmp/ping."</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"SRC"</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" &"</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-27', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">command</tt> <tt class="py-op">)</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-28', 'execute', 'link-25');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> <tt id="link-29" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-29', 'prompt', 'link-26');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"(.*)"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-30', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> </tt>
-<a name="RemoteMininetDriver.pingstatus"></a><div id="RemoteMininetDriver.pingstatus-def"><a name="L136"></a><tt class="py-lineno">136</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver.pingstatus-toggle" onclick="return toggle('RemoteMininetDriver.pingstatus');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingstatus">pingstatus</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">pingParams</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver.pingstatus-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteMininetDriver.pingstatus-expanded"><a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"><tt class="py-docstring"> Tails the respective ping output file and check that</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"><tt class="py-docstring"> there is a moving "64 bytes"</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-31', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-32', 'parse_args', 'link-24');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"SRC"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">pingParams</tt> <tt class="py-op">)</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-33', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"tail /tmp/ping."</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"SRC"</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"tail"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-34', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">'Unreachable'</tt><tt class="py-op">,</tt> <tt class="py-name">result</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-35', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Unreachable found in ping logs..."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">'64\sbytes'</tt><tt class="py-op">,</tt> <tt class="py-name">result</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-36', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Pings look good"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-37', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"No, or faulty ping data..."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> </tt>
-<a name="RemoteMininetDriver.pingKill"></a><div id="RemoteMininetDriver.pingKill-def"><a name="L160"></a><tt class="py-lineno">160</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver.pingKill-toggle" onclick="return toggle('RemoteMininetDriver.pingKill');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingKill">pingKill</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">testONUser</tt><tt class="py-op">,</tt> <tt class="py-param">testONIP</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver.pingKill-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteMininetDriver.pingKill-expanded"><a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"><tt class="py-docstring"> Kills all continuous ping processes.</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"><tt class="py-docstring"> Then copies all the ping files to the TestStation.</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-38', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"sudo kill -SIGINT `pgrep ping`"</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-39', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">command</tt> <tt class="py-op">)</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-40', 'execute', 'link-25');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> <tt id="link-41" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-41', 'prompt', 'link-26');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"(.*)"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-42', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Transferring ping files to TestStation"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"scp /tmp/ping.* "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">testONUser</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">testONIP</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":/tmp/"</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-43', 'execute', 'link-25');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> <tt id="link-44" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-44', 'prompt', 'link-26');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"100%"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">20</tt> <tt class="py-op">)</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-comment"># Make sure the output is cleared</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-45', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-46', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-47', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"password"</tt><tt class="py-op">,</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-48', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-49', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, sudo asking for password"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-50', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-51', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> </tt>
-<a name="RemoteMininetDriver.pingLongKill"></a><div id="RemoteMininetDriver.pingLongKill-def"><a name="L189"></a><tt class="py-lineno">189</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver.pingLongKill-toggle" onclick="return toggle('RemoteMininetDriver.pingLongKill');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingLongKill">pingLongKill</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver.pingLongKill-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteMininetDriver.pingLongKill-expanded"><a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-52', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"sudo kill -SIGING `pgrep ping`"</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-53', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">command</tt> <tt class="py-op">)</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-54', 'execute', 'link-25');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> <tt id="link-55" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-55', 'prompt', 'link-26');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"(.*)"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-56', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> </tt>
-<a name="RemoteMininetDriver.pingHostOptical"></a><div id="RemoteMininetDriver.pingHostOptical-def"><a name="L199"></a><tt class="py-lineno">199</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver.pingHostOptical-toggle" onclick="return toggle('RemoteMininetDriver.pingHostOptical');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingHostOptical">pingHostOptical</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">pingParams</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver.pingHostOptical-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteMininetDriver.pingHostOptical-expanded"><a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"><tt class="py-docstring"> This function is only for Packet Optical related ping</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"><tt class="py-docstring"> Use the next pingHost() function for all normal scenarios )</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"><tt class="py-docstring"> Ping from one mininet host to another</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"><tt class="py-docstring"> Currently the only supported Params: SRC and TARGET</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-57', 'parse_args', 'link-24');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"SRC"</tt><tt class="py-op">,</tt> <tt class="py-string">"TARGET"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">pingParams</tt> <tt class="py-op">)</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"SRC"</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" ping "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TARGET"</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" -c 1 -i 1 -W 8"</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-58', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Sending: "</tt> <tt class="py-op">+</tt> <tt class="py-name">command</tt> <tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-59', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">command</tt> <tt class="py-op">)</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-name">command</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-60', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-61" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-61', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-string">": timeout when waiting for response from mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-62', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-63', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"response: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"mininet>"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-64', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-65', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-string">": timeout when waiting for response from mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-66', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-67', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"response: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-68', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-69" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-69', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-70', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-71', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name" targets="Method TestON.core.teston.TestON.cleanup()=TestON.core.teston.TestON-class.html#cleanup"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-72', 'cleanup', 'link-72');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-73', 'exit', 'link-73');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-74', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Ping Response: "</tt> <tt class="py-op">+</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">',\s0\%\spacket\sloss'</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-75', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": no packets lost, host is reachable"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">lastResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-76', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-77', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-string">": PACKET LOST, HOST IS NOT REACHABLE"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">lastResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> </tt>
-<a name="RemoteMininetDriver.pingHost"></a><div id="RemoteMininetDriver.pingHost-def"><a name="L242"></a><tt class="py-lineno">242</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver.pingHost-toggle" onclick="return toggle('RemoteMininetDriver.pingHost');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingHost">pingHost</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">pingParams</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver.pingHost-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteMininetDriver.pingHost-expanded"><a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"><tt class="py-docstring"> Pings between two hosts on remote mininet</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-78', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-79', 'parse_args', 'link-24');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"SRC"</tt><tt class="py-op">,</tt> <tt class="py-string">"TARGET"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">pingParams</tt> <tt class="py-op">)</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"mininet/util/m "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"SRC"</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" ping "</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TARGET"</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" -c 4 -W 1 -i .2"</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-80', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">command</tt> <tt class="py-op">)</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-81', 'execute', 'link-25');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> <tt id="link-82" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-82', 'prompt', 'link-26');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"rtt"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_matches</tt><tt class="py-op">(</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-string">',\s0\%\spacket\sloss'</tt><tt class="py-op">,</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">response</tt><tt class="py-op">,</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No Packet loss"</tt><tt class="py-op">,</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt id="link-83" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-83', 'onfail', 'link-83');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Host is not reachable"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-84', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"NO PACKET LOSS, HOST IS REACHABLE"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">lastResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-85', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-86', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"PACKET LOST, HOST IS NOT REACHABLE"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">lastResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> </tt>
-<a name="RemoteMininetDriver.checknum"></a><div id="RemoteMininetDriver.checknum-def"><a name="L266"></a><tt class="py-lineno">266</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver.checknum-toggle" onclick="return toggle('RemoteMininetDriver.checknum');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#checknum">checknum</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">num</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver.checknum-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteMininetDriver.checknum-expanded"><a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"><tt class="py-docstring"> Verifies the correct number of switches are running</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-87', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-88', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">'ifconfig -a | grep "sw.. " | wc -l'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"wc"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-89', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-string">'ps -ef | grep "bash -ms mininet:sw" | grep -v color | wc -l'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"color"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-name">response2</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">num</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">num</tt><tt class="py-op">,</tt> <tt class="py-name">response2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-90', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-91', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> </tt>
-<a name="RemoteMininetDriver.startTcpdump"></a><div id="RemoteMininetDriver.startTcpdump-def"><a name="L293"></a><tt class="py-lineno">293</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver.startTcpdump-toggle" onclick="return toggle('RemoteMininetDriver.startTcpdump');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#startTcpdump">startTcpdump</a><tt class="py-op">(</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-param">self</tt><tt class="py-op">,</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-param">filename</tt><tt class="py-op">,</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-param">intf</tt><tt class="py-op">=</tt><tt class="py-string">"eth0"</tt><tt class="py-op">,</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">"port 6633"</tt><tt class="py-op">,</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-param">user</tt><tt class="py-op">=</tt><tt class="py-string">"admin"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver.startTcpdump-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteMininetDriver.startTcpdump-expanded"><a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"><tt class="py-docstring"> Runs tcpdump on an interface and saves the file</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"><tt class="py-docstring"> intf can be specified, or the default eth0 is used</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-92', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-93', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-string">"sudo tcpdump -n -i "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-name">intf</tt> <tt class="py-op">+</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">+</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-string">" -w "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-name">filename</tt><tt class="py-op">.</tt><tt class="py-name">strip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-string">" -Z "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-name">user</tt> <tt class="py-op">+</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-string">" &"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-94', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-95', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">'No\ssuch\device'</tt><tt class="py-op">,</tt> <tt class="py-string">'listening\son'</tt><tt class="py-op">,</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">,</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-96', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> <tt class="py-op">)</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-97', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-98', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": tcpdump - No such device exists.\</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"><tt class="py-string"> tcpdump attempted on: "</tt> <tt class="py-op">+</tt> <tt class="py-name">intf</tt> <tt class="py-op">)</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-99', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": tcpdump started on "</tt> <tt class="py-op">+</tt> <tt class="py-name">intf</tt> <tt class="py-op">)</tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-100', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-101', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": tcpdump command timed out!\</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"><tt class="py-string"> Check interface name, given interface was: "</tt> <tt class="py-op">+</tt> <tt class="py-name">intf</tt> <tt class="py-op">)</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-102', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-103', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-104" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-104', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": tcpdump - unexpected response"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-105', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-106" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-106', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-107', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-108', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-109', 'cleanup', 'link-72');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-110', 'exit', 'link-73');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-111', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-112', 'cleanup', 'link-72');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-113', 'exit', 'link-73');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> </tt>
-<a name="RemoteMininetDriver.stopTcpdump"></a><div id="RemoteMininetDriver.stopTcpdump-def"><a name="L347"></a><tt class="py-lineno">347</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver.stopTcpdump-toggle" onclick="return toggle('RemoteMininetDriver.stopTcpdump');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#stopTcpdump">stopTcpdump</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver.stopTcpdump-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteMininetDriver.stopTcpdump-expanded"><a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"><tt class="py-docstring"> pkills tcpdump"""</tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-114', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"sudo pkill tcpdump"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-115" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-115', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-116', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-117', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-118', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-119', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-120" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-120', 'cleanup', 'link-72');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-121" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-121', 'exit', 'link-73');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-122', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-123', 'cleanup', 'link-72');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-124" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-124', 'exit', 'link-73');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"> </tt>
-<a name="RemoteMininetDriver.runOpticalMnScript"></a><div id="RemoteMininetDriver.runOpticalMnScript-def"><a name="L364"></a><tt class="py-lineno">364</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver.runOpticalMnScript-toggle" onclick="return toggle('RemoteMininetDriver.runOpticalMnScript');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#runOpticalMnScript">runOpticalMnScript</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">name</tt> <tt class="py-op">=</tt> <tt class="py-string">'onos'</tt><tt class="py-op">,</tt> <tt class="py-param">ctrllerIP</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver.runOpticalMnScript-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteMininetDriver.runOpticalMnScript-expanded"><a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">types</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-string">"""</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"><tt class="py-string"> Description:</tt> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"><tt class="py-string"> This function is only meant for Packet Optical.</tt> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"><tt class="py-string"> It runs python script "opticalTest.py" to create the</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"><tt class="py-string"> packet layer( mn ) and optical topology</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"><tt class="py-string"> Optional:</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"><tt class="py-string"> name - Name of onos directory. (ONOS | onos)</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"><tt class="py-string"> Required:</tt> </tt>
-<a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"><tt class="py-string"> ctrllerIP = Controller(s) IP address</tt> </tt>
-<a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"><tt class="py-string"> TODO: If no ctrllerIP is provided, a default</tt> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"><tt class="py-string"> $OC1 can be accepted</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"><tt class="py-string"> """</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-125', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-126', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cd ~/"</tt> <tt class="py-op">+</tt> <tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">"/tools/test/topos"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"topos\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ctrllerIP</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-127', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"You need to specify the IP"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt id="link-128" class="py-name" targets="Package TestON.drivers.common.api.controller=TestON.drivers.common.api.controller-module.html"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-128', 'controller', 'link-128');">controller</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">ctrllerIP</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">ListType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">ctrllerIP</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> <tt id="link-129" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-129', 'controller', 'link-128');">controller</a></tt> <tt class="py-op">+=</tt> <tt class="py-name">ctrllerIP</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-130" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-130', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Mininet topology is being loaded with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"> <tt class="py-string">"controllers: "</tt> <tt class="py-op">+</tt> <tt id="link-131" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-131', 'controller', 'link-128');">controller</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">ctrllerIP</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"> <tt id="link-132" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-132', 'controller', 'link-128');">controller</a></tt> <tt class="py-op">=</tt> <tt class="py-name">ctrllerIP</tt> </tt>
-<a name="L396"></a><tt class="py-lineno">396</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-133', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Mininet topology is being loaded with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"> <tt class="py-string">"controller: "</tt> <tt class="py-op">+</tt> <tt id="link-134" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-134', 'controller', 'link-128');">controller</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-135', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"You need to specify a valid IP"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"sudo -E python opticalTest.py "</tt> <tt class="py-op">+</tt> <tt id="link-136" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-136', 'controller', 'link-128');">controller</a></tt> </tt>
-<a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-137', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": cmd = "</tt> <tt class="py-op">+</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-138', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">30</tt><tt class="py-op">)</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-139" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-139', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-140" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-140', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">"mininet>"</tt><tt class="py-op">)</tt> </tt>
-<a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L409"></a><tt class="py-lineno">409</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-141" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-141', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-142', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-143', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-144" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-144', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L413"></a><tt class="py-lineno">413</tt> <tt class="py-line"> </tt>
-<a name="RemoteMininetDriver.attachLincOESession"></a><div id="RemoteMininetDriver.attachLincOESession-def"><a name="L414"></a><tt class="py-lineno">414</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver.attachLincOESession-toggle" onclick="return toggle('RemoteMininetDriver.attachLincOESession');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#attachLincOESession">attachLincOESession</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver.attachLincOESession-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteMininetDriver.attachLincOESession-expanded"><a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"><tt class="py-docstring"> Since executing opticalTest.py will give you mininet</tt> </tt>
-<a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"><tt class="py-docstring"> prompt, you would at some point require to get onto</tt> </tt>
-<a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"><tt class="py-docstring"> console of LincOE ((linc@onosTestBench)1>) to execute</tt> </tt>
-<a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"><tt class="py-docstring"> commands like bring a optical port up or down on a ROADM</tt> </tt>
-<a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"><tt class="py-docstring"> You can attach to console of Linc-OE session by a cmd:</tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"><tt class="py-docstring"> sudo ~/linc-oe/rel/linc/bin/linc attach</tt> </tt>
-<a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L423"></a><tt class="py-lineno">423</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-145" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-145', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-146" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-146', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"sudo ~/linc-oe/rel/linc/bin/linc attach"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">">"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-147', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-148" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-148', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L431"></a><tt class="py-lineno">431</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-149" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-149', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-150" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-150', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L433"></a><tt class="py-lineno">433</tt> <tt class="py-line"> </tt>
-<a name="RemoteMininetDriver.disconnect"></a><div id="RemoteMininetDriver.disconnect-def"><a name="L434"></a><tt class="py-lineno">434</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver.disconnect-toggle" onclick="return toggle('RemoteMininetDriver.disconnect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#disconnect">disconnect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver.disconnect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteMininetDriver.disconnect-expanded"><a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L436"></a><tt class="py-lineno">436</tt> <tt class="py-line"><tt class="py-docstring"> Called at the end of the test to disconnect the handle.</tt> </tt>
-<a name="L437"></a><tt class="py-lineno">437</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L439"></a><tt class="py-lineno">439</tt> <tt class="py-line"> <tt class="py-comment"># Close the ssh connection</tt> </tt>
-<a name="L440"></a><tt class="py-lineno">440</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-151" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-151', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "\$" )</tt> </tt>
-<a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">'\$'</tt><tt class="py-op">,</tt> <tt class="py-string">'mininet>'</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">,</tt> </tt>
-<a name="L443"></a><tt class="py-lineno">443</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L445"></a><tt class="py-lineno">445</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-152', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"exit"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L446"></a><tt class="py-lineno">446</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"closed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L447"></a><tt class="py-lineno">447</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L448"></a><tt class="py-lineno">448</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-153', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"exit"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L449"></a><tt class="py-lineno">449</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"exit"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L450"></a><tt class="py-lineno">450</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">'\$'</tt><tt class="py-op">)</tt> </tt>
-<a name="L451"></a><tt class="py-lineno">451</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-154" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-154', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"exit"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L452"></a><tt class="py-lineno">452</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"exit"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L453"></a><tt class="py-lineno">453</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"closed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L454"></a><tt class="py-lineno">454</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L455"></a><tt class="py-lineno">455</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-155', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-156" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-156', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L456"></a><tt class="py-lineno">456</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L457"></a><tt class="py-lineno">457</tt> <tt class="py-line"> </tt>
-<a name="RemoteMininetDriver.setIpTablesOUTPUT"></a><div id="RemoteMininetDriver.setIpTablesOUTPUT-def"><a name="L458"></a><tt class="py-lineno">458</tt> <a class="py-toggle" href="#" id="RemoteMininetDriver.setIpTablesOUTPUT-toggle" onclick="return toggle('RemoteMininetDriver.setIpTablesOUTPUT');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#setIpTablesOUTPUT">setIpTablesOUTPUT</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">dstIp</tt><tt class="py-op">,</tt> <tt class="py-param">dstPort</tt><tt class="py-op">,</tt> <tt class="py-param">action</tt><tt class="py-op">=</tt><tt class="py-string">'add'</tt><tt class="py-op">,</tt> </tt>
-<a name="L459"></a><tt class="py-lineno">459</tt> <tt class="py-line"> <tt class="py-param">packetType</tt><tt class="py-op">=</tt><tt class="py-string">'tcp'</tt><tt class="py-op">,</tt> <tt class="py-param">rule</tt><tt class="py-op">=</tt><tt class="py-string">'DROP'</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteMininetDriver.setIpTablesOUTPUT-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteMininetDriver.setIpTablesOUTPUT-expanded"><a name="L460"></a><tt class="py-lineno">460</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L461"></a><tt class="py-lineno">461</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L462"></a><tt class="py-lineno">462</tt> <tt class="py-line"><tt class="py-docstring"> add or remove iptables rule to DROP ( default )</tt> </tt>
-<a name="L463"></a><tt class="py-lineno">463</tt> <tt class="py-line"><tt class="py-docstring"> packets from specific IP and PORT</tt> </tt>
-<a name="L464"></a><tt class="py-lineno">464</tt> <tt class="py-line"><tt class="py-docstring"> Usage:</tt> </tt>
-<a name="L465"></a><tt class="py-lineno">465</tt> <tt class="py-line"><tt class="py-docstring"> * specify action ( 'add' or 'remove' )</tt> </tt>
-<a name="L466"></a><tt class="py-lineno">466</tt> <tt class="py-line"><tt class="py-docstring"> when removing, pass in the same argument as you would add. It will</tt> </tt>
-<a name="L467"></a><tt class="py-lineno">467</tt> <tt class="py-line"><tt class="py-docstring"> delete that specific rule.</tt> </tt>
-<a name="L468"></a><tt class="py-lineno">468</tt> <tt class="py-line"><tt class="py-docstring"> * specify the destination ip to block with dstIp</tt> </tt>
-<a name="L469"></a><tt class="py-lineno">469</tt> <tt class="py-line"><tt class="py-docstring"> * specify destination port to block to dstPort</tt> </tt>
-<a name="L470"></a><tt class="py-lineno">470</tt> <tt class="py-line"><tt class="py-docstring"> * optional packet type to block ( default tcp )</tt> </tt>
-<a name="L471"></a><tt class="py-lineno">471</tt> <tt class="py-line"><tt class="py-docstring"> * optional iptables rule ( default DROP )</tt> </tt>
-<a name="L472"></a><tt class="py-lineno">472</tt> <tt class="py-line"><tt class="py-docstring"> WARNING:</tt> </tt>
-<a name="L473"></a><tt class="py-lineno">473</tt> <tt class="py-line"><tt class="py-docstring"> * This function uses root privilege iptables command which may result</tt> </tt>
-<a name="L474"></a><tt class="py-lineno">474</tt> <tt class="py-line"><tt class="py-docstring"> in unwanted network errors. USE WITH CAUTION</tt> </tt>
-<a name="L475"></a><tt class="py-lineno">475</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L476"></a><tt class="py-lineno">476</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L477"></a><tt class="py-lineno">477</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L478"></a><tt class="py-lineno">478</tt> <tt class="py-line"> </tt>
-<a name="L479"></a><tt class="py-lineno">479</tt> <tt class="py-line"> <tt class="py-comment"># NOTE*********</tt> </tt>
-<a name="L480"></a><tt class="py-lineno">480</tt> <tt class="py-line"> <tt class="py-comment"># The strict checking methods of this driver function is intentional</tt> </tt>
-<a name="L481"></a><tt class="py-lineno">481</tt> <tt class="py-line"> <tt class="py-comment"># to discourage any misuse or error of iptables, which can cause</tt> </tt>
-<a name="L482"></a><tt class="py-lineno">482</tt> <tt class="py-line"> <tt class="py-comment"># severe network errors</tt> </tt>
-<a name="L483"></a><tt class="py-lineno">483</tt> <tt class="py-line"> <tt class="py-comment"># *************</tt> </tt>
-<a name="L484"></a><tt class="py-lineno">484</tt> <tt class="py-line"> </tt>
-<a name="L485"></a><tt class="py-lineno">485</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Sleep needed to give some time</tt> </tt>
-<a name="L486"></a><tt class="py-lineno">486</tt> <tt class="py-line"> <tt class="py-comment"># for rule to be added and registered</tt> </tt>
-<a name="L487"></a><tt class="py-lineno">487</tt> <tt class="py-line"> <tt class="py-comment"># to the instance</tt> </tt>
-<a name="L488"></a><tt class="py-lineno">488</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L489"></a><tt class="py-lineno">489</tt> <tt class="py-line"> </tt>
-<a name="L490"></a><tt class="py-lineno">490</tt> <tt class="py-line"> <tt class="py-name">actionType</tt> <tt class="py-op">=</tt> <tt class="py-name">action</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L491"></a><tt class="py-lineno">491</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">actionType</tt> <tt class="py-op">!=</tt> <tt class="py-string">'add'</tt> <tt class="py-keyword">and</tt> <tt class="py-name">actionType</tt> <tt class="py-op">!=</tt> <tt class="py-string">'remove'</tt><tt class="py-op">:</tt> </tt>
-<a name="L492"></a><tt class="py-lineno">492</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-157', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-158" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-158', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L493"></a><tt class="py-lineno">493</tt> <tt class="py-line"> <tt class="py-string">"Invalid action type. 'add' or 'remove' table rule"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L494"></a><tt class="py-lineno">494</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">rule</tt> <tt class="py-op">!=</tt> <tt class="py-string">'DROP'</tt> <tt class="py-keyword">and</tt> <tt class="py-name">rule</tt> <tt class="py-op">!=</tt> <tt class="py-string">'ACCEPT'</tt> <tt class="py-keyword">and</tt> <tt class="py-name">rule</tt> <tt class="py-op">!=</tt> <tt class="py-string">'LOG'</tt><tt class="py-op">:</tt> </tt>
-<a name="L495"></a><tt class="py-lineno">495</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Currently only supports rules DROP, ACCEPT, and LOG</tt> </tt>
-<a name="L496"></a><tt class="py-lineno">496</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-159" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-159', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-160" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-160', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L497"></a><tt class="py-lineno">497</tt> <tt class="py-line"> <tt class="py-string">"Invalid rule. 'DROP' or 'ACCEPT' or 'LOG' only."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L498"></a><tt class="py-lineno">498</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L499"></a><tt class="py-lineno">499</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L500"></a><tt class="py-lineno">500</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L501"></a><tt class="py-lineno">501</tt> <tt class="py-line"> </tt>
-<a name="L502"></a><tt class="py-lineno">502</tt> <tt class="py-line"> <tt class="py-comment"># If there is no existing rule in the iptables, we will see an</tt> </tt>
-<a name="L503"></a><tt class="py-lineno">503</tt> <tt class="py-line"> <tt class="py-comment"># 'iptables:'... message. We expect to see this message.</tt> </tt>
-<a name="L504"></a><tt class="py-lineno">504</tt> <tt class="py-line"> <tt class="py-comment"># Otherwise, if there IS an existing rule, we will get the prompt</tt> </tt>
-<a name="L505"></a><tt class="py-lineno">505</tt> <tt class="py-line"> <tt class="py-comment"># back, hence why we expect $ for remove type. We want to remove</tt> </tt>
-<a name="L506"></a><tt class="py-lineno">506</tt> <tt class="py-line"> <tt class="py-comment"># an already existing rule</tt> </tt>
-<a name="L507"></a><tt class="py-lineno">507</tt> <tt class="py-line"> </tt>
-<a name="L508"></a><tt class="py-lineno">508</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">actionType</tt> <tt class="py-op">==</tt> <tt class="py-string">'add'</tt><tt class="py-op">:</tt> </tt>
-<a name="L509"></a><tt class="py-lineno">509</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: "iptables:" expect is a result of</tt> </tt>
-<a name="L510"></a><tt class="py-lineno">510</tt> <tt class="py-line"> <tt class="py-comment"># return from the command</tt> </tt>
-<a name="L511"></a><tt class="py-lineno">511</tt> <tt class="py-line"> <tt class="py-comment"># iptables -C ...</tt> </tt>
-<a name="L512"></a><tt class="py-lineno">512</tt> <tt class="py-line"> <tt class="py-comment"># Any changes by the iptables command return string</tt> </tt>
-<a name="L513"></a><tt class="py-lineno">513</tt> <tt class="py-line"> <tt class="py-comment"># will result in failure of the function. ( deemed unlikely</tt> </tt>
-<a name="L514"></a><tt class="py-lineno">514</tt> <tt class="py-line"> <tt class="py-comment"># at the time of writing this function )</tt> </tt>
-<a name="L515"></a><tt class="py-lineno">515</tt> <tt class="py-line"> <tt class="py-comment"># Check for existing rules on current input</tt> </tt>
-<a name="L516"></a><tt class="py-lineno">516</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-161" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-161', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L517"></a><tt class="py-lineno">517</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L518"></a><tt class="py-lineno">518</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-162', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L519"></a><tt class="py-lineno">519</tt> <tt class="py-line"> <tt class="py-string">"sudo iptables -C OUTPUT -p "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L520"></a><tt class="py-lineno">520</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">packetType</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L521"></a><tt class="py-lineno">521</tt> <tt class="py-line"> <tt class="py-string">" -d "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L522"></a><tt class="py-lineno">522</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dstIp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L523"></a><tt class="py-lineno">523</tt> <tt class="py-line"> <tt class="py-string">" --dport "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L524"></a><tt class="py-lineno">524</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dstPort</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L525"></a><tt class="py-lineno">525</tt> <tt class="py-line"> <tt class="py-string">" -j "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L526"></a><tt class="py-lineno">526</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">rule</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L527"></a><tt class="py-lineno">527</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"iptables:"</tt><tt class="py-op">,</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L528"></a><tt class="py-lineno">528</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">i</tt> </tt>
-<a name="L529"></a><tt class="py-lineno">529</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L530"></a><tt class="py-lineno">530</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"after: "</tt> </tt>
-<a name="L531"></a><tt class="py-lineno">531</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> </tt>
-<a name="L532"></a><tt class="py-lineno">532</tt> <tt class="py-line"> </tt>
-<a name="L533"></a><tt class="py-lineno">533</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">actionType</tt> <tt class="py-op">==</tt> <tt class="py-string">'remove'</tt><tt class="py-op">:</tt> </tt>
-<a name="L534"></a><tt class="py-lineno">534</tt> <tt class="py-line"> <tt class="py-comment"># Check for existing rules on current input</tt> </tt>
-<a name="L535"></a><tt class="py-lineno">535</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-163" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-163', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L536"></a><tt class="py-lineno">536</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L537"></a><tt class="py-lineno">537</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-164" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-164', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L538"></a><tt class="py-lineno">538</tt> <tt class="py-line"> <tt class="py-string">"sudo iptables -C OUTPUT -p "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L539"></a><tt class="py-lineno">539</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">packetType</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L540"></a><tt class="py-lineno">540</tt> <tt class="py-line"> <tt class="py-string">" -d "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L541"></a><tt class="py-lineno">541</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dstIp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L542"></a><tt class="py-lineno">542</tt> <tt class="py-line"> <tt class="py-string">" --dport "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L543"></a><tt class="py-lineno">543</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dstPort</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L544"></a><tt class="py-lineno">544</tt> <tt class="py-line"> <tt class="py-string">" -j "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L545"></a><tt class="py-lineno">545</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">rule</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L546"></a><tt class="py-lineno">546</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L547"></a><tt class="py-lineno">547</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"before: "</tt> </tt>
-<a name="L548"></a><tt class="py-lineno">548</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L549"></a><tt class="py-lineno">549</tt> <tt class="py-line"> <tt class="py-name">actualString</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> </tt>
-<a name="L550"></a><tt class="py-lineno">550</tt> <tt class="py-line"> <tt class="py-name">expectString</tt> <tt class="py-op">=</tt> <tt class="py-string">"iptables:"</tt> </tt>
-<a name="L551"></a><tt class="py-lineno">551</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Actual String:"</tt> </tt>
-<a name="L552"></a><tt class="py-lineno">552</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">actualString</tt> </tt>
-<a name="L553"></a><tt class="py-lineno">553</tt> <tt class="py-line"> </tt>
-<a name="L554"></a><tt class="py-lineno">554</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">expectString</tt><tt class="py-op">,</tt> <tt class="py-name">actualString</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L555"></a><tt class="py-lineno">555</tt> <tt class="py-line"> <tt class="py-name">matchResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L556"></a><tt class="py-lineno">556</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L557"></a><tt class="py-lineno">557</tt> <tt class="py-line"> <tt class="py-name">matchResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L558"></a><tt class="py-lineno">558</tt> <tt class="py-line"> <tt class="py-comment"># If matchResult is main.TRUE, it means there is no matching rule.</tt> </tt>
-<a name="L559"></a><tt class="py-lineno">559</tt> <tt class="py-line"> </tt>
-<a name="L560"></a><tt class="py-lineno">560</tt> <tt class="py-line"> <tt class="py-comment"># If tables does not exist and expected prompt is returned,</tt> </tt>
-<a name="L561"></a><tt class="py-lineno">561</tt> <tt class="py-line"> <tt class="py-comment"># go ahead and add iptables rule</tt> </tt>
-<a name="L562"></a><tt class="py-lineno">562</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">matchResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L563"></a><tt class="py-lineno">563</tt> <tt class="py-line"> <tt class="py-comment"># Ensure action type is add</tt> </tt>
-<a name="L564"></a><tt class="py-lineno">564</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">actionType</tt> <tt class="py-op">==</tt> <tt class="py-string">'add'</tt><tt class="py-op">:</tt> </tt>
-<a name="L565"></a><tt class="py-lineno">565</tt> <tt class="py-line"> <tt class="py-comment"># -A is the 'append' action of iptables</tt> </tt>
-<a name="L566"></a><tt class="py-lineno">566</tt> <tt class="py-line"> <tt class="py-name">actionAdd</tt> <tt class="py-op">=</tt> <tt class="py-string">'-A'</tt> </tt>
-<a name="L567"></a><tt class="py-lineno">567</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L568"></a><tt class="py-lineno">568</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-165" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-165', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L569"></a><tt class="py-lineno">569</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-166" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-166', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L570"></a><tt class="py-lineno">570</tt> <tt class="py-line"> <tt class="py-string">"sudo iptables "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L571"></a><tt class="py-lineno">571</tt> <tt class="py-line"> <tt class="py-name">actionAdd</tt> <tt class="py-op">+</tt> </tt>
-<a name="L572"></a><tt class="py-lineno">572</tt> <tt class="py-line"> <tt class="py-string">" OUTPUT -p "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L573"></a><tt class="py-lineno">573</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">packetType</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L574"></a><tt class="py-lineno">574</tt> <tt class="py-line"> <tt class="py-string">" -d "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L575"></a><tt class="py-lineno">575</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dstIp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L576"></a><tt class="py-lineno">576</tt> <tt class="py-line"> <tt class="py-string">" --dport "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L577"></a><tt class="py-lineno">577</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dstPort</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L578"></a><tt class="py-lineno">578</tt> <tt class="py-line"> <tt class="py-string">" -j "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L579"></a><tt class="py-lineno">579</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">rule</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L580"></a><tt class="py-lineno">580</tt> <tt class="py-line"> </tt>
-<a name="L581"></a><tt class="py-lineno">581</tt> <tt class="py-line"> <tt class="py-name">infoString</tt> <tt class="py-op">=</tt> <tt class="py-string">"Rules added to "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> </tt>
-<a name="L582"></a><tt class="py-lineno">582</tt> <tt class="py-line"> <tt class="py-name">infoString</tt> <tt class="py-op">+=</tt> <tt class="py-string">"iptables rule added to block IP: "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L583"></a><tt class="py-lineno">583</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dstIp</tt> <tt class="py-op">)</tt> </tt>
-<a name="L584"></a><tt class="py-lineno">584</tt> <tt class="py-line"> <tt class="py-name">infoString</tt> <tt class="py-op">+=</tt> <tt class="py-string">"Port: "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L585"></a><tt class="py-lineno">585</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dstPort</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" Rule: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">rule</tt> <tt class="py-op">)</tt> </tt>
-<a name="L586"></a><tt class="py-lineno">586</tt> <tt class="py-line"> </tt>
-<a name="L587"></a><tt class="py-lineno">587</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-167', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">infoString</tt> <tt class="py-op">)</tt> </tt>
-<a name="L588"></a><tt class="py-lineno">588</tt> <tt class="py-line"> </tt>
-<a name="L589"></a><tt class="py-lineno">589</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> </tt>
-<a name="L590"></a><tt class="py-lineno">590</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L591"></a><tt class="py-lineno">591</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">:</tt> </tt>
-<a name="L592"></a><tt class="py-lineno">592</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-168', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-169" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-169', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L593"></a><tt class="py-lineno">593</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L594"></a><tt class="py-lineno">594</tt> <tt class="py-line"> <tt class="py-string">": Timeout exception in setIpTables function"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L595"></a><tt class="py-lineno">595</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L596"></a><tt class="py-lineno">596</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-170" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-170', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L597"></a><tt class="py-lineno">597</tt> <tt class="py-line"> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L598"></a><tt class="py-lineno">598</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-171" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-171', 'cleanup', 'link-72');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L599"></a><tt class="py-lineno">599</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-172" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-172', 'exit', 'link-73');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L600"></a><tt class="py-lineno">600</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L601"></a><tt class="py-lineno">601</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-173', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-174" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-174', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L602"></a><tt class="py-lineno">602</tt> <tt class="py-line"> <tt class="py-string">"Given rule already exists, but attempted to add it"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L603"></a><tt class="py-lineno">603</tt> <tt class="py-line"> <tt class="py-comment"># If matchResult is 0, it means there IS a matching rule provided</tt> </tt>
-<a name="L604"></a><tt class="py-lineno">604</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">matchResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L605"></a><tt class="py-lineno">605</tt> <tt class="py-line"> <tt class="py-comment"># Ensure action type is remove</tt> </tt>
-<a name="L606"></a><tt class="py-lineno">606</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">actionType</tt> <tt class="py-op">==</tt> <tt class="py-string">'remove'</tt><tt class="py-op">:</tt> </tt>
-<a name="L607"></a><tt class="py-lineno">607</tt> <tt class="py-line"> <tt class="py-comment"># -D is the 'delete' rule of iptables</tt> </tt>
-<a name="L608"></a><tt class="py-lineno">608</tt> <tt class="py-line"> <tt class="py-name">actionRemove</tt> <tt class="py-op">=</tt> <tt class="py-string">'-D'</tt> </tt>
-<a name="L609"></a><tt class="py-lineno">609</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L610"></a><tt class="py-lineno">610</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-175" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-175', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L611"></a><tt class="py-lineno">611</tt> <tt class="py-line"> <tt class="py-comment"># Delete a specific rule specified into the function</tt> </tt>
-<a name="L612"></a><tt class="py-lineno">612</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-176" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-176', 'sendline', 'link-17');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L613"></a><tt class="py-lineno">613</tt> <tt class="py-line"> <tt class="py-string">"sudo iptables "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L614"></a><tt class="py-lineno">614</tt> <tt class="py-line"> <tt class="py-name">actionRemove</tt> <tt class="py-op">+</tt> </tt>
-<a name="L615"></a><tt class="py-lineno">615</tt> <tt class="py-line"> <tt class="py-string">" OUTPUT -p "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L616"></a><tt class="py-lineno">616</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">packetType</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L617"></a><tt class="py-lineno">617</tt> <tt class="py-line"> <tt class="py-string">" -d "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L618"></a><tt class="py-lineno">618</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dstIp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L619"></a><tt class="py-lineno">619</tt> <tt class="py-line"> <tt class="py-string">" --dport "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L620"></a><tt class="py-lineno">620</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dstPort</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L621"></a><tt class="py-lineno">621</tt> <tt class="py-line"> <tt class="py-string">" -j "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L622"></a><tt class="py-lineno">622</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">rule</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L623"></a><tt class="py-lineno">623</tt> <tt class="py-line"> </tt>
-<a name="L624"></a><tt class="py-lineno">624</tt> <tt class="py-line"> <tt class="py-name">infoString</tt> <tt class="py-op">=</tt> <tt class="py-string">"Rules removed from "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> </tt>
-<a name="L625"></a><tt class="py-lineno">625</tt> <tt class="py-line"> <tt class="py-name">infoString</tt> <tt class="py-op">+=</tt> <tt class="py-string">" iptables rule removed \</tt> </tt>
-<a name="L626"></a><tt class="py-lineno">626</tt> <tt class="py-line"><tt class="py-string"> from blocking IP: "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L627"></a><tt class="py-lineno">627</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dstIp</tt> <tt class="py-op">)</tt> </tt>
-<a name="L628"></a><tt class="py-lineno">628</tt> <tt class="py-line"> <tt class="py-name">infoString</tt> <tt class="py-op">+=</tt> <tt class="py-string">" Port: "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L629"></a><tt class="py-lineno">629</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dstPort</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" Rule: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">rule</tt> <tt class="py-op">)</tt> </tt>
-<a name="L630"></a><tt class="py-lineno">630</tt> <tt class="py-line"> </tt>
-<a name="L631"></a><tt class="py-lineno">631</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-177" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-177', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">infoString</tt> <tt class="py-op">)</tt> </tt>
-<a name="L632"></a><tt class="py-lineno">632</tt> <tt class="py-line"> </tt>
-<a name="L633"></a><tt class="py-lineno">633</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> </tt>
-<a name="L634"></a><tt class="py-lineno">634</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L635"></a><tt class="py-lineno">635</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">:</tt> </tt>
-<a name="L636"></a><tt class="py-lineno">636</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-178" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-178', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-179" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-179', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L637"></a><tt class="py-lineno">637</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L638"></a><tt class="py-lineno">638</tt> <tt class="py-line"> <tt class="py-string">": Timeout exception in setIpTables function"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L639"></a><tt class="py-lineno">639</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L640"></a><tt class="py-lineno">640</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-180" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-180', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L641"></a><tt class="py-lineno">641</tt> <tt class="py-line"> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L642"></a><tt class="py-lineno">642</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-181" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-181', 'cleanup', 'link-72');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L643"></a><tt class="py-lineno">643</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-182" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-182', 'exit', 'link-73');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L644"></a><tt class="py-lineno">644</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L645"></a><tt class="py-lineno">645</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-183" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-183', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-184" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-184', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L646"></a><tt class="py-lineno">646</tt> <tt class="py-line"> <tt class="py-string">"Given rule does not exist,\</tt> </tt>
-<a name="L647"></a><tt class="py-lineno">647</tt> <tt class="py-line"><tt class="py-string"> but attempted to remove it"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L648"></a><tt class="py-lineno">648</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L649"></a><tt class="py-lineno">649</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: If a bad usage of this function occurs, exit the entire</tt> </tt>
-<a name="L650"></a><tt class="py-lineno">650</tt> <tt class="py-line"> <tt class="py-comment"># test</tt> </tt>
-<a name="L651"></a><tt class="py-lineno">651</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-185" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-185', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-186" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-186', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Bad rule given for iptables. Exiting..."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L652"></a><tt class="py-lineno">652</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-187" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-187', 'cleanup', 'link-72');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L653"></a><tt class="py-lineno">653</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-188" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-188', 'exit', 'link-73');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L654"></a><tt class="py-lineno">654</tt> <tt class="py-line"> </tt>
-<a name="L655"></a><tt class="py-lineno">655</tt> <tt class="py-line"> </tt>
-<a name="L656"></a><tt class="py-lineno">656</tt> <tt class="py-line"><tt class="py-keyword">if</tt> <tt class="py-name">__name__</tt> <tt class="py-op">!=</tt> <tt class="py-string">"__main__"</tt><tt class="py-op">:</tt> </tt>
-<a name="L657"></a><tt class="py-lineno">657</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L658"></a><tt class="py-lineno">658</tt> <tt class="py-line"> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">modules</tt><tt class="py-op">[</tt> <tt class="py-name">__name__</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-189" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver" class="py-name" href="#" onclick="return doclink('link-189', 'RemoteMininetDriver', 'link-11');">RemoteMininetDriver</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L659"></a><tt class="py-lineno">659</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html
deleted file mode 100644
index edabdd8..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html
+++ /dev/null
@@ -1,761 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.emulator-module.html">Package emulator</a> ::
- <a href="TestON.drivers.common.cli.emulator.remotemininetdriver-module.html">Module remotemininetdriver</a> ::
- Class RemoteMininetDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class RemoteMininetDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_remotemini" name="class_hierarchy_for_remotemini">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html" title="RemoteMininetDriver" alt="" coords="5,6,149,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html" title="emulatordriver.Emulator" alt="" coords="175,6,333,31"/>
-<area shape="rect" id="node3" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="359,6,451,31"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="component.Component" alt="" coords="476,6,633,31"/>
-</map>
- <img src="class_hierarchy_for_remotemini.gif" alt='' usemap="#class_hierarchy_for_remotemini" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<p>RemoteMininetCliDriver is the basic driver which will handle the
- Mininet functions. The main different between this and the
- MininetCliDriver is that this one does not build the mininet. It assumes
- that there is already a mininet running on the target.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- ,user_name, ip_address, pwd,options ): Here the main is the TestON
- instance after creating all the log handles.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="checkForLoss"></a><span class="summary-sig-name">checkForLoss</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">pingList</span>)</span><br />
- Returns main.FALSE for 0% packet loss and Returns main.ERROR if
- "found multiple mininet" is found and Returns main.TRUE
- else</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.checkForLoss">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="pingLong"></a><span class="summary-sig-name">pingLong</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**pingParams</span>)</span><br />
- Starts a continuous ping on the mininet host outputting to a file in
- the /tmp dir.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.pingLong">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="pingstatus"></a><span class="summary-sig-name">pingstatus</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**pingParams</span>)</span><br />
- Tails the respective ping output file and check that there is a
- moving "64 bytes"</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.pingstatus">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingKill" class="summary-sig-name">pingKill</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">testONUser</span>,
- <span class="summary-sig-arg">testONIP</span>)</span><br />
- Kills all continuous ping processes.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.pingKill">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="pingLongKill"></a><span class="summary-sig-name">pingLongKill</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.pingLongKill">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="pingHostOptical"></a><span class="summary-sig-name">pingHostOptical</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**pingParams</span>)</span><br />
- This function is only for Packet Optical related ping Use the next
- pingHost() function for all normal scenarios ) Ping from one mininet
- host to another Currently the only supported Params: SRC and TARGET</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.pingHostOptical">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="pingHost"></a><span class="summary-sig-name">pingHost</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**pingParams</span>)</span><br />
- Pings between two hosts on remote mininet</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.pingHost">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="checknum"></a><span class="summary-sig-name">checknum</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">num</span>)</span><br />
- Verifies the correct number of switches are running</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.checknum">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="startTcpdump"></a><span class="summary-sig-name">startTcpdump</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">filename</span>,
- <span class="summary-sig-arg">intf</span>=<span class="summary-sig-default">"eth0"</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">"port 6633"</span>,
- <span class="summary-sig-arg">user</span>=<span class="summary-sig-default">"admin"</span>)</span><br />
- Runs tcpdump on an interface and saves the file intf can be
- specified, or the default eth0 is used</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.startTcpdump">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="stopTcpdump"></a><span class="summary-sig-name">stopTcpdump</span>(<span class="summary-sig-arg">self</span>)</span><br />
- pkills tcpdump</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.stopTcpdump">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runOpticalMnScript"></a><span class="summary-sig-name">runOpticalMnScript</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">name</span>=<span class="summary-sig-default">'onos'</span>,
- <span class="summary-sig-arg">ctrllerIP</span>=<span class="summary-sig-default">None</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.runOpticalMnScript">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="attachLincOESession"></a><span class="summary-sig-name">attachLincOESession</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Since executing opticalTest.py will give you mininet prompt, you
- would at some point require to get onto console of LincOE
- ((linc@onosTestBench)1>) to execute commands like bring a optical
- port up or down on a ROADM You can attach to console of Linc-OE
- session by a cmd: sudo ~/linc-oe/rel/linc/bin/linc attach</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.attachLincOESession">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Called at the end of the test to disconnect the handle.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#setIpTablesOUTPUT" class="summary-sig-name">setIpTablesOUTPUT</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">dstIp</span>,
- <span class="summary-sig-arg">dstPort</span>,
- <span class="summary-sig-arg">action</span>=<span class="summary-sig-default">'add'</span>,
- <span class="summary-sig-arg">packetType</span>=<span class="summary-sig-default">'tcp'</span>,
- <span class="summary-sig-arg">rule</span>=<span class="summary-sig-default">'DROP'</span>)</span><br />
- Description:
- add or remove iptables rule to DROP ( default )
- packets from specific IP and PORT
-Usage:
-* specify action ( 'add' or 'remove' )
- when removing, pass in the same argument as you would add.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.setIpTablesOUTPUT">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>,user_name, ip_address, pwd,options ): Here the main is the TestON
- instance after creating all the log handles.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="pingKill"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">pingKill</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">testONUser</span>,
- <span class="sig-arg">testONIP</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.pingKill">source code</a></span>
- </td>
- </tr></table>
-
- <p>Kills all continuous ping processes. Then copies all the ping files to
- the TestStation.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="disconnect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">disconnect</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.disconnect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Called at the end of the test to disconnect the handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.disconnect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="setIpTablesOUTPUT"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">setIpTablesOUTPUT</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">dstIp</span>,
- <span class="sig-arg">dstPort</span>,
- <span class="sig-arg">action</span>=<span class="sig-default">'add'</span>,
- <span class="sig-arg">packetType</span>=<span class="sig-default">'tcp'</span>,
- <span class="sig-arg">rule</span>=<span class="sig-default">'DROP'</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-pysrc.html#RemoteMininetDriver.setIpTablesOUTPUT">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- add or remove iptables rule to DROP ( default )
- packets from specific IP and PORT
-Usage:
-* specify action ( 'add' or 'remove' )
- when removing, pass in the same argument as you would add. It will
- delete that specific rule.
-* specify the destination ip to block with dstIp
-* specify destination port to block to dstPort
-* optional packet type to block ( default tcp )
-* optional iptables rule ( default DROP )
-WARNING:
-* This function uses root privilege iptables command which may result
-in unwanted network errors. USE WITH CAUTION
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulatordriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulatordriver-module.html
deleted file mode 100644
index c3e26c9..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulatordriver-module.html
+++ /dev/null
@@ -1,163 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulatordriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Module emulatordriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulatordriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module emulatordriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.emulatordriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 26-Oct-2012
-
-author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- ( at your option ) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html" class="summary-name">Emulator</a>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulatordriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulatordriver-pysrc.html
deleted file mode 100644
index 5a2cc39..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulatordriver-pysrc.html
+++ /dev/null
@@ -1,219 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulatordriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Module emulatordriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulatordriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.emulatordriver-module.html">Module TestON.drivers.common.cli.emulatordriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 26-Oct-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-docstring"> ( at your option ) any later version.</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.drivers.common.clidriver=TestON.drivers.common.clidriver-module.html"><a title="TestON.drivers.common.clidriver" class="py-name" href="#" onclick="return doclink('link-2', 'clidriver', 'link-2');">clidriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Class TestON.bin.cli.CLI=TestON.bin.cli.CLI-class.html,Class TestON.drivers.common.clidriver.CLI=TestON.drivers.common.clidriver.CLI-class.html"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-3', 'CLI', 'link-3');">CLI</a></tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> </tt>
-<a name="Emulator"></a><div id="Emulator-def"><a name="L25"></a><tt class="py-lineno">25</tt> <a class="py-toggle" href="#" id="Emulator-toggle" onclick="return toggle('Emulator');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html">Emulator</a><tt class="py-op">(</tt> <tt class="py-base-class">CLI</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Emulator-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="Emulator-expanded"><a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> <tt class="py-comment"># The common functions for emulator included in emulatordriver</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> </tt>
-<a name="Emulator.__init__"></a><div id="Emulator.__init__-def"><a name="L28"></a><tt class="py-lineno">28</tt> <a class="py-toggle" href="#" id="Emulator.__init__-toggle" onclick="return toggle('Emulator.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Emulator.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="Emulator.__init__-expanded"><a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-4" class="py-name"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-4', 'CLI', 'link-3');">CLI</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-5', '__init__', 'link-5');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulatordriver.Emulator-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulatordriver.Emulator-class.html
deleted file mode 100644
index 63f0046..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.emulatordriver.Emulator-class.html
+++ /dev/null
@@ -1,391 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.emulatordriver.Emulator</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.emulatordriver-module.html">Module emulatordriver</a> ::
- Class Emulator
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Emulator</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.emulatordriver-pysrc.html#Emulator">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_emulator" name="class_hierarchy_for_emulator">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html" title="Emulator" alt="" coords="4,6,77,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="103,6,195,31"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="component.Component" alt="" coords="220,6,377,31"/>
-</map>
- <img src="class_hierarchy_for_emulator.gif" alt='' usemap="#class_hierarchy_for_emulator" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.emulatordriver-pysrc.html#Emulator.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.emulatordriver-pysrc.html#Emulator.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosclidriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosclidriver-module.html
deleted file mode 100644
index 176d615..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosclidriver-module.html
+++ /dev/null
@@ -1,150 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.onosclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Module onosclidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.onosclidriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module onosclidriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html">source code</a></span></p>
-<p>This driver enters the onos> prompt to issue commands.</p>
- <p>Please follow the coding style demonstrated by existing functions and
- document properly.</p>
- <p>If you are a contributor to the driver, please list your email here
- for future contact:</p>
- <p>jhall@onlab.us andrew@onlab.us shreya@onlab.us</p>
- <p>OCT 13 2014</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html" class="summary-name">OnosCliDriver</a>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosclidriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosclidriver-pysrc.html
deleted file mode 100644
index 91c9e4a..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosclidriver-pysrc.html
+++ /dev/null
@@ -1,4086 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.onosclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Module onosclidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.onosclidriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.onosclidriver-module.html">Module TestON.drivers.common.cli.onosclidriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring">This driver enters the onos> prompt to issue commands.</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring">Please follow the coding style demonstrated by existing</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring">functions and document properly.</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring">If you are a contributor to the driver, please</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring">list your email here for future contact:</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring">jhall@onlab.us</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring">andrew@onlab.us</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring">shreya@onlab.us</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring">OCT 13 2014</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">pexpect</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">types</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.drivers.common.clidriver=TestON.drivers.common.clidriver-module.html"><a title="TestON.drivers.common.clidriver" class="py-name" href="#" onclick="return doclink('link-2', 'clidriver', 'link-2');">clidriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Class TestON.bin.cli.CLI=TestON.bin.cli.CLI-class.html,Class TestON.drivers.common.clidriver.CLI=TestON.drivers.common.clidriver.CLI-class.html"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-3', 'CLI', 'link-3');">CLI</a></tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver"></a><div id="OnosCliDriver-def"><a name="L28"></a><tt class="py-lineno"> 28</tt> <a class="py-toggle" href="#" id="OnosCliDriver-toggle" onclick="return toggle('OnosCliDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">CLI</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="OnosCliDriver-expanded"><a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.__init__"></a><div id="OnosCliDriver.__init__-def"><a name="L30"></a><tt class="py-lineno"> 30</tt> <a class="py-toggle" href="#" id="OnosCliDriver.__init__-toggle" onclick="return toggle('OnosCliDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.__init__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.__init__-expanded"><a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring"> Initialize client</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-4" class="py-name"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-4', 'CLI', 'link-3');">CLI</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-5', '__init__', 'link-5');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.connect"></a><div id="OnosCliDriver.connect-def"><a name="L39"></a><tt class="py-lineno"> 39</tt> <a class="py-toggle" href="#" id="OnosCliDriver.connect-toggle" onclick="return toggle('OnosCliDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.connect-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.connect-expanded"><a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring"> Creates ssh handle for ONOS cli.</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">=</tt> <tt class="py-string">"~/onos"</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">key</tt> <tt class="py-op">==</tt> <tt class="py-string">"home"</tt><tt class="py-op">:</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'home'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">==</tt> <tt class="py-string">""</tt><tt class="py-op">:</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">=</tt> <tt class="py-string">"~/onos"</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">key</tt> <tt class="py-op">==</tt> <tt class="py-string">'onosIp'</tt><tt class="py-op">:</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">onosIp</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'onosIp'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">getenv</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">getenv</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-6', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-string">": Trying to connect to "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">:</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-7', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Invalid host name,"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-string">" connecting to local host instead"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">=</tt> <tt class="py-string">'localhost'</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">inst</tt><tt class="py-op">:</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-8', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-9', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Uncaught exception: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">inst</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-10" class="py-name" targets="Class TestON.drivers.common.cli.onosclidriver.OnosCliDriver=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver" class="py-name" href="#" onclick="return doclink('link-10', 'OnosCliDriver', 'link-10');">OnosCliDriver</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-11', 'connect', 'link-11');">connect</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt><tt class="py-op">,</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt><tt class="py-op">,</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">home</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">)</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-12', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cd "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">)</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-13', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"NO ONOS HANDLE"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-14', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-15', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-16', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-17', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-18', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Method TestON.core.teston.TestON.cleanup()=TestON.core.teston.TestON-class.html#cleanup"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-19', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-20', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-21', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno"> 100</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-22', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno"> 101</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-23', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L102"></a><tt class="py-lineno"> 102</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.disconnect"></a><div id="OnosCliDriver.disconnect-def"><a name="L103"></a><tt class="py-lineno"> 103</tt> <a class="py-toggle" href="#" id="OnosCliDriver.disconnect-toggle" onclick="return toggle('OnosCliDriver.disconnect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#disconnect">disconnect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.disconnect-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.disconnect-expanded"><a name="L104"></a><tt class="py-lineno"> 104</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L105"></a><tt class="py-lineno"> 105</tt> <tt class="py-line"><tt class="py-docstring"> Called when Test is complete to disconnect the ONOS handle.</tt> </tt>
-<a name="L106"></a><tt class="py-lineno"> 106</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L107"></a><tt class="py-lineno"> 107</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L108"></a><tt class="py-lineno"> 108</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L109"></a><tt class="py-lineno"> 109</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno"> 110</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.logout()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#logout"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.logout" class="py-name" href="#" onclick="return doclink('link-24', 'logout', 'link-24');">logout</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno"> 111</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L112"></a><tt class="py-lineno"> 112</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-25', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno"> 113</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno"> 114</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-26', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"exit"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno"> 115</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"closed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno"> 116</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L117"></a><tt class="py-lineno"> 117</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-27', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno"> 118</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L119"></a><tt class="py-lineno"> 119</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L120"></a><tt class="py-lineno"> 120</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-28', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-29', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno"> 121</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-30', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-31', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno"> 122</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">ValueError</tt><tt class="py-op">:</tt> </tt>
-<a name="L123"></a><tt class="py-lineno"> 123</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-32', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Exception in disconnect of "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> </tt>
-<a name="L124"></a><tt class="py-lineno"> 124</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L125"></a><tt class="py-lineno"> 125</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L126"></a><tt class="py-lineno"> 126</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-33', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L127"></a><tt class="py-lineno"> 127</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L128"></a><tt class="py-lineno"> 128</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-</div><a name="L129"></a><tt class="py-lineno"> 129</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.logout"></a><div id="OnosCliDriver.logout-def"><a name="L130"></a><tt class="py-lineno"> 130</tt> <a class="py-toggle" href="#" id="OnosCliDriver.logout-toggle" onclick="return toggle('OnosCliDriver.logout');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#logout">logout</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.logout-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.logout-expanded"><a name="L131"></a><tt class="py-lineno"> 131</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L132"></a><tt class="py-lineno"> 132</tt> <tt class="py-line"><tt class="py-docstring"> Sends 'logout' command to ONOS cli</tt> </tt>
-<a name="L133"></a><tt class="py-lineno"> 133</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE if exited CLI and</tt> </tt>
-<a name="L134"></a><tt class="py-lineno"> 134</tt> <tt class="py-line"><tt class="py-docstring"> main.FALSE on timeout (not guranteed you are disconnected)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno"> 135</tt> <tt class="py-line"><tt class="py-docstring"> None on TypeError</tt> </tt>
-<a name="L136"></a><tt class="py-lineno"> 136</tt> <tt class="py-line"><tt class="py-docstring"> Exits test on unknown error or pexpect exits unexpectedly</tt> </tt>
-<a name="L137"></a><tt class="py-lineno"> 137</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L138"></a><tt class="py-lineno"> 138</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L139"></a><tt class="py-lineno"> 139</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L140"></a><tt class="py-lineno"> 140</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-34', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno"> 141</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"onos>"</tt><tt class="py-op">,</tt> <tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L142"></a><tt class="py-lineno"> 142</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno"> 143</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> <tt class="py-comment"># In ONOS CLI</tt> </tt>
-<a name="L144"></a><tt class="py-lineno"> 144</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-35', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"logout"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L145"></a><tt class="py-lineno"> 145</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno"> 146</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L147"></a><tt class="py-lineno"> 147</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> <tt class="py-comment"># not in CLI</tt> </tt>
-<a name="L148"></a><tt class="py-lineno"> 148</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L149"></a><tt class="py-lineno"> 149</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> <tt class="py-comment"># Timeout</tt> </tt>
-<a name="L150"></a><tt class="py-lineno"> 150</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L151"></a><tt class="py-lineno"> 151</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L152"></a><tt class="py-lineno"> 152</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L153"></a><tt class="py-lineno"> 153</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L154"></a><tt class="py-lineno"> 154</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-36', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L155"></a><tt class="py-lineno"> 155</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L156"></a><tt class="py-lineno"> 156</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L157"></a><tt class="py-lineno"> 157</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-37', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-38', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": eof exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L158"></a><tt class="py-lineno"> 158</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-39', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-40', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L159"></a><tt class="py-lineno"> 159</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-41', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno"> 160</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-42', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L161"></a><tt class="py-lineno"> 161</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">ValueError</tt><tt class="py-op">:</tt> </tt>
-<a name="L162"></a><tt class="py-lineno"> 162</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-43', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-44', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L163"></a><tt class="py-lineno"> 163</tt> <tt class="py-line"> <tt class="py-string">"ValueError exception in logout method"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno"> 164</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L165"></a><tt class="py-lineno"> 165</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-45', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L166"></a><tt class="py-lineno"> 166</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-46', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L167"></a><tt class="py-lineno"> 167</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-47', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L168"></a><tt class="py-lineno"> 168</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.setCell"></a><div id="OnosCliDriver.setCell-def"><a name="L169"></a><tt class="py-lineno"> 169</tt> <a class="py-toggle" href="#" id="OnosCliDriver.setCell-toggle" onclick="return toggle('OnosCliDriver.setCell');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell">setCell</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">cellname</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.setCell-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.setCell-expanded"><a name="L170"></a><tt class="py-lineno"> 170</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L171"></a><tt class="py-lineno"> 171</tt> <tt class="py-line"><tt class="py-docstring"> Calls 'cell <name>' to set the environment variables on ONOSbench</tt> </tt>
-<a name="L172"></a><tt class="py-lineno"> 172</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L173"></a><tt class="py-lineno"> 173</tt> <tt class="py-line"><tt class="py-docstring"> Before issuing any cli commands, set the environment variable first.</tt> </tt>
-<a name="L174"></a><tt class="py-lineno"> 174</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L175"></a><tt class="py-lineno"> 175</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L176"></a><tt class="py-lineno"> 176</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">cellname</tt><tt class="py-op">:</tt> </tt>
-<a name="L177"></a><tt class="py-lineno"> 177</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-48', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-49', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Must define cellname"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L178"></a><tt class="py-lineno"> 178</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-50', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L179"></a><tt class="py-lineno"> 179</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-51', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L180"></a><tt class="py-lineno"> 180</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L181"></a><tt class="py-lineno"> 181</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-52', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cell "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">cellname</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L182"></a><tt class="py-lineno"> 182</tt> <tt class="py-line"> <tt class="py-comment"># Expect the cellname in the ONOSCELL variable.</tt> </tt>
-<a name="L183"></a><tt class="py-lineno"> 183</tt> <tt class="py-line"> <tt class="py-comment"># Note that this variable name is subject to change</tt> </tt>
-<a name="L184"></a><tt class="py-lineno"> 184</tt> <tt class="py-line"> <tt class="py-comment"># and that this driver will have to change accordingly</tt> </tt>
-<a name="L185"></a><tt class="py-lineno"> 185</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">cellname</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L186"></a><tt class="py-lineno"> 186</tt> <tt class="py-line"> <tt class="py-name">handleBefore</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L187"></a><tt class="py-lineno"> 187</tt> <tt class="py-line"> <tt class="py-name">handleAfter</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> </tt>
-<a name="L188"></a><tt class="py-lineno"> 188</tt> <tt class="py-line"> <tt class="py-comment"># Get the rest of the handle</tt> </tt>
-<a name="L189"></a><tt class="py-lineno"> 189</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-53', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L190"></a><tt class="py-lineno"> 190</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">"\$"</tt><tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno"> 191</tt> <tt class="py-line"> <tt class="py-name">handleMore</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L192"></a><tt class="py-lineno"> 192</tt> <tt class="py-line"> </tt>
-<a name="L193"></a><tt class="py-lineno"> 193</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-54', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Cell call returned: "</tt> <tt class="py-op">+</tt> <tt class="py-name">handleBefore</tt> <tt class="py-op">+</tt> </tt>
-<a name="L194"></a><tt class="py-lineno"> 194</tt> <tt class="py-line"> <tt class="py-name">handleAfter</tt> <tt class="py-op">+</tt> <tt class="py-name">handleMore</tt> <tt class="py-op">)</tt> </tt>
-<a name="L195"></a><tt class="py-lineno"> 195</tt> <tt class="py-line"> </tt>
-<a name="L196"></a><tt class="py-lineno"> 196</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L197"></a><tt class="py-lineno"> 197</tt> <tt class="py-line"> </tt>
-<a name="L198"></a><tt class="py-lineno"> 198</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L199"></a><tt class="py-lineno"> 199</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-55', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L200"></a><tt class="py-lineno"> 200</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L201"></a><tt class="py-lineno"> 201</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L202"></a><tt class="py-lineno"> 202</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-56', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-57', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": eof exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L203"></a><tt class="py-lineno"> 203</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-58', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-59', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L204"></a><tt class="py-lineno"> 204</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-60', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno"> 205</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-61', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L206"></a><tt class="py-lineno"> 206</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L207"></a><tt class="py-lineno"> 207</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-62', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L208"></a><tt class="py-lineno"> 208</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-63', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno"> 209</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-64', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L210"></a><tt class="py-lineno"> 210</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.startOnosCli"></a><div id="OnosCliDriver.startOnosCli-def"><a name="L211"></a><tt class="py-lineno"> 211</tt> <a class="py-toggle" href="#" id="OnosCliDriver.startOnosCli-toggle" onclick="return toggle('OnosCliDriver.startOnosCli');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#startOnosCli">startOnosCli</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ONOSIp</tt><tt class="py-op">,</tt> <tt class="py-param">karafTimeout</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L212"></a><tt class="py-lineno"> 212</tt> <tt class="py-line"> <tt class="py-param">commandlineTimeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt><tt class="py-op">,</tt> <tt class="py-param">onosStartTimeout</tt><tt class="py-op">=</tt><tt class="py-number">60</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.startOnosCli-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.startOnosCli-expanded"><a name="L213"></a><tt class="py-lineno"> 213</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L214"></a><tt class="py-lineno"> 214</tt> <tt class="py-line"><tt class="py-docstring"> karafTimeout is an optional argument. karafTimeout value passed</tt> </tt>
-<a name="L215"></a><tt class="py-lineno"> 215</tt> <tt class="py-line"><tt class="py-docstring"> by user would be used to set the current karaf shell idle timeout.</tt> </tt>
-<a name="L216"></a><tt class="py-lineno"> 216</tt> <tt class="py-line"><tt class="py-docstring"> Note that when ever this property is modified the shell will exit and</tt> </tt>
-<a name="L217"></a><tt class="py-lineno"> 217</tt> <tt class="py-line"><tt class="py-docstring"> the subsequent login would reflect new idle timeout.</tt> </tt>
-<a name="L218"></a><tt class="py-lineno"> 218</tt> <tt class="py-line"><tt class="py-docstring"> Below is an example to start a session with 60 seconds idle timeout</tt> </tt>
-<a name="L219"></a><tt class="py-lineno"> 219</tt> <tt class="py-line"><tt class="py-docstring"> ( input value is in milliseconds ):</tt> </tt>
-<a name="L220"></a><tt class="py-lineno"> 220</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L221"></a><tt class="py-lineno"> 221</tt> <tt class="py-line"><tt class="py-docstring"> tValue = "60000"</tt> </tt>
-<a name="L222"></a><tt class="py-lineno"> 222</tt> <tt class="py-line"><tt class="py-docstring"> main.ONOScli1.startOnosCli( ONOSIp, karafTimeout=tValue )</tt> </tt>
-<a name="L223"></a><tt class="py-lineno"> 223</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L224"></a><tt class="py-lineno"> 224</tt> <tt class="py-line"><tt class="py-docstring"> Note: karafTimeout is left as str so that this could be read</tt> </tt>
-<a name="L225"></a><tt class="py-lineno"> 225</tt> <tt class="py-line"><tt class="py-docstring"> and passed to startOnosCli from PARAMS file as str.</tt> </tt>
-<a name="L226"></a><tt class="py-lineno"> 226</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L227"></a><tt class="py-lineno"> 227</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L228"></a><tt class="py-lineno"> 228</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-65', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L229"></a><tt class="py-lineno"> 229</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L230"></a><tt class="py-lineno"> 230</tt> <tt class="py-line"> <tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-string">"onos>"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">commandlineTimeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L231"></a><tt class="py-lineno"> 231</tt> <tt class="py-line"> </tt>
-<a name="L232"></a><tt class="py-lineno"> 232</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">x</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L233"></a><tt class="py-lineno"> 233</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-66', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS cli is already running"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L234"></a><tt class="py-lineno"> 234</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L235"></a><tt class="py-lineno"> 235</tt> <tt class="py-line"> </tt>
-<a name="L236"></a><tt class="py-lineno"> 236</tt> <tt class="py-line"> <tt class="py-comment"># Wait for onos start ( -w ) and enter onos cli</tt> </tt>
-<a name="L237"></a><tt class="py-lineno"> 237</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-67', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos -w "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L238"></a><tt class="py-lineno"> 238</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L239"></a><tt class="py-lineno"> 239</tt> <tt class="py-line"> <tt class="py-string">"onos>"</tt><tt class="py-op">,</tt> </tt>
-<a name="L240"></a><tt class="py-lineno"> 240</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">onosStartTimeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L241"></a><tt class="py-lineno"> 241</tt> <tt class="py-line"> </tt>
-<a name="L242"></a><tt class="py-lineno"> 242</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L243"></a><tt class="py-lineno"> 243</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-68', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" CLI Started successfully"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L244"></a><tt class="py-lineno"> 244</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">karafTimeout</tt><tt class="py-op">:</tt> </tt>
-<a name="L245"></a><tt class="py-lineno"> 245</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-69" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-69', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L246"></a><tt class="py-lineno"> 246</tt> <tt class="py-line"> <tt class="py-string">"config:property-set -p org.apache.karaf.shell\</tt> </tt>
-<a name="L247"></a><tt class="py-lineno"> 247</tt> <tt class="py-line"><tt class="py-string"> sshIdleTimeout "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L248"></a><tt class="py-lineno"> 248</tt> <tt class="py-line"> <tt class="py-name">karafTimeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L249"></a><tt class="py-lineno"> 249</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L250"></a><tt class="py-lineno"> 250</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-70', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos -w "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L251"></a><tt class="py-lineno"> 251</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"onos>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L252"></a><tt class="py-lineno"> 252</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L253"></a><tt class="py-lineno"> 253</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L254"></a><tt class="py-lineno"> 254</tt> <tt class="py-line"> <tt class="py-comment"># If failed, send ctrl+c to process and try again</tt> </tt>
-<a name="L255"></a><tt class="py-lineno"> 255</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-71', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Starting CLI failed. Retrying..."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L256"></a><tt class="py-lineno"> 256</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#send"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-72', 'send', 'link-72');">send</a></tt><tt class="py-op">(</tt> <tt class="py-string">"\x03"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L257"></a><tt class="py-lineno"> 257</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-73', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos -w "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L258"></a><tt class="py-lineno"> 258</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"onos>"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L259"></a><tt class="py-lineno"> 259</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">30</tt> <tt class="py-op">)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno"> 260</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L261"></a><tt class="py-lineno"> 261</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-74', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" CLI Started "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L262"></a><tt class="py-lineno"> 262</tt> <tt class="py-line"> <tt class="py-string">"successfully after retry attempt"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L263"></a><tt class="py-lineno"> 263</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">karafTimeout</tt><tt class="py-op">:</tt> </tt>
-<a name="L264"></a><tt class="py-lineno"> 264</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-75', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L265"></a><tt class="py-lineno"> 265</tt> <tt class="py-line"> <tt class="py-string">"config:property-set -p org.apache.karaf.shell\</tt> </tt>
-<a name="L266"></a><tt class="py-lineno"> 266</tt> <tt class="py-line"><tt class="py-string"> sshIdleTimeout "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L267"></a><tt class="py-lineno"> 267</tt> <tt class="py-line"> <tt class="py-name">karafTimeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L268"></a><tt class="py-lineno"> 268</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L269"></a><tt class="py-lineno"> 269</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-76', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos -w "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L270"></a><tt class="py-lineno"> 270</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"onos>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L271"></a><tt class="py-lineno"> 271</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L272"></a><tt class="py-lineno"> 272</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L273"></a><tt class="py-lineno"> 273</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-77', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-78', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Connection to CLI "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L274"></a><tt class="py-lineno"> 274</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" timeout"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L275"></a><tt class="py-lineno"> 275</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L276"></a><tt class="py-lineno"> 276</tt> <tt class="py-line"> </tt>
-<a name="L277"></a><tt class="py-lineno"> 277</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L278"></a><tt class="py-lineno"> 278</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-79', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L279"></a><tt class="py-lineno"> 279</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L280"></a><tt class="py-lineno"> 280</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L281"></a><tt class="py-lineno"> 281</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-80', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-81', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L282"></a><tt class="py-lineno"> 282</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-82', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-83', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L283"></a><tt class="py-lineno"> 283</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-84', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L284"></a><tt class="py-lineno"> 284</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-85', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L285"></a><tt class="py-lineno"> 285</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L286"></a><tt class="py-lineno"> 286</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-86', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L287"></a><tt class="py-lineno"> 287</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-87', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L288"></a><tt class="py-lineno"> 288</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-88', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L289"></a><tt class="py-lineno"> 289</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.log"></a><div id="OnosCliDriver.log-def"><a name="L290"></a><tt class="py-lineno"> 290</tt> <a class="py-toggle" href="#" id="OnosCliDriver.log-toggle" onclick="return toggle('OnosCliDriver.log');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log">log</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">cmdStr</tt><tt class="py-op">,</tt> <tt class="py-param">level</tt><tt class="py-op">=</tt><tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.log-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.log-expanded"><a name="L291"></a><tt class="py-lineno"> 291</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L292"></a><tt class="py-lineno"> 292</tt> <tt class="py-line"><tt class="py-docstring"> log the commands in the onos CLI.</tt> </tt>
-<a name="L293"></a><tt class="py-lineno"> 293</tt> <tt class="py-line"><tt class="py-docstring"> returns main.TRUE on success</tt> </tt>
-<a name="L294"></a><tt class="py-lineno"> 294</tt> <tt class="py-line"><tt class="py-docstring"> returns main.FALSE if Error occurred</tt> </tt>
-<a name="L295"></a><tt class="py-lineno"> 295</tt> <tt class="py-line"><tt class="py-docstring"> Available level: DEBUG, TRACE, INFO, WARN, ERROR</tt> </tt>
-<a name="L296"></a><tt class="py-lineno"> 296</tt> <tt class="py-line"><tt class="py-docstring"> Level defaults to INFO</tt> </tt>
-<a name="L297"></a><tt class="py-lineno"> 297</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L298"></a><tt class="py-lineno"> 298</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L299"></a><tt class="py-lineno"> 299</tt> <tt class="py-line"> <tt class="py-name">lvlStr</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L300"></a><tt class="py-lineno"> 300</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">level</tt><tt class="py-op">:</tt> </tt>
-<a name="L301"></a><tt class="py-lineno"> 301</tt> <tt class="py-line"> <tt class="py-name">lvlStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"--level="</tt> <tt class="py-op">+</tt> <tt class="py-name">level</tt> </tt>
-<a name="L302"></a><tt class="py-lineno"> 302</tt> <tt class="py-line"> </tt>
-<a name="L303"></a><tt class="py-lineno"> 303</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-89', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L304"></a><tt class="py-lineno"> 304</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"onos>"</tt><tt class="py-op">,</tt><tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L305"></a><tt class="py-lineno"> 305</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L306"></a><tt class="py-lineno"> 306</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-90', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-91', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": onos cli session closed."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L307"></a><tt class="py-lineno"> 307</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-92', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L308"></a><tt class="py-lineno"> 308</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-93', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L309"></a><tt class="py-lineno"> 309</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L310"></a><tt class="py-lineno"> 310</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-94', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno"> 311</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"onos>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L312"></a><tt class="py-lineno"> 312</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-95', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"log:log "</tt> <tt class="py-op">+</tt> <tt class="py-name">lvlStr</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L313"></a><tt class="py-lineno"> 313</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"log:log"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L314"></a><tt class="py-lineno"> 314</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"onos>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L315"></a><tt class="py-lineno"> 315</tt> <tt class="py-line"> </tt>
-<a name="L316"></a><tt class="py-lineno"> 316</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L317"></a><tt class="py-lineno"> 317</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L318"></a><tt class="py-lineno"> 318</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L319"></a><tt class="py-lineno"> 319</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L320"></a><tt class="py-lineno"> 320</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">:</tt> </tt>
-<a name="L321"></a><tt class="py-lineno"> 321</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-96', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": TIMEOUT exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L322"></a><tt class="py-lineno"> 322</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-97', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L323"></a><tt class="py-lineno"> 323</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-98', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L324"></a><tt class="py-lineno"> 324</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L325"></a><tt class="py-lineno"> 325</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-99', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-100', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L326"></a><tt class="py-lineno"> 326</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-101', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-102', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L327"></a><tt class="py-lineno"> 327</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-103', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L328"></a><tt class="py-lineno"> 328</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-104', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L329"></a><tt class="py-lineno"> 329</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L330"></a><tt class="py-lineno"> 330</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-105', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L331"></a><tt class="py-lineno"> 331</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-106" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-106', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L332"></a><tt class="py-lineno"> 332</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-107', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L333"></a><tt class="py-lineno"> 333</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.sendline"></a><div id="OnosCliDriver.sendline-def"><a name="L334"></a><tt class="py-lineno"> 334</tt> <a class="py-toggle" href="#" id="OnosCliDriver.sendline-toggle" onclick="return toggle('OnosCliDriver.sendline');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline">sendline</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">cmdStr</tt><tt class="py-op">,</tt> <tt class="py-param">debug</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.sendline-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.sendline-expanded"><a name="L335"></a><tt class="py-lineno"> 335</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L336"></a><tt class="py-lineno"> 336</tt> <tt class="py-line"><tt class="py-docstring"> Send a completely user specified string to</tt> </tt>
-<a name="L337"></a><tt class="py-lineno"> 337</tt> <tt class="py-line"><tt class="py-docstring"> the onos> prompt. Use this function if you have</tt> </tt>
-<a name="L338"></a><tt class="py-lineno"> 338</tt> <tt class="py-line"><tt class="py-docstring"> a very specific command to send.</tt> </tt>
-<a name="L339"></a><tt class="py-lineno"> 339</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L340"></a><tt class="py-lineno"> 340</tt> <tt class="py-line"><tt class="py-docstring"> Warning: There are no sanity checking to commands</tt> </tt>
-<a name="L341"></a><tt class="py-lineno"> 341</tt> <tt class="py-line"><tt class="py-docstring"> sent using this method.</tt> </tt>
-<a name="L342"></a><tt class="py-lineno"> 342</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L343"></a><tt class="py-lineno"> 343</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L344"></a><tt class="py-lineno"> 344</tt> <tt class="py-line"> <tt class="py-name">logStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"\"Sending CLI command: '"</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">+</tt> <tt class="py-string">"'\""</tt> </tt>
-<a name="L345"></a><tt class="py-lineno"> 345</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-108', 'log', 'link-6');">log</a></tt><tt class="py-op">(</tt> <tt class="py-name">logStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L346"></a><tt class="py-lineno"> 346</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-109', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L347"></a><tt class="py-lineno"> 347</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt><tt class="py-string">"onos>"</tt><tt class="py-op">,</tt> <tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L348"></a><tt class="py-lineno"> 348</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L349"></a><tt class="py-lineno"> 349</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L350"></a><tt class="py-lineno"> 350</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-110', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L351"></a><tt class="py-lineno"> 351</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt><tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L352"></a><tt class="py-lineno"> 352</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">+=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L353"></a><tt class="py-lineno"> 353</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">response</tt> </tt>
-<a name="L354"></a><tt class="py-lineno"> 354</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L355"></a><tt class="py-lineno"> 355</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> </tt>
-<a name="L356"></a><tt class="py-lineno"> 356</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L357"></a><tt class="py-lineno"> 357</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L358"></a><tt class="py-lineno"> 358</tt> <tt class="py-line"> <tt class="py-comment"># TODO: do something with i</tt> </tt>
-<a name="L359"></a><tt class="py-lineno"> 359</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-111', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Command '"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"' sent to "</tt> </tt>
-<a name="L360"></a><tt class="py-lineno"> 360</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L361"></a><tt class="py-lineno"> 361</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> </tt>
-<a name="L362"></a><tt class="py-lineno"> 362</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-112', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Raw output"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L363"></a><tt class="py-lineno"> 363</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-113', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L364"></a><tt class="py-lineno"> 364</tt> <tt class="py-line"> </tt>
-<a name="L365"></a><tt class="py-lineno"> 365</tt> <tt class="py-line"> <tt class="py-comment"># Remove ANSI color control strings from output</tt> </tt>
-<a name="L366"></a><tt class="py-lineno"> 366</tt> <tt class="py-line"> <tt class="py-name">ansiEscape</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">compile</tt><tt class="py-op">(</tt> <tt class="py-string">r'\x1b[^m]*m'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L367"></a><tt class="py-lineno"> 367</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">ansiEscape</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">''</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L368"></a><tt class="py-lineno"> 368</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> </tt>
-<a name="L369"></a><tt class="py-lineno"> 369</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-114', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": ansiEscape output"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L370"></a><tt class="py-lineno"> 370</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-115" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-115', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L371"></a><tt class="py-lineno"> 371</tt> <tt class="py-line"> </tt>
-<a name="L372"></a><tt class="py-lineno"> 372</tt> <tt class="py-line"> <tt class="py-comment"># Remove extra return chars that get added</tt> </tt>
-<a name="L373"></a><tt class="py-lineno"> 373</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">r"\s\r"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L374"></a><tt class="py-lineno"> 374</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> </tt>
-<a name="L375"></a><tt class="py-lineno"> 375</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-116', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Removed extra returns "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L376"></a><tt class="py-lineno"> 376</tt> <tt class="py-line"> <tt class="py-string">"from output"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L377"></a><tt class="py-lineno"> 377</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-117', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L378"></a><tt class="py-lineno"> 378</tt> <tt class="py-line"> </tt>
-<a name="L379"></a><tt class="py-lineno"> 379</tt> <tt class="py-line"> <tt class="py-comment"># Strip excess whitespace</tt> </tt>
-<a name="L380"></a><tt class="py-lineno"> 380</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">strip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L381"></a><tt class="py-lineno"> 381</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> </tt>
-<a name="L382"></a><tt class="py-lineno"> 382</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-118', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": parsed and stripped output"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L383"></a><tt class="py-lineno"> 383</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-119', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L384"></a><tt class="py-lineno"> 384</tt> <tt class="py-line"> </tt>
-<a name="L385"></a><tt class="py-lineno"> 385</tt> <tt class="py-line"> <tt class="py-comment"># parse for just the output, remove the cmd from response</tt> </tt>
-<a name="L386"></a><tt class="py-lineno"> 386</tt> <tt class="py-line"> <tt id="link-120" class="py-name" targets="Function TestON.bin.cli.output()=TestON.bin.cli-module.html#output"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-120', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt><tt class="py-op">.</tt><tt class="py-name">strip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L387"></a><tt class="py-lineno"> 387</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> </tt>
-<a name="L388"></a><tt class="py-lineno"> 388</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-121" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-121', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": split output"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L389"></a><tt class="py-lineno"> 389</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">r</tt> <tt class="py-keyword">in</tt> <tt id="link-122" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-122', 'output', 'link-120');">output</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L390"></a><tt class="py-lineno"> 390</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-123', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">r</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L391"></a><tt class="py-lineno"> 391</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-124" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-124', 'output', 'link-120');">output</a></tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">strip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L392"></a><tt class="py-lineno"> 392</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IndexError</tt><tt class="py-op">:</tt> </tt>
-<a name="L393"></a><tt class="py-lineno"> 393</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-125', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L394"></a><tt class="py-lineno"> 394</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L395"></a><tt class="py-lineno"> 395</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L396"></a><tt class="py-lineno"> 396</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-126', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L397"></a><tt class="py-lineno"> 397</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L398"></a><tt class="py-lineno"> 398</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L399"></a><tt class="py-lineno"> 399</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-127', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-128', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L400"></a><tt class="py-lineno"> 400</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-129', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-130" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-130', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L401"></a><tt class="py-lineno"> 401</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-131', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L402"></a><tt class="py-lineno"> 402</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-132', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L403"></a><tt class="py-lineno"> 403</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L404"></a><tt class="py-lineno"> 404</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-133', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L405"></a><tt class="py-lineno"> 405</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-134" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-134', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L406"></a><tt class="py-lineno"> 406</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-135', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L407"></a><tt class="py-lineno"> 407</tt> <tt class="py-line"> </tt>
-<a name="L408"></a><tt class="py-lineno"> 408</tt> <tt class="py-line"> <tt class="py-comment"># IMPORTANT NOTE:</tt> </tt>
-<a name="L409"></a><tt class="py-lineno"> 409</tt> <tt class="py-line"> <tt class="py-comment"># For all cli commands, naming convention should match</tt> </tt>
-<a name="L410"></a><tt class="py-lineno"> 410</tt> <tt class="py-line"> <tt class="py-comment"># the cli command changing 'a:b' with 'aB'.</tt> </tt>
-<a name="L411"></a><tt class="py-lineno"> 411</tt> <tt class="py-line"> <tt class="py-comment"># Ex ) onos:topology > onosTopology</tt> </tt>
-<a name="L412"></a><tt class="py-lineno"> 412</tt> <tt class="py-line"> <tt class="py-comment"># onos:links > onosLinks</tt> </tt>
-<a name="L413"></a><tt class="py-lineno"> 413</tt> <tt class="py-line"> <tt class="py-comment"># feature:list > featureList</tt> </tt>
-<a name="L414"></a><tt class="py-lineno"> 414</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.addNode"></a><div id="OnosCliDriver.addNode-def"><a name="L415"></a><tt class="py-lineno"> 415</tt> <a class="py-toggle" href="#" id="OnosCliDriver.addNode-toggle" onclick="return toggle('OnosCliDriver.addNode');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addNode">addNode</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">nodeId</tt><tt class="py-op">,</tt> <tt class="py-param">ONOSIp</tt><tt class="py-op">,</tt> <tt class="py-param">tcpPort</tt><tt class="py-op">=</tt><tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.addNode-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.addNode-expanded"><a name="L416"></a><tt class="py-lineno"> 416</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L417"></a><tt class="py-lineno"> 417</tt> <tt class="py-line"><tt class="py-docstring"> Adds a new cluster node by ID and address information.</tt> </tt>
-<a name="L418"></a><tt class="py-lineno"> 418</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L419"></a><tt class="py-lineno"> 419</tt> <tt class="py-line"><tt class="py-docstring"> * nodeId</tt> </tt>
-<a name="L420"></a><tt class="py-lineno"> 420</tt> <tt class="py-line"><tt class="py-docstring"> * ONOSIp</tt> </tt>
-<a name="L421"></a><tt class="py-lineno"> 421</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L422"></a><tt class="py-lineno"> 422</tt> <tt class="py-line"><tt class="py-docstring"> * tcpPort</tt> </tt>
-<a name="L423"></a><tt class="py-lineno"> 423</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L424"></a><tt class="py-lineno"> 424</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L425"></a><tt class="py-lineno"> 425</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"add-node "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">nodeId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L426"></a><tt class="py-lineno"> 426</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpPort</tt> <tt class="py-op">)</tt> </tt>
-<a name="L427"></a><tt class="py-lineno"> 427</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-136" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-136', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L428"></a><tt class="py-lineno"> 428</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L429"></a><tt class="py-lineno"> 429</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-137', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-138', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in adding node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L430"></a><tt class="py-lineno"> 430</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-139" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-139', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-140" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-140', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt> </tt>
-<a name="L431"></a><tt class="py-lineno"> 431</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L432"></a><tt class="py-lineno"> 432</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L433"></a><tt class="py-lineno"> 433</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-141" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-141', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Node "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" added"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L434"></a><tt class="py-lineno"> 434</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L435"></a><tt class="py-lineno"> 435</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L436"></a><tt class="py-lineno"> 436</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-142', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L437"></a><tt class="py-lineno"> 437</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L438"></a><tt class="py-lineno"> 438</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L439"></a><tt class="py-lineno"> 439</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-143', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-144" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-144', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L440"></a><tt class="py-lineno"> 440</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-145" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-145', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-146" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-146', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L441"></a><tt class="py-lineno"> 441</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-147', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L442"></a><tt class="py-lineno"> 442</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-148" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-148', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L443"></a><tt class="py-lineno"> 443</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L444"></a><tt class="py-lineno"> 444</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-149" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-149', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L445"></a><tt class="py-lineno"> 445</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-150" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-150', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L446"></a><tt class="py-lineno"> 446</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-151" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-151', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L447"></a><tt class="py-lineno"> 447</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.removeNode"></a><div id="OnosCliDriver.removeNode-def"><a name="L448"></a><tt class="py-lineno"> 448</tt> <a class="py-toggle" href="#" id="OnosCliDriver.removeNode-toggle" onclick="return toggle('OnosCliDriver.removeNode');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#removeNode">removeNode</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">nodeId</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.removeNode-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.removeNode-expanded"><a name="L449"></a><tt class="py-lineno"> 449</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L450"></a><tt class="py-lineno"> 450</tt> <tt class="py-line"><tt class="py-docstring"> Removes a cluster by ID</tt> </tt>
-<a name="L451"></a><tt class="py-lineno"> 451</tt> <tt class="py-line"><tt class="py-docstring"> Issues command: 'remove-node [<node-id>]'</tt> </tt>
-<a name="L452"></a><tt class="py-lineno"> 452</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L453"></a><tt class="py-lineno"> 453</tt> <tt class="py-line"><tt class="py-docstring"> * nodeId</tt> </tt>
-<a name="L454"></a><tt class="py-lineno"> 454</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L455"></a><tt class="py-lineno"> 455</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L456"></a><tt class="py-lineno"> 456</tt> <tt class="py-line"> </tt>
-<a name="L457"></a><tt class="py-lineno"> 457</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"remove-node "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">nodeId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L458"></a><tt class="py-lineno"> 458</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-152', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L459"></a><tt class="py-lineno"> 459</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L460"></a><tt class="py-lineno"> 460</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-153', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-154" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-154', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in removing node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L461"></a><tt class="py-lineno"> 461</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-155', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-156" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-156', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt> </tt>
-<a name="L462"></a><tt class="py-lineno"> 462</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L463"></a><tt class="py-lineno"> 463</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L464"></a><tt class="py-lineno"> 464</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L465"></a><tt class="py-lineno"> 465</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L466"></a><tt class="py-lineno"> 466</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-157', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L467"></a><tt class="py-lineno"> 467</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L468"></a><tt class="py-lineno"> 468</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L469"></a><tt class="py-lineno"> 469</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-158" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-158', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-159" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-159', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L470"></a><tt class="py-lineno"> 470</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-160" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-160', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-161" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-161', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L471"></a><tt class="py-lineno"> 471</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-162', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L472"></a><tt class="py-lineno"> 472</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-163" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-163', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L473"></a><tt class="py-lineno"> 473</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L474"></a><tt class="py-lineno"> 474</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-164" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-164', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L475"></a><tt class="py-lineno"> 475</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-165" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-165', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L476"></a><tt class="py-lineno"> 476</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-166" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-166', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L477"></a><tt class="py-lineno"> 477</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.nodes"></a><div id="OnosCliDriver.nodes-def"><a name="L478"></a><tt class="py-lineno"> 478</tt> <a class="py-toggle" href="#" id="OnosCliDriver.nodes-toggle" onclick="return toggle('OnosCliDriver.nodes');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#nodes">nodes</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.nodes-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.nodes-expanded"><a name="L479"></a><tt class="py-lineno"> 479</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L480"></a><tt class="py-lineno"> 480</tt> <tt class="py-line"><tt class="py-docstring"> List the nodes currently visible</tt> </tt>
-<a name="L481"></a><tt class="py-lineno"> 481</tt> <tt class="py-line"><tt class="py-docstring"> Issues command: 'nodes'</tt> </tt>
-<a name="L482"></a><tt class="py-lineno"> 482</tt> <tt class="py-line"><tt class="py-docstring"> Optional argument:</tt> </tt>
-<a name="L483"></a><tt class="py-lineno"> 483</tt> <tt class="py-line"><tt class="py-docstring"> * jsonFormat - boolean indicating if you want output in json</tt> </tt>
-<a name="L484"></a><tt class="py-lineno"> 484</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L485"></a><tt class="py-lineno"> 485</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L486"></a><tt class="py-lineno"> 486</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"nodes"</tt> </tt>
-<a name="L487"></a><tt class="py-lineno"> 487</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L488"></a><tt class="py-lineno"> 488</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L489"></a><tt class="py-lineno"> 489</tt> <tt class="py-line"> <tt id="link-167" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-167', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-168', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L490"></a><tt class="py-lineno"> 490</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-169" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-169', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L491"></a><tt class="py-lineno"> 491</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L492"></a><tt class="py-lineno"> 492</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-170" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-170', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L493"></a><tt class="py-lineno"> 493</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L494"></a><tt class="py-lineno"> 494</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L495"></a><tt class="py-lineno"> 495</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-171" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-171', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-172" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-172', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L496"></a><tt class="py-lineno"> 496</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-173', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-174" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-174', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L497"></a><tt class="py-lineno"> 497</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-175" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-175', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L498"></a><tt class="py-lineno"> 498</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-176" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-176', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L499"></a><tt class="py-lineno"> 499</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L500"></a><tt class="py-lineno"> 500</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-177" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-177', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L501"></a><tt class="py-lineno"> 501</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-178" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-178', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L502"></a><tt class="py-lineno"> 502</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-179" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-179', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L503"></a><tt class="py-lineno"> 503</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.topology"></a><div id="OnosCliDriver.topology-def"><a name="L504"></a><tt class="py-lineno"> 504</tt> <a class="py-toggle" href="#" id="OnosCliDriver.topology-toggle" onclick="return toggle('OnosCliDriver.topology');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topology">topology</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.topology-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.topology-expanded"><a name="L505"></a><tt class="py-lineno"> 505</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L506"></a><tt class="py-lineno"> 506</tt> <tt class="py-line"><tt class="py-docstring"> Definition:</tt> </tt>
-<a name="L507"></a><tt class="py-lineno"> 507</tt> <tt class="py-line"><tt class="py-docstring"> Returns the output of topology command.</tt> </tt>
-<a name="L508"></a><tt class="py-lineno"> 508</tt> <tt class="py-line"><tt class="py-docstring"> Return:</tt> </tt>
-<a name="L509"></a><tt class="py-lineno"> 509</tt> <tt class="py-line"><tt class="py-docstring"> topology = current ONOS topology</tt> </tt>
-<a name="L510"></a><tt class="py-lineno"> 510</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L511"></a><tt class="py-lineno"> 511</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L512"></a><tt class="py-lineno"> 512</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"topology -j"</tt> </tt>
-<a name="L513"></a><tt class="py-lineno"> 513</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-180" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-180', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L514"></a><tt class="py-lineno"> 514</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-181" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-181', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">+</tt> <tt class="py-string">" returned: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L515"></a><tt class="py-lineno"> 515</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L516"></a><tt class="py-lineno"> 516</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L517"></a><tt class="py-lineno"> 517</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-182" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-182', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L518"></a><tt class="py-lineno"> 518</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L519"></a><tt class="py-lineno"> 519</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L520"></a><tt class="py-lineno"> 520</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-183" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-183', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-184" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-184', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L521"></a><tt class="py-lineno"> 521</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-185" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-185', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-186" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-186', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L522"></a><tt class="py-lineno"> 522</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-187" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-187', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L523"></a><tt class="py-lineno"> 523</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-188" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-188', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L524"></a><tt class="py-lineno"> 524</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L525"></a><tt class="py-lineno"> 525</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-189" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-189', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L526"></a><tt class="py-lineno"> 526</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-190" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-190', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L527"></a><tt class="py-lineno"> 527</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-191" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-191', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L528"></a><tt class="py-lineno"> 528</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.featureInstall"></a><div id="OnosCliDriver.featureInstall-def"><a name="L529"></a><tt class="py-lineno"> 529</tt> <a class="py-toggle" href="#" id="OnosCliDriver.featureInstall-toggle" onclick="return toggle('OnosCliDriver.featureInstall');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#featureInstall">featureInstall</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">featureStr</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.featureInstall-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.featureInstall-expanded"><a name="L530"></a><tt class="py-lineno"> 530</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L531"></a><tt class="py-lineno"> 531</tt> <tt class="py-line"><tt class="py-docstring"> Installs a specified feature by issuing command:</tt> </tt>
-<a name="L532"></a><tt class="py-lineno"> 532</tt> <tt class="py-line"><tt class="py-docstring"> 'feature:install <feature_str>'</tt> </tt>
-<a name="L533"></a><tt class="py-lineno"> 533</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: This is now deprecated, you should use the activateApp method</tt> </tt>
-<a name="L534"></a><tt class="py-lineno"> 534</tt> <tt class="py-line"><tt class="py-docstring"> instead</tt> </tt>
-<a name="L535"></a><tt class="py-lineno"> 535</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L536"></a><tt class="py-lineno"> 536</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L537"></a><tt class="py-lineno"> 537</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"feature:install "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">featureStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L538"></a><tt class="py-lineno"> 538</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-192" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-192', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L539"></a><tt class="py-lineno"> 539</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L540"></a><tt class="py-lineno"> 540</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-193" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-193', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-194" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-194', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in installing feature"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L541"></a><tt class="py-lineno"> 541</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-195" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-195', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-196" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-196', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt> </tt>
-<a name="L542"></a><tt class="py-lineno"> 542</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L543"></a><tt class="py-lineno"> 543</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L544"></a><tt class="py-lineno"> 544</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L545"></a><tt class="py-lineno"> 545</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L546"></a><tt class="py-lineno"> 546</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-197" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-197', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L547"></a><tt class="py-lineno"> 547</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L548"></a><tt class="py-lineno"> 548</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L549"></a><tt class="py-lineno"> 549</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-198" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-198', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-199" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-199', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L550"></a><tt class="py-lineno"> 550</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-200" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-200', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-201" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-201', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L551"></a><tt class="py-lineno"> 551</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-202" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-202', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to install feature"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L552"></a><tt class="py-lineno"> 552</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-203" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-203', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Exiting test"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L553"></a><tt class="py-lineno"> 553</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-204" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-204', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L554"></a><tt class="py-lineno"> 554</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-205" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-205', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L555"></a><tt class="py-lineno"> 555</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L556"></a><tt class="py-lineno"> 556</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-206" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-206', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L557"></a><tt class="py-lineno"> 557</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-207" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-207', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to install feature"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L558"></a><tt class="py-lineno"> 558</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-208" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-208', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Exiting test"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L559"></a><tt class="py-lineno"> 559</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-209" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-209', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L560"></a><tt class="py-lineno"> 560</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-210" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-210', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L561"></a><tt class="py-lineno"> 561</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.featureUninstall"></a><div id="OnosCliDriver.featureUninstall-def"><a name="L562"></a><tt class="py-lineno"> 562</tt> <a class="py-toggle" href="#" id="OnosCliDriver.featureUninstall-toggle" onclick="return toggle('OnosCliDriver.featureUninstall');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#featureUninstall">featureUninstall</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">featureStr</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.featureUninstall-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.featureUninstall-expanded"><a name="L563"></a><tt class="py-lineno"> 563</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L564"></a><tt class="py-lineno"> 564</tt> <tt class="py-line"><tt class="py-docstring"> Uninstalls a specified feature by issuing command:</tt> </tt>
-<a name="L565"></a><tt class="py-lineno"> 565</tt> <tt class="py-line"><tt class="py-docstring"> 'feature:uninstall <feature_str>'</tt> </tt>
-<a name="L566"></a><tt class="py-lineno"> 566</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: This is now deprecated, you should use the deactivateApp method</tt> </tt>
-<a name="L567"></a><tt class="py-lineno"> 567</tt> <tt class="py-line"><tt class="py-docstring"> instead</tt> </tt>
-<a name="L568"></a><tt class="py-lineno"> 568</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L569"></a><tt class="py-lineno"> 569</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L570"></a><tt class="py-lineno"> 570</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">'feature:list -i | grep "'</tt> <tt class="py-op">+</tt> <tt class="py-name">featureStr</tt> <tt class="py-op">+</tt> <tt class="py-string">'"'</tt> </tt>
-<a name="L571"></a><tt class="py-lineno"> 571</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-211" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-211', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L572"></a><tt class="py-lineno"> 572</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">handle</tt> <tt class="py-op">!=</tt> <tt class="py-string">''</tt><tt class="py-op">:</tt> </tt>
-<a name="L573"></a><tt class="py-lineno"> 573</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"feature:uninstall "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">featureStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L574"></a><tt class="py-lineno"> 574</tt> <tt class="py-line"> <tt id="link-212" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-212', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-213" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-213', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L575"></a><tt class="py-lineno"> 575</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Check for possible error responses from karaf</tt> </tt>
-<a name="L576"></a><tt class="py-lineno"> 576</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L577"></a><tt class="py-lineno"> 577</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-214" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-214', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Feature needs to be installed before "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L578"></a><tt class="py-lineno"> 578</tt> <tt class="py-line"> <tt class="py-string">"uninstalling it"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L579"></a><tt class="py-lineno"> 579</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L580"></a><tt class="py-lineno"> 580</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt id="link-215" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-215', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L581"></a><tt class="py-lineno"> 581</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-216" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-216', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-217" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-217', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in uninstalling feature"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L582"></a><tt class="py-lineno"> 582</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-218" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-218', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-219" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-219', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt id="link-220" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-220', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L583"></a><tt class="py-lineno"> 583</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L584"></a><tt class="py-lineno"> 584</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L585"></a><tt class="py-lineno"> 585</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L586"></a><tt class="py-lineno"> 586</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L587"></a><tt class="py-lineno"> 587</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-221" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-221', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L588"></a><tt class="py-lineno"> 588</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L589"></a><tt class="py-lineno"> 589</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L590"></a><tt class="py-lineno"> 590</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-222" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-222', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-223" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-223', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L591"></a><tt class="py-lineno"> 591</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-224" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-224', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-225" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-225', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L592"></a><tt class="py-lineno"> 592</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-226" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-226', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L593"></a><tt class="py-lineno"> 593</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-227" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-227', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L594"></a><tt class="py-lineno"> 594</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L595"></a><tt class="py-lineno"> 595</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-228" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-228', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L596"></a><tt class="py-lineno"> 596</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-229" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-229', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L597"></a><tt class="py-lineno"> 597</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-230" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-230', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L598"></a><tt class="py-lineno"> 598</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.deviceRemove"></a><div id="OnosCliDriver.deviceRemove-def"><a name="L599"></a><tt class="py-lineno"> 599</tt> <a class="py-toggle" href="#" id="OnosCliDriver.deviceRemove-toggle" onclick="return toggle('OnosCliDriver.deviceRemove');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deviceRemove">deviceRemove</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">deviceId</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.deviceRemove-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.deviceRemove-expanded"><a name="L600"></a><tt class="py-lineno"> 600</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L601"></a><tt class="py-lineno"> 601</tt> <tt class="py-line"><tt class="py-docstring"> Removes particular device from storage</tt> </tt>
-<a name="L602"></a><tt class="py-lineno"> 602</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L603"></a><tt class="py-lineno"> 603</tt> <tt class="py-line"><tt class="py-docstring"> TODO: refactor this function</tt> </tt>
-<a name="L604"></a><tt class="py-lineno"> 604</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L605"></a><tt class="py-lineno"> 605</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L606"></a><tt class="py-lineno"> 606</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"device-remove "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L607"></a><tt class="py-lineno"> 607</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-231" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-231', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L608"></a><tt class="py-lineno"> 608</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L609"></a><tt class="py-lineno"> 609</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-232" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-232', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-233" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-233', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in removing device"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L610"></a><tt class="py-lineno"> 610</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-234" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-234', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-235" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-235', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt> </tt>
-<a name="L611"></a><tt class="py-lineno"> 611</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L612"></a><tt class="py-lineno"> 612</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L613"></a><tt class="py-lineno"> 613</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L614"></a><tt class="py-lineno"> 614</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L615"></a><tt class="py-lineno"> 615</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-236" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-236', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L616"></a><tt class="py-lineno"> 616</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L617"></a><tt class="py-lineno"> 617</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L618"></a><tt class="py-lineno"> 618</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-237" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-237', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-238" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-238', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L619"></a><tt class="py-lineno"> 619</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-239" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-239', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-240" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-240', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L620"></a><tt class="py-lineno"> 620</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-241" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-241', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L621"></a><tt class="py-lineno"> 621</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-242" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-242', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L622"></a><tt class="py-lineno"> 622</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L623"></a><tt class="py-lineno"> 623</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-243" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-243', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L624"></a><tt class="py-lineno"> 624</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-244" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-244', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L625"></a><tt class="py-lineno"> 625</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-245" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-245', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L626"></a><tt class="py-lineno"> 626</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.devices"></a><div id="OnosCliDriver.devices-def"><a name="L627"></a><tt class="py-lineno"> 627</tt> <a class="py-toggle" href="#" id="OnosCliDriver.devices-toggle" onclick="return toggle('OnosCliDriver.devices');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#devices">devices</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.devices-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.devices-expanded"><a name="L628"></a><tt class="py-lineno"> 628</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L629"></a><tt class="py-lineno"> 629</tt> <tt class="py-line"><tt class="py-docstring"> Lists all infrastructure devices or switches</tt> </tt>
-<a name="L630"></a><tt class="py-lineno"> 630</tt> <tt class="py-line"><tt class="py-docstring"> Optional argument:</tt> </tt>
-<a name="L631"></a><tt class="py-lineno"> 631</tt> <tt class="py-line"><tt class="py-docstring"> * jsonFormat - boolean indicating if you want output in json</tt> </tt>
-<a name="L632"></a><tt class="py-lineno"> 632</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L633"></a><tt class="py-lineno"> 633</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L634"></a><tt class="py-lineno"> 634</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"devices"</tt> </tt>
-<a name="L635"></a><tt class="py-lineno"> 635</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L636"></a><tt class="py-lineno"> 636</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L637"></a><tt class="py-lineno"> 637</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-246" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-246', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L638"></a><tt class="py-lineno"> 638</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L639"></a><tt class="py-lineno"> 639</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L640"></a><tt class="py-lineno"> 640</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-247" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-247', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L641"></a><tt class="py-lineno"> 641</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L642"></a><tt class="py-lineno"> 642</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L643"></a><tt class="py-lineno"> 643</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-248" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-248', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-249" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-249', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L644"></a><tt class="py-lineno"> 644</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-250" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-250', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-251" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-251', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L645"></a><tt class="py-lineno"> 645</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-252" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-252', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L646"></a><tt class="py-lineno"> 646</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-253" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-253', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L647"></a><tt class="py-lineno"> 647</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L648"></a><tt class="py-lineno"> 648</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-254" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-254', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L649"></a><tt class="py-lineno"> 649</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-255" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-255', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L650"></a><tt class="py-lineno"> 650</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-256" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-256', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L651"></a><tt class="py-lineno"> 651</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.balanceMasters"></a><div id="OnosCliDriver.balanceMasters-def"><a name="L652"></a><tt class="py-lineno"> 652</tt> <a class="py-toggle" href="#" id="OnosCliDriver.balanceMasters-toggle" onclick="return toggle('OnosCliDriver.balanceMasters');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#balanceMasters">balanceMasters</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.balanceMasters-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.balanceMasters-expanded"><a name="L653"></a><tt class="py-lineno"> 653</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L654"></a><tt class="py-lineno"> 654</tt> <tt class="py-line"><tt class="py-docstring"> This balances the devices across all controllers</tt> </tt>
-<a name="L655"></a><tt class="py-lineno"> 655</tt> <tt class="py-line"><tt class="py-docstring"> by issuing command: 'onos> onos:balance-masters'</tt> </tt>
-<a name="L656"></a><tt class="py-lineno"> 656</tt> <tt class="py-line"><tt class="py-docstring"> If required this could be extended to return devices balanced output.</tt> </tt>
-<a name="L657"></a><tt class="py-lineno"> 657</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L658"></a><tt class="py-lineno"> 658</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L659"></a><tt class="py-lineno"> 659</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos:balance-masters"</tt> </tt>
-<a name="L660"></a><tt class="py-lineno"> 660</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-257" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-257', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L661"></a><tt class="py-lineno"> 661</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L662"></a><tt class="py-lineno"> 662</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-258" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-258', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-259" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-259', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in balancing masters"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L663"></a><tt class="py-lineno"> 663</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-260" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-260', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-261" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-261', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt> </tt>
-<a name="L664"></a><tt class="py-lineno"> 664</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L665"></a><tt class="py-lineno"> 665</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L666"></a><tt class="py-lineno"> 666</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L667"></a><tt class="py-lineno"> 667</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L668"></a><tt class="py-lineno"> 668</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-262" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-262', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L669"></a><tt class="py-lineno"> 669</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L670"></a><tt class="py-lineno"> 670</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L671"></a><tt class="py-lineno"> 671</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-263" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-263', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-264" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-264', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L672"></a><tt class="py-lineno"> 672</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-265" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-265', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-266" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-266', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L673"></a><tt class="py-lineno"> 673</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-267" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-267', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L674"></a><tt class="py-lineno"> 674</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-268" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-268', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L675"></a><tt class="py-lineno"> 675</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L676"></a><tt class="py-lineno"> 676</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-269" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-269', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L677"></a><tt class="py-lineno"> 677</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-270" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-270', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L678"></a><tt class="py-lineno"> 678</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-271" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-271', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L679"></a><tt class="py-lineno"> 679</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.checkMasters"></a><div id="OnosCliDriver.checkMasters-def"><a name="L680"></a><tt class="py-lineno"> 680</tt> <a class="py-toggle" href="#" id="OnosCliDriver.checkMasters-toggle" onclick="return toggle('OnosCliDriver.checkMasters');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkMasters">checkMasters</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.checkMasters-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.checkMasters-expanded"><a name="L681"></a><tt class="py-lineno"> 681</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L682"></a><tt class="py-lineno"> 682</tt> <tt class="py-line"><tt class="py-docstring"> Returns the output of the masters command.</tt> </tt>
-<a name="L683"></a><tt class="py-lineno"> 683</tt> <tt class="py-line"><tt class="py-docstring"> Optional argument:</tt> </tt>
-<a name="L684"></a><tt class="py-lineno"> 684</tt> <tt class="py-line"><tt class="py-docstring"> * jsonFormat - boolean indicating if you want output in json</tt> </tt>
-<a name="L685"></a><tt class="py-lineno"> 685</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L686"></a><tt class="py-lineno"> 686</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L687"></a><tt class="py-lineno"> 687</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos:masters"</tt> </tt>
-<a name="L688"></a><tt class="py-lineno"> 688</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L689"></a><tt class="py-lineno"> 689</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L690"></a><tt class="py-lineno"> 690</tt> <tt class="py-line"> <tt id="link-272" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-272', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-273" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-273', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L691"></a><tt class="py-lineno"> 691</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-274" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-274', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L692"></a><tt class="py-lineno"> 692</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L693"></a><tt class="py-lineno"> 693</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-275" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-275', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L694"></a><tt class="py-lineno"> 694</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L695"></a><tt class="py-lineno"> 695</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L696"></a><tt class="py-lineno"> 696</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-276" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-276', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-277" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-277', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L697"></a><tt class="py-lineno"> 697</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-278" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-278', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-279" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-279', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L698"></a><tt class="py-lineno"> 698</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-280" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-280', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L699"></a><tt class="py-lineno"> 699</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-281" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-281', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L700"></a><tt class="py-lineno"> 700</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L701"></a><tt class="py-lineno"> 701</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-282" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-282', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L702"></a><tt class="py-lineno"> 702</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-283" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-283', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L703"></a><tt class="py-lineno"> 703</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-284" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-284', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L704"></a><tt class="py-lineno"> 704</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.checkBalanceMasters"></a><div id="OnosCliDriver.checkBalanceMasters-def"><a name="L705"></a><tt class="py-lineno"> 705</tt> <a class="py-toggle" href="#" id="OnosCliDriver.checkBalanceMasters-toggle" onclick="return toggle('OnosCliDriver.checkBalanceMasters');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkBalanceMasters">checkBalanceMasters</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.checkBalanceMasters-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.checkBalanceMasters-expanded"><a name="L706"></a><tt class="py-lineno"> 706</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L707"></a><tt class="py-lineno"> 707</tt> <tt class="py-line"><tt class="py-docstring"> Uses the master command to check that the devices' leadership</tt> </tt>
-<a name="L708"></a><tt class="py-lineno"> 708</tt> <tt class="py-line"><tt class="py-docstring"> is evenly divided</tt> </tt>
-<a name="L709"></a><tt class="py-lineno"> 709</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L710"></a><tt class="py-lineno"> 710</tt> <tt class="py-line"><tt class="py-docstring"> Dependencies: checkMasters() and summary()</tt> </tt>
-<a name="L711"></a><tt class="py-lineno"> 711</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L712"></a><tt class="py-lineno"> 712</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.True if the devices are balanced</tt> </tt>
-<a name="L713"></a><tt class="py-lineno"> 713</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.False if the devices are unbalanced</tt> </tt>
-<a name="L714"></a><tt class="py-lineno"> 714</tt> <tt class="py-line"><tt class="py-docstring"> Exits on Exception</tt> </tt>
-<a name="L715"></a><tt class="py-lineno"> 715</tt> <tt class="py-line"><tt class="py-docstring"> Returns None on TypeError</tt> </tt>
-<a name="L716"></a><tt class="py-lineno"> 716</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L717"></a><tt class="py-lineno"> 717</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L718"></a><tt class="py-lineno"> 718</tt> <tt class="py-line"> <tt class="py-name">totalDevices</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-285" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.summary()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#summary"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.summary" class="py-name" href="#" onclick="return doclink('link-285', 'summary', 'link-285');">summary</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-string">"devices"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L719"></a><tt class="py-lineno"> 719</tt> <tt class="py-line"> <tt class="py-name">totalOwnedDevices</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L720"></a><tt class="py-lineno"> 720</tt> <tt class="py-line"> <tt class="py-name">masters</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-286" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkMasters()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkMasters"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkMasters" class="py-name" href="#" onclick="return doclink('link-286', 'checkMasters', 'link-286');">checkMasters</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L721"></a><tt class="py-lineno"> 721</tt> <tt class="py-line"> <tt class="py-name">first</tt> <tt class="py-op">=</tt> <tt class="py-name">masters</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">"size"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L722"></a><tt class="py-lineno"> 722</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">master</tt> <tt class="py-keyword">in</tt> <tt class="py-name">masters</tt><tt class="py-op">:</tt> </tt>
-<a name="L723"></a><tt class="py-lineno"> 723</tt> <tt class="py-line"> <tt class="py-name">totalOwnedDevices</tt> <tt class="py-op">+=</tt> <tt class="py-name">master</tt><tt class="py-op">[</tt> <tt class="py-string">"size"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L724"></a><tt class="py-lineno"> 724</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">master</tt><tt class="py-op">[</tt> <tt class="py-string">"size"</tt> <tt class="py-op">]</tt> <tt class="py-op">></tt> <tt class="py-name">first</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-keyword">or</tt> <tt class="py-name">master</tt><tt class="py-op">[</tt> <tt class="py-string">"size"</tt> <tt class="py-op">]</tt> <tt class="py-op"><</tt> <tt class="py-name">first</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L725"></a><tt class="py-lineno"> 725</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-287" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-287', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-288" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-288', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Mastership not balanced"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L726"></a><tt class="py-lineno"> 726</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-289" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-289', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-290" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkMasters" class="py-name" href="#" onclick="return doclink('link-290', 'checkMasters', 'link-286');">checkMasters</a></tt><tt class="py-op">(</tt> <tt class="py-name">False</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L727"></a><tt class="py-lineno"> 727</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L728"></a><tt class="py-lineno"> 728</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-291" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-291', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Mastership balanced between "</tt> \ </tt>
-<a name="L729"></a><tt class="py-lineno"> 729</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">masters</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" masters"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L730"></a><tt class="py-lineno"> 730</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L731"></a><tt class="py-lineno"> 731</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L732"></a><tt class="py-lineno"> 732</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-292" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-292', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L733"></a><tt class="py-lineno"> 733</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L734"></a><tt class="py-lineno"> 734</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L735"></a><tt class="py-lineno"> 735</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-293" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-293', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-294" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-294', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L736"></a><tt class="py-lineno"> 736</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-295" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-295', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-296" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-296', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L737"></a><tt class="py-lineno"> 737</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-297" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-297', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L738"></a><tt class="py-lineno"> 738</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-298" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-298', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L739"></a><tt class="py-lineno"> 739</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L740"></a><tt class="py-lineno"> 740</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-299" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-299', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L741"></a><tt class="py-lineno"> 741</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-300" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-300', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L742"></a><tt class="py-lineno"> 742</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-301" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-301', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L743"></a><tt class="py-lineno"> 743</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.links"></a><div id="OnosCliDriver.links-def"><a name="L744"></a><tt class="py-lineno"> 744</tt> <a class="py-toggle" href="#" id="OnosCliDriver.links-toggle" onclick="return toggle('OnosCliDriver.links');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#links">links</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.links-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.links-expanded"><a name="L745"></a><tt class="py-lineno"> 745</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L746"></a><tt class="py-lineno"> 746</tt> <tt class="py-line"><tt class="py-docstring"> Lists all core links</tt> </tt>
-<a name="L747"></a><tt class="py-lineno"> 747</tt> <tt class="py-line"><tt class="py-docstring"> Optional argument:</tt> </tt>
-<a name="L748"></a><tt class="py-lineno"> 748</tt> <tt class="py-line"><tt class="py-docstring"> * jsonFormat - boolean indicating if you want output in json</tt> </tt>
-<a name="L749"></a><tt class="py-lineno"> 749</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L750"></a><tt class="py-lineno"> 750</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L751"></a><tt class="py-lineno"> 751</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"links"</tt> </tt>
-<a name="L752"></a><tt class="py-lineno"> 752</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L753"></a><tt class="py-lineno"> 753</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L754"></a><tt class="py-lineno"> 754</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-302" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-302', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L755"></a><tt class="py-lineno"> 755</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L756"></a><tt class="py-lineno"> 756</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L757"></a><tt class="py-lineno"> 757</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-303" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-303', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L758"></a><tt class="py-lineno"> 758</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L759"></a><tt class="py-lineno"> 759</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L760"></a><tt class="py-lineno"> 760</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-304" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-304', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-305" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-305', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L761"></a><tt class="py-lineno"> 761</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-306" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-306', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-307" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-307', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L762"></a><tt class="py-lineno"> 762</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-308" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-308', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L763"></a><tt class="py-lineno"> 763</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-309" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-309', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L764"></a><tt class="py-lineno"> 764</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L765"></a><tt class="py-lineno"> 765</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-310" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-310', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L766"></a><tt class="py-lineno"> 766</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-311" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-311', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L767"></a><tt class="py-lineno"> 767</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-312" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-312', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L768"></a><tt class="py-lineno"> 768</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.ports"></a><div id="OnosCliDriver.ports-def"><a name="L769"></a><tt class="py-lineno"> 769</tt> <a class="py-toggle" href="#" id="OnosCliDriver.ports-toggle" onclick="return toggle('OnosCliDriver.ports');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#ports">ports</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.ports-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.ports-expanded"><a name="L770"></a><tt class="py-lineno"> 770</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L771"></a><tt class="py-lineno"> 771</tt> <tt class="py-line"><tt class="py-docstring"> Lists all ports</tt> </tt>
-<a name="L772"></a><tt class="py-lineno"> 772</tt> <tt class="py-line"><tt class="py-docstring"> Optional argument:</tt> </tt>
-<a name="L773"></a><tt class="py-lineno"> 773</tt> <tt class="py-line"><tt class="py-docstring"> * jsonFormat - boolean indicating if you want output in json</tt> </tt>
-<a name="L774"></a><tt class="py-lineno"> 774</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L775"></a><tt class="py-lineno"> 775</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L776"></a><tt class="py-lineno"> 776</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"ports"</tt> </tt>
-<a name="L777"></a><tt class="py-lineno"> 777</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L778"></a><tt class="py-lineno"> 778</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L779"></a><tt class="py-lineno"> 779</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-313" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-313', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L780"></a><tt class="py-lineno"> 780</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L781"></a><tt class="py-lineno"> 781</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L782"></a><tt class="py-lineno"> 782</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-314" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-314', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L783"></a><tt class="py-lineno"> 783</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L784"></a><tt class="py-lineno"> 784</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L785"></a><tt class="py-lineno"> 785</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-315" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-315', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-316" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-316', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L786"></a><tt class="py-lineno"> 786</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-317" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-317', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-318" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-318', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L787"></a><tt class="py-lineno"> 787</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-319" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-319', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L788"></a><tt class="py-lineno"> 788</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-320" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-320', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L789"></a><tt class="py-lineno"> 789</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L790"></a><tt class="py-lineno"> 790</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-321" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-321', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L791"></a><tt class="py-lineno"> 791</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-322" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-322', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L792"></a><tt class="py-lineno"> 792</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-323" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-323', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L793"></a><tt class="py-lineno"> 793</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.roles"></a><div id="OnosCliDriver.roles-def"><a name="L794"></a><tt class="py-lineno"> 794</tt> <a class="py-toggle" href="#" id="OnosCliDriver.roles-toggle" onclick="return toggle('OnosCliDriver.roles');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#roles">roles</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.roles-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.roles-expanded"><a name="L795"></a><tt class="py-lineno"> 795</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L796"></a><tt class="py-lineno"> 796</tt> <tt class="py-line"><tt class="py-docstring"> Lists all devices and the controllers with roles assigned to them</tt> </tt>
-<a name="L797"></a><tt class="py-lineno"> 797</tt> <tt class="py-line"><tt class="py-docstring"> Optional argument:</tt> </tt>
-<a name="L798"></a><tt class="py-lineno"> 798</tt> <tt class="py-line"><tt class="py-docstring"> * jsonFormat - boolean indicating if you want output in json</tt> </tt>
-<a name="L799"></a><tt class="py-lineno"> 799</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L800"></a><tt class="py-lineno"> 800</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L801"></a><tt class="py-lineno"> 801</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"roles"</tt> </tt>
-<a name="L802"></a><tt class="py-lineno"> 802</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L803"></a><tt class="py-lineno"> 803</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L804"></a><tt class="py-lineno"> 804</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-324" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-324', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L805"></a><tt class="py-lineno"> 805</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L806"></a><tt class="py-lineno"> 806</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L807"></a><tt class="py-lineno"> 807</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-325" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-325', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L808"></a><tt class="py-lineno"> 808</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L809"></a><tt class="py-lineno"> 809</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L810"></a><tt class="py-lineno"> 810</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-326" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-326', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-327" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-327', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L811"></a><tt class="py-lineno"> 811</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-328" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-328', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-329" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-329', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L812"></a><tt class="py-lineno"> 812</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-330" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-330', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L813"></a><tt class="py-lineno"> 813</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-331" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-331', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L814"></a><tt class="py-lineno"> 814</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L815"></a><tt class="py-lineno"> 815</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-332" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-332', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L816"></a><tt class="py-lineno"> 816</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-333" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-333', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L817"></a><tt class="py-lineno"> 817</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-334" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-334', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L818"></a><tt class="py-lineno"> 818</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.getRole"></a><div id="OnosCliDriver.getRole-def"><a name="L819"></a><tt class="py-lineno"> 819</tt> <a class="py-toggle" href="#" id="OnosCliDriver.getRole-toggle" onclick="return toggle('OnosCliDriver.getRole');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getRole">getRole</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">deviceId</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.getRole-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.getRole-expanded"><a name="L820"></a><tt class="py-lineno"> 820</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L821"></a><tt class="py-lineno"> 821</tt> <tt class="py-line"><tt class="py-docstring"> Given the a string containing the json representation of the "roles"</tt> </tt>
-<a name="L822"></a><tt class="py-lineno"> 822</tt> <tt class="py-line"><tt class="py-docstring"> cli command and a partial or whole device id, returns a json object</tt> </tt>
-<a name="L823"></a><tt class="py-lineno"> 823</tt> <tt class="py-line"><tt class="py-docstring"> containing the roles output for the first device whose id contains</tt> </tt>
-<a name="L824"></a><tt class="py-lineno"> 824</tt> <tt class="py-line"><tt class="py-docstring"> "device_id"</tt> </tt>
-<a name="L825"></a><tt class="py-lineno"> 825</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L826"></a><tt class="py-lineno"> 826</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L827"></a><tt class="py-lineno"> 827</tt> <tt class="py-line"><tt class="py-docstring"> A dict of the role assignments for the given device or</tt> </tt>
-<a name="L828"></a><tt class="py-lineno"> 828</tt> <tt class="py-line"><tt class="py-docstring"> None if no match</tt> </tt>
-<a name="L829"></a><tt class="py-lineno"> 829</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L830"></a><tt class="py-lineno"> 830</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L831"></a><tt class="py-lineno"> 831</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">deviceId</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L832"></a><tt class="py-lineno"> 832</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L833"></a><tt class="py-lineno"> 833</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L834"></a><tt class="py-lineno"> 834</tt> <tt class="py-line"> <tt class="py-name">rawRoles</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-335" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.roles()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#roles"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.roles" class="py-name" href="#" onclick="return doclink('link-335', 'roles', 'link-335');">roles</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L835"></a><tt class="py-lineno"> 835</tt> <tt class="py-line"> <tt class="py-name">rolesJson</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">rawRoles</tt> <tt class="py-op">)</tt> </tt>
-<a name="L836"></a><tt class="py-lineno"> 836</tt> <tt class="py-line"> <tt class="py-comment"># search json for the device with id then return the device</tt> </tt>
-<a name="L837"></a><tt class="py-lineno"> 837</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">device</tt> <tt class="py-keyword">in</tt> <tt class="py-name">rolesJson</tt><tt class="py-op">:</tt> </tt>
-<a name="L838"></a><tt class="py-lineno"> 838</tt> <tt class="py-line"> <tt class="py-comment"># print device</tt> </tt>
-<a name="L839"></a><tt class="py-lineno"> 839</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">device</tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L840"></a><tt class="py-lineno"> 840</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">device</tt> </tt>
-<a name="L841"></a><tt class="py-lineno"> 841</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L842"></a><tt class="py-lineno"> 842</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L843"></a><tt class="py-lineno"> 843</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-336" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-336', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L844"></a><tt class="py-lineno"> 844</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L845"></a><tt class="py-lineno"> 845</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L846"></a><tt class="py-lineno"> 846</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-337" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-337', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-338" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-338', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L847"></a><tt class="py-lineno"> 847</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-339" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-339', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-340" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-340', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L848"></a><tt class="py-lineno"> 848</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-341" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-341', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L849"></a><tt class="py-lineno"> 849</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-342" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-342', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L850"></a><tt class="py-lineno"> 850</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L851"></a><tt class="py-lineno"> 851</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-343" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-343', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L852"></a><tt class="py-lineno"> 852</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-344" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-344', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L853"></a><tt class="py-lineno"> 853</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-345" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-345', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L854"></a><tt class="py-lineno"> 854</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.rolesNotNull"></a><div id="OnosCliDriver.rolesNotNull-def"><a name="L855"></a><tt class="py-lineno"> 855</tt> <a class="py-toggle" href="#" id="OnosCliDriver.rolesNotNull-toggle" onclick="return toggle('OnosCliDriver.rolesNotNull');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#rolesNotNull">rolesNotNull</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.rolesNotNull-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.rolesNotNull-expanded"><a name="L856"></a><tt class="py-lineno"> 856</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L857"></a><tt class="py-lineno"> 857</tt> <tt class="py-line"><tt class="py-docstring"> Iterates through each device and checks if there is a master assigned</tt> </tt>
-<a name="L858"></a><tt class="py-lineno"> 858</tt> <tt class="py-line"><tt class="py-docstring"> Returns: main.TRUE if each device has a master</tt> </tt>
-<a name="L859"></a><tt class="py-lineno"> 859</tt> <tt class="py-line"><tt class="py-docstring"> main.FALSE any device has no master</tt> </tt>
-<a name="L860"></a><tt class="py-lineno"> 860</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L861"></a><tt class="py-lineno"> 861</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L862"></a><tt class="py-lineno"> 862</tt> <tt class="py-line"> <tt class="py-name">rawRoles</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-346" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.roles" class="py-name" href="#" onclick="return doclink('link-346', 'roles', 'link-335');">roles</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L863"></a><tt class="py-lineno"> 863</tt> <tt class="py-line"> <tt class="py-name">rolesJson</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">rawRoles</tt> <tt class="py-op">)</tt> </tt>
-<a name="L864"></a><tt class="py-lineno"> 864</tt> <tt class="py-line"> <tt class="py-comment"># search json for the device with id then return the device</tt> </tt>
-<a name="L865"></a><tt class="py-lineno"> 865</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">device</tt> <tt class="py-keyword">in</tt> <tt class="py-name">rolesJson</tt><tt class="py-op">:</tt> </tt>
-<a name="L866"></a><tt class="py-lineno"> 866</tt> <tt class="py-line"> <tt class="py-comment"># print device</tt> </tt>
-<a name="L867"></a><tt class="py-lineno"> 867</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">device</tt><tt class="py-op">[</tt> <tt class="py-string">'master'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"none"</tt><tt class="py-op">:</tt> </tt>
-<a name="L868"></a><tt class="py-lineno"> 868</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-347" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-347', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Device has no master: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">device</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L869"></a><tt class="py-lineno"> 869</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L870"></a><tt class="py-lineno"> 870</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L871"></a><tt class="py-lineno"> 871</tt> <tt class="py-line"> </tt>
-<a name="L872"></a><tt class="py-lineno"> 872</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L873"></a><tt class="py-lineno"> 873</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-348" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-348', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L874"></a><tt class="py-lineno"> 874</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L875"></a><tt class="py-lineno"> 875</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L876"></a><tt class="py-lineno"> 876</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-349" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-349', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-350" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-350', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L877"></a><tt class="py-lineno"> 877</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-351" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-351', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-352" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-352', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L878"></a><tt class="py-lineno"> 878</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-353" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-353', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L879"></a><tt class="py-lineno"> 879</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-354" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-354', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L880"></a><tt class="py-lineno"> 880</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L881"></a><tt class="py-lineno"> 881</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-355" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-355', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L882"></a><tt class="py-lineno"> 882</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-356" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-356', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L883"></a><tt class="py-lineno"> 883</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-357" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-357', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L884"></a><tt class="py-lineno"> 884</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.paths"></a><div id="OnosCliDriver.paths-def"><a name="L885"></a><tt class="py-lineno"> 885</tt> <a class="py-toggle" href="#" id="OnosCliDriver.paths-toggle" onclick="return toggle('OnosCliDriver.paths');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#paths">paths</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">srcId</tt><tt class="py-op">,</tt> <tt class="py-param">dstId</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.paths-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.paths-expanded"><a name="L886"></a><tt class="py-lineno"> 886</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L887"></a><tt class="py-lineno"> 887</tt> <tt class="py-line"><tt class="py-docstring"> Returns string of paths, and the cost.</tt> </tt>
-<a name="L888"></a><tt class="py-lineno"> 888</tt> <tt class="py-line"><tt class="py-docstring"> Issues command: onos:paths <src> <dst></tt> </tt>
-<a name="L889"></a><tt class="py-lineno"> 889</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L890"></a><tt class="py-lineno"> 890</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L891"></a><tt class="py-lineno"> 891</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos:paths "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">srcId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dstId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L892"></a><tt class="py-lineno"> 892</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-358" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-358', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L893"></a><tt class="py-lineno"> 893</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L894"></a><tt class="py-lineno"> 894</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-359" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-359', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-360" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-360', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting paths"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L895"></a><tt class="py-lineno"> 895</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">(</tt> <tt class="py-name">handle</tt><tt class="py-op">,</tt> <tt class="py-string">"Error"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L896"></a><tt class="py-lineno"> 896</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L897"></a><tt class="py-lineno"> 897</tt> <tt class="py-line"> <tt id="link-361" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-361', 'path', 'link-361');">path</a></tt> <tt class="py-op">=</tt> <tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">";"</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L898"></a><tt class="py-lineno"> 898</tt> <tt class="py-line"> <tt class="py-name">cost</tt> <tt class="py-op">=</tt> <tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">";"</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L899"></a><tt class="py-lineno"> 899</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">(</tt> <tt id="link-362" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-362', 'path', 'link-361');">path</a></tt><tt class="py-op">,</tt> <tt class="py-name">cost</tt> <tt class="py-op">)</tt> </tt>
-<a name="L900"></a><tt class="py-lineno"> 900</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L901"></a><tt class="py-lineno"> 901</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-363" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-363', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L902"></a><tt class="py-lineno"> 902</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">(</tt> <tt class="py-name">handle</tt><tt class="py-op">,</tt> <tt class="py-string">"Error"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L903"></a><tt class="py-lineno"> 903</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L904"></a><tt class="py-lineno"> 904</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-364" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-364', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-365" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-365', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L905"></a><tt class="py-lineno"> 905</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-366" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-366', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-367" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-367', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L906"></a><tt class="py-lineno"> 906</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-368" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-368', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L907"></a><tt class="py-lineno"> 907</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-369" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-369', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L908"></a><tt class="py-lineno"> 908</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L909"></a><tt class="py-lineno"> 909</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-370" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-370', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L910"></a><tt class="py-lineno"> 910</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-371" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-371', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L911"></a><tt class="py-lineno"> 911</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-372" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-372', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L912"></a><tt class="py-lineno"> 912</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.hosts"></a><div id="OnosCliDriver.hosts-def"><a name="L913"></a><tt class="py-lineno"> 913</tt> <a class="py-toggle" href="#" id="OnosCliDriver.hosts-toggle" onclick="return toggle('OnosCliDriver.hosts');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#hosts">hosts</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.hosts-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.hosts-expanded"><a name="L914"></a><tt class="py-lineno"> 914</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L915"></a><tt class="py-lineno"> 915</tt> <tt class="py-line"><tt class="py-docstring"> Lists all discovered hosts</tt> </tt>
-<a name="L916"></a><tt class="py-lineno"> 916</tt> <tt class="py-line"><tt class="py-docstring"> Optional argument:</tt> </tt>
-<a name="L917"></a><tt class="py-lineno"> 917</tt> <tt class="py-line"><tt class="py-docstring"> * jsonFormat - boolean indicating if you want output in json</tt> </tt>
-<a name="L918"></a><tt class="py-lineno"> 918</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L919"></a><tt class="py-lineno"> 919</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L920"></a><tt class="py-lineno"> 920</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"hosts"</tt> </tt>
-<a name="L921"></a><tt class="py-lineno"> 921</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L922"></a><tt class="py-lineno"> 922</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L923"></a><tt class="py-lineno"> 923</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-373" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-373', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L924"></a><tt class="py-lineno"> 924</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L925"></a><tt class="py-lineno"> 925</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L926"></a><tt class="py-lineno"> 926</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-374" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-374', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L927"></a><tt class="py-lineno"> 927</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L928"></a><tt class="py-lineno"> 928</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L929"></a><tt class="py-lineno"> 929</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-375" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-375', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-376" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-376', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L930"></a><tt class="py-lineno"> 930</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-377" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-377', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-378" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-378', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L931"></a><tt class="py-lineno"> 931</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-379" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-379', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L932"></a><tt class="py-lineno"> 932</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-380" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-380', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L933"></a><tt class="py-lineno"> 933</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L934"></a><tt class="py-lineno"> 934</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-381" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-381', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L935"></a><tt class="py-lineno"> 935</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-382" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-382', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L936"></a><tt class="py-lineno"> 936</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-383" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-383', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L937"></a><tt class="py-lineno"> 937</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.getHost"></a><div id="OnosCliDriver.getHost-def"><a name="L938"></a><tt class="py-lineno"> 938</tt> <a class="py-toggle" href="#" id="OnosCliDriver.getHost-toggle" onclick="return toggle('OnosCliDriver.getHost');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getHost">getHost</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">mac</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.getHost-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.getHost-expanded"><a name="L939"></a><tt class="py-lineno"> 939</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L940"></a><tt class="py-lineno"> 940</tt> <tt class="py-line"><tt class="py-docstring"> Return the first host from the hosts api whose 'id' contains 'mac'</tt> </tt>
-<a name="L941"></a><tt class="py-lineno"> 941</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L942"></a><tt class="py-lineno"> 942</tt> <tt class="py-line"><tt class="py-docstring"> Note: mac must be a colon separated mac address, but could be a</tt> </tt>
-<a name="L943"></a><tt class="py-lineno"> 943</tt> <tt class="py-line"><tt class="py-docstring"> partial mac address</tt> </tt>
-<a name="L944"></a><tt class="py-lineno"> 944</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L945"></a><tt class="py-lineno"> 945</tt> <tt class="py-line"><tt class="py-docstring"> Return None if there is no match</tt> </tt>
-<a name="L946"></a><tt class="py-lineno"> 946</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L947"></a><tt class="py-lineno"> 947</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L948"></a><tt class="py-lineno"> 948</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">mac</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L949"></a><tt class="py-lineno"> 949</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L950"></a><tt class="py-lineno"> 950</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L951"></a><tt class="py-lineno"> 951</tt> <tt class="py-line"> <tt class="py-name">mac</tt> <tt class="py-op">=</tt> <tt class="py-name">mac</tt> </tt>
-<a name="L952"></a><tt class="py-lineno"> 952</tt> <tt class="py-line"> <tt class="py-name">rawHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-384" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#hosts,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#hosts"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-384', 'hosts', 'link-384');">hosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L953"></a><tt class="py-lineno"> 953</tt> <tt class="py-line"> <tt class="py-name">hostsJson</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">rawHosts</tt> <tt class="py-op">)</tt> </tt>
-<a name="L954"></a><tt class="py-lineno"> 954</tt> <tt class="py-line"> <tt class="py-comment"># search json for the host with mac then return the device</tt> </tt>
-<a name="L955"></a><tt class="py-lineno"> 955</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt class="py-name">hostsJson</tt><tt class="py-op">:</tt> </tt>
-<a name="L956"></a><tt class="py-lineno"> 956</tt> <tt class="py-line"> <tt class="py-comment"># print "%s in %s?" % ( mac, host[ 'id' ] )</tt> </tt>
-<a name="L957"></a><tt class="py-lineno"> 957</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">host</tt><tt class="py-op">:</tt> </tt>
-<a name="L958"></a><tt class="py-lineno"> 958</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L959"></a><tt class="py-lineno"> 959</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">mac</tt> <tt class="py-keyword">in</tt> <tt class="py-name">host</tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L960"></a><tt class="py-lineno"> 960</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">host</tt> </tt>
-<a name="L961"></a><tt class="py-lineno"> 961</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L962"></a><tt class="py-lineno"> 962</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L963"></a><tt class="py-lineno"> 963</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-385" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-385', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L964"></a><tt class="py-lineno"> 964</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L965"></a><tt class="py-lineno"> 965</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L966"></a><tt class="py-lineno"> 966</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-386" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-386', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-387" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-387', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L967"></a><tt class="py-lineno"> 967</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-388" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-388', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-389" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-389', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L968"></a><tt class="py-lineno"> 968</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-390" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-390', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L969"></a><tt class="py-lineno"> 969</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-391" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-391', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L970"></a><tt class="py-lineno"> 970</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L971"></a><tt class="py-lineno"> 971</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-392" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-392', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L972"></a><tt class="py-lineno"> 972</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-393" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-393', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L973"></a><tt class="py-lineno"> 973</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-394" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-394', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L974"></a><tt class="py-lineno"> 974</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.getHostsId"></a><div id="OnosCliDriver.getHostsId-def"><a name="L975"></a><tt class="py-lineno"> 975</tt> <a class="py-toggle" href="#" id="OnosCliDriver.getHostsId-toggle" onclick="return toggle('OnosCliDriver.getHostsId');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getHostsId">getHostsId</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostList</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.getHostsId-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.getHostsId-expanded"><a name="L976"></a><tt class="py-lineno"> 976</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L977"></a><tt class="py-lineno"> 977</tt> <tt class="py-line"><tt class="py-docstring"> Obtain list of hosts</tt> </tt>
-<a name="L978"></a><tt class="py-lineno"> 978</tt> <tt class="py-line"><tt class="py-docstring"> Issues command: 'onos> hosts'</tt> </tt>
-<a name="L979"></a><tt class="py-lineno"> 979</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L980"></a><tt class="py-lineno"> 980</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L981"></a><tt class="py-lineno"> 981</tt> <tt class="py-line"><tt class="py-docstring"> * hostList: List of hosts obtained by Mininet</tt> </tt>
-<a name="L982"></a><tt class="py-lineno"> 982</tt> <tt class="py-line"><tt class="py-docstring"> IMPORTANT:</tt> </tt>
-<a name="L983"></a><tt class="py-lineno"> 983</tt> <tt class="py-line"><tt class="py-docstring"> This function assumes that you started your</tt> </tt>
-<a name="L984"></a><tt class="py-lineno"> 984</tt> <tt class="py-line"><tt class="py-docstring"> topology with the option '--mac'.</tt> </tt>
-<a name="L985"></a><tt class="py-lineno"> 985</tt> <tt class="py-line"><tt class="py-docstring"> Furthermore, it assumes that value of VLAN is '-1'</tt> </tt>
-<a name="L986"></a><tt class="py-lineno"> 986</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L987"></a><tt class="py-lineno"> 987</tt> <tt class="py-line"><tt class="py-docstring"> Converts mininet hosts ( h1, h2, h3... ) into</tt> </tt>
-<a name="L988"></a><tt class="py-lineno"> 988</tt> <tt class="py-line"><tt class="py-docstring"> ONOS format ( 00:00:00:00:00:01/-1 , ... )</tt> </tt>
-<a name="L989"></a><tt class="py-lineno"> 989</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L990"></a><tt class="py-lineno"> 990</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L991"></a><tt class="py-lineno"> 991</tt> <tt class="py-line"> <tt class="py-name">onosHostList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L992"></a><tt class="py-lineno"> 992</tt> <tt class="py-line"> </tt>
-<a name="L993"></a><tt class="py-lineno"> 993</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt class="py-name">hostList</tt><tt class="py-op">:</tt> </tt>
-<a name="L994"></a><tt class="py-lineno"> 994</tt> <tt class="py-line"> <tt class="py-name">host</tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"h"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L995"></a><tt class="py-lineno"> 995</tt> <tt class="py-line"> <tt class="py-name">hostHex</tt> <tt class="py-op">=</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">12</tt> <tt class="py-op">)</tt> </tt>
-<a name="L996"></a><tt class="py-lineno"> 996</tt> <tt class="py-line"> <tt class="py-name">hostHex</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hostHex</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">'x'</tt><tt class="py-op">,</tt> <tt class="py-string">'0'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L997"></a><tt class="py-lineno"> 997</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">iter</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hostHex</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L998"></a><tt class="py-lineno"> 998</tt> <tt class="py-line"> <tt class="py-name">hostHex</tt> <tt class="py-op">=</tt> <tt class="py-string">":"</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt> <tt class="py-name">a</tt> <tt class="py-op">+</tt> <tt class="py-name">b</tt> <tt class="py-keyword">for</tt> <tt class="py-name">a</tt><tt class="py-op">,</tt> <tt class="py-name">b</tt> <tt class="py-keyword">in</tt> <tt class="py-name">zip</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L999"></a><tt class="py-lineno"> 999</tt> <tt class="py-line"> <tt class="py-name">hostHex</tt> <tt class="py-op">=</tt> <tt class="py-name">hostHex</tt> <tt class="py-op">+</tt> <tt class="py-string">"/-1"</tt> </tt>
-<a name="L1000"></a><tt class="py-lineno">1000</tt> <tt class="py-line"> <tt class="py-name">onosHostList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">hostHex</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1001"></a><tt class="py-lineno">1001</tt> <tt class="py-line"> </tt>
-<a name="L1002"></a><tt class="py-lineno">1002</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">onosHostList</tt> </tt>
-<a name="L1003"></a><tt class="py-lineno">1003</tt> <tt class="py-line"> </tt>
-<a name="L1004"></a><tt class="py-lineno">1004</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1005"></a><tt class="py-lineno">1005</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-395" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-395', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1006"></a><tt class="py-lineno">1006</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1007"></a><tt class="py-lineno">1007</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1008"></a><tt class="py-lineno">1008</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-396" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-396', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-397" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-397', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1009"></a><tt class="py-lineno">1009</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-398" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-398', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-399" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-399', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1010"></a><tt class="py-lineno">1010</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-400" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-400', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1011"></a><tt class="py-lineno">1011</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-401" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-401', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1012"></a><tt class="py-lineno">1012</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1013"></a><tt class="py-lineno">1013</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-402" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-402', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1014"></a><tt class="py-lineno">1014</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-403" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-403', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1015"></a><tt class="py-lineno">1015</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-404" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-404', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1016"></a><tt class="py-lineno">1016</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.addHostIntent"></a><div id="OnosCliDriver.addHostIntent-def"><a name="L1017"></a><tt class="py-lineno">1017</tt> <a class="py-toggle" href="#" id="OnosCliDriver.addHostIntent-toggle" onclick="return toggle('OnosCliDriver.addHostIntent');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addHostIntent">addHostIntent</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostIdOne</tt><tt class="py-op">,</tt> <tt class="py-param">hostIdTwo</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.addHostIntent-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.addHostIntent-expanded"><a name="L1018"></a><tt class="py-lineno">1018</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1019"></a><tt class="py-lineno">1019</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L1020"></a><tt class="py-lineno">1020</tt> <tt class="py-line"><tt class="py-docstring"> * hostIdOne: ONOS host id for host1</tt> </tt>
-<a name="L1021"></a><tt class="py-lineno">1021</tt> <tt class="py-line"><tt class="py-docstring"> * hostIdTwo: ONOS host id for host2</tt> </tt>
-<a name="L1022"></a><tt class="py-lineno">1022</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1023"></a><tt class="py-lineno">1023</tt> <tt class="py-line"><tt class="py-docstring"> Adds a host-to-host intent ( bidirectional ) by</tt> </tt>
-<a name="L1024"></a><tt class="py-lineno">1024</tt> <tt class="py-line"><tt class="py-docstring"> specifying the two hosts.</tt> </tt>
-<a name="L1025"></a><tt class="py-lineno">1025</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L1026"></a><tt class="py-lineno">1026</tt> <tt class="py-line"><tt class="py-docstring"> A string of the intent id or None on Error</tt> </tt>
-<a name="L1027"></a><tt class="py-lineno">1027</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1028"></a><tt class="py-lineno">1028</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1029"></a><tt class="py-lineno">1029</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"add-host-intent "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hostIdOne</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1030"></a><tt class="py-lineno">1030</tt> <tt class="py-line"> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hostIdTwo</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1031"></a><tt class="py-lineno">1031</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-405" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-405', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1032"></a><tt class="py-lineno">1032</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1033"></a><tt class="py-lineno">1033</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-406" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-406', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-407" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-407', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in adding Host intent"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1034"></a><tt class="py-lineno">1034</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-408" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-408', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Response from ONOS was: "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1035"></a><tt class="py-lineno">1035</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1036"></a><tt class="py-lineno">1036</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1037"></a><tt class="py-lineno">1037</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-409" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-409', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Host intent installed between "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1038"></a><tt class="py-lineno">1038</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hostIdOne</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" and "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hostIdTwo</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1039"></a><tt class="py-lineno">1039</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">'id=0x([\da-f]+),'</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt><tt class="py-op">)</tt> </tt>
-<a name="L1040"></a><tt class="py-lineno">1040</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">match</tt><tt class="py-op">:</tt> </tt>
-<a name="L1041"></a><tt class="py-lineno">1041</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">3</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L1042"></a><tt class="py-lineno">1042</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1043"></a><tt class="py-lineno">1043</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-410" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-410', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-411" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-411', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, intent ID not found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1044"></a><tt class="py-lineno">1044</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-412" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-412', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Response from ONOS was: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1045"></a><tt class="py-lineno">1045</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1046"></a><tt class="py-lineno">1046</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1047"></a><tt class="py-lineno">1047</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1048"></a><tt class="py-lineno">1048</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-413" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-413', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1049"></a><tt class="py-lineno">1049</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1050"></a><tt class="py-lineno">1050</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1051"></a><tt class="py-lineno">1051</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-414" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-414', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-415" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-415', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1052"></a><tt class="py-lineno">1052</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-416" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-416', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-417" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-417', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1053"></a><tt class="py-lineno">1053</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-418" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-418', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1054"></a><tt class="py-lineno">1054</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-419" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-419', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1055"></a><tt class="py-lineno">1055</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1056"></a><tt class="py-lineno">1056</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-420" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-420', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1057"></a><tt class="py-lineno">1057</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-421" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-421', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1058"></a><tt class="py-lineno">1058</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-422" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-422', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1059"></a><tt class="py-lineno">1059</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.addOpticalIntent"></a><div id="OnosCliDriver.addOpticalIntent-def"><a name="L1060"></a><tt class="py-lineno">1060</tt> <a class="py-toggle" href="#" id="OnosCliDriver.addOpticalIntent-toggle" onclick="return toggle('OnosCliDriver.addOpticalIntent');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addOpticalIntent">addOpticalIntent</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ingressDevice</tt><tt class="py-op">,</tt> <tt class="py-param">egressDevice</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.addOpticalIntent-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.addOpticalIntent-expanded"><a name="L1061"></a><tt class="py-lineno">1061</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1062"></a><tt class="py-lineno">1062</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L1063"></a><tt class="py-lineno">1063</tt> <tt class="py-line"><tt class="py-docstring"> * ingressDevice: device id of ingress device</tt> </tt>
-<a name="L1064"></a><tt class="py-lineno">1064</tt> <tt class="py-line"><tt class="py-docstring"> * egressDevice: device id of egress device</tt> </tt>
-<a name="L1065"></a><tt class="py-lineno">1065</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L1066"></a><tt class="py-lineno">1066</tt> <tt class="py-line"><tt class="py-docstring"> TODO: Still needs to be implemented via dev side</tt> </tt>
-<a name="L1067"></a><tt class="py-lineno">1067</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1068"></a><tt class="py-lineno">1068</tt> <tt class="py-line"><tt class="py-docstring"> Adds an optical intent by specifying an ingress and egress device</tt> </tt>
-<a name="L1069"></a><tt class="py-lineno">1069</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L1070"></a><tt class="py-lineno">1070</tt> <tt class="py-line"><tt class="py-docstring"> A string of the intent id or None on error</tt> </tt>
-<a name="L1071"></a><tt class="py-lineno">1071</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1072"></a><tt class="py-lineno">1072</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1073"></a><tt class="py-lineno">1073</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"add-optical-intent "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ingressDevice</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1074"></a><tt class="py-lineno">1074</tt> <tt class="py-line"> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">egressDevice</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1075"></a><tt class="py-lineno">1075</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-423" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-423', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1076"></a><tt class="py-lineno">1076</tt> <tt class="py-line"> <tt class="py-comment"># If error, return error message</tt> </tt>
-<a name="L1077"></a><tt class="py-lineno">1077</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1078"></a><tt class="py-lineno">1078</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-424" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-424', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-425" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-425', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in adding Optical intent"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1079"></a><tt class="py-lineno">1079</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1080"></a><tt class="py-lineno">1080</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1081"></a><tt class="py-lineno">1081</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-426" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-426', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Optical intent installed between "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1082"></a><tt class="py-lineno">1082</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ingressDevice</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" and "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1083"></a><tt class="py-lineno">1083</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">egressDevice</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1084"></a><tt class="py-lineno">1084</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">'id=0x([\da-f]+),'</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt><tt class="py-op">)</tt> </tt>
-<a name="L1085"></a><tt class="py-lineno">1085</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">match</tt><tt class="py-op">:</tt> </tt>
-<a name="L1086"></a><tt class="py-lineno">1086</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">3</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L1087"></a><tt class="py-lineno">1087</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1088"></a><tt class="py-lineno">1088</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-427" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-427', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-428" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-428', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, intent ID not found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1089"></a><tt class="py-lineno">1089</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1090"></a><tt class="py-lineno">1090</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1091"></a><tt class="py-lineno">1091</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-429" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-429', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1092"></a><tt class="py-lineno">1092</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1093"></a><tt class="py-lineno">1093</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1094"></a><tt class="py-lineno">1094</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-430" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-430', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-431" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-431', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1095"></a><tt class="py-lineno">1095</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-432" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-432', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-433" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-433', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1096"></a><tt class="py-lineno">1096</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-434" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-434', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1097"></a><tt class="py-lineno">1097</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-435" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-435', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1098"></a><tt class="py-lineno">1098</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1099"></a><tt class="py-lineno">1099</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-436" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-436', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1100"></a><tt class="py-lineno">1100</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-437" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-437', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1101"></a><tt class="py-lineno">1101</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-438" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-438', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1102"></a><tt class="py-lineno">1102</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.addPointIntent"></a><div id="OnosCliDriver.addPointIntent-def"><a name="L1103"></a><tt class="py-lineno">1103</tt> <a class="py-toggle" href="#" id="OnosCliDriver.addPointIntent-toggle" onclick="return toggle('OnosCliDriver.addPointIntent');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addPointIntent">addPointIntent</a><tt class="py-op">(</tt> </tt>
-<a name="L1104"></a><tt class="py-lineno">1104</tt> <tt class="py-line"> <tt class="py-param">self</tt><tt class="py-op">,</tt> </tt>
-<a name="L1105"></a><tt class="py-lineno">1105</tt> <tt class="py-line"> <tt class="py-param">ingressDevice</tt><tt class="py-op">,</tt> </tt>
-<a name="L1106"></a><tt class="py-lineno">1106</tt> <tt class="py-line"> <tt class="py-param">egressDevice</tt><tt class="py-op">,</tt> </tt>
-<a name="L1107"></a><tt class="py-lineno">1107</tt> <tt class="py-line"> <tt class="py-param">portIngress</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1108"></a><tt class="py-lineno">1108</tt> <tt class="py-line"> <tt class="py-param">portEgress</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1109"></a><tt class="py-lineno">1109</tt> <tt class="py-line"> <tt class="py-param">ethType</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1110"></a><tt class="py-lineno">1110</tt> <tt class="py-line"> <tt class="py-param">ethSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1111"></a><tt class="py-lineno">1111</tt> <tt class="py-line"> <tt class="py-param">ethDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1112"></a><tt class="py-lineno">1112</tt> <tt class="py-line"> <tt class="py-param">bandwidth</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1113"></a><tt class="py-lineno">1113</tt> <tt class="py-line"> <tt class="py-param">lambdaAlloc</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> </tt>
-<a name="L1114"></a><tt class="py-lineno">1114</tt> <tt class="py-line"> <tt class="py-param">ipProto</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1115"></a><tt class="py-lineno">1115</tt> <tt class="py-line"> <tt class="py-param">ipSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1116"></a><tt class="py-lineno">1116</tt> <tt class="py-line"> <tt class="py-param">ipDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1117"></a><tt class="py-lineno">1117</tt> <tt class="py-line"> <tt class="py-param">tcpSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1118"></a><tt class="py-lineno">1118</tt> <tt class="py-line"> <tt class="py-param">tcpDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.addPointIntent-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.addPointIntent-expanded"><a name="L1119"></a><tt class="py-lineno">1119</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1120"></a><tt class="py-lineno">1120</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L1121"></a><tt class="py-lineno">1121</tt> <tt class="py-line"><tt class="py-docstring"> * ingressDevice: device id of ingress device</tt> </tt>
-<a name="L1122"></a><tt class="py-lineno">1122</tt> <tt class="py-line"><tt class="py-docstring"> * egressDevice: device id of egress device</tt> </tt>
-<a name="L1123"></a><tt class="py-lineno">1123</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L1124"></a><tt class="py-lineno">1124</tt> <tt class="py-line"><tt class="py-docstring"> * ethType: specify ethType</tt> </tt>
-<a name="L1125"></a><tt class="py-lineno">1125</tt> <tt class="py-line"><tt class="py-docstring"> * ethSrc: specify ethSrc ( i.e. src mac addr )</tt> </tt>
-<a name="L1126"></a><tt class="py-lineno">1126</tt> <tt class="py-line"><tt class="py-docstring"> * ethDst: specify ethDst ( i.e. dst mac addr )</tt> </tt>
-<a name="L1127"></a><tt class="py-lineno">1127</tt> <tt class="py-line"><tt class="py-docstring"> * bandwidth: specify bandwidth capacity of link</tt> </tt>
-<a name="L1128"></a><tt class="py-lineno">1128</tt> <tt class="py-line"><tt class="py-docstring"> * lambdaAlloc: if True, intent will allocate lambda</tt> </tt>
-<a name="L1129"></a><tt class="py-lineno">1129</tt> <tt class="py-line"><tt class="py-docstring"> for the specified intent</tt> </tt>
-<a name="L1130"></a><tt class="py-lineno">1130</tt> <tt class="py-line"><tt class="py-docstring"> * ipProto: specify ip protocol</tt> </tt>
-<a name="L1131"></a><tt class="py-lineno">1131</tt> <tt class="py-line"><tt class="py-docstring"> * ipSrc: specify ip source address</tt> </tt>
-<a name="L1132"></a><tt class="py-lineno">1132</tt> <tt class="py-line"><tt class="py-docstring"> * ipDst: specify ip destination address</tt> </tt>
-<a name="L1133"></a><tt class="py-lineno">1133</tt> <tt class="py-line"><tt class="py-docstring"> * tcpSrc: specify tcp source port</tt> </tt>
-<a name="L1134"></a><tt class="py-lineno">1134</tt> <tt class="py-line"><tt class="py-docstring"> * tcpDst: specify tcp destination port</tt> </tt>
-<a name="L1135"></a><tt class="py-lineno">1135</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1136"></a><tt class="py-lineno">1136</tt> <tt class="py-line"><tt class="py-docstring"> Adds a point-to-point intent ( uni-directional ) by</tt> </tt>
-<a name="L1137"></a><tt class="py-lineno">1137</tt> <tt class="py-line"><tt class="py-docstring"> specifying device id's and optional fields</tt> </tt>
-<a name="L1138"></a><tt class="py-lineno">1138</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L1139"></a><tt class="py-lineno">1139</tt> <tt class="py-line"><tt class="py-docstring"> A string of the intent id or None on error</tt> </tt>
-<a name="L1140"></a><tt class="py-lineno">1140</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1141"></a><tt class="py-lineno">1141</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: This function may change depending on the</tt> </tt>
-<a name="L1142"></a><tt class="py-lineno">1142</tt> <tt class="py-line"><tt class="py-docstring"> options developers provide for point-to-point</tt> </tt>
-<a name="L1143"></a><tt class="py-lineno">1143</tt> <tt class="py-line"><tt class="py-docstring"> intent via cli</tt> </tt>
-<a name="L1144"></a><tt class="py-lineno">1144</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1145"></a><tt class="py-lineno">1145</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1146"></a><tt class="py-lineno">1146</tt> <tt class="py-line"> <tt class="py-comment"># If there are no optional arguments</tt> </tt>
-<a name="L1147"></a><tt class="py-lineno">1147</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ethType</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ethSrc</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ethDst</tt>\ </tt>
-<a name="L1148"></a><tt class="py-lineno">1148</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">bandwidth</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">lambdaAlloc</tt> \ </tt>
-<a name="L1149"></a><tt class="py-lineno">1149</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ipProto</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ipSrc</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ipDst</tt> \ </tt>
-<a name="L1150"></a><tt class="py-lineno">1150</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tcpSrc</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tcpDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1151"></a><tt class="py-lineno">1151</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"add-point-intent"</tt> </tt>
-<a name="L1152"></a><tt class="py-lineno">1152</tt> <tt class="py-line"> </tt>
-<a name="L1153"></a><tt class="py-lineno">1153</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1154"></a><tt class="py-lineno">1154</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"add-point-intent"</tt> </tt>
-<a name="L1155"></a><tt class="py-lineno">1155</tt> <tt class="py-line"> </tt>
-<a name="L1156"></a><tt class="py-lineno">1156</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethType</tt><tt class="py-op">:</tt> </tt>
-<a name="L1157"></a><tt class="py-lineno">1157</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ethType "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ethType</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1158"></a><tt class="py-lineno">1158</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1159"></a><tt class="py-lineno">1159</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ethSrc "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ethSrc</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1160"></a><tt class="py-lineno">1160</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1161"></a><tt class="py-lineno">1161</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ethDst "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ethDst</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1162"></a><tt class="py-lineno">1162</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">bandwidth</tt><tt class="py-op">:</tt> </tt>
-<a name="L1163"></a><tt class="py-lineno">1163</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --bandwidth "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">bandwidth</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1164"></a><tt class="py-lineno">1164</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">lambdaAlloc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1165"></a><tt class="py-lineno">1165</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --lambda "</tt> </tt>
-<a name="L1166"></a><tt class="py-lineno">1166</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipProto</tt><tt class="py-op">:</tt> </tt>
-<a name="L1167"></a><tt class="py-lineno">1167</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ipProto "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ipProto</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1168"></a><tt class="py-lineno">1168</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1169"></a><tt class="py-lineno">1169</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ipSrc "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ipSrc</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1170"></a><tt class="py-lineno">1170</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1171"></a><tt class="py-lineno">1171</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ipDst "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ipDst</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1172"></a><tt class="py-lineno">1172</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tcpSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1173"></a><tt class="py-lineno">1173</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --tcpSrc "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpSrc</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1174"></a><tt class="py-lineno">1174</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tcpDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1175"></a><tt class="py-lineno">1175</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --tcpDst "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpDst</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1176"></a><tt class="py-lineno">1176</tt> <tt class="py-line"> </tt>
-<a name="L1177"></a><tt class="py-lineno">1177</tt> <tt class="py-line"> <tt class="py-comment"># Check whether the user appended the port</tt> </tt>
-<a name="L1178"></a><tt class="py-lineno">1178</tt> <tt class="py-line"> <tt class="py-comment"># or provided it as an input</tt> </tt>
-<a name="L1179"></a><tt class="py-lineno">1179</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"/"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ingressDevice</tt><tt class="py-op">:</tt> </tt>
-<a name="L1180"></a><tt class="py-lineno">1180</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ingressDevice</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1181"></a><tt class="py-lineno">1181</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1182"></a><tt class="py-lineno">1182</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">portIngress</tt><tt class="py-op">:</tt> </tt>
-<a name="L1183"></a><tt class="py-lineno">1183</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-439" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-439', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-440" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-440', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"You must specify the ingress port"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1184"></a><tt class="py-lineno">1184</tt> <tt class="py-line"> <tt class="py-comment"># TODO: perhaps more meaningful return</tt> </tt>
-<a name="L1185"></a><tt class="py-lineno">1185</tt> <tt class="py-line"> <tt class="py-comment"># Would it make sense to throw an exception and exit</tt> </tt>
-<a name="L1186"></a><tt class="py-lineno">1186</tt> <tt class="py-line"> <tt class="py-comment"># the test?</tt> </tt>
-<a name="L1187"></a><tt class="py-lineno">1187</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1188"></a><tt class="py-lineno">1188</tt> <tt class="py-line"> </tt>
-<a name="L1189"></a><tt class="py-lineno">1189</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1190"></a><tt class="py-lineno">1190</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ingressDevice</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1191"></a><tt class="py-lineno">1191</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">portIngress</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> </tt>
-<a name="L1192"></a><tt class="py-lineno">1192</tt> <tt class="py-line"> </tt>
-<a name="L1193"></a><tt class="py-lineno">1193</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"/"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">egressDevice</tt><tt class="py-op">:</tt> </tt>
-<a name="L1194"></a><tt class="py-lineno">1194</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">egressDevice</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1195"></a><tt class="py-lineno">1195</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1196"></a><tt class="py-lineno">1196</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">portEgress</tt><tt class="py-op">:</tt> </tt>
-<a name="L1197"></a><tt class="py-lineno">1197</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-441" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-441', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-442" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-442', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"You must specify the egress port"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1198"></a><tt class="py-lineno">1198</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1199"></a><tt class="py-lineno">1199</tt> <tt class="py-line"> </tt>
-<a name="L1200"></a><tt class="py-lineno">1200</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1201"></a><tt class="py-lineno">1201</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">egressDevice</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1202"></a><tt class="py-lineno">1202</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">portEgress</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1203"></a><tt class="py-lineno">1203</tt> <tt class="py-line"> </tt>
-<a name="L1204"></a><tt class="py-lineno">1204</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-443" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-443', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1205"></a><tt class="py-lineno">1205</tt> <tt class="py-line"> <tt class="py-comment"># If error, return error message</tt> </tt>
-<a name="L1206"></a><tt class="py-lineno">1206</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1207"></a><tt class="py-lineno">1207</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-444" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-444', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-445" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-445', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in adding point-to-point intent"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1208"></a><tt class="py-lineno">1208</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1209"></a><tt class="py-lineno">1209</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1210"></a><tt class="py-lineno">1210</tt> <tt class="py-line"> <tt class="py-comment"># TODO: print out all the options in this message?</tt> </tt>
-<a name="L1211"></a><tt class="py-lineno">1211</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-446" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-446', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Point-to-point intent installed between "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1212"></a><tt class="py-lineno">1212</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ingressDevice</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" and "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1213"></a><tt class="py-lineno">1213</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">egressDevice</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1214"></a><tt class="py-lineno">1214</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">'id=0x([\da-f]+),'</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt><tt class="py-op">)</tt> </tt>
-<a name="L1215"></a><tt class="py-lineno">1215</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">match</tt><tt class="py-op">:</tt> </tt>
-<a name="L1216"></a><tt class="py-lineno">1216</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">3</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L1217"></a><tt class="py-lineno">1217</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1218"></a><tt class="py-lineno">1218</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-447" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-447', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-448" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-448', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, intent ID not found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1219"></a><tt class="py-lineno">1219</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1220"></a><tt class="py-lineno">1220</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1221"></a><tt class="py-lineno">1221</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-449" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-449', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1222"></a><tt class="py-lineno">1222</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1223"></a><tt class="py-lineno">1223</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1224"></a><tt class="py-lineno">1224</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-450" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-450', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-451" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-451', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1225"></a><tt class="py-lineno">1225</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-452" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-452', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-453" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-453', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1226"></a><tt class="py-lineno">1226</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-454" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-454', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1227"></a><tt class="py-lineno">1227</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-455" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-455', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1228"></a><tt class="py-lineno">1228</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1229"></a><tt class="py-lineno">1229</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-456" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-456', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1230"></a><tt class="py-lineno">1230</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-457" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-457', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1231"></a><tt class="py-lineno">1231</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-458" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-458', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1232"></a><tt class="py-lineno">1232</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.addMultipointToSinglepointIntent"></a><div id="OnosCliDriver.addMultipointToSinglepointIntent-def"><a name="L1233"></a><tt class="py-lineno">1233</tt> <a class="py-toggle" href="#" id="OnosCliDriver.addMultipointToSinglepointIntent-toggle" onclick="return toggle('OnosCliDriver.addMultipointToSinglepointIntent');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addMultipointToSinglepointIntent">addMultipointToSinglepointIntent</a><tt class="py-op">(</tt> </tt>
-<a name="L1234"></a><tt class="py-lineno">1234</tt> <tt class="py-line"> <tt class="py-param">self</tt><tt class="py-op">,</tt> </tt>
-<a name="L1235"></a><tt class="py-lineno">1235</tt> <tt class="py-line"> <tt class="py-param">ingressDeviceList</tt><tt class="py-op">,</tt> </tt>
-<a name="L1236"></a><tt class="py-lineno">1236</tt> <tt class="py-line"> <tt class="py-param">egressDevice</tt><tt class="py-op">,</tt> </tt>
-<a name="L1237"></a><tt class="py-lineno">1237</tt> <tt class="py-line"> <tt class="py-param">portIngressList</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L1238"></a><tt class="py-lineno">1238</tt> <tt class="py-line"> <tt class="py-param">portEgress</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1239"></a><tt class="py-lineno">1239</tt> <tt class="py-line"> <tt class="py-param">ethType</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1240"></a><tt class="py-lineno">1240</tt> <tt class="py-line"> <tt class="py-param">ethSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1241"></a><tt class="py-lineno">1241</tt> <tt class="py-line"> <tt class="py-param">ethDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1242"></a><tt class="py-lineno">1242</tt> <tt class="py-line"> <tt class="py-param">bandwidth</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1243"></a><tt class="py-lineno">1243</tt> <tt class="py-line"> <tt class="py-param">lambdaAlloc</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> </tt>
-<a name="L1244"></a><tt class="py-lineno">1244</tt> <tt class="py-line"> <tt class="py-param">ipProto</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1245"></a><tt class="py-lineno">1245</tt> <tt class="py-line"> <tt class="py-param">ipSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1246"></a><tt class="py-lineno">1246</tt> <tt class="py-line"> <tt class="py-param">ipDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1247"></a><tt class="py-lineno">1247</tt> <tt class="py-line"> <tt class="py-param">tcpSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1248"></a><tt class="py-lineno">1248</tt> <tt class="py-line"> <tt class="py-param">tcpDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1249"></a><tt class="py-lineno">1249</tt> <tt class="py-line"> <tt class="py-param">setEthSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1250"></a><tt class="py-lineno">1250</tt> <tt class="py-line"> <tt class="py-param">setEthDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.addMultipointToSinglepointIntent-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.addMultipointToSinglepointIntent-expanded"><a name="L1251"></a><tt class="py-lineno">1251</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1252"></a><tt class="py-lineno">1252</tt> <tt class="py-line"><tt class="py-docstring"> Note:</tt> </tt>
-<a name="L1253"></a><tt class="py-lineno">1253</tt> <tt class="py-line"><tt class="py-docstring"> This function assumes the format of all ingress devices</tt> </tt>
-<a name="L1254"></a><tt class="py-lineno">1254</tt> <tt class="py-line"><tt class="py-docstring"> is same. That is, all ingress devices include port numbers</tt> </tt>
-<a name="L1255"></a><tt class="py-lineno">1255</tt> <tt class="py-line"><tt class="py-docstring"> with a "/" or all ingress devices could specify device</tt> </tt>
-<a name="L1256"></a><tt class="py-lineno">1256</tt> <tt class="py-line"><tt class="py-docstring"> ids and port numbers seperately.</tt> </tt>
-<a name="L1257"></a><tt class="py-lineno">1257</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L1258"></a><tt class="py-lineno">1258</tt> <tt class="py-line"><tt class="py-docstring"> * ingressDeviceList: List of device ids of ingress device</tt> </tt>
-<a name="L1259"></a><tt class="py-lineno">1259</tt> <tt class="py-line"><tt class="py-docstring"> ( Atleast 2 ingress devices required in the list )</tt> </tt>
-<a name="L1260"></a><tt class="py-lineno">1260</tt> <tt class="py-line"><tt class="py-docstring"> * egressDevice: device id of egress device</tt> </tt>
-<a name="L1261"></a><tt class="py-lineno">1261</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L1262"></a><tt class="py-lineno">1262</tt> <tt class="py-line"><tt class="py-docstring"> * ethType: specify ethType</tt> </tt>
-<a name="L1263"></a><tt class="py-lineno">1263</tt> <tt class="py-line"><tt class="py-docstring"> * ethSrc: specify ethSrc ( i.e. src mac addr )</tt> </tt>
-<a name="L1264"></a><tt class="py-lineno">1264</tt> <tt class="py-line"><tt class="py-docstring"> * ethDst: specify ethDst ( i.e. dst mac addr )</tt> </tt>
-<a name="L1265"></a><tt class="py-lineno">1265</tt> <tt class="py-line"><tt class="py-docstring"> * bandwidth: specify bandwidth capacity of link</tt> </tt>
-<a name="L1266"></a><tt class="py-lineno">1266</tt> <tt class="py-line"><tt class="py-docstring"> * lambdaAlloc: if True, intent will allocate lambda</tt> </tt>
-<a name="L1267"></a><tt class="py-lineno">1267</tt> <tt class="py-line"><tt class="py-docstring"> for the specified intent</tt> </tt>
-<a name="L1268"></a><tt class="py-lineno">1268</tt> <tt class="py-line"><tt class="py-docstring"> * ipProto: specify ip protocol</tt> </tt>
-<a name="L1269"></a><tt class="py-lineno">1269</tt> <tt class="py-line"><tt class="py-docstring"> * ipSrc: specify ip source address</tt> </tt>
-<a name="L1270"></a><tt class="py-lineno">1270</tt> <tt class="py-line"><tt class="py-docstring"> * ipDst: specify ip destination address</tt> </tt>
-<a name="L1271"></a><tt class="py-lineno">1271</tt> <tt class="py-line"><tt class="py-docstring"> * tcpSrc: specify tcp source port</tt> </tt>
-<a name="L1272"></a><tt class="py-lineno">1272</tt> <tt class="py-line"><tt class="py-docstring"> * tcpDst: specify tcp destination port</tt> </tt>
-<a name="L1273"></a><tt class="py-lineno">1273</tt> <tt class="py-line"><tt class="py-docstring"> * setEthSrc: action to Rewrite Source MAC Address</tt> </tt>
-<a name="L1274"></a><tt class="py-lineno">1274</tt> <tt class="py-line"><tt class="py-docstring"> * setEthDst: action to Rewrite Destination MAC Address</tt> </tt>
-<a name="L1275"></a><tt class="py-lineno">1275</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1276"></a><tt class="py-lineno">1276</tt> <tt class="py-line"><tt class="py-docstring"> Adds a multipoint-to-singlepoint intent ( uni-directional ) by</tt> </tt>
-<a name="L1277"></a><tt class="py-lineno">1277</tt> <tt class="py-line"><tt class="py-docstring"> specifying device id's and optional fields</tt> </tt>
-<a name="L1278"></a><tt class="py-lineno">1278</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L1279"></a><tt class="py-lineno">1279</tt> <tt class="py-line"><tt class="py-docstring"> A string of the intent id or None on error</tt> </tt>
-<a name="L1280"></a><tt class="py-lineno">1280</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1281"></a><tt class="py-lineno">1281</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: This function may change depending on the</tt> </tt>
-<a name="L1282"></a><tt class="py-lineno">1282</tt> <tt class="py-line"><tt class="py-docstring"> options developers provide for multipoint-to-singlepoint</tt> </tt>
-<a name="L1283"></a><tt class="py-lineno">1283</tt> <tt class="py-line"><tt class="py-docstring"> intent via cli</tt> </tt>
-<a name="L1284"></a><tt class="py-lineno">1284</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1285"></a><tt class="py-lineno">1285</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1286"></a><tt class="py-lineno">1286</tt> <tt class="py-line"> <tt class="py-comment"># If there are no optional arguments</tt> </tt>
-<a name="L1287"></a><tt class="py-lineno">1287</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ethType</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ethSrc</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ethDst</tt>\ </tt>
-<a name="L1288"></a><tt class="py-lineno">1288</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">bandwidth</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">lambdaAlloc</tt>\ </tt>
-<a name="L1289"></a><tt class="py-lineno">1289</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ipProto</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ipSrc</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ipDst</tt>\ </tt>
-<a name="L1290"></a><tt class="py-lineno">1290</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tcpSrc</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tcpDst</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">setEthSrc</tt>\ </tt>
-<a name="L1291"></a><tt class="py-lineno">1291</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">setEthDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1292"></a><tt class="py-lineno">1292</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"add-multi-to-single-intent"</tt> </tt>
-<a name="L1293"></a><tt class="py-lineno">1293</tt> <tt class="py-line"> </tt>
-<a name="L1294"></a><tt class="py-lineno">1294</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1295"></a><tt class="py-lineno">1295</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"add-multi-to-single-intent"</tt> </tt>
-<a name="L1296"></a><tt class="py-lineno">1296</tt> <tt class="py-line"> </tt>
-<a name="L1297"></a><tt class="py-lineno">1297</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethType</tt><tt class="py-op">:</tt> </tt>
-<a name="L1298"></a><tt class="py-lineno">1298</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ethType "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ethType</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1299"></a><tt class="py-lineno">1299</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1300"></a><tt class="py-lineno">1300</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ethSrc "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ethSrc</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1301"></a><tt class="py-lineno">1301</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1302"></a><tt class="py-lineno">1302</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ethDst "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ethDst</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1303"></a><tt class="py-lineno">1303</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">bandwidth</tt><tt class="py-op">:</tt> </tt>
-<a name="L1304"></a><tt class="py-lineno">1304</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --bandwidth "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">bandwidth</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1305"></a><tt class="py-lineno">1305</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">lambdaAlloc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1306"></a><tt class="py-lineno">1306</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --lambda "</tt> </tt>
-<a name="L1307"></a><tt class="py-lineno">1307</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipProto</tt><tt class="py-op">:</tt> </tt>
-<a name="L1308"></a><tt class="py-lineno">1308</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ipProto "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ipProto</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1309"></a><tt class="py-lineno">1309</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1310"></a><tt class="py-lineno">1310</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ipSrc "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ipSrc</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1311"></a><tt class="py-lineno">1311</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1312"></a><tt class="py-lineno">1312</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ipDst "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ipDst</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1313"></a><tt class="py-lineno">1313</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tcpSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1314"></a><tt class="py-lineno">1314</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --tcpSrc "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpSrc</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1315"></a><tt class="py-lineno">1315</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tcpDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1316"></a><tt class="py-lineno">1316</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --tcpDst "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpDst</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1317"></a><tt class="py-lineno">1317</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">setEthSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1318"></a><tt class="py-lineno">1318</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --setEthSrc "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setEthSrc</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1319"></a><tt class="py-lineno">1319</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">setEthDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1320"></a><tt class="py-lineno">1320</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --setEthDst "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setEthDst</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1321"></a><tt class="py-lineno">1321</tt> <tt class="py-line"> </tt>
-<a name="L1322"></a><tt class="py-lineno">1322</tt> <tt class="py-line"> <tt class="py-comment"># Check whether the user appended the port</tt> </tt>
-<a name="L1323"></a><tt class="py-lineno">1323</tt> <tt class="py-line"> <tt class="py-comment"># or provided it as an input</tt> </tt>
-<a name="L1324"></a><tt class="py-lineno">1324</tt> <tt class="py-line"> </tt>
-<a name="L1325"></a><tt class="py-lineno">1325</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">portIngressList</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1326"></a><tt class="py-lineno">1326</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">ingressDevice</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ingressDeviceList</tt><tt class="py-op">:</tt> </tt>
-<a name="L1327"></a><tt class="py-lineno">1327</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"/"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ingressDevice</tt><tt class="py-op">:</tt> </tt>
-<a name="L1328"></a><tt class="py-lineno">1328</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ingressDevice</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1329"></a><tt class="py-lineno">1329</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1330"></a><tt class="py-lineno">1330</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-459" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-459', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-460" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-460', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"You must specify "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1331"></a><tt class="py-lineno">1331</tt> <tt class="py-line"> <tt class="py-string">"the ingress port"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1332"></a><tt class="py-lineno">1332</tt> <tt class="py-line"> <tt class="py-comment"># TODO: perhaps more meaningful return</tt> </tt>
-<a name="L1333"></a><tt class="py-lineno">1333</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1334"></a><tt class="py-lineno">1334</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1335"></a><tt class="py-lineno">1335</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">ingressDeviceList</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">portIngressList</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1336"></a><tt class="py-lineno">1336</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">ingressDevice</tt><tt class="py-op">,</tt> <tt class="py-name">portIngress</tt> <tt class="py-keyword">in</tt> <tt class="py-name">zip</tt><tt class="py-op">(</tt> <tt class="py-name">ingressDeviceList</tt><tt class="py-op">,</tt> </tt>
-<a name="L1337"></a><tt class="py-lineno">1337</tt> <tt class="py-line"> <tt class="py-name">portIngressList</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1338"></a><tt class="py-lineno">1338</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1339"></a><tt class="py-lineno">1339</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ingressDevice</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1340"></a><tt class="py-lineno">1340</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">portIngress</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> </tt>
-<a name="L1341"></a><tt class="py-lineno">1341</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1342"></a><tt class="py-lineno">1342</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-461" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-461', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-462" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-462', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Device list and port list does not "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1343"></a><tt class="py-lineno">1343</tt> <tt class="py-line"> <tt class="py-string">"have the same length"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1344"></a><tt class="py-lineno">1344</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1345"></a><tt class="py-lineno">1345</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"/"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">egressDevice</tt><tt class="py-op">:</tt> </tt>
-<a name="L1346"></a><tt class="py-lineno">1346</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">egressDevice</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1347"></a><tt class="py-lineno">1347</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1348"></a><tt class="py-lineno">1348</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">portEgress</tt><tt class="py-op">:</tt> </tt>
-<a name="L1349"></a><tt class="py-lineno">1349</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-463" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-463', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-464" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-464', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"You must specify "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1350"></a><tt class="py-lineno">1350</tt> <tt class="py-line"> <tt class="py-string">"the egress port"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1351"></a><tt class="py-lineno">1351</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1352"></a><tt class="py-lineno">1352</tt> <tt class="py-line"> </tt>
-<a name="L1353"></a><tt class="py-lineno">1353</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1354"></a><tt class="py-lineno">1354</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">egressDevice</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1355"></a><tt class="py-lineno">1355</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">portEgress</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1356"></a><tt class="py-lineno">1356</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-465" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-465', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1357"></a><tt class="py-lineno">1357</tt> <tt class="py-line"> <tt class="py-comment"># If error, return error message</tt> </tt>
-<a name="L1358"></a><tt class="py-lineno">1358</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1359"></a><tt class="py-lineno">1359</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-466" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-466', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-467" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-467', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in adding multipoint-to-singlepoint "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1360"></a><tt class="py-lineno">1360</tt> <tt class="py-line"> <tt class="py-string">"intent"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1361"></a><tt class="py-lineno">1361</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1362"></a><tt class="py-lineno">1362</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1363"></a><tt class="py-lineno">1363</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">'id=0x([\da-f]+),'</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt><tt class="py-op">)</tt> </tt>
-<a name="L1364"></a><tt class="py-lineno">1364</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">match</tt><tt class="py-op">:</tt> </tt>
-<a name="L1365"></a><tt class="py-lineno">1365</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">3</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L1366"></a><tt class="py-lineno">1366</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1367"></a><tt class="py-lineno">1367</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-468" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-468', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-469" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-469', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, intent ID not found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1368"></a><tt class="py-lineno">1368</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1369"></a><tt class="py-lineno">1369</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1370"></a><tt class="py-lineno">1370</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-470" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-470', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1371"></a><tt class="py-lineno">1371</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1372"></a><tt class="py-lineno">1372</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1373"></a><tt class="py-lineno">1373</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-471" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-471', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-472" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-472', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1374"></a><tt class="py-lineno">1374</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-473" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-473', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-474" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-474', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1375"></a><tt class="py-lineno">1375</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-475" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-475', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1376"></a><tt class="py-lineno">1376</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-476" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-476', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1377"></a><tt class="py-lineno">1377</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1378"></a><tt class="py-lineno">1378</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-477" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-477', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1379"></a><tt class="py-lineno">1379</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-478" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-478', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1380"></a><tt class="py-lineno">1380</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-479" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-479', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1381"></a><tt class="py-lineno">1381</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.addSinglepointToMultipointIntent"></a><div id="OnosCliDriver.addSinglepointToMultipointIntent-def"><a name="L1382"></a><tt class="py-lineno">1382</tt> <a class="py-toggle" href="#" id="OnosCliDriver.addSinglepointToMultipointIntent-toggle" onclick="return toggle('OnosCliDriver.addSinglepointToMultipointIntent');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addSinglepointToMultipointIntent">addSinglepointToMultipointIntent</a><tt class="py-op">(</tt> </tt>
-<a name="L1383"></a><tt class="py-lineno">1383</tt> <tt class="py-line"> <tt class="py-param">self</tt><tt class="py-op">,</tt> </tt>
-<a name="L1384"></a><tt class="py-lineno">1384</tt> <tt class="py-line"> <tt class="py-param">ingressDevice</tt><tt class="py-op">,</tt> </tt>
-<a name="L1385"></a><tt class="py-lineno">1385</tt> <tt class="py-line"> <tt class="py-param">egressDeviceList</tt><tt class="py-op">,</tt> </tt>
-<a name="L1386"></a><tt class="py-lineno">1386</tt> <tt class="py-line"> <tt class="py-param">portIngress</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1387"></a><tt class="py-lineno">1387</tt> <tt class="py-line"> <tt class="py-param">portEgressList</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L1388"></a><tt class="py-lineno">1388</tt> <tt class="py-line"> <tt class="py-param">ethType</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1389"></a><tt class="py-lineno">1389</tt> <tt class="py-line"> <tt class="py-param">ethSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1390"></a><tt class="py-lineno">1390</tt> <tt class="py-line"> <tt class="py-param">ethDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1391"></a><tt class="py-lineno">1391</tt> <tt class="py-line"> <tt class="py-param">bandwidth</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1392"></a><tt class="py-lineno">1392</tt> <tt class="py-line"> <tt class="py-param">lambdaAlloc</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> </tt>
-<a name="L1393"></a><tt class="py-lineno">1393</tt> <tt class="py-line"> <tt class="py-param">ipProto</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1394"></a><tt class="py-lineno">1394</tt> <tt class="py-line"> <tt class="py-param">ipSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1395"></a><tt class="py-lineno">1395</tt> <tt class="py-line"> <tt class="py-param">ipDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1396"></a><tt class="py-lineno">1396</tt> <tt class="py-line"> <tt class="py-param">tcpSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1397"></a><tt class="py-lineno">1397</tt> <tt class="py-line"> <tt class="py-param">tcpDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1398"></a><tt class="py-lineno">1398</tt> <tt class="py-line"> <tt class="py-param">setEthSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1399"></a><tt class="py-lineno">1399</tt> <tt class="py-line"> <tt class="py-param">setEthDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.addSinglepointToMultipointIntent-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.addSinglepointToMultipointIntent-expanded"><a name="L1400"></a><tt class="py-lineno">1400</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1401"></a><tt class="py-lineno">1401</tt> <tt class="py-line"><tt class="py-docstring"> Note:</tt> </tt>
-<a name="L1402"></a><tt class="py-lineno">1402</tt> <tt class="py-line"><tt class="py-docstring"> This function assumes the format of all egress devices</tt> </tt>
-<a name="L1403"></a><tt class="py-lineno">1403</tt> <tt class="py-line"><tt class="py-docstring"> is same. That is, all egress devices include port numbers</tt> </tt>
-<a name="L1404"></a><tt class="py-lineno">1404</tt> <tt class="py-line"><tt class="py-docstring"> with a "/" or all egress devices could specify device</tt> </tt>
-<a name="L1405"></a><tt class="py-lineno">1405</tt> <tt class="py-line"><tt class="py-docstring"> ids and port numbers seperately.</tt> </tt>
-<a name="L1406"></a><tt class="py-lineno">1406</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L1407"></a><tt class="py-lineno">1407</tt> <tt class="py-line"><tt class="py-docstring"> * EgressDeviceList: List of device ids of egress device</tt> </tt>
-<a name="L1408"></a><tt class="py-lineno">1408</tt> <tt class="py-line"><tt class="py-docstring"> ( Atleast 2 eress devices required in the list )</tt> </tt>
-<a name="L1409"></a><tt class="py-lineno">1409</tt> <tt class="py-line"><tt class="py-docstring"> * ingressDevice: device id of ingress device</tt> </tt>
-<a name="L1410"></a><tt class="py-lineno">1410</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L1411"></a><tt class="py-lineno">1411</tt> <tt class="py-line"><tt class="py-docstring"> * ethType: specify ethType</tt> </tt>
-<a name="L1412"></a><tt class="py-lineno">1412</tt> <tt class="py-line"><tt class="py-docstring"> * ethSrc: specify ethSrc ( i.e. src mac addr )</tt> </tt>
-<a name="L1413"></a><tt class="py-lineno">1413</tt> <tt class="py-line"><tt class="py-docstring"> * ethDst: specify ethDst ( i.e. dst mac addr )</tt> </tt>
-<a name="L1414"></a><tt class="py-lineno">1414</tt> <tt class="py-line"><tt class="py-docstring"> * bandwidth: specify bandwidth capacity of link</tt> </tt>
-<a name="L1415"></a><tt class="py-lineno">1415</tt> <tt class="py-line"><tt class="py-docstring"> * lambdaAlloc: if True, intent will allocate lambda</tt> </tt>
-<a name="L1416"></a><tt class="py-lineno">1416</tt> <tt class="py-line"><tt class="py-docstring"> for the specified intent</tt> </tt>
-<a name="L1417"></a><tt class="py-lineno">1417</tt> <tt class="py-line"><tt class="py-docstring"> * ipProto: specify ip protocol</tt> </tt>
-<a name="L1418"></a><tt class="py-lineno">1418</tt> <tt class="py-line"><tt class="py-docstring"> * ipSrc: specify ip source address</tt> </tt>
-<a name="L1419"></a><tt class="py-lineno">1419</tt> <tt class="py-line"><tt class="py-docstring"> * ipDst: specify ip destination address</tt> </tt>
-<a name="L1420"></a><tt class="py-lineno">1420</tt> <tt class="py-line"><tt class="py-docstring"> * tcpSrc: specify tcp source port</tt> </tt>
-<a name="L1421"></a><tt class="py-lineno">1421</tt> <tt class="py-line"><tt class="py-docstring"> * tcpDst: specify tcp destination port</tt> </tt>
-<a name="L1422"></a><tt class="py-lineno">1422</tt> <tt class="py-line"><tt class="py-docstring"> * setEthSrc: action to Rewrite Source MAC Address</tt> </tt>
-<a name="L1423"></a><tt class="py-lineno">1423</tt> <tt class="py-line"><tt class="py-docstring"> * setEthDst: action to Rewrite Destination MAC Address</tt> </tt>
-<a name="L1424"></a><tt class="py-lineno">1424</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1425"></a><tt class="py-lineno">1425</tt> <tt class="py-line"><tt class="py-docstring"> Adds a singlepoint-to-multipoint intent ( uni-directional ) by</tt> </tt>
-<a name="L1426"></a><tt class="py-lineno">1426</tt> <tt class="py-line"><tt class="py-docstring"> specifying device id's and optional fields</tt> </tt>
-<a name="L1427"></a><tt class="py-lineno">1427</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L1428"></a><tt class="py-lineno">1428</tt> <tt class="py-line"><tt class="py-docstring"> A string of the intent id or None on error</tt> </tt>
-<a name="L1429"></a><tt class="py-lineno">1429</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1430"></a><tt class="py-lineno">1430</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: This function may change depending on the</tt> </tt>
-<a name="L1431"></a><tt class="py-lineno">1431</tt> <tt class="py-line"><tt class="py-docstring"> options developers provide for singlepoint-to-multipoint</tt> </tt>
-<a name="L1432"></a><tt class="py-lineno">1432</tt> <tt class="py-line"><tt class="py-docstring"> intent via cli</tt> </tt>
-<a name="L1433"></a><tt class="py-lineno">1433</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1434"></a><tt class="py-lineno">1434</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1435"></a><tt class="py-lineno">1435</tt> <tt class="py-line"> <tt class="py-comment"># If there are no optional arguments</tt> </tt>
-<a name="L1436"></a><tt class="py-lineno">1436</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ethType</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ethSrc</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ethDst</tt>\ </tt>
-<a name="L1437"></a><tt class="py-lineno">1437</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">bandwidth</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">lambdaAlloc</tt>\ </tt>
-<a name="L1438"></a><tt class="py-lineno">1438</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ipProto</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ipSrc</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ipDst</tt>\ </tt>
-<a name="L1439"></a><tt class="py-lineno">1439</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tcpSrc</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tcpDst</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">setEthSrc</tt>\ </tt>
-<a name="L1440"></a><tt class="py-lineno">1440</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">setEthDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1441"></a><tt class="py-lineno">1441</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"add-single-to-multi-intent"</tt> </tt>
-<a name="L1442"></a><tt class="py-lineno">1442</tt> <tt class="py-line"> </tt>
-<a name="L1443"></a><tt class="py-lineno">1443</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1444"></a><tt class="py-lineno">1444</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"add-single-to-multi-intent"</tt> </tt>
-<a name="L1445"></a><tt class="py-lineno">1445</tt> <tt class="py-line"> </tt>
-<a name="L1446"></a><tt class="py-lineno">1446</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethType</tt><tt class="py-op">:</tt> </tt>
-<a name="L1447"></a><tt class="py-lineno">1447</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ethType "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ethType</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1448"></a><tt class="py-lineno">1448</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1449"></a><tt class="py-lineno">1449</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ethSrc "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ethSrc</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1450"></a><tt class="py-lineno">1450</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1451"></a><tt class="py-lineno">1451</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ethDst "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ethDst</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1452"></a><tt class="py-lineno">1452</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">bandwidth</tt><tt class="py-op">:</tt> </tt>
-<a name="L1453"></a><tt class="py-lineno">1453</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --bandwidth "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">bandwidth</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1454"></a><tt class="py-lineno">1454</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">lambdaAlloc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1455"></a><tt class="py-lineno">1455</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --lambda "</tt> </tt>
-<a name="L1456"></a><tt class="py-lineno">1456</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipProto</tt><tt class="py-op">:</tt> </tt>
-<a name="L1457"></a><tt class="py-lineno">1457</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ipProto "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ipProto</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1458"></a><tt class="py-lineno">1458</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1459"></a><tt class="py-lineno">1459</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ipSrc "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ipSrc</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1460"></a><tt class="py-lineno">1460</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1461"></a><tt class="py-lineno">1461</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ipDst "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ipDst</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1462"></a><tt class="py-lineno">1462</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tcpSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1463"></a><tt class="py-lineno">1463</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --tcpSrc "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpSrc</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1464"></a><tt class="py-lineno">1464</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tcpDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1465"></a><tt class="py-lineno">1465</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --tcpDst "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpDst</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1466"></a><tt class="py-lineno">1466</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">setEthSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1467"></a><tt class="py-lineno">1467</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --setEthSrc "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setEthSrc</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1468"></a><tt class="py-lineno">1468</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">setEthDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1469"></a><tt class="py-lineno">1469</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --setEthDst "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setEthDst</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1470"></a><tt class="py-lineno">1470</tt> <tt class="py-line"> </tt>
-<a name="L1471"></a><tt class="py-lineno">1471</tt> <tt class="py-line"> <tt class="py-comment"># Check whether the user appended the port</tt> </tt>
-<a name="L1472"></a><tt class="py-lineno">1472</tt> <tt class="py-line"> <tt class="py-comment"># or provided it as an input</tt> </tt>
-<a name="L1473"></a><tt class="py-lineno">1473</tt> <tt class="py-line"> </tt>
-<a name="L1474"></a><tt class="py-lineno">1474</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"/"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ingressDevice</tt><tt class="py-op">:</tt> </tt>
-<a name="L1475"></a><tt class="py-lineno">1475</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ingressDevice</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1476"></a><tt class="py-lineno">1476</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1477"></a><tt class="py-lineno">1477</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">portIngress</tt><tt class="py-op">:</tt> </tt>
-<a name="L1478"></a><tt class="py-lineno">1478</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-480" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-480', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-481" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-481', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"You must specify "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1479"></a><tt class="py-lineno">1479</tt> <tt class="py-line"> <tt class="py-string">"the Ingress port"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1480"></a><tt class="py-lineno">1480</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1481"></a><tt class="py-lineno">1481</tt> <tt class="py-line"> </tt>
-<a name="L1482"></a><tt class="py-lineno">1482</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1483"></a><tt class="py-lineno">1483</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ingressDevice</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1484"></a><tt class="py-lineno">1484</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">portIngress</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1485"></a><tt class="py-lineno">1485</tt> <tt class="py-line"> </tt>
-<a name="L1486"></a><tt class="py-lineno">1486</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">portEgressList</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1487"></a><tt class="py-lineno">1487</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">egressDevice</tt> <tt class="py-keyword">in</tt> <tt class="py-name">egressDeviceList</tt><tt class="py-op">:</tt> </tt>
-<a name="L1488"></a><tt class="py-lineno">1488</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"/"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">egressDevice</tt><tt class="py-op">:</tt> </tt>
-<a name="L1489"></a><tt class="py-lineno">1489</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">egressDevice</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1490"></a><tt class="py-lineno">1490</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1491"></a><tt class="py-lineno">1491</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-482" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-482', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-483" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-483', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"You must specify "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1492"></a><tt class="py-lineno">1492</tt> <tt class="py-line"> <tt class="py-string">"the egress port"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1493"></a><tt class="py-lineno">1493</tt> <tt class="py-line"> <tt class="py-comment"># TODO: perhaps more meaningful return</tt> </tt>
-<a name="L1494"></a><tt class="py-lineno">1494</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1495"></a><tt class="py-lineno">1495</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1496"></a><tt class="py-lineno">1496</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">egressDeviceList</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">portEgressList</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1497"></a><tt class="py-lineno">1497</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">egressDevice</tt><tt class="py-op">,</tt> <tt class="py-name">portEgress</tt> <tt class="py-keyword">in</tt> <tt class="py-name">zip</tt><tt class="py-op">(</tt> <tt class="py-name">egressDeviceList</tt><tt class="py-op">,</tt> </tt>
-<a name="L1498"></a><tt class="py-lineno">1498</tt> <tt class="py-line"> <tt class="py-name">portEgressList</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1499"></a><tt class="py-lineno">1499</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1500"></a><tt class="py-lineno">1500</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">egressDevice</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1501"></a><tt class="py-lineno">1501</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">portEgress</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1502"></a><tt class="py-lineno">1502</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1503"></a><tt class="py-lineno">1503</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-484" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-484', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-485" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-485', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Device list and port list does not "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1504"></a><tt class="py-lineno">1504</tt> <tt class="py-line"> <tt class="py-string">"have the same length"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1505"></a><tt class="py-lineno">1505</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1506"></a><tt class="py-lineno">1506</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-486" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-486', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1507"></a><tt class="py-lineno">1507</tt> <tt class="py-line"> <tt class="py-comment"># If error, return error message</tt> </tt>
-<a name="L1508"></a><tt class="py-lineno">1508</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1509"></a><tt class="py-lineno">1509</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-487" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-487', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-488" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-488', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in adding singlepoint-to-multipoint "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1510"></a><tt class="py-lineno">1510</tt> <tt class="py-line"> <tt class="py-string">"intent"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1511"></a><tt class="py-lineno">1511</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1512"></a><tt class="py-lineno">1512</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1513"></a><tt class="py-lineno">1513</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">'id=0x([\da-f]+),'</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt><tt class="py-op">)</tt> </tt>
-<a name="L1514"></a><tt class="py-lineno">1514</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">match</tt><tt class="py-op">:</tt> </tt>
-<a name="L1515"></a><tt class="py-lineno">1515</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">3</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L1516"></a><tt class="py-lineno">1516</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1517"></a><tt class="py-lineno">1517</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-489" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-489', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-490" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-490', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, intent ID not found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1518"></a><tt class="py-lineno">1518</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1519"></a><tt class="py-lineno">1519</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1520"></a><tt class="py-lineno">1520</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-491" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-491', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1521"></a><tt class="py-lineno">1521</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1522"></a><tt class="py-lineno">1522</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1523"></a><tt class="py-lineno">1523</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-492" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-492', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-493" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-493', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1524"></a><tt class="py-lineno">1524</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-494" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-494', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-495" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-495', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1525"></a><tt class="py-lineno">1525</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-496" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-496', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1526"></a><tt class="py-lineno">1526</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-497" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-497', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1527"></a><tt class="py-lineno">1527</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1528"></a><tt class="py-lineno">1528</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-498" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-498', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1529"></a><tt class="py-lineno">1529</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-499" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-499', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1530"></a><tt class="py-lineno">1530</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-500" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-500', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1531"></a><tt class="py-lineno">1531</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.addMplsIntent"></a><div id="OnosCliDriver.addMplsIntent-def"><a name="L1532"></a><tt class="py-lineno">1532</tt> <a class="py-toggle" href="#" id="OnosCliDriver.addMplsIntent-toggle" onclick="return toggle('OnosCliDriver.addMplsIntent');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addMplsIntent">addMplsIntent</a><tt class="py-op">(</tt> </tt>
-<a name="L1533"></a><tt class="py-lineno">1533</tt> <tt class="py-line"> <tt class="py-param">self</tt><tt class="py-op">,</tt> </tt>
-<a name="L1534"></a><tt class="py-lineno">1534</tt> <tt class="py-line"> <tt class="py-param">ingressDevice</tt><tt class="py-op">,</tt> </tt>
-<a name="L1535"></a><tt class="py-lineno">1535</tt> <tt class="py-line"> <tt class="py-param">egressDevice</tt><tt class="py-op">,</tt> </tt>
-<a name="L1536"></a><tt class="py-lineno">1536</tt> <tt class="py-line"> <tt class="py-param">ingressPort</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1537"></a><tt class="py-lineno">1537</tt> <tt class="py-line"> <tt class="py-param">egressPort</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1538"></a><tt class="py-lineno">1538</tt> <tt class="py-line"> <tt class="py-param">ethType</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1539"></a><tt class="py-lineno">1539</tt> <tt class="py-line"> <tt class="py-param">ethSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1540"></a><tt class="py-lineno">1540</tt> <tt class="py-line"> <tt class="py-param">ethDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1541"></a><tt class="py-lineno">1541</tt> <tt class="py-line"> <tt class="py-param">bandwidth</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1542"></a><tt class="py-lineno">1542</tt> <tt class="py-line"> <tt class="py-param">lambdaAlloc</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> </tt>
-<a name="L1543"></a><tt class="py-lineno">1543</tt> <tt class="py-line"> <tt class="py-param">ipProto</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1544"></a><tt class="py-lineno">1544</tt> <tt class="py-line"> <tt class="py-param">ipSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1545"></a><tt class="py-lineno">1545</tt> <tt class="py-line"> <tt class="py-param">ipDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1546"></a><tt class="py-lineno">1546</tt> <tt class="py-line"> <tt class="py-param">tcpSrc</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1547"></a><tt class="py-lineno">1547</tt> <tt class="py-line"> <tt class="py-param">tcpDst</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1548"></a><tt class="py-lineno">1548</tt> <tt class="py-line"> <tt class="py-param">ingressLabel</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1549"></a><tt class="py-lineno">1549</tt> <tt class="py-line"> <tt class="py-param">egressLabel</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1550"></a><tt class="py-lineno">1550</tt> <tt class="py-line"> <tt class="py-param">priority</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.addMplsIntent-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.addMplsIntent-expanded"><a name="L1551"></a><tt class="py-lineno">1551</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1552"></a><tt class="py-lineno">1552</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L1553"></a><tt class="py-lineno">1553</tt> <tt class="py-line"><tt class="py-docstring"> * ingressDevice: device id of ingress device</tt> </tt>
-<a name="L1554"></a><tt class="py-lineno">1554</tt> <tt class="py-line"><tt class="py-docstring"> * egressDevice: device id of egress device</tt> </tt>
-<a name="L1555"></a><tt class="py-lineno">1555</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L1556"></a><tt class="py-lineno">1556</tt> <tt class="py-line"><tt class="py-docstring"> * ethType: specify ethType</tt> </tt>
-<a name="L1557"></a><tt class="py-lineno">1557</tt> <tt class="py-line"><tt class="py-docstring"> * ethSrc: specify ethSrc ( i.e. src mac addr )</tt> </tt>
-<a name="L1558"></a><tt class="py-lineno">1558</tt> <tt class="py-line"><tt class="py-docstring"> * ethDst: specify ethDst ( i.e. dst mac addr )</tt> </tt>
-<a name="L1559"></a><tt class="py-lineno">1559</tt> <tt class="py-line"><tt class="py-docstring"> * bandwidth: specify bandwidth capacity of link</tt> </tt>
-<a name="L1560"></a><tt class="py-lineno">1560</tt> <tt class="py-line"><tt class="py-docstring"> * lambdaAlloc: if True, intent will allocate lambda</tt> </tt>
-<a name="L1561"></a><tt class="py-lineno">1561</tt> <tt class="py-line"><tt class="py-docstring"> for the specified intent</tt> </tt>
-<a name="L1562"></a><tt class="py-lineno">1562</tt> <tt class="py-line"><tt class="py-docstring"> * ipProto: specify ip protocol</tt> </tt>
-<a name="L1563"></a><tt class="py-lineno">1563</tt> <tt class="py-line"><tt class="py-docstring"> * ipSrc: specify ip source address</tt> </tt>
-<a name="L1564"></a><tt class="py-lineno">1564</tt> <tt class="py-line"><tt class="py-docstring"> * ipDst: specify ip destination address</tt> </tt>
-<a name="L1565"></a><tt class="py-lineno">1565</tt> <tt class="py-line"><tt class="py-docstring"> * tcpSrc: specify tcp source port</tt> </tt>
-<a name="L1566"></a><tt class="py-lineno">1566</tt> <tt class="py-line"><tt class="py-docstring"> * tcpDst: specify tcp destination port</tt> </tt>
-<a name="L1567"></a><tt class="py-lineno">1567</tt> <tt class="py-line"><tt class="py-docstring"> * ingressLabel: Ingress MPLS label</tt> </tt>
-<a name="L1568"></a><tt class="py-lineno">1568</tt> <tt class="py-line"><tt class="py-docstring"> * egressLabel: Egress MPLS label</tt> </tt>
-<a name="L1569"></a><tt class="py-lineno">1569</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1570"></a><tt class="py-lineno">1570</tt> <tt class="py-line"><tt class="py-docstring"> Adds MPLS intent by</tt> </tt>
-<a name="L1571"></a><tt class="py-lineno">1571</tt> <tt class="py-line"><tt class="py-docstring"> specifying device id's and optional fields</tt> </tt>
-<a name="L1572"></a><tt class="py-lineno">1572</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L1573"></a><tt class="py-lineno">1573</tt> <tt class="py-line"><tt class="py-docstring"> A string of the intent id or None on error</tt> </tt>
-<a name="L1574"></a><tt class="py-lineno">1574</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1575"></a><tt class="py-lineno">1575</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: This function may change depending on the</tt> </tt>
-<a name="L1576"></a><tt class="py-lineno">1576</tt> <tt class="py-line"><tt class="py-docstring"> options developers provide for MPLS</tt> </tt>
-<a name="L1577"></a><tt class="py-lineno">1577</tt> <tt class="py-line"><tt class="py-docstring"> intent via cli</tt> </tt>
-<a name="L1578"></a><tt class="py-lineno">1578</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1579"></a><tt class="py-lineno">1579</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1580"></a><tt class="py-lineno">1580</tt> <tt class="py-line"> <tt class="py-comment"># If there are no optional arguments</tt> </tt>
-<a name="L1581"></a><tt class="py-lineno">1581</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ethType</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ethSrc</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ethDst</tt>\ </tt>
-<a name="L1582"></a><tt class="py-lineno">1582</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">bandwidth</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">lambdaAlloc</tt> \ </tt>
-<a name="L1583"></a><tt class="py-lineno">1583</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ipProto</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ipSrc</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ipDst</tt> \ </tt>
-<a name="L1584"></a><tt class="py-lineno">1584</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tcpSrc</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tcpDst</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ingressLabel</tt> \ </tt>
-<a name="L1585"></a><tt class="py-lineno">1585</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">egressLabel</tt><tt class="py-op">:</tt> </tt>
-<a name="L1586"></a><tt class="py-lineno">1586</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"add-mpls-intent"</tt> </tt>
-<a name="L1587"></a><tt class="py-lineno">1587</tt> <tt class="py-line"> </tt>
-<a name="L1588"></a><tt class="py-lineno">1588</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1589"></a><tt class="py-lineno">1589</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"add-mpls-intent"</tt> </tt>
-<a name="L1590"></a><tt class="py-lineno">1590</tt> <tt class="py-line"> </tt>
-<a name="L1591"></a><tt class="py-lineno">1591</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethType</tt><tt class="py-op">:</tt> </tt>
-<a name="L1592"></a><tt class="py-lineno">1592</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ethType "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ethType</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1593"></a><tt class="py-lineno">1593</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1594"></a><tt class="py-lineno">1594</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ethSrc "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ethSrc</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1595"></a><tt class="py-lineno">1595</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ethDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1596"></a><tt class="py-lineno">1596</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ethDst "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ethDst</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1597"></a><tt class="py-lineno">1597</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">bandwidth</tt><tt class="py-op">:</tt> </tt>
-<a name="L1598"></a><tt class="py-lineno">1598</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --bandwidth "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">bandwidth</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1599"></a><tt class="py-lineno">1599</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">lambdaAlloc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1600"></a><tt class="py-lineno">1600</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --lambda "</tt> </tt>
-<a name="L1601"></a><tt class="py-lineno">1601</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipProto</tt><tt class="py-op">:</tt> </tt>
-<a name="L1602"></a><tt class="py-lineno">1602</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ipProto "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ipProto</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1603"></a><tt class="py-lineno">1603</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1604"></a><tt class="py-lineno">1604</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ipSrc "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ipSrc</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1605"></a><tt class="py-lineno">1605</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ipDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1606"></a><tt class="py-lineno">1606</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ipDst "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ipDst</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1607"></a><tt class="py-lineno">1607</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tcpSrc</tt><tt class="py-op">:</tt> </tt>
-<a name="L1608"></a><tt class="py-lineno">1608</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --tcpSrc "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpSrc</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1609"></a><tt class="py-lineno">1609</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tcpDst</tt><tt class="py-op">:</tt> </tt>
-<a name="L1610"></a><tt class="py-lineno">1610</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --tcpDst "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpDst</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1611"></a><tt class="py-lineno">1611</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ingressLabel</tt><tt class="py-op">:</tt> </tt>
-<a name="L1612"></a><tt class="py-lineno">1612</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --ingressLabel "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ingressLabel</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1613"></a><tt class="py-lineno">1613</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">egressLabel</tt><tt class="py-op">:</tt> </tt>
-<a name="L1614"></a><tt class="py-lineno">1614</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --egressLabel "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">egressLabel</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1615"></a><tt class="py-lineno">1615</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">priority</tt><tt class="py-op">:</tt> </tt>
-<a name="L1616"></a><tt class="py-lineno">1616</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --priority "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">priority</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1617"></a><tt class="py-lineno">1617</tt> <tt class="py-line"> </tt>
-<a name="L1618"></a><tt class="py-lineno">1618</tt> <tt class="py-line"> <tt class="py-comment"># Check whether the user appended the port</tt> </tt>
-<a name="L1619"></a><tt class="py-lineno">1619</tt> <tt class="py-line"> <tt class="py-comment"># or provided it as an input</tt> </tt>
-<a name="L1620"></a><tt class="py-lineno">1620</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"/"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ingressDevice</tt><tt class="py-op">:</tt> </tt>
-<a name="L1621"></a><tt class="py-lineno">1621</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ingressDevice</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1622"></a><tt class="py-lineno">1622</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1623"></a><tt class="py-lineno">1623</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ingressPort</tt><tt class="py-op">:</tt> </tt>
-<a name="L1624"></a><tt class="py-lineno">1624</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-501" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-501', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-502" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-502', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"You must specify the ingress port"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1625"></a><tt class="py-lineno">1625</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1626"></a><tt class="py-lineno">1626</tt> <tt class="py-line"> </tt>
-<a name="L1627"></a><tt class="py-lineno">1627</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1628"></a><tt class="py-lineno">1628</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ingressDevice</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1629"></a><tt class="py-lineno">1629</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ingressPort</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> </tt>
-<a name="L1630"></a><tt class="py-lineno">1630</tt> <tt class="py-line"> </tt>
-<a name="L1631"></a><tt class="py-lineno">1631</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"/"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">egressDevice</tt><tt class="py-op">:</tt> </tt>
-<a name="L1632"></a><tt class="py-lineno">1632</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">egressDevice</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1633"></a><tt class="py-lineno">1633</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1634"></a><tt class="py-lineno">1634</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">egressPort</tt><tt class="py-op">:</tt> </tt>
-<a name="L1635"></a><tt class="py-lineno">1635</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-503" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-503', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-504" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-504', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"You must specify the egress port"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1636"></a><tt class="py-lineno">1636</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1637"></a><tt class="py-lineno">1637</tt> <tt class="py-line"> </tt>
-<a name="L1638"></a><tt class="py-lineno">1638</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1639"></a><tt class="py-lineno">1639</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">egressDevice</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1640"></a><tt class="py-lineno">1640</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">egressPort</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1641"></a><tt class="py-lineno">1641</tt> <tt class="py-line"> </tt>
-<a name="L1642"></a><tt class="py-lineno">1642</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-505" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-505', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1643"></a><tt class="py-lineno">1643</tt> <tt class="py-line"> <tt class="py-comment"># If error, return error message</tt> </tt>
-<a name="L1644"></a><tt class="py-lineno">1644</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1645"></a><tt class="py-lineno">1645</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-506" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-506', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-507" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-507', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in adding mpls intent"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1646"></a><tt class="py-lineno">1646</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1647"></a><tt class="py-lineno">1647</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1648"></a><tt class="py-lineno">1648</tt> <tt class="py-line"> <tt class="py-comment"># TODO: print out all the options in this message?</tt> </tt>
-<a name="L1649"></a><tt class="py-lineno">1649</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-508" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-508', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"MPLS intent installed between "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1650"></a><tt class="py-lineno">1650</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ingressDevice</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" and "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1651"></a><tt class="py-lineno">1651</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">egressDevice</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1652"></a><tt class="py-lineno">1652</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">'id=0x([\da-f]+),'</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt><tt class="py-op">)</tt> </tt>
-<a name="L1653"></a><tt class="py-lineno">1653</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">match</tt><tt class="py-op">:</tt> </tt>
-<a name="L1654"></a><tt class="py-lineno">1654</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">3</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L1655"></a><tt class="py-lineno">1655</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1656"></a><tt class="py-lineno">1656</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-509" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-509', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-510" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-510', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, intent ID not found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1657"></a><tt class="py-lineno">1657</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1658"></a><tt class="py-lineno">1658</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1659"></a><tt class="py-lineno">1659</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-511" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-511', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1660"></a><tt class="py-lineno">1660</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1661"></a><tt class="py-lineno">1661</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1662"></a><tt class="py-lineno">1662</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-512" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-512', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-513" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-513', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1663"></a><tt class="py-lineno">1663</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-514" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-514', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-515" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-515', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1664"></a><tt class="py-lineno">1664</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-516" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-516', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1665"></a><tt class="py-lineno">1665</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-517" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-517', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1666"></a><tt class="py-lineno">1666</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1667"></a><tt class="py-lineno">1667</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-518" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-518', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1668"></a><tt class="py-lineno">1668</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-519" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-519', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1669"></a><tt class="py-lineno">1669</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-520" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-520', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1670"></a><tt class="py-lineno">1670</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.removeIntent"></a><div id="OnosCliDriver.removeIntent-def"><a name="L1671"></a><tt class="py-lineno">1671</tt> <a class="py-toggle" href="#" id="OnosCliDriver.removeIntent-toggle" onclick="return toggle('OnosCliDriver.removeIntent');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#removeIntent">removeIntent</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">intentId</tt><tt class="py-op">,</tt> <tt class="py-param">app</tt><tt class="py-op">=</tt><tt class="py-string">'org.onosproject.cli'</tt><tt class="py-op">,</tt> </tt>
-<a name="L1672"></a><tt class="py-lineno">1672</tt> <tt class="py-line"> <tt class="py-param">purge</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> <tt class="py-param">sync</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.removeIntent-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.removeIntent-expanded"><a name="L1673"></a><tt class="py-lineno">1673</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1674"></a><tt class="py-lineno">1674</tt> <tt class="py-line"><tt class="py-docstring"> Remove intent for specified application id and intent id</tt> </tt>
-<a name="L1675"></a><tt class="py-lineno">1675</tt> <tt class="py-line"><tt class="py-docstring"> Optional args:-</tt> </tt>
-<a name="L1676"></a><tt class="py-lineno">1676</tt> <tt class="py-line"><tt class="py-docstring"> -s or --sync: Waits for the removal before returning</tt> </tt>
-<a name="L1677"></a><tt class="py-lineno">1677</tt> <tt class="py-line"><tt class="py-docstring"> -p or --purge: Purge the intent from the store after removal</tt> </tt>
-<a name="L1678"></a><tt class="py-lineno">1678</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1679"></a><tt class="py-lineno">1679</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L1680"></a><tt class="py-lineno">1680</tt> <tt class="py-line"><tt class="py-docstring"> main.False on error and</tt> </tt>
-<a name="L1681"></a><tt class="py-lineno">1681</tt> <tt class="py-line"><tt class="py-docstring"> cli output otherwise</tt> </tt>
-<a name="L1682"></a><tt class="py-lineno">1682</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1683"></a><tt class="py-lineno">1683</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1684"></a><tt class="py-lineno">1684</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"remove-intent"</tt> </tt>
-<a name="L1685"></a><tt class="py-lineno">1685</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">purge</tt><tt class="py-op">:</tt> </tt>
-<a name="L1686"></a><tt class="py-lineno">1686</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -p"</tt> </tt>
-<a name="L1687"></a><tt class="py-lineno">1687</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">sync</tt><tt class="py-op">:</tt> </tt>
-<a name="L1688"></a><tt class="py-lineno">1688</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -s"</tt> </tt>
-<a name="L1689"></a><tt class="py-lineno">1689</tt> <tt class="py-line"> </tt>
-<a name="L1690"></a><tt class="py-lineno">1690</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt id="link-521" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#app"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-521', 'app', 'link-521');">app</a></tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">intentId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1691"></a><tt class="py-lineno">1691</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-522" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-522', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1692"></a><tt class="py-lineno">1692</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1693"></a><tt class="py-lineno">1693</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-523" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-523', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-524" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-524', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in removing intent"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1694"></a><tt class="py-lineno">1694</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1695"></a><tt class="py-lineno">1695</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1696"></a><tt class="py-lineno">1696</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Should this be main.TRUE</tt> </tt>
-<a name="L1697"></a><tt class="py-lineno">1697</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L1698"></a><tt class="py-lineno">1698</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1699"></a><tt class="py-lineno">1699</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-525" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-525', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1700"></a><tt class="py-lineno">1700</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1701"></a><tt class="py-lineno">1701</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1702"></a><tt class="py-lineno">1702</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-526" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-526', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-527" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-527', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1703"></a><tt class="py-lineno">1703</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-528" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-528', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-529" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-529', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1704"></a><tt class="py-lineno">1704</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-530" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-530', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1705"></a><tt class="py-lineno">1705</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-531" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-531', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1706"></a><tt class="py-lineno">1706</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1707"></a><tt class="py-lineno">1707</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-532" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-532', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1708"></a><tt class="py-lineno">1708</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-533" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-533', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1709"></a><tt class="py-lineno">1709</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-534" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-534', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1710"></a><tt class="py-lineno">1710</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.purgeWithdrawnIntents"></a><div id="OnosCliDriver.purgeWithdrawnIntents-def"><a name="L1711"></a><tt class="py-lineno">1711</tt> <a class="py-toggle" href="#" id="OnosCliDriver.purgeWithdrawnIntents-toggle" onclick="return toggle('OnosCliDriver.purgeWithdrawnIntents');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#purgeWithdrawnIntents">purgeWithdrawnIntents</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.purgeWithdrawnIntents-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.purgeWithdrawnIntents-expanded"><a name="L1712"></a><tt class="py-lineno">1712</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1713"></a><tt class="py-lineno">1713</tt> <tt class="py-line"><tt class="py-docstring"> Purges all WITHDRAWN Intents</tt> </tt>
-<a name="L1714"></a><tt class="py-lineno">1714</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1715"></a><tt class="py-lineno">1715</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1716"></a><tt class="py-lineno">1716</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"purge-intents"</tt> </tt>
-<a name="L1717"></a><tt class="py-lineno">1717</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-535" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-535', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1718"></a><tt class="py-lineno">1718</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1719"></a><tt class="py-lineno">1719</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-536" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-536', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-537" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-537', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in purging intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1720"></a><tt class="py-lineno">1720</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1721"></a><tt class="py-lineno">1721</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1722"></a><tt class="py-lineno">1722</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1723"></a><tt class="py-lineno">1723</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1724"></a><tt class="py-lineno">1724</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-538" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-538', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1725"></a><tt class="py-lineno">1725</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1726"></a><tt class="py-lineno">1726</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1727"></a><tt class="py-lineno">1727</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-539" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-539', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-540" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-540', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1728"></a><tt class="py-lineno">1728</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-541" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-541', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-542" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-542', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1729"></a><tt class="py-lineno">1729</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-543" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-543', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1730"></a><tt class="py-lineno">1730</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-544" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-544', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1731"></a><tt class="py-lineno">1731</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1732"></a><tt class="py-lineno">1732</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-545" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-545', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1733"></a><tt class="py-lineno">1733</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-546" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-546', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1734"></a><tt class="py-lineno">1734</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-547" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-547', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1735"></a><tt class="py-lineno">1735</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.routes"></a><div id="OnosCliDriver.routes-def"><a name="L1736"></a><tt class="py-lineno">1736</tt> <a class="py-toggle" href="#" id="OnosCliDriver.routes-toggle" onclick="return toggle('OnosCliDriver.routes');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#routes">routes</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.routes-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.routes-expanded"><a name="L1737"></a><tt class="py-lineno">1737</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1738"></a><tt class="py-lineno">1738</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: This method should be used after installing application:</tt> </tt>
-<a name="L1739"></a><tt class="py-lineno">1739</tt> <tt class="py-line"><tt class="py-docstring"> onos-app-sdnip</tt> </tt>
-<a name="L1740"></a><tt class="py-lineno">1740</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L1741"></a><tt class="py-lineno">1741</tt> <tt class="py-line"><tt class="py-docstring"> * jsonFormat: enable output formatting in json</tt> </tt>
-<a name="L1742"></a><tt class="py-lineno">1742</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1743"></a><tt class="py-lineno">1743</tt> <tt class="py-line"><tt class="py-docstring"> Obtain all routes in the system</tt> </tt>
-<a name="L1744"></a><tt class="py-lineno">1744</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1745"></a><tt class="py-lineno">1745</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1746"></a><tt class="py-lineno">1746</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"routes"</tt> </tt>
-<a name="L1747"></a><tt class="py-lineno">1747</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L1748"></a><tt class="py-lineno">1748</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L1749"></a><tt class="py-lineno">1749</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-548" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-548', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1750"></a><tt class="py-lineno">1750</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L1751"></a><tt class="py-lineno">1751</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1752"></a><tt class="py-lineno">1752</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-549" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-549', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1753"></a><tt class="py-lineno">1753</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1754"></a><tt class="py-lineno">1754</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1755"></a><tt class="py-lineno">1755</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-550" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-550', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-551" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-551', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1756"></a><tt class="py-lineno">1756</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-552" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-552', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-553" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-553', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1757"></a><tt class="py-lineno">1757</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-554" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-554', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1758"></a><tt class="py-lineno">1758</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-555" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-555', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1759"></a><tt class="py-lineno">1759</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1760"></a><tt class="py-lineno">1760</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-556" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-556', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1761"></a><tt class="py-lineno">1761</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-557" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-557', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1762"></a><tt class="py-lineno">1762</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-558" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-558', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1763"></a><tt class="py-lineno">1763</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.intents"></a><div id="OnosCliDriver.intents-def"><a name="L1764"></a><tt class="py-lineno">1764</tt> <a class="py-toggle" href="#" id="OnosCliDriver.intents-toggle" onclick="return toggle('OnosCliDriver.intents');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intents">intents</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.intents-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.intents-expanded"><a name="L1765"></a><tt class="py-lineno">1765</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1766"></a><tt class="py-lineno">1766</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L1767"></a><tt class="py-lineno">1767</tt> <tt class="py-line"><tt class="py-docstring"> * jsonFormat: enable output formatting in json</tt> </tt>
-<a name="L1768"></a><tt class="py-lineno">1768</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1769"></a><tt class="py-lineno">1769</tt> <tt class="py-line"><tt class="py-docstring"> Obtain intents currently installed</tt> </tt>
-<a name="L1770"></a><tt class="py-lineno">1770</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1771"></a><tt class="py-lineno">1771</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1772"></a><tt class="py-lineno">1772</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"intents"</tt> </tt>
-<a name="L1773"></a><tt class="py-lineno">1773</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L1774"></a><tt class="py-lineno">1774</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L1775"></a><tt class="py-lineno">1775</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-559" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-559', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1776"></a><tt class="py-lineno">1776</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L1777"></a><tt class="py-lineno">1777</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1778"></a><tt class="py-lineno">1778</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-560" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-560', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1779"></a><tt class="py-lineno">1779</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1780"></a><tt class="py-lineno">1780</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1781"></a><tt class="py-lineno">1781</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-561" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-561', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-562" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-562', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1782"></a><tt class="py-lineno">1782</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-563" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-563', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-564" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-564', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1783"></a><tt class="py-lineno">1783</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-565" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-565', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1784"></a><tt class="py-lineno">1784</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-566" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-566', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1785"></a><tt class="py-lineno">1785</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1786"></a><tt class="py-lineno">1786</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-567" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-567', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1787"></a><tt class="py-lineno">1787</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-568" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-568', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1788"></a><tt class="py-lineno">1788</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-569" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-569', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1789"></a><tt class="py-lineno">1789</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.getIntentState"></a><div id="OnosCliDriver.getIntentState-def"><a name="L1790"></a><tt class="py-lineno">1790</tt> <a class="py-toggle" href="#" id="OnosCliDriver.getIntentState-toggle" onclick="return toggle('OnosCliDriver.getIntentState');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getIntentState">getIntentState</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">intentsId</tt><tt class="py-op">,</tt> <tt class="py-param">intentsJson</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.getIntentState-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.getIntentState-expanded"><a name="L1791"></a><tt class="py-lineno">1791</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1792"></a><tt class="py-lineno">1792</tt> <tt class="py-line"><tt class="py-docstring"> Check intent state.</tt> </tt>
-<a name="L1793"></a><tt class="py-lineno">1793</tt> <tt class="py-line"><tt class="py-docstring"> Accepts a single intent ID (string type) or a list of intent IDs.</tt> </tt>
-<a name="L1794"></a><tt class="py-lineno">1794</tt> <tt class="py-line"><tt class="py-docstring"> Returns the state(string type) of the id if a single intent ID is</tt> </tt>
-<a name="L1795"></a><tt class="py-lineno">1795</tt> <tt class="py-line"><tt class="py-docstring"> accepted.</tt> </tt>
-<a name="L1796"></a><tt class="py-lineno">1796</tt> <tt class="py-line"><tt class="py-docstring"> Returns a dictionary with intent IDs as the key and its</tt> </tt>
-<a name="L1797"></a><tt class="py-lineno">1797</tt> <tt class="py-line"><tt class="py-docstring"> corresponding states as the values</tt> </tt>
-<a name="L1798"></a><tt class="py-lineno">1798</tt> <tt class="py-line"><tt class="py-docstring"> Parameters:</tt> </tt>
-<a name="L1799"></a><tt class="py-lineno">1799</tt> <tt class="py-line"><tt class="py-docstring"> intentId: intent ID (string type)</tt> </tt>
-<a name="L1800"></a><tt class="py-lineno">1800</tt> <tt class="py-line"><tt class="py-docstring"> intentsJson: parsed json object from the onos:intents api</tt> </tt>
-<a name="L1801"></a><tt class="py-lineno">1801</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L1802"></a><tt class="py-lineno">1802</tt> <tt class="py-line"><tt class="py-docstring"> state = An intent's state- INSTALL,WITHDRAWN etc.</tt> </tt>
-<a name="L1803"></a><tt class="py-lineno">1803</tt> <tt class="py-line"><tt class="py-docstring"> stateDict = Dictionary of intent's state. intent ID as the keys and</tt> </tt>
-<a name="L1804"></a><tt class="py-lineno">1804</tt> <tt class="py-line"><tt class="py-docstring"> state as the values.</tt> </tt>
-<a name="L1805"></a><tt class="py-lineno">1805</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1806"></a><tt class="py-lineno">1806</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1807"></a><tt class="py-lineno">1807</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt class="py-string">"State is Undefined"</tt> </tt>
-<a name="L1808"></a><tt class="py-lineno">1808</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">intentsJson</tt><tt class="py-op">:</tt> </tt>
-<a name="L1809"></a><tt class="py-lineno">1809</tt> <tt class="py-line"> <tt class="py-name">intentsJsonTemp</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-570" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intents,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intents"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-570', 'intents', 'link-570');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1810"></a><tt class="py-lineno">1810</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1811"></a><tt class="py-lineno">1811</tt> <tt class="py-line"> <tt class="py-name">intentsJsonTemp</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">intentsJson</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1812"></a><tt class="py-lineno">1812</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1813"></a><tt class="py-lineno">1813</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-571" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intent"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-571', 'intent', 'link-571');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsJsonTemp</tt><tt class="py-op">:</tt> </tt>
-<a name="L1814"></a><tt class="py-lineno">1814</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">==</tt> <tt id="link-572" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-572', 'intent', 'link-571');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1815"></a><tt class="py-lineno">1815</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-573" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-573', 'intent', 'link-571');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1816"></a><tt class="py-lineno">1816</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">state</tt> </tt>
-<a name="L1817"></a><tt class="py-lineno">1817</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-574" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-574', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Cannot find intent ID"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1818"></a><tt class="py-lineno">1818</tt> <tt class="py-line"> <tt class="py-string">" on the list"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1819"></a><tt class="py-lineno">1819</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">state</tt> </tt>
-<a name="L1820"></a><tt class="py-lineno">1820</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">ListType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1821"></a><tt class="py-lineno">1821</tt> <tt class="py-line"> <tt class="py-name">dictList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1822"></a><tt class="py-lineno">1822</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1823"></a><tt class="py-lineno">1823</tt> <tt class="py-line"> <tt class="py-name">stateDict</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L1824"></a><tt class="py-lineno">1824</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-575" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-575', 'intents', 'link-570');">intents</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsJsonTemp</tt><tt class="py-op">:</tt> </tt>
-<a name="L1825"></a><tt class="py-lineno">1825</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentsId</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt id="link-576" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-576', 'intents', 'link-570');">intents</a></tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1826"></a><tt class="py-lineno">1826</tt> <tt class="py-line"> <tt class="py-name">stateDict</tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-577" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-577', 'intents', 'link-570');">intents</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1827"></a><tt class="py-lineno">1827</tt> <tt class="py-line"> <tt class="py-name">stateDict</tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">intentsId</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1828"></a><tt class="py-lineno">1828</tt> <tt class="py-line"> <tt class="py-name">dictList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">stateDict</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1829"></a><tt class="py-lineno">1829</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L1830"></a><tt class="py-lineno">1830</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">dictList</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1831"></a><tt class="py-lineno">1831</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-578" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-578', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Cannot find some of the intent ID state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1832"></a><tt class="py-lineno">1832</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">dictList</tt> </tt>
-<a name="L1833"></a><tt class="py-lineno">1833</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1834"></a><tt class="py-lineno">1834</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-579" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-579', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Invalid intents ID entry"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1835"></a><tt class="py-lineno">1835</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1836"></a><tt class="py-lineno">1836</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1837"></a><tt class="py-lineno">1837</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-580" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-580', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1838"></a><tt class="py-lineno">1838</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1839"></a><tt class="py-lineno">1839</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1840"></a><tt class="py-lineno">1840</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-581" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-581', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-582" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-582', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1841"></a><tt class="py-lineno">1841</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-583" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-583', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-584" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-584', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1842"></a><tt class="py-lineno">1842</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-585" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-585', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1843"></a><tt class="py-lineno">1843</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-586" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-586', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1844"></a><tt class="py-lineno">1844</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1845"></a><tt class="py-lineno">1845</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-587" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-587', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1846"></a><tt class="py-lineno">1846</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-588" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-588', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1847"></a><tt class="py-lineno">1847</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-589" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-589', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1848"></a><tt class="py-lineno">1848</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.checkIntentState"></a><div id="OnosCliDriver.checkIntentState-def"><a name="L1849"></a><tt class="py-lineno">1849</tt> <a class="py-toggle" href="#" id="OnosCliDriver.checkIntentState-toggle" onclick="return toggle('OnosCliDriver.checkIntentState');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkIntentState">checkIntentState</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">intentsId</tt><tt class="py-op">,</tt> <tt class="py-param">expectedState</tt><tt class="py-op">=</tt><tt class="py-string">'INSTALLED'</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.checkIntentState-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.checkIntentState-expanded"><a name="L1850"></a><tt class="py-lineno">1850</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1851"></a><tt class="py-lineno">1851</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1852"></a><tt class="py-lineno">1852</tt> <tt class="py-line"><tt class="py-docstring"> Check intents state</tt> </tt>
-<a name="L1853"></a><tt class="py-lineno">1853</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L1854"></a><tt class="py-lineno">1854</tt> <tt class="py-line"><tt class="py-docstring"> intentsId - List of intents ID to be checked</tt> </tt>
-<a name="L1855"></a><tt class="py-lineno">1855</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L1856"></a><tt class="py-lineno">1856</tt> <tt class="py-line"><tt class="py-docstring"> expectedState - Check the expected state(s) of each intents</tt> </tt>
-<a name="L1857"></a><tt class="py-lineno">1857</tt> <tt class="py-line"><tt class="py-docstring"> state in the list.</tt> </tt>
-<a name="L1858"></a><tt class="py-lineno">1858</tt> <tt class="py-line"><tt class="py-docstring"> *NOTE: You can pass in a list of expected state,</tt> </tt>
-<a name="L1859"></a><tt class="py-lineno">1859</tt> <tt class="py-line"><tt class="py-docstring"> Eg: expectedState = [ 'INSTALLED' , 'INSTALLING' ]</tt> </tt>
-<a name="L1860"></a><tt class="py-lineno">1860</tt> <tt class="py-line"><tt class="py-docstring"> Return:</tt> </tt>
-<a name="L1861"></a><tt class="py-lineno">1861</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE only if all intent are the same as expected states</tt> </tt>
-<a name="L1862"></a><tt class="py-lineno">1862</tt> <tt class="py-line"><tt class="py-docstring"> , otherwise, returns main.FALSE.</tt> </tt>
-<a name="L1863"></a><tt class="py-lineno">1863</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1864"></a><tt class="py-lineno">1864</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1865"></a><tt class="py-lineno">1865</tt> <tt class="py-line"> <tt class="py-comment"># Generating a dictionary: intent id as a key and state as value</tt> </tt>
-<a name="L1866"></a><tt class="py-lineno">1866</tt> <tt class="py-line"> <tt class="py-name">returnValue</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1867"></a><tt class="py-lineno">1867</tt> <tt class="py-line"> <tt class="py-name">intentsDict</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-590" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getIntentState()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getIntentState,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getIntentState()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getIntentState"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getIntentState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getIntentState" class="py-name" href="#" onclick="return doclink('link-590', 'getIntentState', 'link-590');">getIntentState</a></tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1868"></a><tt class="py-lineno">1868</tt> <tt class="py-line"> </tt>
-<a name="L1869"></a><tt class="py-lineno">1869</tt> <tt class="py-line"> <tt class="py-comment">#print "len of intentsDict ", str( len( intentsDict ) )</tt> </tt>
-<a name="L1870"></a><tt class="py-lineno">1870</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentsDict</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1871"></a><tt class="py-lineno">1871</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-591" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-591', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">"There is something wrong "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1872"></a><tt class="py-lineno">1872</tt> <tt class="py-line"> <tt class="py-string">"getting intents state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1873"></a><tt class="py-lineno">1873</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1874"></a><tt class="py-lineno">1874</tt> <tt class="py-line"> </tt>
-<a name="L1875"></a><tt class="py-lineno">1875</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">expectedState</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1876"></a><tt class="py-lineno">1876</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-592" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-592', 'intents', 'link-570');">intents</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsDict</tt><tt class="py-op">:</tt> </tt>
-<a name="L1877"></a><tt class="py-lineno">1877</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-593" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-593', 'intents', 'link-570');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">expectedState</tt><tt class="py-op">:</tt> </tt>
-<a name="L1878"></a><tt class="py-lineno">1878</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-594" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-594', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" : Intent ID - "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1879"></a><tt class="py-lineno">1879</tt> <tt class="py-line"> <tt id="link-595" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-595', 'intents', 'link-570');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1880"></a><tt class="py-lineno">1880</tt> <tt class="py-line"> <tt class="py-string">" actual state = "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1881"></a><tt class="py-lineno">1881</tt> <tt class="py-line"> <tt id="link-596" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-596', 'intents', 'link-570');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1882"></a><tt class="py-lineno">1882</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" does not equal expected state = "</tt> </tt>
-<a name="L1883"></a><tt class="py-lineno">1883</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">expectedState</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1884"></a><tt class="py-lineno">1884</tt> <tt class="py-line"> <tt class="py-name">returnValue</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1885"></a><tt class="py-lineno">1885</tt> <tt class="py-line"> </tt>
-<a name="L1886"></a><tt class="py-lineno">1886</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">expectedState</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">ListType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1887"></a><tt class="py-lineno">1887</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-597" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-597', 'intents', 'link-570');">intents</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsDict</tt><tt class="py-op">:</tt> </tt>
-<a name="L1888"></a><tt class="py-lineno">1888</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">any</tt><tt class="py-op">(</tt> <tt class="py-name">state</tt> <tt class="py-op">==</tt> <tt id="link-598" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-598', 'intents', 'link-570');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">state</tt> <tt class="py-keyword">in</tt> </tt>
-<a name="L1889"></a><tt class="py-lineno">1889</tt> <tt class="py-line"> <tt class="py-name">expectedState</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1890"></a><tt class="py-lineno">1890</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-599" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-599', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" : Intent ID - "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1891"></a><tt class="py-lineno">1891</tt> <tt class="py-line"> <tt id="link-600" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-600', 'intents', 'link-570');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1892"></a><tt class="py-lineno">1892</tt> <tt class="py-line"> <tt class="py-string">" actual state = "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1893"></a><tt class="py-lineno">1893</tt> <tt class="py-line"> <tt id="link-601" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-601', 'intents', 'link-570');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1894"></a><tt class="py-lineno">1894</tt> <tt class="py-line"> <tt class="py-string">" does not equal expected states = "</tt> </tt>
-<a name="L1895"></a><tt class="py-lineno">1895</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">expectedState</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1896"></a><tt class="py-lineno">1896</tt> <tt class="py-line"> <tt class="py-name">returnValue</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1897"></a><tt class="py-lineno">1897</tt> <tt class="py-line"> </tt>
-<a name="L1898"></a><tt class="py-lineno">1898</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">returnValue</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1899"></a><tt class="py-lineno">1899</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-602" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-602', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": All "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1900"></a><tt class="py-lineno">1900</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentsDict</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1901"></a><tt class="py-lineno">1901</tt> <tt class="py-line"> <tt class="py-string">" intents are in "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">expectedState</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1902"></a><tt class="py-lineno">1902</tt> <tt class="py-line"> <tt class="py-string">" state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1903"></a><tt class="py-lineno">1903</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">returnValue</tt> </tt>
-<a name="L1904"></a><tt class="py-lineno">1904</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1905"></a><tt class="py-lineno">1905</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-603" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-603', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1906"></a><tt class="py-lineno">1906</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1907"></a><tt class="py-lineno">1907</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1908"></a><tt class="py-lineno">1908</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-604" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-604', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-605" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-605', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1909"></a><tt class="py-lineno">1909</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-606" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-606', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-607" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-607', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1910"></a><tt class="py-lineno">1910</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-608" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-608', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1911"></a><tt class="py-lineno">1911</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-609" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-609', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1912"></a><tt class="py-lineno">1912</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1913"></a><tt class="py-lineno">1913</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-610" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-610', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1914"></a><tt class="py-lineno">1914</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-611" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-611', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1915"></a><tt class="py-lineno">1915</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-612" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-612', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1916"></a><tt class="py-lineno">1916</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.flows"></a><div id="OnosCliDriver.flows-def"><a name="L1917"></a><tt class="py-lineno">1917</tt> <a class="py-toggle" href="#" id="OnosCliDriver.flows-toggle" onclick="return toggle('OnosCliDriver.flows');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#flows">flows</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.flows-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.flows-expanded"><a name="L1918"></a><tt class="py-lineno">1918</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1919"></a><tt class="py-lineno">1919</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L1920"></a><tt class="py-lineno">1920</tt> <tt class="py-line"><tt class="py-docstring"> * jsonFormat: enable output formatting in json</tt> </tt>
-<a name="L1921"></a><tt class="py-lineno">1921</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1922"></a><tt class="py-lineno">1922</tt> <tt class="py-line"><tt class="py-docstring"> Obtain flows currently installed</tt> </tt>
-<a name="L1923"></a><tt class="py-lineno">1923</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1924"></a><tt class="py-lineno">1924</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1925"></a><tt class="py-lineno">1925</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"flows"</tt> </tt>
-<a name="L1926"></a><tt class="py-lineno">1926</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L1927"></a><tt class="py-lineno">1927</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L1928"></a><tt class="py-lineno">1928</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-613" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-613', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1929"></a><tt class="py-lineno">1929</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error:"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1930"></a><tt class="py-lineno">1930</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-614" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-614', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-615" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-615', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": flows() response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1931"></a><tt class="py-lineno">1931</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1932"></a><tt class="py-lineno">1932</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L1933"></a><tt class="py-lineno">1933</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1934"></a><tt class="py-lineno">1934</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-616" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-616', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1935"></a><tt class="py-lineno">1935</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1936"></a><tt class="py-lineno">1936</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1937"></a><tt class="py-lineno">1937</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-617" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-617', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-618" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-618', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1938"></a><tt class="py-lineno">1938</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-619" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-619', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-620" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-620', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1939"></a><tt class="py-lineno">1939</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-621" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-621', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1940"></a><tt class="py-lineno">1940</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-622" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-622', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1941"></a><tt class="py-lineno">1941</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1942"></a><tt class="py-lineno">1942</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-623" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-623', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1943"></a><tt class="py-lineno">1943</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-624" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-624', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1944"></a><tt class="py-lineno">1944</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-625" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-625', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1945"></a><tt class="py-lineno">1945</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.checkFlowsState"></a><div id="OnosCliDriver.checkFlowsState-def"><a name="L1946"></a><tt class="py-lineno">1946</tt> <a class="py-toggle" href="#" id="OnosCliDriver.checkFlowsState-toggle" onclick="return toggle('OnosCliDriver.checkFlowsState');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkFlowsState">checkFlowsState</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.checkFlowsState-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.checkFlowsState-expanded"><a name="L1947"></a><tt class="py-lineno">1947</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1948"></a><tt class="py-lineno">1948</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1949"></a><tt class="py-lineno">1949</tt> <tt class="py-line"><tt class="py-docstring"> Check the if all the current flows are in ADDED state or</tt> </tt>
-<a name="L1950"></a><tt class="py-lineno">1950</tt> <tt class="py-line"><tt class="py-docstring"> PENDING_ADD state</tt> </tt>
-<a name="L1951"></a><tt class="py-lineno">1951</tt> <tt class="py-line"><tt class="py-docstring"> Return:</tt> </tt>
-<a name="L1952"></a><tt class="py-lineno">1952</tt> <tt class="py-line"><tt class="py-docstring"> returnValue - Returns main.TRUE only if all flows are in</tt> </tt>
-<a name="L1953"></a><tt class="py-lineno">1953</tt> <tt class="py-line"><tt class="py-docstring"> ADDED state or PENDING_ADD, return main.FALSE</tt> </tt>
-<a name="L1954"></a><tt class="py-lineno">1954</tt> <tt class="py-line"><tt class="py-docstring"> otherwise.</tt> </tt>
-<a name="L1955"></a><tt class="py-lineno">1955</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1956"></a><tt class="py-lineno">1956</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1957"></a><tt class="py-lineno">1957</tt> <tt class="py-line"> <tt class="py-name">tempFlows</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-626" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#flows,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#flows"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-626', 'flows', 'link-626');">flows</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1958"></a><tt class="py-lineno">1958</tt> <tt class="py-line"> <tt class="py-comment">#print tempFlows[0]</tt> </tt>
-<a name="L1959"></a><tt class="py-lineno">1959</tt> <tt class="py-line"> <tt class="py-name">returnValue</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1960"></a><tt class="py-lineno">1960</tt> <tt class="py-line"> </tt>
-<a name="L1961"></a><tt class="py-lineno">1961</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">device</tt> <tt class="py-keyword">in</tt> <tt class="py-name">tempFlows</tt><tt class="py-op">:</tt> </tt>
-<a name="L1962"></a><tt class="py-lineno">1962</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">flow</tt> <tt class="py-keyword">in</tt> <tt class="py-name">device</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'flows'</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1963"></a><tt class="py-lineno">1963</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">flow</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-string">'ADDED'</tt> <tt class="py-keyword">and</tt> <tt class="py-name">flow</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> \ </tt>
-<a name="L1964"></a><tt class="py-lineno">1964</tt> <tt class="py-line"> <tt class="py-string">'PENDING_ADD'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1965"></a><tt class="py-lineno">1965</tt> <tt class="py-line"> </tt>
-<a name="L1966"></a><tt class="py-lineno">1966</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-627" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-627', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": flow Id: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1967"></a><tt class="py-lineno">1967</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">flow</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'groupId'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1968"></a><tt class="py-lineno">1968</tt> <tt class="py-line"> <tt class="py-string">" | state:"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1969"></a><tt class="py-lineno">1969</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">flow</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1970"></a><tt class="py-lineno">1970</tt> <tt class="py-line"> <tt class="py-name">returnValue</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1971"></a><tt class="py-lineno">1971</tt> <tt class="py-line"> </tt>
-<a name="L1972"></a><tt class="py-lineno">1972</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">returnValue</tt> </tt>
-<a name="L1973"></a><tt class="py-lineno">1973</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1974"></a><tt class="py-lineno">1974</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-628" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-628', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1975"></a><tt class="py-lineno">1975</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1976"></a><tt class="py-lineno">1976</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1977"></a><tt class="py-lineno">1977</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-629" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-629', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-630" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-630', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1978"></a><tt class="py-lineno">1978</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-631" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-631', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-632" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-632', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1979"></a><tt class="py-lineno">1979</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-633" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-633', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1980"></a><tt class="py-lineno">1980</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-634" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-634', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1981"></a><tt class="py-lineno">1981</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1982"></a><tt class="py-lineno">1982</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-635" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-635', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1983"></a><tt class="py-lineno">1983</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-636" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-636', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1984"></a><tt class="py-lineno">1984</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-637" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-637', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1985"></a><tt class="py-lineno">1985</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.pushTestIntents"></a><div id="OnosCliDriver.pushTestIntents-def"><a name="L1986"></a><tt class="py-lineno">1986</tt> <a class="py-toggle" href="#" id="OnosCliDriver.pushTestIntents-toggle" onclick="return toggle('OnosCliDriver.pushTestIntents');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#pushTestIntents">pushTestIntents</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">dpidSrc</tt><tt class="py-op">,</tt> <tt class="py-param">dpidDst</tt><tt class="py-op">,</tt> <tt class="py-param">numIntents</tt><tt class="py-op">,</tt> </tt>
-<a name="L1987"></a><tt class="py-lineno">1987</tt> <tt class="py-line"> <tt class="py-param">numMult</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-param">appId</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-param">report</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.pushTestIntents-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.pushTestIntents-expanded"><a name="L1988"></a><tt class="py-lineno">1988</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1989"></a><tt class="py-lineno">1989</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1990"></a><tt class="py-lineno">1990</tt> <tt class="py-line"><tt class="py-docstring"> Push a number of intents in a batch format to</tt> </tt>
-<a name="L1991"></a><tt class="py-lineno">1991</tt> <tt class="py-line"><tt class="py-docstring"> a specific point-to-point intent definition</tt> </tt>
-<a name="L1992"></a><tt class="py-lineno">1992</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L1993"></a><tt class="py-lineno">1993</tt> <tt class="py-line"><tt class="py-docstring"> * dpidSrc: specify source dpid</tt> </tt>
-<a name="L1994"></a><tt class="py-lineno">1994</tt> <tt class="py-line"><tt class="py-docstring"> * dpidDst: specify destination dpid</tt> </tt>
-<a name="L1995"></a><tt class="py-lineno">1995</tt> <tt class="py-line"><tt class="py-docstring"> * numIntents: specify number of intents to push</tt> </tt>
-<a name="L1996"></a><tt class="py-lineno">1996</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L1997"></a><tt class="py-lineno">1997</tt> <tt class="py-line"><tt class="py-docstring"> * numMult: number multiplier for multiplying</tt> </tt>
-<a name="L1998"></a><tt class="py-lineno">1998</tt> <tt class="py-line"><tt class="py-docstring"> the number of intents specified</tt> </tt>
-<a name="L1999"></a><tt class="py-lineno">1999</tt> <tt class="py-line"><tt class="py-docstring"> * appId: specify the application id init to further</tt> </tt>
-<a name="L2000"></a><tt class="py-lineno">2000</tt> <tt class="py-line"><tt class="py-docstring"> modularize the intents</tt> </tt>
-<a name="L2001"></a><tt class="py-lineno">2001</tt> <tt class="py-line"><tt class="py-docstring"> * report: default True, returns latency information</tt> </tt>
-<a name="L2002"></a><tt class="py-lineno">2002</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2003"></a><tt class="py-lineno">2003</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2004"></a><tt class="py-lineno">2004</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"push-test-intents "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2005"></a><tt class="py-lineno">2005</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dpidSrc</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dpidDst</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2006"></a><tt class="py-lineno">2006</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">numIntents</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2007"></a><tt class="py-lineno">2007</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">numMult</tt><tt class="py-op">:</tt> </tt>
-<a name="L2008"></a><tt class="py-lineno">2008</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">numMult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2009"></a><tt class="py-lineno">2009</tt> <tt class="py-line"> <tt class="py-comment"># If app id is specified, then numMult</tt> </tt>
-<a name="L2010"></a><tt class="py-lineno">2010</tt> <tt class="py-line"> <tt class="py-comment"># must exist because of the way this command</tt> </tt>
-<a name="L2011"></a><tt class="py-lineno">2011</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appId</tt><tt class="py-op">:</tt> </tt>
-<a name="L2012"></a><tt class="py-lineno">2012</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">appId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2013"></a><tt class="py-lineno">2013</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-638" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-638', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2014"></a><tt class="py-lineno">2014</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">report</tt><tt class="py-op">:</tt> </tt>
-<a name="L2015"></a><tt class="py-lineno">2015</tt> <tt class="py-line"> <tt class="py-name">latResult</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2016"></a><tt class="py-lineno">2016</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-639" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-639', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2017"></a><tt class="py-lineno">2017</tt> <tt class="py-line"> <tt class="py-comment"># Split result by newline</tt> </tt>
-<a name="L2018"></a><tt class="py-lineno">2018</tt> <tt class="py-line"> <tt class="py-name">newline</tt> <tt class="py-op">=</tt> <tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"\r\r\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2019"></a><tt class="py-lineno">2019</tt> <tt class="py-line"> <tt class="py-comment"># Ignore the first object of list, which is empty</tt> </tt>
-<a name="L2020"></a><tt class="py-lineno">2020</tt> <tt class="py-line"> <tt class="py-name">newline</tt> <tt class="py-op">=</tt> <tt class="py-name">newline</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2021"></a><tt class="py-lineno">2021</tt> <tt class="py-line"> <tt class="py-comment"># Some sloppy parsing method to get the latency</tt> </tt>
-<a name="L2022"></a><tt class="py-lineno">2022</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">result</tt> <tt class="py-keyword">in</tt> <tt class="py-name">newline</tt><tt class="py-op">:</tt> </tt>
-<a name="L2023"></a><tt class="py-lineno">2023</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">result</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">": "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2024"></a><tt class="py-lineno">2024</tt> <tt class="py-line"> <tt class="py-comment"># Append the first result of second parse</tt> </tt>
-<a name="L2025"></a><tt class="py-lineno">2025</tt> <tt class="py-line"> <tt class="py-name">latResult</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">result</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">" "</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2026"></a><tt class="py-lineno">2026</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-640" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-640', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">latResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2027"></a><tt class="py-lineno">2027</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">latResult</tt> </tt>
-<a name="L2028"></a><tt class="py-lineno">2028</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2029"></a><tt class="py-lineno">2029</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2030"></a><tt class="py-lineno">2030</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2031"></a><tt class="py-lineno">2031</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-641" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-641', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2032"></a><tt class="py-lineno">2032</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2033"></a><tt class="py-lineno">2033</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2034"></a><tt class="py-lineno">2034</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-642" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-642', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-643" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-643', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2035"></a><tt class="py-lineno">2035</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-644" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-644', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-645" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-645', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2036"></a><tt class="py-lineno">2036</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-646" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-646', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2037"></a><tt class="py-lineno">2037</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-647" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-647', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2038"></a><tt class="py-lineno">2038</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2039"></a><tt class="py-lineno">2039</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-648" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-648', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2040"></a><tt class="py-lineno">2040</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-649" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-649', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2041"></a><tt class="py-lineno">2041</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-650" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-650', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2042"></a><tt class="py-lineno">2042</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.intentsEventsMetrics"></a><div id="OnosCliDriver.intentsEventsMetrics-def"><a name="L2043"></a><tt class="py-lineno">2043</tt> <a class="py-toggle" href="#" id="OnosCliDriver.intentsEventsMetrics-toggle" onclick="return toggle('OnosCliDriver.intentsEventsMetrics');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intentsEventsMetrics">intentsEventsMetrics</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.intentsEventsMetrics-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.intentsEventsMetrics-expanded"><a name="L2044"></a><tt class="py-lineno">2044</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2045"></a><tt class="py-lineno">2045</tt> <tt class="py-line"><tt class="py-docstring"> Description:Returns topology metrics</tt> </tt>
-<a name="L2046"></a><tt class="py-lineno">2046</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L2047"></a><tt class="py-lineno">2047</tt> <tt class="py-line"><tt class="py-docstring"> * jsonFormat: enable json formatting of output</tt> </tt>
-<a name="L2048"></a><tt class="py-lineno">2048</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2049"></a><tt class="py-lineno">2049</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2050"></a><tt class="py-lineno">2050</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"intents-events-metrics"</tt> </tt>
-<a name="L2051"></a><tt class="py-lineno">2051</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L2052"></a><tt class="py-lineno">2052</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L2053"></a><tt class="py-lineno">2053</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-651" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-651', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2054"></a><tt class="py-lineno">2054</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L2055"></a><tt class="py-lineno">2055</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2056"></a><tt class="py-lineno">2056</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-652" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-652', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2057"></a><tt class="py-lineno">2057</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2058"></a><tt class="py-lineno">2058</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2059"></a><tt class="py-lineno">2059</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-653" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-653', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-654" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-654', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2060"></a><tt class="py-lineno">2060</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-655" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-655', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-656" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-656', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2061"></a><tt class="py-lineno">2061</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-657" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-657', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2062"></a><tt class="py-lineno">2062</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-658" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-658', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2063"></a><tt class="py-lineno">2063</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2064"></a><tt class="py-lineno">2064</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-659" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-659', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2065"></a><tt class="py-lineno">2065</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-660" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-660', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2066"></a><tt class="py-lineno">2066</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-661" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-661', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2067"></a><tt class="py-lineno">2067</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.topologyEventsMetrics"></a><div id="OnosCliDriver.topologyEventsMetrics-def"><a name="L2068"></a><tt class="py-lineno">2068</tt> <a class="py-toggle" href="#" id="OnosCliDriver.topologyEventsMetrics-toggle" onclick="return toggle('OnosCliDriver.topologyEventsMetrics');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topologyEventsMetrics">topologyEventsMetrics</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.topologyEventsMetrics-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.topologyEventsMetrics-expanded"><a name="L2069"></a><tt class="py-lineno">2069</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2070"></a><tt class="py-lineno">2070</tt> <tt class="py-line"><tt class="py-docstring"> Description:Returns topology metrics</tt> </tt>
-<a name="L2071"></a><tt class="py-lineno">2071</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L2072"></a><tt class="py-lineno">2072</tt> <tt class="py-line"><tt class="py-docstring"> * jsonFormat: enable json formatting of output</tt> </tt>
-<a name="L2073"></a><tt class="py-lineno">2073</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2074"></a><tt class="py-lineno">2074</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2075"></a><tt class="py-lineno">2075</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"topology-events-metrics"</tt> </tt>
-<a name="L2076"></a><tt class="py-lineno">2076</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L2077"></a><tt class="py-lineno">2077</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L2078"></a><tt class="py-lineno">2078</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-662" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-662', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2079"></a><tt class="py-lineno">2079</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L2080"></a><tt class="py-lineno">2080</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L2081"></a><tt class="py-lineno">2081</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L2082"></a><tt class="py-lineno">2082</tt> <tt class="py-line"> <tt class="py-comment"># Return empty json</tt> </tt>
-<a name="L2083"></a><tt class="py-lineno">2083</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'{}'</tt> </tt>
-<a name="L2084"></a><tt class="py-lineno">2084</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2085"></a><tt class="py-lineno">2085</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L2086"></a><tt class="py-lineno">2086</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2087"></a><tt class="py-lineno">2087</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-663" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-663', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2088"></a><tt class="py-lineno">2088</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2089"></a><tt class="py-lineno">2089</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2090"></a><tt class="py-lineno">2090</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-664" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-664', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-665" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-665', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2091"></a><tt class="py-lineno">2091</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-666" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-666', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-667" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-667', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2092"></a><tt class="py-lineno">2092</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-668" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-668', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2093"></a><tt class="py-lineno">2093</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-669" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-669', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2094"></a><tt class="py-lineno">2094</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2095"></a><tt class="py-lineno">2095</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-670" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-670', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2096"></a><tt class="py-lineno">2096</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-671" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-671', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2097"></a><tt class="py-lineno">2097</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-672" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-672', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2098"></a><tt class="py-lineno">2098</tt> <tt class="py-line"> </tt>
-<a name="L2099"></a><tt class="py-lineno">2099</tt> <tt class="py-line"> <tt class="py-comment"># Wrapper functions ****************</tt> </tt>
-<a name="L2100"></a><tt class="py-lineno">2100</tt> <tt class="py-line"> <tt class="py-comment"># Wrapper functions use existing driver</tt> </tt>
-<a name="L2101"></a><tt class="py-lineno">2101</tt> <tt class="py-line"> <tt class="py-comment"># functions and extends their use case.</tt> </tt>
-<a name="L2102"></a><tt class="py-lineno">2102</tt> <tt class="py-line"> <tt class="py-comment"># For example, we may use the output of</tt> </tt>
-<a name="L2103"></a><tt class="py-lineno">2103</tt> <tt class="py-line"> <tt class="py-comment"># a normal driver function, and parse it</tt> </tt>
-<a name="L2104"></a><tt class="py-lineno">2104</tt> <tt class="py-line"> <tt class="py-comment"># using a wrapper function</tt> </tt>
-<a name="L2105"></a><tt class="py-lineno">2105</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.getAllIntentsId"></a><div id="OnosCliDriver.getAllIntentsId-def"><a name="L2106"></a><tt class="py-lineno">2106</tt> <a class="py-toggle" href="#" id="OnosCliDriver.getAllIntentsId-toggle" onclick="return toggle('OnosCliDriver.getAllIntentsId');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllIntentsId">getAllIntentsId</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.getAllIntentsId-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.getAllIntentsId-expanded"><a name="L2107"></a><tt class="py-lineno">2107</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2108"></a><tt class="py-lineno">2108</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L2109"></a><tt class="py-lineno">2109</tt> <tt class="py-line"><tt class="py-docstring"> Obtain all intent id's in a list</tt> </tt>
-<a name="L2110"></a><tt class="py-lineno">2110</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2111"></a><tt class="py-lineno">2111</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2112"></a><tt class="py-lineno">2112</tt> <tt class="py-line"> <tt class="py-comment"># Obtain output of intents function</tt> </tt>
-<a name="L2113"></a><tt class="py-lineno">2113</tt> <tt class="py-line"> <tt class="py-name">intentsStr</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-673" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-673', 'intents', 'link-570');">intents</a></tt><tt class="py-op">(</tt><tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L2114"></a><tt class="py-lineno">2114</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2115"></a><tt class="py-lineno">2115</tt> <tt class="py-line"> </tt>
-<a name="L2116"></a><tt class="py-lineno">2116</tt> <tt class="py-line"> <tt class="py-comment"># Parse the intents output for ID's</tt> </tt>
-<a name="L2117"></a><tt class="py-lineno">2117</tt> <tt class="py-line"> <tt class="py-name">intentsList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">s</tt><tt class="py-op">.</tt><tt class="py-name">strip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsStr</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2118"></a><tt class="py-lineno">2118</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-674" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-674', 'intents', 'link-570');">intents</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsList</tt><tt class="py-op">:</tt> </tt>
-<a name="L2119"></a><tt class="py-lineno">2119</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt><tt class="py-string">'id=0x([\da-f]+),'</tt><tt class="py-op">,</tt> <tt id="link-675" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-675', 'intents', 'link-570');">intents</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L2120"></a><tt class="py-lineno">2120</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">match</tt><tt class="py-op">:</tt> </tt>
-<a name="L2121"></a><tt class="py-lineno">2121</tt> <tt class="py-line"> <tt class="py-name">tmpId</tt> <tt class="py-op">=</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">3</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L2122"></a><tt class="py-lineno">2122</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">tmpId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2123"></a><tt class="py-lineno">2123</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">intentIdList</tt> </tt>
-<a name="L2124"></a><tt class="py-lineno">2124</tt> <tt class="py-line"> </tt>
-<a name="L2125"></a><tt class="py-lineno">2125</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2126"></a><tt class="py-lineno">2126</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-676" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-676', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2127"></a><tt class="py-lineno">2127</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2128"></a><tt class="py-lineno">2128</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2129"></a><tt class="py-lineno">2129</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-677" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-677', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-678" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-678', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2130"></a><tt class="py-lineno">2130</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-679" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-679', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-680" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-680', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2131"></a><tt class="py-lineno">2131</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-681" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-681', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2132"></a><tt class="py-lineno">2132</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-682" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-682', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2133"></a><tt class="py-lineno">2133</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2134"></a><tt class="py-lineno">2134</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-683" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-683', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2135"></a><tt class="py-lineno">2135</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-684" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-684', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2136"></a><tt class="py-lineno">2136</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-685" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-685', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2137"></a><tt class="py-lineno">2137</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.FlowAddedCount"></a><div id="OnosCliDriver.FlowAddedCount-def"><a name="L2138"></a><tt class="py-lineno">2138</tt> <a class="py-toggle" href="#" id="OnosCliDriver.FlowAddedCount-toggle" onclick="return toggle('OnosCliDriver.FlowAddedCount');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#FlowAddedCount">FlowAddedCount</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">deviceId</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.FlowAddedCount-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.FlowAddedCount-expanded"><a name="L2139"></a><tt class="py-lineno">2139</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2140"></a><tt class="py-lineno">2140</tt> <tt class="py-line"><tt class="py-docstring"> Determine the number of flow rules for the given device id that are</tt> </tt>
-<a name="L2141"></a><tt class="py-lineno">2141</tt> <tt class="py-line"><tt class="py-docstring"> in the added state</tt> </tt>
-<a name="L2142"></a><tt class="py-lineno">2142</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2143"></a><tt class="py-lineno">2143</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2144"></a><tt class="py-lineno">2144</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"flows any "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" | "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2145"></a><tt class="py-lineno">2145</tt> <tt class="py-line"> <tt class="py-string">"grep 'state=ADDED' | wc -l"</tt> </tt>
-<a name="L2146"></a><tt class="py-lineno">2146</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-686" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-686', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2147"></a><tt class="py-lineno">2147</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L2148"></a><tt class="py-lineno">2148</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2149"></a><tt class="py-lineno">2149</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-687" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-687', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-688" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-688', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2150"></a><tt class="py-lineno">2150</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-689" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-689', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-690" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-690', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2151"></a><tt class="py-lineno">2151</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-691" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-691', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2152"></a><tt class="py-lineno">2152</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-692" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-692', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2153"></a><tt class="py-lineno">2153</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2154"></a><tt class="py-lineno">2154</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-693" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-693', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2155"></a><tt class="py-lineno">2155</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-694" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-694', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2156"></a><tt class="py-lineno">2156</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-695" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-695', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2157"></a><tt class="py-lineno">2157</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.getAllDevicesId"></a><div id="OnosCliDriver.getAllDevicesId-def"><a name="L2158"></a><tt class="py-lineno">2158</tt> <a class="py-toggle" href="#" id="OnosCliDriver.getAllDevicesId-toggle" onclick="return toggle('OnosCliDriver.getAllDevicesId');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllDevicesId">getAllDevicesId</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.getAllDevicesId-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.getAllDevicesId-expanded"><a name="L2159"></a><tt class="py-lineno">2159</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2160"></a><tt class="py-lineno">2160</tt> <tt class="py-line"><tt class="py-docstring"> Use 'devices' function to obtain list of all devices</tt> </tt>
-<a name="L2161"></a><tt class="py-lineno">2161</tt> <tt class="py-line"><tt class="py-docstring"> and parse the result to obtain a list of all device</tt> </tt>
-<a name="L2162"></a><tt class="py-lineno">2162</tt> <tt class="py-line"><tt class="py-docstring"> id's. Returns this list. Returns empty list if no</tt> </tt>
-<a name="L2163"></a><tt class="py-lineno">2163</tt> <tt class="py-line"><tt class="py-docstring"> devices exist</tt> </tt>
-<a name="L2164"></a><tt class="py-lineno">2164</tt> <tt class="py-line"><tt class="py-docstring"> List is ordered sequentially</tt> </tt>
-<a name="L2165"></a><tt class="py-lineno">2165</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L2166"></a><tt class="py-lineno">2166</tt> <tt class="py-line"><tt class="py-docstring"> This function may be useful if you are not sure of the</tt> </tt>
-<a name="L2167"></a><tt class="py-lineno">2167</tt> <tt class="py-line"><tt class="py-docstring"> device id, and wish to execute other commands using</tt> </tt>
-<a name="L2168"></a><tt class="py-lineno">2168</tt> <tt class="py-line"><tt class="py-docstring"> the ids. By obtaining the list of device ids on the fly,</tt> </tt>
-<a name="L2169"></a><tt class="py-lineno">2169</tt> <tt class="py-line"><tt class="py-docstring"> you can iterate through the list to get mastership, etc.</tt> </tt>
-<a name="L2170"></a><tt class="py-lineno">2170</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2171"></a><tt class="py-lineno">2171</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2172"></a><tt class="py-lineno">2172</tt> <tt class="py-line"> <tt class="py-comment"># Call devices and store result string</tt> </tt>
-<a name="L2173"></a><tt class="py-lineno">2173</tt> <tt class="py-line"> <tt class="py-name">devicesStr</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-696" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#devices"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-696', 'devices', 'link-696');">devices</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2174"></a><tt class="py-lineno">2174</tt> <tt class="py-line"> <tt class="py-name">idList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2175"></a><tt class="py-lineno">2175</tt> <tt class="py-line"> </tt>
-<a name="L2176"></a><tt class="py-lineno">2176</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">devicesStr</tt><tt class="py-op">:</tt> </tt>
-<a name="L2177"></a><tt class="py-lineno">2177</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-697" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-697', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"There are no devices to get id from"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2178"></a><tt class="py-lineno">2178</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">idList</tt> </tt>
-<a name="L2179"></a><tt class="py-lineno">2179</tt> <tt class="py-line"> </tt>
-<a name="L2180"></a><tt class="py-lineno">2180</tt> <tt class="py-line"> <tt class="py-comment"># Split the string into list by comma</tt> </tt>
-<a name="L2181"></a><tt class="py-lineno">2181</tt> <tt class="py-line"> <tt class="py-name">deviceList</tt> <tt class="py-op">=</tt> <tt class="py-name">devicesStr</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2182"></a><tt class="py-lineno">2182</tt> <tt class="py-line"> <tt class="py-comment"># Get temporary list of all arguments with string 'id='</tt> </tt>
-<a name="L2183"></a><tt class="py-lineno">2183</tt> <tt class="py-line"> <tt class="py-name">tempList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">dev</tt> <tt class="py-keyword">for</tt> <tt class="py-name">dev</tt> <tt class="py-keyword">in</tt> <tt class="py-name">deviceList</tt> <tt class="py-keyword">if</tt> <tt class="py-string">"id="</tt> <tt class="py-keyword">in</tt> <tt class="py-name">dev</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2184"></a><tt class="py-lineno">2184</tt> <tt class="py-line"> <tt class="py-comment"># Split list further into arguments before and after string</tt> </tt>
-<a name="L2185"></a><tt class="py-lineno">2185</tt> <tt class="py-line"> <tt class="py-comment"># 'id='. Get the latter portion ( the actual device id ) and</tt> </tt>
-<a name="L2186"></a><tt class="py-lineno">2186</tt> <tt class="py-line"> <tt class="py-comment"># append to idList</tt> </tt>
-<a name="L2187"></a><tt class="py-lineno">2187</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">arg</tt> <tt class="py-keyword">in</tt> <tt class="py-name">tempList</tt><tt class="py-op">:</tt> </tt>
-<a name="L2188"></a><tt class="py-lineno">2188</tt> <tt class="py-line"> <tt class="py-name">idList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">arg</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"id="</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2189"></a><tt class="py-lineno">2189</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">idList</tt> </tt>
-<a name="L2190"></a><tt class="py-lineno">2190</tt> <tt class="py-line"> </tt>
-<a name="L2191"></a><tt class="py-lineno">2191</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2192"></a><tt class="py-lineno">2192</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-698" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-698', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2193"></a><tt class="py-lineno">2193</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2194"></a><tt class="py-lineno">2194</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2195"></a><tt class="py-lineno">2195</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-699" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-699', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-700" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-700', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2196"></a><tt class="py-lineno">2196</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-701" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-701', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-702" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-702', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2197"></a><tt class="py-lineno">2197</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-703" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-703', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2198"></a><tt class="py-lineno">2198</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-704" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-704', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2199"></a><tt class="py-lineno">2199</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2200"></a><tt class="py-lineno">2200</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-705" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-705', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2201"></a><tt class="py-lineno">2201</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-706" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-706', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2202"></a><tt class="py-lineno">2202</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-707" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-707', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2203"></a><tt class="py-lineno">2203</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.getAllNodesId"></a><div id="OnosCliDriver.getAllNodesId-def"><a name="L2204"></a><tt class="py-lineno">2204</tt> <a class="py-toggle" href="#" id="OnosCliDriver.getAllNodesId-toggle" onclick="return toggle('OnosCliDriver.getAllNodesId');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllNodesId">getAllNodesId</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.getAllNodesId-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.getAllNodesId-expanded"><a name="L2205"></a><tt class="py-lineno">2205</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2206"></a><tt class="py-lineno">2206</tt> <tt class="py-line"><tt class="py-docstring"> Uses 'nodes' function to obtain list of all nodes</tt> </tt>
-<a name="L2207"></a><tt class="py-lineno">2207</tt> <tt class="py-line"><tt class="py-docstring"> and parse the result of nodes to obtain just the</tt> </tt>
-<a name="L2208"></a><tt class="py-lineno">2208</tt> <tt class="py-line"><tt class="py-docstring"> node id's.</tt> </tt>
-<a name="L2209"></a><tt class="py-lineno">2209</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L2210"></a><tt class="py-lineno">2210</tt> <tt class="py-line"><tt class="py-docstring"> list of node id's</tt> </tt>
-<a name="L2211"></a><tt class="py-lineno">2211</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2212"></a><tt class="py-lineno">2212</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2213"></a><tt class="py-lineno">2213</tt> <tt class="py-line"> <tt class="py-name">nodesStr</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-708" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#nodes,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#nodes"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-708', 'nodes', 'link-708');">nodes</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2214"></a><tt class="py-lineno">2214</tt> <tt class="py-line"> <tt class="py-name">idList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2215"></a><tt class="py-lineno">2215</tt> <tt class="py-line"> <tt class="py-comment"># Sample nodesStr output</tt> </tt>
-<a name="L2216"></a><tt class="py-lineno">2216</tt> <tt class="py-line"> <tt class="py-comment"># id=local, address=127.0.0.1:9876, state=ACTIVE *</tt> </tt>
-<a name="L2217"></a><tt class="py-lineno">2217</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">nodesStr</tt><tt class="py-op">:</tt> </tt>
-<a name="L2218"></a><tt class="py-lineno">2218</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-709" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-709', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"There are no nodes to get id from"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2219"></a><tt class="py-lineno">2219</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">idList</tt> </tt>
-<a name="L2220"></a><tt class="py-lineno">2220</tt> <tt class="py-line"> <tt class="py-name">nodesJson</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">nodesStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2221"></a><tt class="py-lineno">2221</tt> <tt class="py-line"> <tt class="py-name">idList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-string">'id'</tt><tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">nodesJson</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2222"></a><tt class="py-lineno">2222</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">idList</tt> </tt>
-<a name="L2223"></a><tt class="py-lineno">2223</tt> <tt class="py-line"> </tt>
-<a name="L2224"></a><tt class="py-lineno">2224</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2225"></a><tt class="py-lineno">2225</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-710" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-710', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2226"></a><tt class="py-lineno">2226</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2227"></a><tt class="py-lineno">2227</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2228"></a><tt class="py-lineno">2228</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-711" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-711', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-712" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-712', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2229"></a><tt class="py-lineno">2229</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-713" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-713', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-714" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-714', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2230"></a><tt class="py-lineno">2230</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-715" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-715', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2231"></a><tt class="py-lineno">2231</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-716" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-716', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2232"></a><tt class="py-lineno">2232</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2233"></a><tt class="py-lineno">2233</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-717" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-717', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2234"></a><tt class="py-lineno">2234</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-718" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-718', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2235"></a><tt class="py-lineno">2235</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-719" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-719', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2236"></a><tt class="py-lineno">2236</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.getDevice"></a><div id="OnosCliDriver.getDevice-def"><a name="L2237"></a><tt class="py-lineno">2237</tt> <a class="py-toggle" href="#" id="OnosCliDriver.getDevice-toggle" onclick="return toggle('OnosCliDriver.getDevice');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getDevice">getDevice</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">dpid</tt><tt class="py-op">=</tt><tt class="py-name">None</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.getDevice-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.getDevice-expanded"><a name="L2238"></a><tt class="py-lineno">2238</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2239"></a><tt class="py-lineno">2239</tt> <tt class="py-line"><tt class="py-docstring"> Return the first device from the devices api whose 'id' contains 'dpid'</tt> </tt>
-<a name="L2240"></a><tt class="py-lineno">2240</tt> <tt class="py-line"><tt class="py-docstring"> Return None if there is no match</tt> </tt>
-<a name="L2241"></a><tt class="py-lineno">2241</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2242"></a><tt class="py-lineno">2242</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2243"></a><tt class="py-lineno">2243</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">dpid</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L2244"></a><tt class="py-lineno">2244</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2245"></a><tt class="py-lineno">2245</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2246"></a><tt class="py-lineno">2246</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-name">dpid</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">':'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2247"></a><tt class="py-lineno">2247</tt> <tt class="py-line"> <tt class="py-name">rawDevices</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-720" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-720', 'devices', 'link-696');">devices</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2248"></a><tt class="py-lineno">2248</tt> <tt class="py-line"> <tt class="py-name">devicesJson</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">rawDevices</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2249"></a><tt class="py-lineno">2249</tt> <tt class="py-line"> <tt class="py-comment"># search json for the device with dpid then return the device</tt> </tt>
-<a name="L2250"></a><tt class="py-lineno">2250</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">device</tt> <tt class="py-keyword">in</tt> <tt class="py-name">devicesJson</tt><tt class="py-op">:</tt> </tt>
-<a name="L2251"></a><tt class="py-lineno">2251</tt> <tt class="py-line"> <tt class="py-comment"># print "%s in %s?" % ( dpid, device[ 'id' ] )</tt> </tt>
-<a name="L2252"></a><tt class="py-lineno">2252</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">dpid</tt> <tt class="py-keyword">in</tt> <tt class="py-name">device</tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2253"></a><tt class="py-lineno">2253</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">device</tt> </tt>
-<a name="L2254"></a><tt class="py-lineno">2254</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2255"></a><tt class="py-lineno">2255</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2256"></a><tt class="py-lineno">2256</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-721" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-721', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2257"></a><tt class="py-lineno">2257</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2258"></a><tt class="py-lineno">2258</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2259"></a><tt class="py-lineno">2259</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-722" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-722', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-723" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-723', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2260"></a><tt class="py-lineno">2260</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-724" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-724', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-725" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-725', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2261"></a><tt class="py-lineno">2261</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-726" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-726', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2262"></a><tt class="py-lineno">2262</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-727" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-727', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2263"></a><tt class="py-lineno">2263</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2264"></a><tt class="py-lineno">2264</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-728" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-728', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2265"></a><tt class="py-lineno">2265</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-729" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-729', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2266"></a><tt class="py-lineno">2266</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-730" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-730', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2267"></a><tt class="py-lineno">2267</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.checkStatus"></a><div id="OnosCliDriver.checkStatus-def"><a name="L2268"></a><tt class="py-lineno">2268</tt> <a class="py-toggle" href="#" id="OnosCliDriver.checkStatus-toggle" onclick="return toggle('OnosCliDriver.checkStatus');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkStatus">checkStatus</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">,</tt> <tt class="py-param">numoswitch</tt><tt class="py-op">,</tt> <tt class="py-param">numolink</tt><tt class="py-op">,</tt> <tt class="py-param">logLevel</tt><tt class="py-op">=</tt><tt class="py-string">"info"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.checkStatus-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.checkStatus-expanded"><a name="L2269"></a><tt class="py-lineno">2269</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2270"></a><tt class="py-lineno">2270</tt> <tt class="py-line"><tt class="py-docstring"> Checks the number of switches & links that ONOS sees against the</tt> </tt>
-<a name="L2271"></a><tt class="py-lineno">2271</tt> <tt class="py-line"><tt class="py-docstring"> supplied values. By default this will report to main.log, but the</tt> </tt>
-<a name="L2272"></a><tt class="py-lineno">2272</tt> <tt class="py-line"><tt class="py-docstring"> log level can be specified.</tt> </tt>
-<a name="L2273"></a><tt class="py-lineno">2273</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L2274"></a><tt class="py-lineno">2274</tt> <tt class="py-line"><tt class="py-docstring"> Params: ip = ip used for the onos cli</tt> </tt>
-<a name="L2275"></a><tt class="py-lineno">2275</tt> <tt class="py-line"><tt class="py-docstring"> numoswitch = expected number of switches</tt> </tt>
-<a name="L2276"></a><tt class="py-lineno">2276</tt> <tt class="py-line"><tt class="py-docstring"> numolink = expected number of links</tt> </tt>
-<a name="L2277"></a><tt class="py-lineno">2277</tt> <tt class="py-line"><tt class="py-docstring"> logLevel = level to log to. Currently accepts</tt> </tt>
-<a name="L2278"></a><tt class="py-lineno">2278</tt> <tt class="py-line"><tt class="py-docstring"> 'info', 'warn' and 'report'</tt> </tt>
-<a name="L2279"></a><tt class="py-lineno">2279</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L2280"></a><tt class="py-lineno">2280</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L2281"></a><tt class="py-lineno">2281</tt> <tt class="py-line"><tt class="py-docstring"> logLevel can</tt> </tt>
-<a name="L2282"></a><tt class="py-lineno">2282</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L2283"></a><tt class="py-lineno">2283</tt> <tt class="py-line"><tt class="py-docstring"> Returns: main.TRUE if the number of switches and links are correct,</tt> </tt>
-<a name="L2284"></a><tt class="py-lineno">2284</tt> <tt class="py-line"><tt class="py-docstring"> main.FALSE if the number of switches and links is incorrect,</tt> </tt>
-<a name="L2285"></a><tt class="py-lineno">2285</tt> <tt class="py-line"><tt class="py-docstring"> and main.ERROR otherwise</tt> </tt>
-<a name="L2286"></a><tt class="py-lineno">2286</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2287"></a><tt class="py-lineno">2287</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2288"></a><tt class="py-lineno">2288</tt> <tt class="py-line"> <tt id="link-731" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#topology,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topology"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-731', 'topology', 'link-731');">topology</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-732" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.getTopology()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getTopology"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.getTopology" class="py-name" href="#" onclick="return doclink('link-732', 'getTopology', 'link-732');">getTopology</a></tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2289"></a><tt class="py-lineno">2289</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-733" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-733', 'topology', 'link-731');">topology</a></tt> <tt class="py-op">==</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">:</tt> </tt>
-<a name="L2290"></a><tt class="py-lineno">2290</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L2291"></a><tt class="py-lineno">2291</tt> <tt class="py-line"> <tt id="link-734" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-734', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L2292"></a><tt class="py-lineno">2292</tt> <tt class="py-line"> <tt class="py-comment"># Is the number of switches is what we expected</tt> </tt>
-<a name="L2293"></a><tt class="py-lineno">2293</tt> <tt class="py-line"> <tt id="link-735" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-735', 'devices', 'link-696');">devices</a></tt> <tt class="py-op">=</tt> <tt id="link-736" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-736', 'topology', 'link-731');">topology</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'devices'</tt><tt class="py-op">,</tt> <tt class="py-name">False</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2294"></a><tt class="py-lineno">2294</tt> <tt class="py-line"> <tt id="link-737" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#links,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#links"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-737', 'links', 'link-737');">links</a></tt> <tt class="py-op">=</tt> <tt id="link-738" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-738', 'topology', 'link-731');">topology</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'links'</tt><tt class="py-op">,</tt> <tt class="py-name">False</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2295"></a><tt class="py-lineno">2295</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-739" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-739', 'devices', 'link-696');">devices</a></tt> <tt class="py-keyword">is</tt> <tt class="py-name">False</tt> <tt class="py-keyword">or</tt> <tt id="link-740" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-740', 'links', 'link-737');">links</a></tt> <tt class="py-keyword">is</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L2296"></a><tt class="py-lineno">2296</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L2297"></a><tt class="py-lineno">2297</tt> <tt class="py-line"> <tt class="py-name">switchCheck</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt id="link-741" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-741', 'devices', 'link-696');">devices</a></tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">numoswitch</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2298"></a><tt class="py-lineno">2298</tt> <tt class="py-line"> <tt class="py-comment"># Is the number of links is what we expected</tt> </tt>
-<a name="L2299"></a><tt class="py-lineno">2299</tt> <tt class="py-line"> <tt class="py-name">linkCheck</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt id="link-742" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-742', 'links', 'link-737');">links</a></tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">numolink</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2300"></a><tt class="py-lineno">2300</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt> <tt class="py-name">switchCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">linkCheck</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2301"></a><tt class="py-lineno">2301</tt> <tt class="py-line"> <tt class="py-comment"># We expected the correct numbers</tt> </tt>
-<a name="L2302"></a><tt class="py-lineno">2302</tt> <tt class="py-line"> <tt id="link-743" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-743', 'output', 'link-120');">output</a></tt> <tt class="py-op">+=</tt> <tt class="py-string">"The number of links and switches match "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2303"></a><tt class="py-lineno">2303</tt> <tt class="py-line"> <tt class="py-string">"what was expected"</tt> </tt>
-<a name="L2304"></a><tt class="py-lineno">2304</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2305"></a><tt class="py-lineno">2305</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2306"></a><tt class="py-lineno">2306</tt> <tt class="py-line"> <tt id="link-744" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-744', 'output', 'link-120');">output</a></tt> <tt class="py-op">+=</tt> <tt class="py-string">"The number of links and switches does not match "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2307"></a><tt class="py-lineno">2307</tt> <tt class="py-line"> <tt class="py-string">"what was expected"</tt> </tt>
-<a name="L2308"></a><tt class="py-lineno">2308</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2309"></a><tt class="py-lineno">2309</tt> <tt class="py-line"> <tt id="link-745" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-745', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt id="link-746" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-746', 'output', 'link-120');">output</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"\n ONOS sees %i devices (%i expected) \</tt> </tt>
-<a name="L2310"></a><tt class="py-lineno">2310</tt> <tt class="py-line"><tt class="py-string"> and %i links (%i expected)"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> </tt>
-<a name="L2311"></a><tt class="py-lineno">2311</tt> <tt class="py-line"> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt id="link-747" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-747', 'devices', 'link-696');">devices</a></tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">numoswitch</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt id="link-748" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-748', 'links', 'link-737');">links</a></tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2312"></a><tt class="py-lineno">2312</tt> <tt class="py-line"> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">numolink</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2313"></a><tt class="py-lineno">2313</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">logLevel</tt> <tt class="py-op">==</tt> <tt class="py-string">"report"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2314"></a><tt class="py-lineno">2314</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-749" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-749', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt id="link-750" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-750', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L2315"></a><tt class="py-lineno">2315</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">logLevel</tt> <tt class="py-op">==</tt> <tt class="py-string">"warn"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2316"></a><tt class="py-lineno">2316</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-751" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-751', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt id="link-752" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-752', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L2317"></a><tt class="py-lineno">2317</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2318"></a><tt class="py-lineno">2318</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-753" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-753', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt id="link-754" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-754', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L2319"></a><tt class="py-lineno">2319</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-<a name="L2320"></a><tt class="py-lineno">2320</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2321"></a><tt class="py-lineno">2321</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-755" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-755', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2322"></a><tt class="py-lineno">2322</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2323"></a><tt class="py-lineno">2323</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2324"></a><tt class="py-lineno">2324</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-756" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-756', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-757" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-757', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2325"></a><tt class="py-lineno">2325</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-758" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-758', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-759" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-759', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2326"></a><tt class="py-lineno">2326</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-760" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-760', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2327"></a><tt class="py-lineno">2327</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-761" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-761', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2328"></a><tt class="py-lineno">2328</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2329"></a><tt class="py-lineno">2329</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-762" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-762', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2330"></a><tt class="py-lineno">2330</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-763" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-763', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2331"></a><tt class="py-lineno">2331</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-764" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-764', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2332"></a><tt class="py-lineno">2332</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.deviceRole"></a><div id="OnosCliDriver.deviceRole-def"><a name="L2333"></a><tt class="py-lineno">2333</tt> <a class="py-toggle" href="#" id="OnosCliDriver.deviceRole-toggle" onclick="return toggle('OnosCliDriver.deviceRole');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deviceRole">deviceRole</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">deviceId</tt><tt class="py-op">,</tt> <tt class="py-param">onosNode</tt><tt class="py-op">,</tt> <tt class="py-param">role</tt><tt class="py-op">=</tt><tt class="py-string">"master"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.deviceRole-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.deviceRole-expanded"><a name="L2334"></a><tt class="py-lineno">2334</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2335"></a><tt class="py-lineno">2335</tt> <tt class="py-line"><tt class="py-docstring"> Calls the device-role cli command.</tt> </tt>
-<a name="L2336"></a><tt class="py-lineno">2336</tt> <tt class="py-line"><tt class="py-docstring"> deviceId must be the id of a device as seen in the onos devices command</tt> </tt>
-<a name="L2337"></a><tt class="py-lineno">2337</tt> <tt class="py-line"><tt class="py-docstring"> onosNode is the ip of one of the onos nodes in the cluster</tt> </tt>
-<a name="L2338"></a><tt class="py-lineno">2338</tt> <tt class="py-line"><tt class="py-docstring"> role must be either master, standby, or none</tt> </tt>
-<a name="L2339"></a><tt class="py-lineno">2339</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L2340"></a><tt class="py-lineno">2340</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L2341"></a><tt class="py-lineno">2341</tt> <tt class="py-line"><tt class="py-docstring"> main.TRUE or main.FALSE based on argument verification and</tt> </tt>
-<a name="L2342"></a><tt class="py-lineno">2342</tt> <tt class="py-line"><tt class="py-docstring"> main.ERROR if command returns and error</tt> </tt>
-<a name="L2343"></a><tt class="py-lineno">2343</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2344"></a><tt class="py-lineno">2344</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2345"></a><tt class="py-lineno">2345</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">role</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-string">"master"</tt> <tt class="py-keyword">or</tt> <tt class="py-name">role</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-string">"standby"</tt> <tt class="py-keyword">or</tt>\ </tt>
-<a name="L2346"></a><tt class="py-lineno">2346</tt> <tt class="py-line"> <tt class="py-name">role</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-string">"none"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2347"></a><tt class="py-lineno">2347</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"device-role "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2348"></a><tt class="py-lineno">2348</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2349"></a><tt class="py-lineno">2349</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosNode</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2350"></a><tt class="py-lineno">2350</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">role</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2351"></a><tt class="py-lineno">2351</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-765" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-765', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2352"></a><tt class="py-lineno">2352</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2353"></a><tt class="py-lineno">2353</tt> <tt class="py-line"> <tt class="py-comment"># end color output to escape any colours</tt> </tt>
-<a name="L2354"></a><tt class="py-lineno">2354</tt> <tt class="py-line"> <tt class="py-comment"># from the cli</tt> </tt>
-<a name="L2355"></a><tt class="py-lineno">2355</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-766" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-766', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-767" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-767', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2356"></a><tt class="py-lineno">2356</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">+</tt> <tt class="py-string">'\033[0m'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2357"></a><tt class="py-lineno">2357</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L2358"></a><tt class="py-lineno">2358</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2359"></a><tt class="py-lineno">2359</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2360"></a><tt class="py-lineno">2360</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-768" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-768', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-769" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-769', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Invalid 'role' given to device_role(). "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2361"></a><tt class="py-lineno">2361</tt> <tt class="py-line"> <tt class="py-string">"Value was '"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">role</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"'."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2362"></a><tt class="py-lineno">2362</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2363"></a><tt class="py-lineno">2363</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2364"></a><tt class="py-lineno">2364</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-770" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-770', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2365"></a><tt class="py-lineno">2365</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2366"></a><tt class="py-lineno">2366</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2367"></a><tt class="py-lineno">2367</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-771" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-771', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-772" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-772', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2368"></a><tt class="py-lineno">2368</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-773" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-773', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-774" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-774', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2369"></a><tt class="py-lineno">2369</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-775" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-775', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2370"></a><tt class="py-lineno">2370</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-776" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-776', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2371"></a><tt class="py-lineno">2371</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2372"></a><tt class="py-lineno">2372</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-777" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-777', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2373"></a><tt class="py-lineno">2373</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-778" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-778', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2374"></a><tt class="py-lineno">2374</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-779" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-779', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2375"></a><tt class="py-lineno">2375</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.clusters"></a><div id="OnosCliDriver.clusters-def"><a name="L2376"></a><tt class="py-lineno">2376</tt> <a class="py-toggle" href="#" id="OnosCliDriver.clusters-toggle" onclick="return toggle('OnosCliDriver.clusters');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#clusters">clusters</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.clusters-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.clusters-expanded"><a name="L2377"></a><tt class="py-lineno">2377</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2378"></a><tt class="py-lineno">2378</tt> <tt class="py-line"><tt class="py-docstring"> Lists all clusters</tt> </tt>
-<a name="L2379"></a><tt class="py-lineno">2379</tt> <tt class="py-line"><tt class="py-docstring"> Optional argument:</tt> </tt>
-<a name="L2380"></a><tt class="py-lineno">2380</tt> <tt class="py-line"><tt class="py-docstring"> * jsonFormat - boolean indicating if you want output in json</tt> </tt>
-<a name="L2381"></a><tt class="py-lineno">2381</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2382"></a><tt class="py-lineno">2382</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2383"></a><tt class="py-lineno">2383</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"clusters"</tt> </tt>
-<a name="L2384"></a><tt class="py-lineno">2384</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L2385"></a><tt class="py-lineno">2385</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L2386"></a><tt class="py-lineno">2386</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-780" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-780', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2387"></a><tt class="py-lineno">2387</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L2388"></a><tt class="py-lineno">2388</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2389"></a><tt class="py-lineno">2389</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-781" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-781', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2390"></a><tt class="py-lineno">2390</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2391"></a><tt class="py-lineno">2391</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2392"></a><tt class="py-lineno">2392</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-782" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-782', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-783" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-783', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2393"></a><tt class="py-lineno">2393</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-784" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-784', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-785" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-785', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2394"></a><tt class="py-lineno">2394</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-786" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-786', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2395"></a><tt class="py-lineno">2395</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-787" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-787', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2396"></a><tt class="py-lineno">2396</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2397"></a><tt class="py-lineno">2397</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-788" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-788', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2398"></a><tt class="py-lineno">2398</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-789" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-789', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2399"></a><tt class="py-lineno">2399</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-790" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-790', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2400"></a><tt class="py-lineno">2400</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.electionTestLeader"></a><div id="OnosCliDriver.electionTestLeader-def"><a name="L2401"></a><tt class="py-lineno">2401</tt> <a class="py-toggle" href="#" id="OnosCliDriver.electionTestLeader-toggle" onclick="return toggle('OnosCliDriver.electionTestLeader');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestLeader">electionTestLeader</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.electionTestLeader-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.electionTestLeader-expanded"><a name="L2402"></a><tt class="py-lineno">2402</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2403"></a><tt class="py-lineno">2403</tt> <tt class="py-line"><tt class="py-docstring"> CLI command to get the current leader for the Election test application</tt> </tt>
-<a name="L2404"></a><tt class="py-lineno">2404</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: Requires installation of the onos-app-election feature</tt> </tt>
-<a name="L2405"></a><tt class="py-lineno">2405</tt> <tt class="py-line"><tt class="py-docstring"> Returns: Node IP of the leader if one exists</tt> </tt>
-<a name="L2406"></a><tt class="py-lineno">2406</tt> <tt class="py-line"><tt class="py-docstring"> None if none exists</tt> </tt>
-<a name="L2407"></a><tt class="py-lineno">2407</tt> <tt class="py-line"><tt class="py-docstring"> Main.FALSE on error</tt> </tt>
-<a name="L2408"></a><tt class="py-lineno">2408</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2409"></a><tt class="py-lineno">2409</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2410"></a><tt class="py-lineno">2410</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"election-test-leader"</tt> </tt>
-<a name="L2411"></a><tt class="py-lineno">2411</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-791" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-791', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2412"></a><tt class="py-lineno">2412</tt> <tt class="py-line"> <tt class="py-comment"># Leader</tt> </tt>
-<a name="L2413"></a><tt class="py-lineno">2413</tt> <tt class="py-line"> <tt class="py-name">leaderPattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"The\scurrent\sleader\sfor\sthe\sElection\s"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2414"></a><tt class="py-lineno">2414</tt> <tt class="py-line"> <tt class="py-string">"app\sis\s(?P<node>.+)\."</tt> </tt>
-<a name="L2415"></a><tt class="py-lineno">2415</tt> <tt class="py-line"> <tt class="py-name">nodeSearch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">leaderPattern</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2416"></a><tt class="py-lineno">2416</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">nodeSearch</tt><tt class="py-op">:</tt> </tt>
-<a name="L2417"></a><tt class="py-lineno">2417</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">=</tt> <tt class="py-name">nodeSearch</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-string">'node'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2418"></a><tt class="py-lineno">2418</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-792" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-792', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Election-test-leader on "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2419"></a><tt class="py-lineno">2419</tt> <tt class="py-line"> <tt class="py-string">" found "</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt> <tt class="py-op">+</tt> <tt class="py-string">" as the leader"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2420"></a><tt class="py-lineno">2420</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">node</tt> </tt>
-<a name="L2421"></a><tt class="py-lineno">2421</tt> <tt class="py-line"> <tt class="py-comment"># no leader</tt> </tt>
-<a name="L2422"></a><tt class="py-lineno">2422</tt> <tt class="py-line"> <tt class="py-name">nullPattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"There\sis\scurrently\sno\sleader\selected\sfor\s"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2423"></a><tt class="py-lineno">2423</tt> <tt class="py-line"> <tt class="py-string">"the\sElection\sapp"</tt> </tt>
-<a name="L2424"></a><tt class="py-lineno">2424</tt> <tt class="py-line"> <tt class="py-name">nullSearch</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">nullPattern</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2425"></a><tt class="py-lineno">2425</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">nullSearch</tt><tt class="py-op">:</tt> </tt>
-<a name="L2426"></a><tt class="py-lineno">2426</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-793" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-793', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Election-test-leader found no leader on "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2427"></a><tt class="py-lineno">2427</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2428"></a><tt class="py-lineno">2428</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2429"></a><tt class="py-lineno">2429</tt> <tt class="py-line"> <tt class="py-comment"># error</tt> </tt>
-<a name="L2430"></a><tt class="py-lineno">2430</tt> <tt class="py-line"> <tt class="py-name">errorPattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"Command\snot\sfound"</tt> </tt>
-<a name="L2431"></a><tt class="py-lineno">2431</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">errorPattern</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2432"></a><tt class="py-lineno">2432</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-794" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-794', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-795" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-795', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Election app is not loaded on "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2433"></a><tt class="py-lineno">2433</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Should this be main.ERROR?</tt> </tt>
-<a name="L2434"></a><tt class="py-lineno">2434</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2435"></a><tt class="py-lineno">2435</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2436"></a><tt class="py-lineno">2436</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-796" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-796', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-797" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-797', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in electionTestLeader on "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2437"></a><tt class="py-lineno">2437</tt> <tt class="py-line"> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-string">"unexpected response"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2438"></a><tt class="py-lineno">2438</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-798" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-798', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-799" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-799', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2439"></a><tt class="py-lineno">2439</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2440"></a><tt class="py-lineno">2440</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2441"></a><tt class="py-lineno">2441</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-800" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-800', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2442"></a><tt class="py-lineno">2442</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2443"></a><tt class="py-lineno">2443</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2444"></a><tt class="py-lineno">2444</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-801" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-801', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-802" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-802', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2445"></a><tt class="py-lineno">2445</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-803" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-803', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-804" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-804', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2446"></a><tt class="py-lineno">2446</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-805" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-805', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2447"></a><tt class="py-lineno">2447</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-806" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-806', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2448"></a><tt class="py-lineno">2448</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2449"></a><tt class="py-lineno">2449</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-807" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-807', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2450"></a><tt class="py-lineno">2450</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-808" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-808', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2451"></a><tt class="py-lineno">2451</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-809" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-809', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2452"></a><tt class="py-lineno">2452</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.electionTestRun"></a><div id="OnosCliDriver.electionTestRun-def"><a name="L2453"></a><tt class="py-lineno">2453</tt> <a class="py-toggle" href="#" id="OnosCliDriver.electionTestRun-toggle" onclick="return toggle('OnosCliDriver.electionTestRun');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestRun">electionTestRun</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.electionTestRun-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.electionTestRun-expanded"><a name="L2454"></a><tt class="py-lineno">2454</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2455"></a><tt class="py-lineno">2455</tt> <tt class="py-line"><tt class="py-docstring"> CLI command to run for leadership of the Election test application.</tt> </tt>
-<a name="L2456"></a><tt class="py-lineno">2456</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: Requires installation of the onos-app-election feature</tt> </tt>
-<a name="L2457"></a><tt class="py-lineno">2457</tt> <tt class="py-line"><tt class="py-docstring"> Returns: Main.TRUE on success</tt> </tt>
-<a name="L2458"></a><tt class="py-lineno">2458</tt> <tt class="py-line"><tt class="py-docstring"> Main.FALSE on error</tt> </tt>
-<a name="L2459"></a><tt class="py-lineno">2459</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2460"></a><tt class="py-lineno">2460</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2461"></a><tt class="py-lineno">2461</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"election-test-run"</tt> </tt>
-<a name="L2462"></a><tt class="py-lineno">2462</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-810" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-810', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2463"></a><tt class="py-lineno">2463</tt> <tt class="py-line"> <tt class="py-comment"># success</tt> </tt>
-<a name="L2464"></a><tt class="py-lineno">2464</tt> <tt class="py-line"> <tt class="py-name">successPattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"Entering\sleadership\selections\sfor\sthe\s"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2465"></a><tt class="py-lineno">2465</tt> <tt class="py-line"> <tt class="py-string">"Election\sapp."</tt> </tt>
-<a name="L2466"></a><tt class="py-lineno">2466</tt> <tt class="py-line"> <tt class="py-name">search</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">successPattern</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2467"></a><tt class="py-lineno">2467</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">search</tt><tt class="py-op">:</tt> </tt>
-<a name="L2468"></a><tt class="py-lineno">2468</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-811" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-811', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" entering leadership elections "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2469"></a><tt class="py-lineno">2469</tt> <tt class="py-line"> <tt class="py-string">"for the Election app."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2470"></a><tt class="py-lineno">2470</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2471"></a><tt class="py-lineno">2471</tt> <tt class="py-line"> <tt class="py-comment"># error</tt> </tt>
-<a name="L2472"></a><tt class="py-lineno">2472</tt> <tt class="py-line"> <tt class="py-name">errorPattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"Command\snot\sfound"</tt> </tt>
-<a name="L2473"></a><tt class="py-lineno">2473</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">errorPattern</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2474"></a><tt class="py-lineno">2474</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-812" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-812', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-813" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-813', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Election app is not loaded on "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2475"></a><tt class="py-lineno">2475</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2476"></a><tt class="py-lineno">2476</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2477"></a><tt class="py-lineno">2477</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-814" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-814', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-815" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-815', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in electionTestRun on "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2478"></a><tt class="py-lineno">2478</tt> <tt class="py-line"> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-string">"unexpected response"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2479"></a><tt class="py-lineno">2479</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-816" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-816', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-817" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-817', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2480"></a><tt class="py-lineno">2480</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2481"></a><tt class="py-lineno">2481</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2482"></a><tt class="py-lineno">2482</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-818" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-818', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2483"></a><tt class="py-lineno">2483</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2484"></a><tt class="py-lineno">2484</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2485"></a><tt class="py-lineno">2485</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-819" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-819', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-820" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-820', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2486"></a><tt class="py-lineno">2486</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-821" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-821', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-822" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-822', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2487"></a><tt class="py-lineno">2487</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-823" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-823', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2488"></a><tt class="py-lineno">2488</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-824" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-824', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2489"></a><tt class="py-lineno">2489</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2490"></a><tt class="py-lineno">2490</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-825" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-825', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2491"></a><tt class="py-lineno">2491</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-826" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-826', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2492"></a><tt class="py-lineno">2492</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-827" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-827', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2493"></a><tt class="py-lineno">2493</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.electionTestWithdraw"></a><div id="OnosCliDriver.electionTestWithdraw-def"><a name="L2494"></a><tt class="py-lineno">2494</tt> <a class="py-toggle" href="#" id="OnosCliDriver.electionTestWithdraw-toggle" onclick="return toggle('OnosCliDriver.electionTestWithdraw');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestWithdraw">electionTestWithdraw</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.electionTestWithdraw-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.electionTestWithdraw-expanded"><a name="L2495"></a><tt class="py-lineno">2495</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2496"></a><tt class="py-lineno">2496</tt> <tt class="py-line"><tt class="py-docstring"> * CLI command to withdraw the local node from leadership election for</tt> </tt>
-<a name="L2497"></a><tt class="py-lineno">2497</tt> <tt class="py-line"><tt class="py-docstring"> * the Election test application.</tt> </tt>
-<a name="L2498"></a><tt class="py-lineno">2498</tt> <tt class="py-line"><tt class="py-docstring"> #NOTE: Requires installation of the onos-app-election feature</tt> </tt>
-<a name="L2499"></a><tt class="py-lineno">2499</tt> <tt class="py-line"><tt class="py-docstring"> Returns: Main.TRUE on success</tt> </tt>
-<a name="L2500"></a><tt class="py-lineno">2500</tt> <tt class="py-line"><tt class="py-docstring"> Main.FALSE on error</tt> </tt>
-<a name="L2501"></a><tt class="py-lineno">2501</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2502"></a><tt class="py-lineno">2502</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2503"></a><tt class="py-lineno">2503</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"election-test-withdraw"</tt> </tt>
-<a name="L2504"></a><tt class="py-lineno">2504</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-828" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-828', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2505"></a><tt class="py-lineno">2505</tt> <tt class="py-line"> <tt class="py-comment"># success</tt> </tt>
-<a name="L2506"></a><tt class="py-lineno">2506</tt> <tt class="py-line"> <tt class="py-name">successPattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"Withdrawing\sfrom\sleadership\selections\sfor"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2507"></a><tt class="py-lineno">2507</tt> <tt class="py-line"> <tt class="py-string">"\sthe\sElection\sapp."</tt> </tt>
-<a name="L2508"></a><tt class="py-lineno">2508</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">successPattern</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2509"></a><tt class="py-lineno">2509</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-829" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-829', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" withdrawing from leadership "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2510"></a><tt class="py-lineno">2510</tt> <tt class="py-line"> <tt class="py-string">"elections for the Election app."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2511"></a><tt class="py-lineno">2511</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2512"></a><tt class="py-lineno">2512</tt> <tt class="py-line"> <tt class="py-comment"># error</tt> </tt>
-<a name="L2513"></a><tt class="py-lineno">2513</tt> <tt class="py-line"> <tt class="py-name">errorPattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"Command\snot\sfound"</tt> </tt>
-<a name="L2514"></a><tt class="py-lineno">2514</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">errorPattern</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2515"></a><tt class="py-lineno">2515</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-830" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-830', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-831" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-831', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Election app is not loaded on "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2516"></a><tt class="py-lineno">2516</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2517"></a><tt class="py-lineno">2517</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2518"></a><tt class="py-lineno">2518</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-832" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-832', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-833" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-833', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in electionTestWithdraw on "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2519"></a><tt class="py-lineno">2519</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-string">"unexpected response"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2520"></a><tt class="py-lineno">2520</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-834" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-834', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-835" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-835', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2521"></a><tt class="py-lineno">2521</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2522"></a><tt class="py-lineno">2522</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2523"></a><tt class="py-lineno">2523</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-836" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-836', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2524"></a><tt class="py-lineno">2524</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2525"></a><tt class="py-lineno">2525</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2526"></a><tt class="py-lineno">2526</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-837" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-837', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-838" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-838', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2527"></a><tt class="py-lineno">2527</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-839" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-839', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-840" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-840', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2528"></a><tt class="py-lineno">2528</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-841" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-841', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2529"></a><tt class="py-lineno">2529</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-842" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-842', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2530"></a><tt class="py-lineno">2530</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2531"></a><tt class="py-lineno">2531</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-843" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-843', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2532"></a><tt class="py-lineno">2532</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-844" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-844', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2533"></a><tt class="py-lineno">2533</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-845" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-845', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2534"></a><tt class="py-lineno">2534</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.getDevicePortsEnabledCount"></a><div id="OnosCliDriver.getDevicePortsEnabledCount-def"><a name="L2535"></a><tt class="py-lineno">2535</tt> <a class="py-toggle" href="#" id="OnosCliDriver.getDevicePortsEnabledCount-toggle" onclick="return toggle('OnosCliDriver.getDevicePortsEnabledCount');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getDevicePortsEnabledCount">getDevicePortsEnabledCount</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">dpid</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.getDevicePortsEnabledCount-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.getDevicePortsEnabledCount-expanded"><a name="L2536"></a><tt class="py-lineno">2536</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2537"></a><tt class="py-lineno">2537</tt> <tt class="py-line"><tt class="py-docstring"> Get the count of all enabled ports on a particular device/switch</tt> </tt>
-<a name="L2538"></a><tt class="py-lineno">2538</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2539"></a><tt class="py-lineno">2539</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2540"></a><tt class="py-lineno">2540</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2541"></a><tt class="py-lineno">2541</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos:ports -e "</tt> <tt class="py-op">+</tt> <tt class="py-name">dpid</tt> <tt class="py-op">+</tt> <tt class="py-string">" | wc -l"</tt> </tt>
-<a name="L2542"></a><tt class="py-lineno">2542</tt> <tt class="py-line"> <tt id="link-846" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-846', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-847" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-847', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2543"></a><tt class="py-lineno">2543</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"No such device"</tt><tt class="py-op">,</tt> <tt id="link-848" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-848', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2544"></a><tt class="py-lineno">2544</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-849" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-849', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-850" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-850', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ports"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2545"></a><tt class="py-lineno">2545</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">(</tt> <tt id="link-851" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-851', 'output', 'link-120');">output</a></tt><tt class="py-op">,</tt> <tt class="py-string">"Error"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2546"></a><tt class="py-lineno">2546</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2547"></a><tt class="py-lineno">2547</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-852" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-852', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L2548"></a><tt class="py-lineno">2548</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2549"></a><tt class="py-lineno">2549</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-853" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-853', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2550"></a><tt class="py-lineno">2550</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">(</tt> <tt id="link-854" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-854', 'output', 'link-120');">output</a></tt><tt class="py-op">,</tt> <tt class="py-string">"Error"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2551"></a><tt class="py-lineno">2551</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2552"></a><tt class="py-lineno">2552</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-855" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-855', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-856" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-856', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2553"></a><tt class="py-lineno">2553</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-857" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-857', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-858" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-858', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2554"></a><tt class="py-lineno">2554</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-859" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-859', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2555"></a><tt class="py-lineno">2555</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-860" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-860', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2556"></a><tt class="py-lineno">2556</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2557"></a><tt class="py-lineno">2557</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-861" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-861', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2558"></a><tt class="py-lineno">2558</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-862" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-862', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2559"></a><tt class="py-lineno">2559</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-863" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-863', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2560"></a><tt class="py-lineno">2560</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.getDeviceLinksActiveCount"></a><div id="OnosCliDriver.getDeviceLinksActiveCount-def"><a name="L2561"></a><tt class="py-lineno">2561</tt> <a class="py-toggle" href="#" id="OnosCliDriver.getDeviceLinksActiveCount-toggle" onclick="return toggle('OnosCliDriver.getDeviceLinksActiveCount');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getDeviceLinksActiveCount">getDeviceLinksActiveCount</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">dpid</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.getDeviceLinksActiveCount-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.getDeviceLinksActiveCount-expanded"><a name="L2562"></a><tt class="py-lineno">2562</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2563"></a><tt class="py-lineno">2563</tt> <tt class="py-line"><tt class="py-docstring"> Get the count of all enabled ports on a particular device/switch</tt> </tt>
-<a name="L2564"></a><tt class="py-lineno">2564</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2565"></a><tt class="py-lineno">2565</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2566"></a><tt class="py-lineno">2566</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2567"></a><tt class="py-lineno">2567</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos:links "</tt> <tt class="py-op">+</tt> <tt class="py-name">dpid</tt> <tt class="py-op">+</tt> <tt class="py-string">" | grep ACTIVE | wc -l"</tt> </tt>
-<a name="L2568"></a><tt class="py-lineno">2568</tt> <tt class="py-line"> <tt id="link-864" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-864', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-865" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-865', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2569"></a><tt class="py-lineno">2569</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"No such device"</tt><tt class="py-op">,</tt> <tt id="link-866" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-866', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2570"></a><tt class="py-lineno">2570</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-867" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-867', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-868" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-868', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ports "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2571"></a><tt class="py-lineno">2571</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">(</tt> <tt id="link-869" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-869', 'output', 'link-120');">output</a></tt><tt class="py-op">,</tt> <tt class="py-string">"Error "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2572"></a><tt class="py-lineno">2572</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2573"></a><tt class="py-lineno">2573</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-870" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-870', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L2574"></a><tt class="py-lineno">2574</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2575"></a><tt class="py-lineno">2575</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-871" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-871', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2576"></a><tt class="py-lineno">2576</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">(</tt> <tt id="link-872" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-872', 'output', 'link-120');">output</a></tt><tt class="py-op">,</tt> <tt class="py-string">"Error "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2577"></a><tt class="py-lineno">2577</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2578"></a><tt class="py-lineno">2578</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-873" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-873', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-874" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-874', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2579"></a><tt class="py-lineno">2579</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-875" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-875', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-876" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-876', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2580"></a><tt class="py-lineno">2580</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-877" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-877', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2581"></a><tt class="py-lineno">2581</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-878" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-878', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2582"></a><tt class="py-lineno">2582</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2583"></a><tt class="py-lineno">2583</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-879" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-879', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2584"></a><tt class="py-lineno">2584</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-880" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-880', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2585"></a><tt class="py-lineno">2585</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-881" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-881', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2586"></a><tt class="py-lineno">2586</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.getAllIntentIds"></a><div id="OnosCliDriver.getAllIntentIds-def"><a name="L2587"></a><tt class="py-lineno">2587</tt> <a class="py-toggle" href="#" id="OnosCliDriver.getAllIntentIds-toggle" onclick="return toggle('OnosCliDriver.getAllIntentIds');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllIntentIds">getAllIntentIds</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.getAllIntentIds-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.getAllIntentIds-expanded"><a name="L2588"></a><tt class="py-lineno">2588</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2589"></a><tt class="py-lineno">2589</tt> <tt class="py-line"><tt class="py-docstring"> Return a list of all Intent IDs</tt> </tt>
-<a name="L2590"></a><tt class="py-lineno">2590</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2591"></a><tt class="py-lineno">2591</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2592"></a><tt class="py-lineno">2592</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos:intents | grep id="</tt> </tt>
-<a name="L2593"></a><tt class="py-lineno">2593</tt> <tt class="py-line"> <tt id="link-882" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-882', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-883" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-883', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2594"></a><tt class="py-lineno">2594</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> <tt id="link-884" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-884', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2595"></a><tt class="py-lineno">2595</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-885" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-885', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-886" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-886', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ports"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2596"></a><tt class="py-lineno">2596</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">(</tt> <tt id="link-887" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-887', 'output', 'link-120');">output</a></tt><tt class="py-op">,</tt> <tt class="py-string">"Error"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2597"></a><tt class="py-lineno">2597</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2598"></a><tt class="py-lineno">2598</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-888" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-888', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L2599"></a><tt class="py-lineno">2599</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2600"></a><tt class="py-lineno">2600</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-889" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-889', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2601"></a><tt class="py-lineno">2601</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">(</tt> <tt id="link-890" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-890', 'output', 'link-120');">output</a></tt><tt class="py-op">,</tt> <tt class="py-string">"Error"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2602"></a><tt class="py-lineno">2602</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2603"></a><tt class="py-lineno">2603</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-891" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-891', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-892" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-892', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2604"></a><tt class="py-lineno">2604</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-893" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-893', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-894" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-894', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2605"></a><tt class="py-lineno">2605</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-895" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-895', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2606"></a><tt class="py-lineno">2606</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-896" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-896', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2607"></a><tt class="py-lineno">2607</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2608"></a><tt class="py-lineno">2608</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-897" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-897', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2609"></a><tt class="py-lineno">2609</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-898" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-898', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2610"></a><tt class="py-lineno">2610</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-899" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-899', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2611"></a><tt class="py-lineno">2611</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.intentSummary"></a><div id="OnosCliDriver.intentSummary-def"><a name="L2612"></a><tt class="py-lineno">2612</tt> <a class="py-toggle" href="#" id="OnosCliDriver.intentSummary-toggle" onclick="return toggle('OnosCliDriver.intentSummary');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intentSummary">intentSummary</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.intentSummary-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.intentSummary-expanded"><a name="L2613"></a><tt class="py-lineno">2613</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2614"></a><tt class="py-lineno">2614</tt> <tt class="py-line"><tt class="py-docstring"> Returns a dictionary containing the current intent states and the count</tt> </tt>
-<a name="L2615"></a><tt class="py-lineno">2615</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2616"></a><tt class="py-lineno">2616</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2617"></a><tt class="py-lineno">2617</tt> <tt class="py-line"> <tt id="link-900" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-900', 'intents', 'link-570');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-901" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-901', 'intents', 'link-570');">intents</a></tt><tt class="py-op">(</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2618"></a><tt class="py-lineno">2618</tt> <tt class="py-line"> <tt class="py-name">states</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2619"></a><tt class="py-lineno">2619</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-902" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-902', 'intent', 'link-571');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-903" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-903', 'intents', 'link-570');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2620"></a><tt class="py-lineno">2620</tt> <tt class="py-line"> <tt class="py-name">states</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-904" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-904', 'intent', 'link-571');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2621"></a><tt class="py-lineno">2621</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">states</tt><tt class="py-op">.</tt><tt class="py-name">count</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">states</tt> <tt class="py-op">)</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2622"></a><tt class="py-lineno">2622</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-905" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-905', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">dict</tt><tt class="py-op">(</tt> <tt class="py-name">out</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2623"></a><tt class="py-lineno">2623</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">dict</tt><tt class="py-op">(</tt> <tt class="py-name">out</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2624"></a><tt class="py-lineno">2624</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2625"></a><tt class="py-lineno">2625</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-906" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-906', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2626"></a><tt class="py-lineno">2626</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2627"></a><tt class="py-lineno">2627</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2628"></a><tt class="py-lineno">2628</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-907" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-907', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-908" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-908', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2629"></a><tt class="py-lineno">2629</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-909" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-909', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-910" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-910', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2630"></a><tt class="py-lineno">2630</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-911" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-911', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2631"></a><tt class="py-lineno">2631</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-912" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-912', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2632"></a><tt class="py-lineno">2632</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2633"></a><tt class="py-lineno">2633</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-913" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-913', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2634"></a><tt class="py-lineno">2634</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-914" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-914', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2635"></a><tt class="py-lineno">2635</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-915" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-915', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2636"></a><tt class="py-lineno">2636</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.leaders"></a><div id="OnosCliDriver.leaders-def"><a name="L2637"></a><tt class="py-lineno">2637</tt> <a class="py-toggle" href="#" id="OnosCliDriver.leaders-toggle" onclick="return toggle('OnosCliDriver.leaders');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#leaders">leaders</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.leaders-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.leaders-expanded"><a name="L2638"></a><tt class="py-lineno">2638</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2639"></a><tt class="py-lineno">2639</tt> <tt class="py-line"><tt class="py-docstring"> Returns the output of the leaders command.</tt> </tt>
-<a name="L2640"></a><tt class="py-lineno">2640</tt> <tt class="py-line"><tt class="py-docstring"> Optional argument:</tt> </tt>
-<a name="L2641"></a><tt class="py-lineno">2641</tt> <tt class="py-line"><tt class="py-docstring"> * jsonFormat - boolean indicating if you want output in json</tt> </tt>
-<a name="L2642"></a><tt class="py-lineno">2642</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2643"></a><tt class="py-lineno">2643</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2644"></a><tt class="py-lineno">2644</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos:leaders"</tt> </tt>
-<a name="L2645"></a><tt class="py-lineno">2645</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L2646"></a><tt class="py-lineno">2646</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L2647"></a><tt class="py-lineno">2647</tt> <tt class="py-line"> <tt id="link-916" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-916', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-917" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-917', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2648"></a><tt class="py-lineno">2648</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-918" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-918', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L2649"></a><tt class="py-lineno">2649</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2650"></a><tt class="py-lineno">2650</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-919" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-919', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2651"></a><tt class="py-lineno">2651</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2652"></a><tt class="py-lineno">2652</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2653"></a><tt class="py-lineno">2653</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-920" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-920', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-921" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-921', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2654"></a><tt class="py-lineno">2654</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-922" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-922', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-923" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-923', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2655"></a><tt class="py-lineno">2655</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-924" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-924', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2656"></a><tt class="py-lineno">2656</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-925" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-925', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2657"></a><tt class="py-lineno">2657</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2658"></a><tt class="py-lineno">2658</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-926" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-926', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2659"></a><tt class="py-lineno">2659</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-927" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-927', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2660"></a><tt class="py-lineno">2660</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-928" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-928', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2661"></a><tt class="py-lineno">2661</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.leaderCandidates"></a><div id="OnosCliDriver.leaderCandidates-def"><a name="L2662"></a><tt class="py-lineno">2662</tt> <a class="py-toggle" href="#" id="OnosCliDriver.leaderCandidates-toggle" onclick="return toggle('OnosCliDriver.leaderCandidates');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#leaderCandidates">leaderCandidates</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.leaderCandidates-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.leaderCandidates-expanded"><a name="L2663"></a><tt class="py-lineno">2663</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2664"></a><tt class="py-lineno">2664</tt> <tt class="py-line"><tt class="py-docstring"> Returns the output of the leaders -c command.</tt> </tt>
-<a name="L2665"></a><tt class="py-lineno">2665</tt> <tt class="py-line"><tt class="py-docstring"> Optional argument:</tt> </tt>
-<a name="L2666"></a><tt class="py-lineno">2666</tt> <tt class="py-line"><tt class="py-docstring"> * jsonFormat - boolean indicating if you want output in json</tt> </tt>
-<a name="L2667"></a><tt class="py-lineno">2667</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2668"></a><tt class="py-lineno">2668</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2669"></a><tt class="py-lineno">2669</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos:leaders -c"</tt> </tt>
-<a name="L2670"></a><tt class="py-lineno">2670</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L2671"></a><tt class="py-lineno">2671</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L2672"></a><tt class="py-lineno">2672</tt> <tt class="py-line"> <tt id="link-929" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-929', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-930" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-930', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2673"></a><tt class="py-lineno">2673</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-931" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-931', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L2674"></a><tt class="py-lineno">2674</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2675"></a><tt class="py-lineno">2675</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-932" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-932', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2676"></a><tt class="py-lineno">2676</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2677"></a><tt class="py-lineno">2677</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2678"></a><tt class="py-lineno">2678</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-933" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-933', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-934" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-934', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2679"></a><tt class="py-lineno">2679</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-935" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-935', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-936" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-936', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2680"></a><tt class="py-lineno">2680</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-937" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-937', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2681"></a><tt class="py-lineno">2681</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-938" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-938', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2682"></a><tt class="py-lineno">2682</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2683"></a><tt class="py-lineno">2683</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-939" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-939', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2684"></a><tt class="py-lineno">2684</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-940" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-940', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2685"></a><tt class="py-lineno">2685</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-941" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-941', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2686"></a><tt class="py-lineno">2686</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.specificLeaderCandidate"></a><div id="OnosCliDriver.specificLeaderCandidate-def"><a name="L2687"></a><tt class="py-lineno">2687</tt> <a class="py-toggle" href="#" id="OnosCliDriver.specificLeaderCandidate-toggle" onclick="return toggle('OnosCliDriver.specificLeaderCandidate');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#specificLeaderCandidate">specificLeaderCandidate</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">topic</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.specificLeaderCandidate-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.specificLeaderCandidate-expanded"><a name="L2688"></a><tt class="py-lineno">2688</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2689"></a><tt class="py-lineno">2689</tt> <tt class="py-line"><tt class="py-docstring"> Returns a list in format [leader,candidate1,candidate2,...] for a given</tt> </tt>
-<a name="L2690"></a><tt class="py-lineno">2690</tt> <tt class="py-line"><tt class="py-docstring"> topic parameter and an empty list if the topic doesn't exist</tt> </tt>
-<a name="L2691"></a><tt class="py-lineno">2691</tt> <tt class="py-line"><tt class="py-docstring"> If no leader is elected leader in the returned list will be "none"</tt> </tt>
-<a name="L2692"></a><tt class="py-lineno">2692</tt> <tt class="py-line"><tt class="py-docstring"> Returns None if there is a type error processing the json object</tt> </tt>
-<a name="L2693"></a><tt class="py-lineno">2693</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2694"></a><tt class="py-lineno">2694</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2695"></a><tt class="py-lineno">2695</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos:leaders -c -j"</tt> </tt>
-<a name="L2696"></a><tt class="py-lineno">2696</tt> <tt class="py-line"> <tt id="link-942" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-942', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-943" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-943', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2697"></a><tt class="py-lineno">2697</tt> <tt class="py-line"> <tt id="link-944" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-944', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt id="link-945" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-945', 'output', 'link-120');">output</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L2698"></a><tt class="py-lineno">2698</tt> <tt class="py-line"> <tt class="py-name">results</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2699"></a><tt class="py-lineno">2699</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">dict</tt> <tt class="py-keyword">in</tt> <tt id="link-946" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-946', 'output', 'link-120');">output</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2700"></a><tt class="py-lineno">2700</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">dict</tt><tt class="py-op">[</tt><tt class="py-string">"topic"</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">topic</tt><tt class="py-op">:</tt> </tt>
-<a name="L2701"></a><tt class="py-lineno">2701</tt> <tt class="py-line"> <tt class="py-name">leader</tt> <tt class="py-op">=</tt> <tt class="py-name">dict</tt><tt class="py-op">[</tt><tt class="py-string">"leader"</tt><tt class="py-op">]</tt> </tt>
-<a name="L2702"></a><tt class="py-lineno">2702</tt> <tt class="py-line"> <tt class="py-name">candidates</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">", "</tt><tt class="py-op">,</tt><tt class="py-name">dict</tt><tt class="py-op">[</tt><tt class="py-string">"candidates"</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L2703"></a><tt class="py-lineno">2703</tt> <tt class="py-line"> <tt class="py-name">results</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">leader</tt><tt class="py-op">)</tt> </tt>
-<a name="L2704"></a><tt class="py-lineno">2704</tt> <tt class="py-line"> <tt class="py-name">results</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-name">candidates</tt><tt class="py-op">)</tt> </tt>
-<a name="L2705"></a><tt class="py-lineno">2705</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">results</tt> </tt>
-<a name="L2706"></a><tt class="py-lineno">2706</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2707"></a><tt class="py-lineno">2707</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-947" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-947', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2708"></a><tt class="py-lineno">2708</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2709"></a><tt class="py-lineno">2709</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2710"></a><tt class="py-lineno">2710</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-948" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-948', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-949" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-949', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2711"></a><tt class="py-lineno">2711</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-950" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-950', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-951" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-951', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2712"></a><tt class="py-lineno">2712</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-952" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-952', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2713"></a><tt class="py-lineno">2713</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-953" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-953', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2714"></a><tt class="py-lineno">2714</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2715"></a><tt class="py-lineno">2715</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-954" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-954', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2716"></a><tt class="py-lineno">2716</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-955" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-955', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2717"></a><tt class="py-lineno">2717</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-956" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-956', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2718"></a><tt class="py-lineno">2718</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.pendingMap"></a><div id="OnosCliDriver.pendingMap-def"><a name="L2719"></a><tt class="py-lineno">2719</tt> <a class="py-toggle" href="#" id="OnosCliDriver.pendingMap-toggle" onclick="return toggle('OnosCliDriver.pendingMap');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#pendingMap">pendingMap</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.pendingMap-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.pendingMap-expanded"><a name="L2720"></a><tt class="py-lineno">2720</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2721"></a><tt class="py-lineno">2721</tt> <tt class="py-line"><tt class="py-docstring"> Returns the output of the intent Pending map.</tt> </tt>
-<a name="L2722"></a><tt class="py-lineno">2722</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2723"></a><tt class="py-lineno">2723</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2724"></a><tt class="py-lineno">2724</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos:intents -p"</tt> </tt>
-<a name="L2725"></a><tt class="py-lineno">2725</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L2726"></a><tt class="py-lineno">2726</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L2727"></a><tt class="py-lineno">2727</tt> <tt class="py-line"> <tt id="link-957" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-957', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-958" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-958', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2728"></a><tt class="py-lineno">2728</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-959" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-959', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L2729"></a><tt class="py-lineno">2729</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2730"></a><tt class="py-lineno">2730</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-960" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-960', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2731"></a><tt class="py-lineno">2731</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2732"></a><tt class="py-lineno">2732</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2733"></a><tt class="py-lineno">2733</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-961" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-961', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-962" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-962', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2734"></a><tt class="py-lineno">2734</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-963" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-963', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-964" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-964', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2735"></a><tt class="py-lineno">2735</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-965" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-965', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2736"></a><tt class="py-lineno">2736</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-966" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-966', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2737"></a><tt class="py-lineno">2737</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2738"></a><tt class="py-lineno">2738</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-967" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-967', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2739"></a><tt class="py-lineno">2739</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-968" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-968', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2740"></a><tt class="py-lineno">2740</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-969" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-969', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2741"></a><tt class="py-lineno">2741</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.partitions"></a><div id="OnosCliDriver.partitions-def"><a name="L2742"></a><tt class="py-lineno">2742</tt> <a class="py-toggle" href="#" id="OnosCliDriver.partitions-toggle" onclick="return toggle('OnosCliDriver.partitions');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#partitions">partitions</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.partitions-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.partitions-expanded"><a name="L2743"></a><tt class="py-lineno">2743</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2744"></a><tt class="py-lineno">2744</tt> <tt class="py-line"><tt class="py-docstring"> Returns the output of the raft partitions command for ONOS.</tt> </tt>
-<a name="L2745"></a><tt class="py-lineno">2745</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2746"></a><tt class="py-lineno">2746</tt> <tt class="py-line"> <tt class="py-comment"># Sample JSON</tt> </tt>
-<a name="L2747"></a><tt class="py-lineno">2747</tt> <tt class="py-line"> <tt class="py-comment"># {</tt> </tt>
-<a name="L2748"></a><tt class="py-lineno">2748</tt> <tt class="py-line"> <tt class="py-comment"># "leader": "tcp://10.128.30.11:7238",</tt> </tt>
-<a name="L2749"></a><tt class="py-lineno">2749</tt> <tt class="py-line"> <tt class="py-comment"># "members": [</tt> </tt>
-<a name="L2750"></a><tt class="py-lineno">2750</tt> <tt class="py-line"> <tt class="py-comment"># "tcp://10.128.30.11:7238",</tt> </tt>
-<a name="L2751"></a><tt class="py-lineno">2751</tt> <tt class="py-line"> <tt class="py-comment"># "tcp://10.128.30.17:7238",</tt> </tt>
-<a name="L2752"></a><tt class="py-lineno">2752</tt> <tt class="py-line"> <tt class="py-comment"># "tcp://10.128.30.13:7238",</tt> </tt>
-<a name="L2753"></a><tt class="py-lineno">2753</tt> <tt class="py-line"> <tt class="py-comment"># ],</tt> </tt>
-<a name="L2754"></a><tt class="py-lineno">2754</tt> <tt class="py-line"> <tt class="py-comment"># "name": "p1",</tt> </tt>
-<a name="L2755"></a><tt class="py-lineno">2755</tt> <tt class="py-line"> <tt class="py-comment"># "term": 3</tt> </tt>
-<a name="L2756"></a><tt class="py-lineno">2756</tt> <tt class="py-line"> <tt class="py-comment"># },</tt> </tt>
-<a name="L2757"></a><tt class="py-lineno">2757</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2758"></a><tt class="py-lineno">2758</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos:partitions"</tt> </tt>
-<a name="L2759"></a><tt class="py-lineno">2759</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L2760"></a><tt class="py-lineno">2760</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L2761"></a><tt class="py-lineno">2761</tt> <tt class="py-line"> <tt id="link-970" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-970', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-971" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-971', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2762"></a><tt class="py-lineno">2762</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-972" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-972', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L2763"></a><tt class="py-lineno">2763</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2764"></a><tt class="py-lineno">2764</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-973" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-973', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2765"></a><tt class="py-lineno">2765</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2766"></a><tt class="py-lineno">2766</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2767"></a><tt class="py-lineno">2767</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-974" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-974', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-975" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-975', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2768"></a><tt class="py-lineno">2768</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-976" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-976', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-977" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-977', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2769"></a><tt class="py-lineno">2769</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-978" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-978', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2770"></a><tt class="py-lineno">2770</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-979" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-979', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2771"></a><tt class="py-lineno">2771</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2772"></a><tt class="py-lineno">2772</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-980" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-980', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2773"></a><tt class="py-lineno">2773</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-981" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-981', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2774"></a><tt class="py-lineno">2774</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-982" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-982', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2775"></a><tt class="py-lineno">2775</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.apps"></a><div id="OnosCliDriver.apps-def"><a name="L2776"></a><tt class="py-lineno">2776</tt> <a class="py-toggle" href="#" id="OnosCliDriver.apps-toggle" onclick="return toggle('OnosCliDriver.apps');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#apps">apps</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.apps-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.apps-expanded"><a name="L2777"></a><tt class="py-lineno">2777</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2778"></a><tt class="py-lineno">2778</tt> <tt class="py-line"><tt class="py-docstring"> Returns the output of the apps command for ONOS. This command lists</tt> </tt>
-<a name="L2779"></a><tt class="py-lineno">2779</tt> <tt class="py-line"><tt class="py-docstring"> information about installed ONOS applications</tt> </tt>
-<a name="L2780"></a><tt class="py-lineno">2780</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2781"></a><tt class="py-lineno">2781</tt> <tt class="py-line"> <tt class="py-comment"># Sample JSON object</tt> </tt>
-<a name="L2782"></a><tt class="py-lineno">2782</tt> <tt class="py-line"> <tt class="py-comment"># [{"name":"org.onosproject.openflow","id":0,"version":"1.2.0",</tt> </tt>
-<a name="L2783"></a><tt class="py-lineno">2783</tt> <tt class="py-line"> <tt class="py-comment"># "description":"ONOS OpenFlow protocol southbound providers",</tt> </tt>
-<a name="L2784"></a><tt class="py-lineno">2784</tt> <tt class="py-line"> <tt class="py-comment"># "origin":"ON.Lab","permissions":"[]","featuresRepo":"",</tt> </tt>
-<a name="L2785"></a><tt class="py-lineno">2785</tt> <tt class="py-line"> <tt class="py-comment"># "features":"[onos-openflow]","state":"ACTIVE"}]</tt> </tt>
-<a name="L2786"></a><tt class="py-lineno">2786</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2787"></a><tt class="py-lineno">2787</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos:apps"</tt> </tt>
-<a name="L2788"></a><tt class="py-lineno">2788</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L2789"></a><tt class="py-lineno">2789</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L2790"></a><tt class="py-lineno">2790</tt> <tt class="py-line"> <tt id="link-983" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-983', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-984" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-984', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2791"></a><tt class="py-lineno">2791</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"Error executing command"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-985" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-985', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L2792"></a><tt class="py-lineno">2792</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-986" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-986', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L2793"></a><tt class="py-lineno">2793</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: look at specific exceptions/Errors</tt> </tt>
-<a name="L2794"></a><tt class="py-lineno">2794</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2795"></a><tt class="py-lineno">2795</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-987" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-987', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-988" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-988', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing onos:app command: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2796"></a><tt class="py-lineno">2796</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-989" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-989', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2797"></a><tt class="py-lineno">2797</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2798"></a><tt class="py-lineno">2798</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2799"></a><tt class="py-lineno">2799</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-990" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-990', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2800"></a><tt class="py-lineno">2800</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2801"></a><tt class="py-lineno">2801</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2802"></a><tt class="py-lineno">2802</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-991" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-991', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-992" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-992', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2803"></a><tt class="py-lineno">2803</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-993" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-993', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-994" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-994', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2804"></a><tt class="py-lineno">2804</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-995" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-995', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2805"></a><tt class="py-lineno">2805</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-996" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-996', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2806"></a><tt class="py-lineno">2806</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2807"></a><tt class="py-lineno">2807</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-997" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-997', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2808"></a><tt class="py-lineno">2808</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-998" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-998', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2809"></a><tt class="py-lineno">2809</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-999" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-999', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2810"></a><tt class="py-lineno">2810</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.appStatus"></a><div id="OnosCliDriver.appStatus-def"><a name="L2811"></a><tt class="py-lineno">2811</tt> <a class="py-toggle" href="#" id="OnosCliDriver.appStatus-toggle" onclick="return toggle('OnosCliDriver.appStatus');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appStatus">appStatus</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">appName</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.appStatus-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.appStatus-expanded"><a name="L2812"></a><tt class="py-lineno">2812</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2813"></a><tt class="py-lineno">2813</tt> <tt class="py-line"><tt class="py-docstring"> Uses the onos:apps cli command to return the status of an application.</tt> </tt>
-<a name="L2814"></a><tt class="py-lineno">2814</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L2815"></a><tt class="py-lineno">2815</tt> <tt class="py-line"><tt class="py-docstring"> "ACTIVE" - If app is installed and activated</tt> </tt>
-<a name="L2816"></a><tt class="py-lineno">2816</tt> <tt class="py-line"><tt class="py-docstring"> "INSTALLED" - If app is installed and deactivated</tt> </tt>
-<a name="L2817"></a><tt class="py-lineno">2817</tt> <tt class="py-line"><tt class="py-docstring"> "UNINSTALLED" - If app is not installed</tt> </tt>
-<a name="L2818"></a><tt class="py-lineno">2818</tt> <tt class="py-line"><tt class="py-docstring"> None - on error</tt> </tt>
-<a name="L2819"></a><tt class="py-lineno">2819</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2820"></a><tt class="py-lineno">2820</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2821"></a><tt class="py-lineno">2821</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2822"></a><tt class="py-lineno">2822</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1000" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1000', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1001" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1001', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">".appStatus(): appName must be"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2823"></a><tt class="py-lineno">2823</tt> <tt class="py-line"> <tt class="py-string">" a string"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2824"></a><tt class="py-lineno">2824</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2825"></a><tt class="py-lineno">2825</tt> <tt class="py-line"> <tt id="link-1002" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1002', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1003" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#apps,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#apps"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-1003', 'apps', 'link-1003');">apps</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2826"></a><tt class="py-lineno">2826</tt> <tt class="py-line"> <tt class="py-name">appsJson</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-1004" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1004', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L2827"></a><tt class="py-lineno">2827</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2828"></a><tt class="py-lineno">2828</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-1005" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-1005', 'app', 'link-521');">app</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">appsJson</tt><tt class="py-op">:</tt> </tt>
-<a name="L2829"></a><tt class="py-lineno">2829</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appName</tt> <tt class="py-op">==</tt> <tt id="link-1006" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-1006', 'app', 'link-521');">app</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-string">'name'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2830"></a><tt class="py-lineno">2830</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-1007" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-1007', 'app', 'link-521');">app</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-string">'state'</tt><tt class="py-op">)</tt> </tt>
-<a name="L2831"></a><tt class="py-lineno">2831</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2832"></a><tt class="py-lineno">2832</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">state</tt> <tt class="py-op">==</tt> <tt class="py-string">"ACTIVE"</tt> <tt class="py-keyword">or</tt> <tt class="py-name">state</tt> <tt class="py-op">==</tt> <tt class="py-string">"INSTALLED"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2833"></a><tt class="py-lineno">2833</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">state</tt> </tt>
-<a name="L2834"></a><tt class="py-lineno">2834</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">state</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L2835"></a><tt class="py-lineno">2835</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">"UNINSTALLED"</tt> </tt>
-<a name="L2836"></a><tt class="py-lineno">2836</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L2837"></a><tt class="py-lineno">2837</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1008" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1008', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1009" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1009', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Unexpected state from 'onos:apps': "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2838"></a><tt class="py-lineno">2838</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2839"></a><tt class="py-lineno">2839</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">state</tt> </tt>
-<a name="L2840"></a><tt class="py-lineno">2840</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2841"></a><tt class="py-lineno">2841</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1010" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1010', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2842"></a><tt class="py-lineno">2842</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2843"></a><tt class="py-lineno">2843</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2844"></a><tt class="py-lineno">2844</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1011" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1011', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1012" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1012', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2845"></a><tt class="py-lineno">2845</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1013" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1013', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1014" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1014', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2846"></a><tt class="py-lineno">2846</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1015" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1015', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2847"></a><tt class="py-lineno">2847</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1016" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1016', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2848"></a><tt class="py-lineno">2848</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2849"></a><tt class="py-lineno">2849</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1017" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1017', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2850"></a><tt class="py-lineno">2850</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1018" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1018', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2851"></a><tt class="py-lineno">2851</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1019" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1019', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2852"></a><tt class="py-lineno">2852</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.app"></a><div id="OnosCliDriver.app-def"><a name="L2853"></a><tt class="py-lineno">2853</tt> <a class="py-toggle" href="#" id="OnosCliDriver.app-toggle" onclick="return toggle('OnosCliDriver.app');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#app">app</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">appName</tt><tt class="py-op">,</tt> <tt class="py-param">option</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.app-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.app-expanded"><a name="L2854"></a><tt class="py-lineno">2854</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2855"></a><tt class="py-lineno">2855</tt> <tt class="py-line"><tt class="py-docstring"> Interacts with the app command for ONOS. This command manages</tt> </tt>
-<a name="L2856"></a><tt class="py-lineno">2856</tt> <tt class="py-line"><tt class="py-docstring"> application inventory.</tt> </tt>
-<a name="L2857"></a><tt class="py-lineno">2857</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2858"></a><tt class="py-lineno">2858</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2859"></a><tt class="py-lineno">2859</tt> <tt class="py-line"> <tt class="py-comment"># Validate argument types</tt> </tt>
-<a name="L2860"></a><tt class="py-lineno">2860</tt> <tt class="py-line"> <tt class="py-name">valid</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2861"></a><tt class="py-lineno">2861</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2862"></a><tt class="py-lineno">2862</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1020" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1020', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1021" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1021', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">".app(): appName must be a "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2863"></a><tt class="py-lineno">2863</tt> <tt class="py-line"> <tt class="py-string">"string"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2864"></a><tt class="py-lineno">2864</tt> <tt class="py-line"> <tt class="py-name">valid</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2865"></a><tt class="py-lineno">2865</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">option</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2866"></a><tt class="py-lineno">2866</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1022" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1022', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1023" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1023', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">".app(): option must be a string"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2867"></a><tt class="py-lineno">2867</tt> <tt class="py-line"> <tt class="py-name">valid</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2868"></a><tt class="py-lineno">2868</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">valid</tt><tt class="py-op">:</tt> </tt>
-<a name="L2869"></a><tt class="py-lineno">2869</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2870"></a><tt class="py-lineno">2870</tt> <tt class="py-line"> <tt class="py-comment"># Validate Option</tt> </tt>
-<a name="L2871"></a><tt class="py-lineno">2871</tt> <tt class="py-line"> <tt class="py-name">option</tt> <tt class="py-op">=</tt> <tt class="py-name">option</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2872"></a><tt class="py-lineno">2872</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Install may become a valid option</tt> </tt>
-<a name="L2873"></a><tt class="py-lineno">2873</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">option</tt> <tt class="py-op">==</tt> <tt class="py-string">"activate"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2874"></a><tt class="py-lineno">2874</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L2875"></a><tt class="py-lineno">2875</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">option</tt> <tt class="py-op">==</tt> <tt class="py-string">"deactivate"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2876"></a><tt class="py-lineno">2876</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L2877"></a><tt class="py-lineno">2877</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">option</tt> <tt class="py-op">==</tt> <tt class="py-string">"uninstall"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2878"></a><tt class="py-lineno">2878</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L2879"></a><tt class="py-lineno">2879</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2880"></a><tt class="py-lineno">2880</tt> <tt class="py-line"> <tt class="py-comment"># Invalid option</tt> </tt>
-<a name="L2881"></a><tt class="py-lineno">2881</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1024" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1024', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1025" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1025', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"The ONOS app command argument only takes "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2882"></a><tt class="py-lineno">2882</tt> <tt class="py-line"> <tt class="py-string">"the values: (activate|deactivate|uninstall)"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2883"></a><tt class="py-lineno">2883</tt> <tt class="py-line"> <tt class="py-string">"; was given '"</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">"'"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2884"></a><tt class="py-lineno">2884</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2885"></a><tt class="py-lineno">2885</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos:app "</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">appName</tt> </tt>
-<a name="L2886"></a><tt class="py-lineno">2886</tt> <tt class="py-line"> <tt id="link-1026" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1026', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1027" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1027', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2887"></a><tt class="py-lineno">2887</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error executing command"</tt> <tt class="py-keyword">in</tt> <tt id="link-1028" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1028', 'output', 'link-120');">output</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2888"></a><tt class="py-lineno">2888</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1029" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1029', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1030" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1030', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing onos:app command: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2889"></a><tt class="py-lineno">2889</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1031" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1031', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2890"></a><tt class="py-lineno">2890</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2891"></a><tt class="py-lineno">2891</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-string">"No such application"</tt> <tt class="py-keyword">in</tt> <tt id="link-1032" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1032', 'output', 'link-120');">output</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2892"></a><tt class="py-lineno">2892</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1033" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1033', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1034" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1034', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"The application '"</tt> <tt class="py-op">+</tt> <tt class="py-name">appName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2893"></a><tt class="py-lineno">2893</tt> <tt class="py-line"> <tt class="py-string">"' is not installed in ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2894"></a><tt class="py-lineno">2894</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2895"></a><tt class="py-lineno">2895</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-string">"Command not found:"</tt> <tt class="py-keyword">in</tt> <tt id="link-1035" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1035', 'output', 'link-120');">output</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2896"></a><tt class="py-lineno">2896</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1036" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1036', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1037" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1037', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing onos:app command: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2897"></a><tt class="py-lineno">2897</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1038" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1038', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2898"></a><tt class="py-lineno">2898</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2899"></a><tt class="py-lineno">2899</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-string">"Unsupported command:"</tt> <tt class="py-keyword">in</tt> <tt id="link-1039" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1039', 'output', 'link-120');">output</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2900"></a><tt class="py-lineno">2900</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1040" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1040', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1041" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1041', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Incorrect command given to 'app': "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2901"></a><tt class="py-lineno">2901</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1042" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1042', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2902"></a><tt class="py-lineno">2902</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: we may need to add more checks here</tt> </tt>
-<a name="L2903"></a><tt class="py-lineno">2903</tt> <tt class="py-line"> <tt class="py-comment"># else: Command was successful</tt> </tt>
-<a name="L2904"></a><tt class="py-lineno">2904</tt> <tt class="py-line"> <tt class="py-comment"># main.log.debug( "app response: " + repr( output ) )</tt> </tt>
-<a name="L2905"></a><tt class="py-lineno">2905</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2906"></a><tt class="py-lineno">2906</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2907"></a><tt class="py-lineno">2907</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1043" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1043', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2908"></a><tt class="py-lineno">2908</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L2909"></a><tt class="py-lineno">2909</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2910"></a><tt class="py-lineno">2910</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1044" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1044', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1045" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1045', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2911"></a><tt class="py-lineno">2911</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1046" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1046', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1047" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1047', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2912"></a><tt class="py-lineno">2912</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1048" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1048', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2913"></a><tt class="py-lineno">2913</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1049" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1049', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2914"></a><tt class="py-lineno">2914</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2915"></a><tt class="py-lineno">2915</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1050" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1050', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2916"></a><tt class="py-lineno">2916</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1051" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1051', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2917"></a><tt class="py-lineno">2917</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1052" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1052', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2918"></a><tt class="py-lineno">2918</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.activateApp"></a><div id="OnosCliDriver.activateApp-def"><a name="L2919"></a><tt class="py-lineno">2919</tt> <a class="py-toggle" href="#" id="OnosCliDriver.activateApp-toggle" onclick="return toggle('OnosCliDriver.activateApp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#activateApp">activateApp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">appName</tt><tt class="py-op">,</tt> <tt class="py-param">check</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.activateApp-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.activateApp-expanded"><a name="L2920"></a><tt class="py-lineno">2920</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2921"></a><tt class="py-lineno">2921</tt> <tt class="py-line"><tt class="py-docstring"> Activate an app that is already installed in ONOS</tt> </tt>
-<a name="L2922"></a><tt class="py-lineno">2922</tt> <tt class="py-line"><tt class="py-docstring"> appName is the hierarchical app name, not the feature name</tt> </tt>
-<a name="L2923"></a><tt class="py-lineno">2923</tt> <tt class="py-line"><tt class="py-docstring"> If check is True, method will check the status of the app after the</tt> </tt>
-<a name="L2924"></a><tt class="py-lineno">2924</tt> <tt class="py-line"><tt class="py-docstring"> command is issued</tt> </tt>
-<a name="L2925"></a><tt class="py-lineno">2925</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE if the command was successfully sent</tt> </tt>
-<a name="L2926"></a><tt class="py-lineno">2926</tt> <tt class="py-line"><tt class="py-docstring"> main.FALSE if the cli responded with an error or given</tt> </tt>
-<a name="L2927"></a><tt class="py-lineno">2927</tt> <tt class="py-line"><tt class="py-docstring"> incorrect input</tt> </tt>
-<a name="L2928"></a><tt class="py-lineno">2928</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2929"></a><tt class="py-lineno">2929</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2930"></a><tt class="py-lineno">2930</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2931"></a><tt class="py-lineno">2931</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1053" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1053', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1054" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1054', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">".activateApp(): appName must be"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2932"></a><tt class="py-lineno">2932</tt> <tt class="py-line"> <tt class="py-string">" a string"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2933"></a><tt class="py-lineno">2933</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2934"></a><tt class="py-lineno">2934</tt> <tt class="py-line"> <tt class="py-name">status</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1055" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appStatus()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appStatus"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appStatus" class="py-name" href="#" onclick="return doclink('link-1055', 'appStatus', 'link-1055');">appStatus</a></tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2935"></a><tt class="py-lineno">2935</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">status</tt> <tt class="py-op">==</tt> <tt class="py-string">"INSTALLED"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2936"></a><tt class="py-lineno">2936</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1056" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-1056', 'app', 'link-521');">app</a></tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt><tt class="py-op">,</tt> <tt class="py-string">"activate"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2937"></a><tt class="py-lineno">2937</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">check</tt> <tt class="py-keyword">and</tt> <tt class="py-name">response</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2938"></a><tt class="py-lineno">2938</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># try 10 times then give up</tt> </tt>
-<a name="L2939"></a><tt class="py-lineno">2939</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Check with Thomas about this delay</tt> </tt>
-<a name="L2940"></a><tt class="py-lineno">2940</tt> <tt class="py-line"> <tt class="py-name">status</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1057" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appStatus" class="py-name" href="#" onclick="return doclink('link-1057', 'appStatus', 'link-1055');">appStatus</a></tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2941"></a><tt class="py-lineno">2941</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">status</tt> <tt class="py-op">==</tt> <tt class="py-string">"ACTIVE"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2942"></a><tt class="py-lineno">2942</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2943"></a><tt class="py-lineno">2943</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2944"></a><tt class="py-lineno">2944</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1058" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1058', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"The state of application "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2945"></a><tt class="py-lineno">2945</tt> <tt class="py-line"> <tt class="py-name">appName</tt> <tt class="py-op">+</tt> <tt class="py-string">" is "</tt> <tt class="py-op">+</tt> <tt class="py-name">status</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2946"></a><tt class="py-lineno">2946</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2947"></a><tt class="py-lineno">2947</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2948"></a><tt class="py-lineno">2948</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># not 'check' or command didn't succeed</tt> </tt>
-<a name="L2949"></a><tt class="py-lineno">2949</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-<a name="L2950"></a><tt class="py-lineno">2950</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">status</tt> <tt class="py-op">==</tt> <tt class="py-string">"ACTIVE"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2951"></a><tt class="py-lineno">2951</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2952"></a><tt class="py-lineno">2952</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">status</tt> <tt class="py-op">==</tt> <tt class="py-string">"UNINSTALLED"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2953"></a><tt class="py-lineno">2953</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1059" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1059', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1060" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1060', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Tried to activate the "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2954"></a><tt class="py-lineno">2954</tt> <tt class="py-line"> <tt class="py-string">"application '"</tt> <tt class="py-op">+</tt> <tt class="py-name">appName</tt> <tt class="py-op">+</tt> <tt class="py-string">"' which is not "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2955"></a><tt class="py-lineno">2955</tt> <tt class="py-line"> <tt class="py-string">"installed."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2956"></a><tt class="py-lineno">2956</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2957"></a><tt class="py-lineno">2957</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1061" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1061', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1062" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1062', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Unexpected return value from appStatus: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2958"></a><tt class="py-lineno">2958</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">status</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2959"></a><tt class="py-lineno">2959</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L2960"></a><tt class="py-lineno">2960</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2961"></a><tt class="py-lineno">2961</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1063" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1063', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2962"></a><tt class="py-lineno">2962</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L2963"></a><tt class="py-lineno">2963</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2964"></a><tt class="py-lineno">2964</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1064" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1064', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1065" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1065', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2965"></a><tt class="py-lineno">2965</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1066" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1066', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1067" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1067', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2966"></a><tt class="py-lineno">2966</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1068" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1068', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2967"></a><tt class="py-lineno">2967</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1069" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1069', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2968"></a><tt class="py-lineno">2968</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2969"></a><tt class="py-lineno">2969</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1070" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1070', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2970"></a><tt class="py-lineno">2970</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1071" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1071', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2971"></a><tt class="py-lineno">2971</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1072" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1072', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2972"></a><tt class="py-lineno">2972</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.deactivateApp"></a><div id="OnosCliDriver.deactivateApp-def"><a name="L2973"></a><tt class="py-lineno">2973</tt> <a class="py-toggle" href="#" id="OnosCliDriver.deactivateApp-toggle" onclick="return toggle('OnosCliDriver.deactivateApp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deactivateApp">deactivateApp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">appName</tt><tt class="py-op">,</tt> <tt class="py-param">check</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.deactivateApp-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.deactivateApp-expanded"><a name="L2974"></a><tt class="py-lineno">2974</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2975"></a><tt class="py-lineno">2975</tt> <tt class="py-line"><tt class="py-docstring"> Deactivate an app that is already activated in ONOS</tt> </tt>
-<a name="L2976"></a><tt class="py-lineno">2976</tt> <tt class="py-line"><tt class="py-docstring"> appName is the hierarchical app name, not the feature name</tt> </tt>
-<a name="L2977"></a><tt class="py-lineno">2977</tt> <tt class="py-line"><tt class="py-docstring"> If check is True, method will check the status of the app after the</tt> </tt>
-<a name="L2978"></a><tt class="py-lineno">2978</tt> <tt class="py-line"><tt class="py-docstring"> command is issued</tt> </tt>
-<a name="L2979"></a><tt class="py-lineno">2979</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE if the command was successfully sent</tt> </tt>
-<a name="L2980"></a><tt class="py-lineno">2980</tt> <tt class="py-line"><tt class="py-docstring"> main.FALSE if the cli responded with an error or given</tt> </tt>
-<a name="L2981"></a><tt class="py-lineno">2981</tt> <tt class="py-line"><tt class="py-docstring"> incorrect input</tt> </tt>
-<a name="L2982"></a><tt class="py-lineno">2982</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2983"></a><tt class="py-lineno">2983</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2984"></a><tt class="py-lineno">2984</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2985"></a><tt class="py-lineno">2985</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1073" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1073', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1074" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1074', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">".deactivateApp(): appName must "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2986"></a><tt class="py-lineno">2986</tt> <tt class="py-line"> <tt class="py-string">"be a string"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2987"></a><tt class="py-lineno">2987</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2988"></a><tt class="py-lineno">2988</tt> <tt class="py-line"> <tt class="py-name">status</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1075" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appStatus" class="py-name" href="#" onclick="return doclink('link-1075', 'appStatus', 'link-1055');">appStatus</a></tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2989"></a><tt class="py-lineno">2989</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">status</tt> <tt class="py-op">==</tt> <tt class="py-string">"INSTALLED"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2990"></a><tt class="py-lineno">2990</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2991"></a><tt class="py-lineno">2991</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">status</tt> <tt class="py-op">==</tt> <tt class="py-string">"ACTIVE"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2992"></a><tt class="py-lineno">2992</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1076" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-1076', 'app', 'link-521');">app</a></tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt><tt class="py-op">,</tt> <tt class="py-string">"deactivate"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2993"></a><tt class="py-lineno">2993</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">check</tt> <tt class="py-keyword">and</tt> <tt class="py-name">response</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2994"></a><tt class="py-lineno">2994</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># try 10 times then give up</tt> </tt>
-<a name="L2995"></a><tt class="py-lineno">2995</tt> <tt class="py-line"> <tt class="py-name">status</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1077" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appStatus" class="py-name" href="#" onclick="return doclink('link-1077', 'appStatus', 'link-1055');">appStatus</a></tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2996"></a><tt class="py-lineno">2996</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">status</tt> <tt class="py-op">==</tt> <tt class="py-string">"INSTALLED"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2997"></a><tt class="py-lineno">2997</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2998"></a><tt class="py-lineno">2998</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2999"></a><tt class="py-lineno">2999</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3000"></a><tt class="py-lineno">3000</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3001"></a><tt class="py-lineno">3001</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># not check or command didn't succeed</tt> </tt>
-<a name="L3002"></a><tt class="py-lineno">3002</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-<a name="L3003"></a><tt class="py-lineno">3003</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">status</tt> <tt class="py-op">==</tt> <tt class="py-string">"UNINSTALLED"</tt><tt class="py-op">:</tt> </tt>
-<a name="L3004"></a><tt class="py-lineno">3004</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1078" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1078', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Tried to deactivate the "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3005"></a><tt class="py-lineno">3005</tt> <tt class="py-line"> <tt class="py-string">"application '"</tt> <tt class="py-op">+</tt> <tt class="py-name">appName</tt> <tt class="py-op">+</tt> <tt class="py-string">"' which is not "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3006"></a><tt class="py-lineno">3006</tt> <tt class="py-line"> <tt class="py-string">"installed."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3007"></a><tt class="py-lineno">3007</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3008"></a><tt class="py-lineno">3008</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3009"></a><tt class="py-lineno">3009</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1079" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1079', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1080" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1080', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Unexpected return value from appStatus: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3010"></a><tt class="py-lineno">3010</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">status</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3011"></a><tt class="py-lineno">3011</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L3012"></a><tt class="py-lineno">3012</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3013"></a><tt class="py-lineno">3013</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1081" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1081', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3014"></a><tt class="py-lineno">3014</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L3015"></a><tt class="py-lineno">3015</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L3016"></a><tt class="py-lineno">3016</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1082" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1082', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1083" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1083', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3017"></a><tt class="py-lineno">3017</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1084" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1084', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1085" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1085', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3018"></a><tt class="py-lineno">3018</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1086" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1086', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3019"></a><tt class="py-lineno">3019</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1087" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1087', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3020"></a><tt class="py-lineno">3020</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L3021"></a><tt class="py-lineno">3021</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1088" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1088', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3022"></a><tt class="py-lineno">3022</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1089" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1089', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3023"></a><tt class="py-lineno">3023</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1090" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1090', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L3024"></a><tt class="py-lineno">3024</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.uninstallApp"></a><div id="OnosCliDriver.uninstallApp-def"><a name="L3025"></a><tt class="py-lineno">3025</tt> <a class="py-toggle" href="#" id="OnosCliDriver.uninstallApp-toggle" onclick="return toggle('OnosCliDriver.uninstallApp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#uninstallApp">uninstallApp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">appName</tt><tt class="py-op">,</tt> <tt class="py-param">check</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.uninstallApp-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.uninstallApp-expanded"><a name="L3026"></a><tt class="py-lineno">3026</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L3027"></a><tt class="py-lineno">3027</tt> <tt class="py-line"><tt class="py-docstring"> Uninstall an app that is already installed in ONOS</tt> </tt>
-<a name="L3028"></a><tt class="py-lineno">3028</tt> <tt class="py-line"><tt class="py-docstring"> appName is the hierarchical app name, not the feature name</tt> </tt>
-<a name="L3029"></a><tt class="py-lineno">3029</tt> <tt class="py-line"><tt class="py-docstring"> If check is True, method will check the status of the app after the</tt> </tt>
-<a name="L3030"></a><tt class="py-lineno">3030</tt> <tt class="py-line"><tt class="py-docstring"> command is issued</tt> </tt>
-<a name="L3031"></a><tt class="py-lineno">3031</tt> <tt class="py-line"><tt class="py-docstring"> Returns main.TRUE if the command was successfully sent</tt> </tt>
-<a name="L3032"></a><tt class="py-lineno">3032</tt> <tt class="py-line"><tt class="py-docstring"> main.FALSE if the cli responded with an error or given</tt> </tt>
-<a name="L3033"></a><tt class="py-lineno">3033</tt> <tt class="py-line"><tt class="py-docstring"> incorrect input</tt> </tt>
-<a name="L3034"></a><tt class="py-lineno">3034</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L3035"></a><tt class="py-lineno">3035</tt> <tt class="py-line"> <tt class="py-comment"># TODO: check with Thomas about the state machine for apps</tt> </tt>
-<a name="L3036"></a><tt class="py-lineno">3036</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3037"></a><tt class="py-lineno">3037</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3038"></a><tt class="py-lineno">3038</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1091" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1091', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1092" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1092', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">".uninstallApp(): appName must "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3039"></a><tt class="py-lineno">3039</tt> <tt class="py-line"> <tt class="py-string">"be a string"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3040"></a><tt class="py-lineno">3040</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3041"></a><tt class="py-lineno">3041</tt> <tt class="py-line"> <tt class="py-name">status</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1093" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appStatus" class="py-name" href="#" onclick="return doclink('link-1093', 'appStatus', 'link-1055');">appStatus</a></tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3042"></a><tt class="py-lineno">3042</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">status</tt> <tt class="py-op">==</tt> <tt class="py-string">"INSTALLED"</tt><tt class="py-op">:</tt> </tt>
-<a name="L3043"></a><tt class="py-lineno">3043</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1094" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-1094', 'app', 'link-521');">app</a></tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt><tt class="py-op">,</tt> <tt class="py-string">"uninstall"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3044"></a><tt class="py-lineno">3044</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">check</tt> <tt class="py-keyword">and</tt> <tt class="py-name">response</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3045"></a><tt class="py-lineno">3045</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># try 10 times then give up</tt> </tt>
-<a name="L3046"></a><tt class="py-lineno">3046</tt> <tt class="py-line"> <tt class="py-name">status</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1095" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appStatus" class="py-name" href="#" onclick="return doclink('link-1095', 'appStatus', 'link-1055');">appStatus</a></tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3047"></a><tt class="py-lineno">3047</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">status</tt> <tt class="py-op">==</tt> <tt class="py-string">"UNINSTALLED"</tt><tt class="py-op">:</tt> </tt>
-<a name="L3048"></a><tt class="py-lineno">3048</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3049"></a><tt class="py-lineno">3049</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3050"></a><tt class="py-lineno">3050</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3051"></a><tt class="py-lineno">3051</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3052"></a><tt class="py-lineno">3052</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># not check or command didn't succeed</tt> </tt>
-<a name="L3053"></a><tt class="py-lineno">3053</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-<a name="L3054"></a><tt class="py-lineno">3054</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">status</tt> <tt class="py-op">==</tt> <tt class="py-string">"ACTIVE"</tt><tt class="py-op">:</tt> </tt>
-<a name="L3055"></a><tt class="py-lineno">3055</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1096" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1096', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Tried to uninstall the "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3056"></a><tt class="py-lineno">3056</tt> <tt class="py-line"> <tt class="py-string">"application '"</tt> <tt class="py-op">+</tt> <tt class="py-name">appName</tt> <tt class="py-op">+</tt> <tt class="py-string">"' which is "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3057"></a><tt class="py-lineno">3057</tt> <tt class="py-line"> <tt class="py-string">"currently active."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3058"></a><tt class="py-lineno">3058</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1097" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-1097', 'app', 'link-521');">app</a></tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt><tt class="py-op">,</tt> <tt class="py-string">"uninstall"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3059"></a><tt class="py-lineno">3059</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">check</tt> <tt class="py-keyword">and</tt> <tt class="py-name">response</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3060"></a><tt class="py-lineno">3060</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># try 10 times then give up</tt> </tt>
-<a name="L3061"></a><tt class="py-lineno">3061</tt> <tt class="py-line"> <tt class="py-name">status</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1098" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appStatus" class="py-name" href="#" onclick="return doclink('link-1098', 'appStatus', 'link-1055');">appStatus</a></tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3062"></a><tt class="py-lineno">3062</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">status</tt> <tt class="py-op">==</tt> <tt class="py-string">"UNINSTALLED"</tt><tt class="py-op">:</tt> </tt>
-<a name="L3063"></a><tt class="py-lineno">3063</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3064"></a><tt class="py-lineno">3064</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3065"></a><tt class="py-lineno">3065</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3066"></a><tt class="py-lineno">3066</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3067"></a><tt class="py-lineno">3067</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># not check or command didn't succeed</tt> </tt>
-<a name="L3068"></a><tt class="py-lineno">3068</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-<a name="L3069"></a><tt class="py-lineno">3069</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">status</tt> <tt class="py-op">==</tt> <tt class="py-string">"UNINSTALLED"</tt><tt class="py-op">:</tt> </tt>
-<a name="L3070"></a><tt class="py-lineno">3070</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3071"></a><tt class="py-lineno">3071</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3072"></a><tt class="py-lineno">3072</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1099" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1099', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1100" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1100', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Unexpected return value from appStatus: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3073"></a><tt class="py-lineno">3073</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">status</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3074"></a><tt class="py-lineno">3074</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L3075"></a><tt class="py-lineno">3075</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3076"></a><tt class="py-lineno">3076</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1101" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1101', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3077"></a><tt class="py-lineno">3077</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L3078"></a><tt class="py-lineno">3078</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L3079"></a><tt class="py-lineno">3079</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1102" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1102', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1103" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1103', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3080"></a><tt class="py-lineno">3080</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1104" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1104', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1105" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1105', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3081"></a><tt class="py-lineno">3081</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1106" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1106', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3082"></a><tt class="py-lineno">3082</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1107" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1107', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3083"></a><tt class="py-lineno">3083</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L3084"></a><tt class="py-lineno">3084</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1108" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1108', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3085"></a><tt class="py-lineno">3085</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1109" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1109', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3086"></a><tt class="py-lineno">3086</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1110" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1110', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L3087"></a><tt class="py-lineno">3087</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.appIDs"></a><div id="OnosCliDriver.appIDs-def"><a name="L3088"></a><tt class="py-lineno">3088</tt> <a class="py-toggle" href="#" id="OnosCliDriver.appIDs-toggle" onclick="return toggle('OnosCliDriver.appIDs');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appIDs">appIDs</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.appIDs-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.appIDs-expanded"><a name="L3089"></a><tt class="py-lineno">3089</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L3090"></a><tt class="py-lineno">3090</tt> <tt class="py-line"><tt class="py-docstring"> Show the mappings between app id and app names given by the 'app-ids'</tt> </tt>
-<a name="L3091"></a><tt class="py-lineno">3091</tt> <tt class="py-line"><tt class="py-docstring"> cli command</tt> </tt>
-<a name="L3092"></a><tt class="py-lineno">3092</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L3093"></a><tt class="py-lineno">3093</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3094"></a><tt class="py-lineno">3094</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"app-ids"</tt> </tt>
-<a name="L3095"></a><tt class="py-lineno">3095</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L3096"></a><tt class="py-lineno">3096</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L3097"></a><tt class="py-lineno">3097</tt> <tt class="py-line"> <tt id="link-1111" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1111', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1112" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1112', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3098"></a><tt class="py-lineno">3098</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"Error executing command"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1113" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1113', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3099"></a><tt class="py-lineno">3099</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-1114" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1114', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3100"></a><tt class="py-lineno">3100</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3101"></a><tt class="py-lineno">3101</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1115" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1115', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1116" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1116', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing onos:app-ids command: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3102"></a><tt class="py-lineno">3102</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1117" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1117', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3103"></a><tt class="py-lineno">3103</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3104"></a><tt class="py-lineno">3104</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3105"></a><tt class="py-lineno">3105</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1118" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1118', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3106"></a><tt class="py-lineno">3106</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3107"></a><tt class="py-lineno">3107</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L3108"></a><tt class="py-lineno">3108</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1119" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1119', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1120" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1120', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3109"></a><tt class="py-lineno">3109</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1121" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1121', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1122" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1122', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3110"></a><tt class="py-lineno">3110</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1123" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1123', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3111"></a><tt class="py-lineno">3111</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1124" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1124', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3112"></a><tt class="py-lineno">3112</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L3113"></a><tt class="py-lineno">3113</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1125" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1125', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3114"></a><tt class="py-lineno">3114</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1126" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1126', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3115"></a><tt class="py-lineno">3115</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1127" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1127', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L3116"></a><tt class="py-lineno">3116</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.appToIDCheck"></a><div id="OnosCliDriver.appToIDCheck-def"><a name="L3117"></a><tt class="py-lineno">3117</tt> <a class="py-toggle" href="#" id="OnosCliDriver.appToIDCheck-toggle" onclick="return toggle('OnosCliDriver.appToIDCheck');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appToIDCheck">appToIDCheck</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.appToIDCheck-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.appToIDCheck-expanded"><a name="L3118"></a><tt class="py-lineno">3118</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L3119"></a><tt class="py-lineno">3119</tt> <tt class="py-line"><tt class="py-docstring"> This method will check that each application's ID listed in 'apps' is</tt> </tt>
-<a name="L3120"></a><tt class="py-lineno">3120</tt> <tt class="py-line"><tt class="py-docstring"> the same as the ID listed in 'app-ids'. The check will also check that</tt> </tt>
-<a name="L3121"></a><tt class="py-lineno">3121</tt> <tt class="py-line"><tt class="py-docstring"> there are no duplicate IDs issued. Note that an app ID should be</tt> </tt>
-<a name="L3122"></a><tt class="py-lineno">3122</tt> <tt class="py-line"><tt class="py-docstring"> a globaly unique numerical identifier for app/app-like features. Once</tt> </tt>
-<a name="L3123"></a><tt class="py-lineno">3123</tt> <tt class="py-line"><tt class="py-docstring"> an ID is registered, the ID is never freed up so that if an app is</tt> </tt>
-<a name="L3124"></a><tt class="py-lineno">3124</tt> <tt class="py-line"><tt class="py-docstring"> reinstalled it will have the same ID.</tt> </tt>
-<a name="L3125"></a><tt class="py-lineno">3125</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L3126"></a><tt class="py-lineno">3126</tt> <tt class="py-line"><tt class="py-docstring"> Returns: main.TRUE if the check passes and</tt> </tt>
-<a name="L3127"></a><tt class="py-lineno">3127</tt> <tt class="py-line"><tt class="py-docstring"> main.FALSE if the check fails or</tt> </tt>
-<a name="L3128"></a><tt class="py-lineno">3128</tt> <tt class="py-line"><tt class="py-docstring"> main.ERROR if there is some error in processing the test</tt> </tt>
-<a name="L3129"></a><tt class="py-lineno">3129</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L3130"></a><tt class="py-lineno">3130</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3131"></a><tt class="py-lineno">3131</tt> <tt class="py-line"> <tt class="py-name">bail</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L3132"></a><tt class="py-lineno">3132</tt> <tt class="py-line"> <tt class="py-name">ids</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1128" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appIDs"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-1128', 'appIDs', 'link-1128');">appIDs</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3133"></a><tt class="py-lineno">3133</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ids</tt><tt class="py-op">:</tt> </tt>
-<a name="L3134"></a><tt class="py-lineno">3134</tt> <tt class="py-line"> <tt class="py-name">ids</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ids</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3135"></a><tt class="py-lineno">3135</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3136"></a><tt class="py-lineno">3136</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1129" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1129', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1130" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1130', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"app-ids returned nothing:"</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ids</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3137"></a><tt class="py-lineno">3137</tt> <tt class="py-line"> <tt class="py-name">bail</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3138"></a><tt class="py-lineno">3138</tt> <tt class="py-line"> <tt id="link-1131" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-1131', 'apps', 'link-1003');">apps</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1132" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-1132', 'apps', 'link-1003');">apps</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3139"></a><tt class="py-lineno">3139</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-1133" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-1133', 'apps', 'link-1003');">apps</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L3140"></a><tt class="py-lineno">3140</tt> <tt class="py-line"> <tt id="link-1134" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-1134', 'apps', 'link-1003');">apps</a></tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-1135" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-1135', 'apps', 'link-1003');">apps</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L3141"></a><tt class="py-lineno">3141</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3142"></a><tt class="py-lineno">3142</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1136" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1136', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1137" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1137', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"apps returned nothing:"</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-1138" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-1138', 'apps', 'link-1003');">apps</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3143"></a><tt class="py-lineno">3143</tt> <tt class="py-line"> <tt class="py-name">bail</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3144"></a><tt class="py-lineno">3144</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">bail</tt><tt class="py-op">:</tt> </tt>
-<a name="L3145"></a><tt class="py-lineno">3145</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3146"></a><tt class="py-lineno">3146</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3147"></a><tt class="py-lineno">3147</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-1139" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-1139', 'app', 'link-521');">app</a></tt> <tt class="py-keyword">in</tt> <tt id="link-1140" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-1140', 'apps', 'link-1003');">apps</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L3148"></a><tt class="py-lineno">3148</tt> <tt class="py-line"> <tt class="py-name">appID</tt> <tt class="py-op">=</tt> <tt id="link-1141" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-1141', 'app', 'link-521');">app</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3149"></a><tt class="py-lineno">3149</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appID</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L3150"></a><tt class="py-lineno">3150</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1142" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1142', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1143" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1143', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing app: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1144" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-1144', 'app', 'link-521');">app</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3151"></a><tt class="py-lineno">3151</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3152"></a><tt class="py-lineno">3152</tt> <tt class="py-line"> <tt class="py-name">appName</tt> <tt class="py-op">=</tt> <tt id="link-1145" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-1145', 'app', 'link-521');">app</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'name'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3153"></a><tt class="py-lineno">3153</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appName</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L3154"></a><tt class="py-lineno">3154</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1146" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1146', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1147" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1147', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing app: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1148" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app" class="py-name" href="#" onclick="return doclink('link-1148', 'app', 'link-521');">app</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3155"></a><tt class="py-lineno">3155</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3156"></a><tt class="py-lineno">3156</tt> <tt class="py-line"> <tt class="py-comment"># get the entry in ids that has the same appID</tt> </tt>
-<a name="L3157"></a><tt class="py-lineno">3157</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">filter</tt><tt class="py-op">(</tt> <tt class="py-keyword">lambda</tt> <tt class="py-name">item</tt><tt class="py-op">:</tt> <tt class="py-name">item</tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">appID</tt><tt class="py-op">,</tt> <tt class="py-name">ids</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3158"></a><tt class="py-lineno">3158</tt> <tt class="py-line"> <tt class="py-comment"># main.log.debug( "Comparing " + str( app ) + " to " +</tt> </tt>
-<a name="L3159"></a><tt class="py-lineno">3159</tt> <tt class="py-line"> <tt class="py-comment"># str( current ) )</tt> </tt>
-<a name="L3160"></a><tt class="py-lineno">3160</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> <tt class="py-comment"># if ids doesn't have this id</tt> </tt>
-<a name="L3161"></a><tt class="py-lineno">3161</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3162"></a><tt class="py-lineno">3162</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1149" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1149', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1150" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1150', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"'app-ids' does not have the ID for "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3163"></a><tt class="py-lineno">3163</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" that apps does."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3164"></a><tt class="py-lineno">3164</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L3165"></a><tt class="py-lineno">3165</tt> <tt class="py-line"> <tt class="py-comment"># there is more than one app with this ID</tt> </tt>
-<a name="L3166"></a><tt class="py-lineno">3166</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3167"></a><tt class="py-lineno">3167</tt> <tt class="py-line"> <tt class="py-comment"># We will log this later in the method</tt> </tt>
-<a name="L3168"></a><tt class="py-lineno">3168</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-keyword">not</tt> <tt class="py-name">current</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">appName</tt><tt class="py-op">:</tt> </tt>
-<a name="L3169"></a><tt class="py-lineno">3169</tt> <tt class="py-line"> <tt class="py-name">currentName</tt> <tt class="py-op">=</tt> <tt class="py-name">current</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L3170"></a><tt class="py-lineno">3170</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3171"></a><tt class="py-lineno">3171</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1151" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1151', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1152" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1152', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"'app-ids' has "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">currentName</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3172"></a><tt class="py-lineno">3172</tt> <tt class="py-line"> <tt class="py-string">" registered under id:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">appID</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3173"></a><tt class="py-lineno">3173</tt> <tt class="py-line"> <tt class="py-string">" but 'apps' has "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3174"></a><tt class="py-lineno">3174</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3175"></a><tt class="py-lineno">3175</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> <tt class="py-comment"># id and name match!</tt> </tt>
-<a name="L3176"></a><tt class="py-lineno">3176</tt> <tt class="py-line"> <tt class="py-comment"># now make sure that app-ids has no duplicates</tt> </tt>
-<a name="L3177"></a><tt class="py-lineno">3177</tt> <tt class="py-line"> <tt class="py-name">idsList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3178"></a><tt class="py-lineno">3178</tt> <tt class="py-line"> <tt class="py-name">namesList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3179"></a><tt class="py-lineno">3179</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ids</tt><tt class="py-op">:</tt> </tt>
-<a name="L3180"></a><tt class="py-lineno">3180</tt> <tt class="py-line"> <tt class="py-name">idsList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">item</tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3181"></a><tt class="py-lineno">3181</tt> <tt class="py-line"> <tt class="py-name">namesList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">item</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3182"></a><tt class="py-lineno">3182</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">idsList</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">idsList</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-keyword">or</tt>\ </tt>
-<a name="L3183"></a><tt class="py-lineno">3183</tt> <tt class="py-line"> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">namesList</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">namesList</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3184"></a><tt class="py-lineno">3184</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1153" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1153', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1154" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1154', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"'app-ids' has some duplicate entries: \n"</tt> </tt>
-<a name="L3185"></a><tt class="py-lineno">3185</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">ids</tt><tt class="py-op">,</tt> </tt>
-<a name="L3186"></a><tt class="py-lineno">3186</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3187"></a><tt class="py-lineno">3187</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L3188"></a><tt class="py-lineno">3188</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3189"></a><tt class="py-lineno">3189</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3190"></a><tt class="py-lineno">3190</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-<a name="L3191"></a><tt class="py-lineno">3191</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3192"></a><tt class="py-lineno">3192</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1155" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1155', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3193"></a><tt class="py-lineno">3193</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L3194"></a><tt class="py-lineno">3194</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L3195"></a><tt class="py-lineno">3195</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1156" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1156', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1157" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1157', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3196"></a><tt class="py-lineno">3196</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1158" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1158', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1159" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1159', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3197"></a><tt class="py-lineno">3197</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1160" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1160', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3198"></a><tt class="py-lineno">3198</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1161" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1161', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3199"></a><tt class="py-lineno">3199</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L3200"></a><tt class="py-lineno">3200</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1162" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1162', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3201"></a><tt class="py-lineno">3201</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1163" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1163', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3202"></a><tt class="py-lineno">3202</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1164" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1164', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L3203"></a><tt class="py-lineno">3203</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.getCfg"></a><div id="OnosCliDriver.getCfg-def"><a name="L3204"></a><tt class="py-lineno">3204</tt> <a class="py-toggle" href="#" id="OnosCliDriver.getCfg-toggle" onclick="return toggle('OnosCliDriver.getCfg');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getCfg">getCfg</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">component</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">propName</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">short</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> </tt>
-<a name="L3205"></a><tt class="py-lineno">3205</tt> <tt class="py-line"> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.getCfg-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.getCfg-expanded"><a name="L3206"></a><tt class="py-lineno">3206</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L3207"></a><tt class="py-lineno">3207</tt> <tt class="py-line"><tt class="py-docstring"> Get configuration settings from onos cli</tt> </tt>
-<a name="L3208"></a><tt class="py-lineno">3208</tt> <tt class="py-line"><tt class="py-docstring"> Optional arguments:</tt> </tt>
-<a name="L3209"></a><tt class="py-lineno">3209</tt> <tt class="py-line"><tt class="py-docstring"> component - Optionally only list configurations for a specific</tt> </tt>
-<a name="L3210"></a><tt class="py-lineno">3210</tt> <tt class="py-line"><tt class="py-docstring"> component. If None, all components with configurations</tt> </tt>
-<a name="L3211"></a><tt class="py-lineno">3211</tt> <tt class="py-line"><tt class="py-docstring"> are displayed. Case Sensitive string.</tt> </tt>
-<a name="L3212"></a><tt class="py-lineno">3212</tt> <tt class="py-line"><tt class="py-docstring"> propName - If component is specified, propName option will show</tt> </tt>
-<a name="L3213"></a><tt class="py-lineno">3213</tt> <tt class="py-line"><tt class="py-docstring"> only this specific configuration from that component.</tt> </tt>
-<a name="L3214"></a><tt class="py-lineno">3214</tt> <tt class="py-line"><tt class="py-docstring"> Case Sensitive string.</tt> </tt>
-<a name="L3215"></a><tt class="py-lineno">3215</tt> <tt class="py-line"><tt class="py-docstring"> jsonFormat - Returns output as json. Note that this will override</tt> </tt>
-<a name="L3216"></a><tt class="py-lineno">3216</tt> <tt class="py-line"><tt class="py-docstring"> the short option</tt> </tt>
-<a name="L3217"></a><tt class="py-lineno">3217</tt> <tt class="py-line"><tt class="py-docstring"> short - Short, less verbose, version of configurations.</tt> </tt>
-<a name="L3218"></a><tt class="py-lineno">3218</tt> <tt class="py-line"><tt class="py-docstring"> This is overridden by the json option</tt> </tt>
-<a name="L3219"></a><tt class="py-lineno">3219</tt> <tt class="py-line"><tt class="py-docstring"> returns:</tt> </tt>
-<a name="L3220"></a><tt class="py-lineno">3220</tt> <tt class="py-line"><tt class="py-docstring"> Output from cli as a string or None on error</tt> </tt>
-<a name="L3221"></a><tt class="py-lineno">3221</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L3222"></a><tt class="py-lineno">3222</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3223"></a><tt class="py-lineno">3223</tt> <tt class="py-line"> <tt class="py-name">baseStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"cfg"</tt> </tt>
-<a name="L3224"></a><tt class="py-lineno">3224</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">" get"</tt> </tt>
-<a name="L3225"></a><tt class="py-lineno">3225</tt> <tt class="py-line"> <tt class="py-name">componentStr</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L3226"></a><tt class="py-lineno">3226</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">component</tt><tt class="py-op">:</tt> </tt>
-<a name="L3227"></a><tt class="py-lineno">3227</tt> <tt class="py-line"> <tt class="py-name">componentStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">component</tt> </tt>
-<a name="L3228"></a><tt class="py-lineno">3228</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">propName</tt><tt class="py-op">:</tt> </tt>
-<a name="L3229"></a><tt class="py-lineno">3229</tt> <tt class="py-line"> <tt class="py-name">componentStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">propName</tt> </tt>
-<a name="L3230"></a><tt class="py-lineno">3230</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L3231"></a><tt class="py-lineno">3231</tt> <tt class="py-line"> <tt class="py-name">baseStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L3232"></a><tt class="py-lineno">3232</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">short</tt><tt class="py-op">:</tt> </tt>
-<a name="L3233"></a><tt class="py-lineno">3233</tt> <tt class="py-line"> <tt class="py-name">baseStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -s"</tt> </tt>
-<a name="L3234"></a><tt class="py-lineno">3234</tt> <tt class="py-line"> <tt id="link-1165" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1165', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1166" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1166', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">baseStr</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">+</tt> <tt class="py-name">componentStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3235"></a><tt class="py-lineno">3235</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"Error executing command"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1167" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1167', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3236"></a><tt class="py-lineno">3236</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-1168" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1168', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3237"></a><tt class="py-lineno">3237</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3238"></a><tt class="py-lineno">3238</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1169" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1169', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1170" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1170', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing 'cfg get' command: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3239"></a><tt class="py-lineno">3239</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1171" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1171', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3240"></a><tt class="py-lineno">3240</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3241"></a><tt class="py-lineno">3241</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3242"></a><tt class="py-lineno">3242</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1172" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1172', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3243"></a><tt class="py-lineno">3243</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3244"></a><tt class="py-lineno">3244</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L3245"></a><tt class="py-lineno">3245</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1173" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1173', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1174" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1174', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3246"></a><tt class="py-lineno">3246</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1175" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1175', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1176" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1176', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3247"></a><tt class="py-lineno">3247</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1177" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1177', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3248"></a><tt class="py-lineno">3248</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1178" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1178', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3249"></a><tt class="py-lineno">3249</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L3250"></a><tt class="py-lineno">3250</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1179" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1179', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3251"></a><tt class="py-lineno">3251</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1180" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1180', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3252"></a><tt class="py-lineno">3252</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1181" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1181', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L3253"></a><tt class="py-lineno">3253</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.setCfg"></a><div id="OnosCliDriver.setCfg-def"><a name="L3254"></a><tt class="py-lineno">3254</tt> <a class="py-toggle" href="#" id="OnosCliDriver.setCfg-toggle" onclick="return toggle('OnosCliDriver.setCfg');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCfg">setCfg</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">component</tt><tt class="py-op">,</tt> <tt class="py-param">propName</tt><tt class="py-op">,</tt> <tt class="py-param">value</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">check</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.setCfg-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.setCfg-expanded"><a name="L3255"></a><tt class="py-lineno">3255</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L3256"></a><tt class="py-lineno">3256</tt> <tt class="py-line"><tt class="py-docstring"> Set/Unset configuration settings from ONOS cli</tt> </tt>
-<a name="L3257"></a><tt class="py-lineno">3257</tt> <tt class="py-line"><tt class="py-docstring"> Required arguments:</tt> </tt>
-<a name="L3258"></a><tt class="py-lineno">3258</tt> <tt class="py-line"><tt class="py-docstring"> component - The case sensitive name of the component whose</tt> </tt>
-<a name="L3259"></a><tt class="py-lineno">3259</tt> <tt class="py-line"><tt class="py-docstring"> property is to be set</tt> </tt>
-<a name="L3260"></a><tt class="py-lineno">3260</tt> <tt class="py-line"><tt class="py-docstring"> propName - The case sensitive name of the property to be set/unset</tt> </tt>
-<a name="L3261"></a><tt class="py-lineno">3261</tt> <tt class="py-line"><tt class="py-docstring"> Optional arguments:</tt> </tt>
-<a name="L3262"></a><tt class="py-lineno">3262</tt> <tt class="py-line"><tt class="py-docstring"> value - The value to set the property to. If None, will unset the</tt> </tt>
-<a name="L3263"></a><tt class="py-lineno">3263</tt> <tt class="py-line"><tt class="py-docstring"> property and revert it to it's default value(if applicable)</tt> </tt>
-<a name="L3264"></a><tt class="py-lineno">3264</tt> <tt class="py-line"><tt class="py-docstring"> check - Boolean, Check whether the option was successfully set this</tt> </tt>
-<a name="L3265"></a><tt class="py-lineno">3265</tt> <tt class="py-line"><tt class="py-docstring"> only applies when a value is given.</tt> </tt>
-<a name="L3266"></a><tt class="py-lineno">3266</tt> <tt class="py-line"><tt class="py-docstring"> returns:</tt> </tt>
-<a name="L3267"></a><tt class="py-lineno">3267</tt> <tt class="py-line"><tt class="py-docstring"> main.TRUE on success or main.FALSE on failure. If check is False,</tt> </tt>
-<a name="L3268"></a><tt class="py-lineno">3268</tt> <tt class="py-line"><tt class="py-docstring"> will return main.TRUE unless there is an error</tt> </tt>
-<a name="L3269"></a><tt class="py-lineno">3269</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L3270"></a><tt class="py-lineno">3270</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3271"></a><tt class="py-lineno">3271</tt> <tt class="py-line"> <tt class="py-name">baseStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"cfg"</tt> </tt>
-<a name="L3272"></a><tt class="py-lineno">3272</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">component</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">propName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3273"></a><tt class="py-lineno">3273</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">value</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L3274"></a><tt class="py-lineno">3274</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">value</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3275"></a><tt class="py-lineno">3275</tt> <tt class="py-line"> <tt id="link-1182" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1182', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1183" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1183', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">baseStr</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3276"></a><tt class="py-lineno">3276</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"Error executing command"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1184" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1184', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3277"></a><tt class="py-lineno">3277</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">value</tt> <tt class="py-keyword">and</tt> <tt class="py-name">check</tt><tt class="py-op">:</tt> </tt>
-<a name="L3278"></a><tt class="py-lineno">3278</tt> <tt class="py-line"> <tt class="py-name">results</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1185" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getCfg()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getCfg"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getCfg" class="py-name" href="#" onclick="return doclink('link-1185', 'getCfg', 'link-1185');">getCfg</a></tt><tt class="py-op">(</tt> <tt class="py-name">component</tt><tt class="py-op">=</tt><tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">component</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3279"></a><tt class="py-lineno">3279</tt> <tt class="py-line"> <tt class="py-name">propName</tt><tt class="py-op">=</tt><tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">propName</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3280"></a><tt class="py-lineno">3280</tt> <tt class="py-line"> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3281"></a><tt class="py-lineno">3281</tt> <tt class="py-line"> <tt class="py-comment"># Check if current value is what we just set</tt> </tt>
-<a name="L3282"></a><tt class="py-lineno">3282</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3283"></a><tt class="py-lineno">3283</tt> <tt class="py-line"> <tt class="py-name">jsonOutput</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">results</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3284"></a><tt class="py-lineno">3284</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">jsonOutput</tt><tt class="py-op">[</tt> <tt class="py-string">'value'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L3285"></a><tt class="py-lineno">3285</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3286"></a><tt class="py-lineno">3286</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1186" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1186', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing cfg output"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3287"></a><tt class="py-lineno">3287</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1187" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1187', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1188" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1188', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"output:"</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">results</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3288"></a><tt class="py-lineno">3288</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3289"></a><tt class="py-lineno">3289</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">current</tt> <tt class="py-op">==</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">value</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3290"></a><tt class="py-lineno">3290</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3291"></a><tt class="py-lineno">3291</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3292"></a><tt class="py-lineno">3292</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3293"></a><tt class="py-lineno">3293</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3294"></a><tt class="py-lineno">3294</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1189" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1189', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1190" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1190', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing 'cfg set' command: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3295"></a><tt class="py-lineno">3295</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1191" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1191', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3296"></a><tt class="py-lineno">3296</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3297"></a><tt class="py-lineno">3297</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3298"></a><tt class="py-lineno">3298</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1192" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1192', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3299"></a><tt class="py-lineno">3299</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3300"></a><tt class="py-lineno">3300</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L3301"></a><tt class="py-lineno">3301</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1193" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1193', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1194" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1194', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3302"></a><tt class="py-lineno">3302</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1195" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1195', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1196" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1196', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3303"></a><tt class="py-lineno">3303</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1197" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1197', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3304"></a><tt class="py-lineno">3304</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1198" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1198', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3305"></a><tt class="py-lineno">3305</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L3306"></a><tt class="py-lineno">3306</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1199" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1199', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3307"></a><tt class="py-lineno">3307</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1200" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1200', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3308"></a><tt class="py-lineno">3308</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1201" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1201', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L3309"></a><tt class="py-lineno">3309</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.setTestAdd"></a><div id="OnosCliDriver.setTestAdd-def"><a name="L3310"></a><tt class="py-lineno">3310</tt> <a class="py-toggle" href="#" id="OnosCliDriver.setTestAdd-toggle" onclick="return toggle('OnosCliDriver.setTestAdd');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestAdd">setTestAdd</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">setName</tt><tt class="py-op">,</tt> <tt class="py-param">values</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.setTestAdd-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.setTestAdd-expanded"><a name="L3311"></a><tt class="py-lineno">3311</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L3312"></a><tt class="py-lineno">3312</tt> <tt class="py-line"><tt class="py-docstring"> CLI command to add elements to a distributed set.</tt> </tt>
-<a name="L3313"></a><tt class="py-lineno">3313</tt> <tt class="py-line"><tt class="py-docstring"> Arguments:</tt> </tt>
-<a name="L3314"></a><tt class="py-lineno">3314</tt> <tt class="py-line"><tt class="py-docstring"> setName - The name of the set to add to.</tt> </tt>
-<a name="L3315"></a><tt class="py-lineno">3315</tt> <tt class="py-line"><tt class="py-docstring"> values - The value(s) to add to the set, space seperated.</tt> </tt>
-<a name="L3316"></a><tt class="py-lineno">3316</tt> <tt class="py-line"><tt class="py-docstring"> Example usages:</tt> </tt>
-<a name="L3317"></a><tt class="py-lineno">3317</tt> <tt class="py-line"><tt class="py-docstring"> setTestAdd( "set1", "a b c" )</tt> </tt>
-<a name="L3318"></a><tt class="py-lineno">3318</tt> <tt class="py-line"><tt class="py-docstring"> setTestAdd( "set2", "1" )</tt> </tt>
-<a name="L3319"></a><tt class="py-lineno">3319</tt> <tt class="py-line"><tt class="py-docstring"> returns:</tt> </tt>
-<a name="L3320"></a><tt class="py-lineno">3320</tt> <tt class="py-line"><tt class="py-docstring"> main.TRUE on success OR</tt> </tt>
-<a name="L3321"></a><tt class="py-lineno">3321</tt> <tt class="py-line"><tt class="py-docstring"> main.FALSE if elements were already in the set OR</tt> </tt>
-<a name="L3322"></a><tt class="py-lineno">3322</tt> <tt class="py-line"><tt class="py-docstring"> main.ERROR on error</tt> </tt>
-<a name="L3323"></a><tt class="py-lineno">3323</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L3324"></a><tt class="py-lineno">3324</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3325"></a><tt class="py-lineno">3325</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"set-test-add "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setName</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">values</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3326"></a><tt class="py-lineno">3326</tt> <tt class="py-line"> <tt id="link-1202" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1202', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1203" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1203', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3327"></a><tt class="py-lineno">3327</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3328"></a><tt class="py-lineno">3328</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Maybe make this less hardcoded</tt> </tt>
-<a name="L3329"></a><tt class="py-lineno">3329</tt> <tt class="py-line"> <tt class="py-comment"># ConsistentMap Exceptions</tt> </tt>
-<a name="L3330"></a><tt class="py-lineno">3330</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"org.onosproject.store.service"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1204" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1204', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3331"></a><tt class="py-lineno">3331</tt> <tt class="py-line"> <tt class="py-comment"># Node not leader</tt> </tt>
-<a name="L3332"></a><tt class="py-lineno">3332</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"java.lang.IllegalStateException"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1205" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1205', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3333"></a><tt class="py-lineno">3333</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3334"></a><tt class="py-lineno">3334</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1206" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1206', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1207" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1207', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing '"</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">+</tt> <tt class="py-string">"' "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3335"></a><tt class="py-lineno">3335</tt> <tt class="py-line"> <tt class="py-string">"command: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1208" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1208', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3336"></a><tt class="py-lineno">3336</tt> <tt class="py-line"> <tt class="py-name">retryTime</tt> <tt class="py-op">=</tt> <tt class="py-number">30</tt> <tt class="py-comment"># Conservative time, given by Madan</tt> </tt>
-<a name="L3337"></a><tt class="py-lineno">3337</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1209" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1209', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">retryTime</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3338"></a><tt class="py-lineno">3338</tt> <tt class="py-line"> <tt class="py-string">"seconds before retrying."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3339"></a><tt class="py-lineno">3339</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">retryTime</tt> <tt class="py-op">)</tt> <tt class="py-comment"># Due to change in mastership</tt> </tt>
-<a name="L3340"></a><tt class="py-lineno">3340</tt> <tt class="py-line"> <tt id="link-1210" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1210', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1211" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1211', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3341"></a><tt class="py-lineno">3341</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"Error executing command"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1212" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1212', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3342"></a><tt class="py-lineno">3342</tt> <tt class="py-line"> <tt class="py-name">positiveMatch</tt> <tt class="py-op">=</tt> <tt class="py-string">"\[(.*)\] was added to the set "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3343"></a><tt class="py-lineno">3343</tt> <tt class="py-line"> <tt class="py-name">negativeMatch</tt> <tt class="py-op">=</tt> <tt class="py-string">"\[(.*)\] was already in set "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3344"></a><tt class="py-lineno">3344</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1213" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1213', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt id="link-1214" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1214', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L3345"></a><tt class="py-lineno">3345</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">positiveMatch</tt><tt class="py-op">,</tt> <tt id="link-1215" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1215', 'output', 'link-120');">output</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3346"></a><tt class="py-lineno">3346</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3347"></a><tt class="py-lineno">3347</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">negativeMatch</tt><tt class="py-op">,</tt> <tt id="link-1216" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1216', 'output', 'link-120');">output</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3348"></a><tt class="py-lineno">3348</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3349"></a><tt class="py-lineno">3349</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3350"></a><tt class="py-lineno">3350</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1217" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1217', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1218" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1218', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": setTestAdd did not"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3351"></a><tt class="py-lineno">3351</tt> <tt class="py-line"> <tt class="py-string">" match expected output"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3352"></a><tt class="py-lineno">3352</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1219" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1219', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-1220" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1220', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3353"></a><tt class="py-lineno">3353</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L3354"></a><tt class="py-lineno">3354</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3355"></a><tt class="py-lineno">3355</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1221" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1221', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1222" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1222', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing '"</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">+</tt> <tt class="py-string">"' command: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3356"></a><tt class="py-lineno">3356</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1223" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1223', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3357"></a><tt class="py-lineno">3357</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L3358"></a><tt class="py-lineno">3358</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3359"></a><tt class="py-lineno">3359</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1224" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1224', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3360"></a><tt class="py-lineno">3360</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L3361"></a><tt class="py-lineno">3361</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L3362"></a><tt class="py-lineno">3362</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1225" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1225', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1226" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1226', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3363"></a><tt class="py-lineno">3363</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1227" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1227', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1228" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1228', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3364"></a><tt class="py-lineno">3364</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1229" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1229', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3365"></a><tt class="py-lineno">3365</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1230" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1230', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3366"></a><tt class="py-lineno">3366</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L3367"></a><tt class="py-lineno">3367</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1231" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1231', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3368"></a><tt class="py-lineno">3368</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1232" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1232', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3369"></a><tt class="py-lineno">3369</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1233" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1233', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L3370"></a><tt class="py-lineno">3370</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.setTestRemove"></a><div id="OnosCliDriver.setTestRemove-def"><a name="L3371"></a><tt class="py-lineno">3371</tt> <a class="py-toggle" href="#" id="OnosCliDriver.setTestRemove-toggle" onclick="return toggle('OnosCliDriver.setTestRemove');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestRemove">setTestRemove</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">setName</tt><tt class="py-op">,</tt> <tt class="py-param">values</tt><tt class="py-op">,</tt> <tt class="py-param">clear</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> <tt class="py-param">retain</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.setTestRemove-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.setTestRemove-expanded"><a name="L3372"></a><tt class="py-lineno">3372</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L3373"></a><tt class="py-lineno">3373</tt> <tt class="py-line"><tt class="py-docstring"> CLI command to remove elements from a distributed set.</tt> </tt>
-<a name="L3374"></a><tt class="py-lineno">3374</tt> <tt class="py-line"><tt class="py-docstring"> Required arguments:</tt> </tt>
-<a name="L3375"></a><tt class="py-lineno">3375</tt> <tt class="py-line"><tt class="py-docstring"> setName - The name of the set to remove from.</tt> </tt>
-<a name="L3376"></a><tt class="py-lineno">3376</tt> <tt class="py-line"><tt class="py-docstring"> values - The value(s) to remove from the set, space seperated.</tt> </tt>
-<a name="L3377"></a><tt class="py-lineno">3377</tt> <tt class="py-line"><tt class="py-docstring"> Optional arguments:</tt> </tt>
-<a name="L3378"></a><tt class="py-lineno">3378</tt> <tt class="py-line"><tt class="py-docstring"> clear - Clear all elements from the set</tt> </tt>
-<a name="L3379"></a><tt class="py-lineno">3379</tt> <tt class="py-line"><tt class="py-docstring"> retain - Retain only the given values. (intersection of the</tt> </tt>
-<a name="L3380"></a><tt class="py-lineno">3380</tt> <tt class="py-line"><tt class="py-docstring"> original set and the given set)</tt> </tt>
-<a name="L3381"></a><tt class="py-lineno">3381</tt> <tt class="py-line"><tt class="py-docstring"> returns:</tt> </tt>
-<a name="L3382"></a><tt class="py-lineno">3382</tt> <tt class="py-line"><tt class="py-docstring"> main.TRUE on success OR</tt> </tt>
-<a name="L3383"></a><tt class="py-lineno">3383</tt> <tt class="py-line"><tt class="py-docstring"> main.FALSE if the set was not changed OR</tt> </tt>
-<a name="L3384"></a><tt class="py-lineno">3384</tt> <tt class="py-line"><tt class="py-docstring"> main.ERROR on error</tt> </tt>
-<a name="L3385"></a><tt class="py-lineno">3385</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L3386"></a><tt class="py-lineno">3386</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3387"></a><tt class="py-lineno">3387</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"set-test-remove "</tt> </tt>
-<a name="L3388"></a><tt class="py-lineno">3388</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">clear</tt><tt class="py-op">:</tt> </tt>
-<a name="L3389"></a><tt class="py-lineno">3389</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">"-c "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3390"></a><tt class="py-lineno">3390</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">retain</tt><tt class="py-op">:</tt> </tt>
-<a name="L3391"></a><tt class="py-lineno">3391</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">"-r "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setName</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">values</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3392"></a><tt class="py-lineno">3392</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3393"></a><tt class="py-lineno">3393</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setName</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">values</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3394"></a><tt class="py-lineno">3394</tt> <tt class="py-line"> <tt id="link-1234" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1234', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1235" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1235', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3395"></a><tt class="py-lineno">3395</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3396"></a><tt class="py-lineno">3396</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Maybe make this less hardcoded</tt> </tt>
-<a name="L3397"></a><tt class="py-lineno">3397</tt> <tt class="py-line"> <tt class="py-comment"># ConsistentMap Exceptions</tt> </tt>
-<a name="L3398"></a><tt class="py-lineno">3398</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"org.onosproject.store.service"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1236" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1236', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3399"></a><tt class="py-lineno">3399</tt> <tt class="py-line"> <tt class="py-comment"># Node not leader</tt> </tt>
-<a name="L3400"></a><tt class="py-lineno">3400</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"java.lang.IllegalStateException"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1237" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1237', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3401"></a><tt class="py-lineno">3401</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3402"></a><tt class="py-lineno">3402</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1238" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1238', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1239" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1239', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing '"</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">+</tt> <tt class="py-string">"' "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3403"></a><tt class="py-lineno">3403</tt> <tt class="py-line"> <tt class="py-string">"command: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1240" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1240', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3404"></a><tt class="py-lineno">3404</tt> <tt class="py-line"> <tt class="py-name">retryTime</tt> <tt class="py-op">=</tt> <tt class="py-number">30</tt> <tt class="py-comment"># Conservative time, given by Madan</tt> </tt>
-<a name="L3405"></a><tt class="py-lineno">3405</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1241" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1241', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">retryTime</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3406"></a><tt class="py-lineno">3406</tt> <tt class="py-line"> <tt class="py-string">"seconds before retrying."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3407"></a><tt class="py-lineno">3407</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">retryTime</tt> <tt class="py-op">)</tt> <tt class="py-comment"># Due to change in mastership</tt> </tt>
-<a name="L3408"></a><tt class="py-lineno">3408</tt> <tt class="py-line"> <tt id="link-1242" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1242', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1243" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1243', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3409"></a><tt class="py-lineno">3409</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"Error executing command"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1244" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1244', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3410"></a><tt class="py-lineno">3410</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1245" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1245', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt id="link-1246" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1246', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L3411"></a><tt class="py-lineno">3411</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">clear</tt><tt class="py-op">:</tt> </tt>
-<a name="L3412"></a><tt class="py-lineno">3412</tt> <tt class="py-line"> <tt class="py-name">pattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"Set "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setName</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" cleared"</tt> </tt>
-<a name="L3413"></a><tt class="py-lineno">3413</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">pattern</tt><tt class="py-op">,</tt> <tt id="link-1247" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1247', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3414"></a><tt class="py-lineno">3414</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3415"></a><tt class="py-lineno">3415</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">retain</tt><tt class="py-op">:</tt> </tt>
-<a name="L3416"></a><tt class="py-lineno">3416</tt> <tt class="py-line"> <tt class="py-name">positivePattern</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setName</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" was pruned to contain "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L3417"></a><tt class="py-lineno">3417</tt> <tt class="py-line"> <tt class="py-string">"only elements of set \[(.*)\]"</tt> </tt>
-<a name="L3418"></a><tt class="py-lineno">3418</tt> <tt class="py-line"> <tt class="py-name">negativePattern</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setName</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" was not changed by "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L3419"></a><tt class="py-lineno">3419</tt> <tt class="py-line"> <tt class="py-string">"retaining only elements of the set "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L3420"></a><tt class="py-lineno">3420</tt> <tt class="py-line"> <tt class="py-string">"\[(.*)\]"</tt> </tt>
-<a name="L3421"></a><tt class="py-lineno">3421</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">positivePattern</tt><tt class="py-op">,</tt> <tt id="link-1248" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1248', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3422"></a><tt class="py-lineno">3422</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3423"></a><tt class="py-lineno">3423</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">negativePattern</tt><tt class="py-op">,</tt> <tt id="link-1249" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1249', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3424"></a><tt class="py-lineno">3424</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3425"></a><tt class="py-lineno">3425</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3426"></a><tt class="py-lineno">3426</tt> <tt class="py-line"> <tt class="py-name">positivePattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"\[(.*)\] was removed from the set "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L3427"></a><tt class="py-lineno">3427</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3428"></a><tt class="py-lineno">3428</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">values</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3429"></a><tt class="py-lineno">3429</tt> <tt class="py-line"> <tt class="py-name">negativePattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"\[(.*)\] was not in set "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L3430"></a><tt class="py-lineno">3430</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3431"></a><tt class="py-lineno">3431</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3432"></a><tt class="py-lineno">3432</tt> <tt class="py-line"> <tt class="py-name">negativePattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"No element of \[(.*)\] was in set "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L3433"></a><tt class="py-lineno">3433</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3434"></a><tt class="py-lineno">3434</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">positivePattern</tt><tt class="py-op">,</tt> <tt id="link-1250" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1250', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3435"></a><tt class="py-lineno">3435</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3436"></a><tt class="py-lineno">3436</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">negativePattern</tt><tt class="py-op">,</tt> <tt id="link-1251" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1251', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3437"></a><tt class="py-lineno">3437</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3438"></a><tt class="py-lineno">3438</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1252" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1252', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1253" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1253', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": setTestRemove did not"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3439"></a><tt class="py-lineno">3439</tt> <tt class="py-line"> <tt class="py-string">" match expected output"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3440"></a><tt class="py-lineno">3440</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1254" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1254', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">pattern</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3441"></a><tt class="py-lineno">3441</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1255" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1255', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-1256" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1256', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3442"></a><tt class="py-lineno">3442</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L3443"></a><tt class="py-lineno">3443</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3444"></a><tt class="py-lineno">3444</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1257" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1257', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1258" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1258', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing '"</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">+</tt> <tt class="py-string">"' command: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3445"></a><tt class="py-lineno">3445</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1259" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1259', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3446"></a><tt class="py-lineno">3446</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L3447"></a><tt class="py-lineno">3447</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3448"></a><tt class="py-lineno">3448</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1260" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1260', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3449"></a><tt class="py-lineno">3449</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L3450"></a><tt class="py-lineno">3450</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L3451"></a><tt class="py-lineno">3451</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1261" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1261', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1262" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1262', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3452"></a><tt class="py-lineno">3452</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1263" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1263', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1264" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1264', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3453"></a><tt class="py-lineno">3453</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1265" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1265', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3454"></a><tt class="py-lineno">3454</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1266" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1266', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3455"></a><tt class="py-lineno">3455</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L3456"></a><tt class="py-lineno">3456</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1267" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1267', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3457"></a><tt class="py-lineno">3457</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1268" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1268', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3458"></a><tt class="py-lineno">3458</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1269" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1269', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L3459"></a><tt class="py-lineno">3459</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.setTestGet"></a><div id="OnosCliDriver.setTestGet-def"><a name="L3460"></a><tt class="py-lineno">3460</tt> <a class="py-toggle" href="#" id="OnosCliDriver.setTestGet-toggle" onclick="return toggle('OnosCliDriver.setTestGet');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestGet">setTestGet</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">setName</tt><tt class="py-op">,</tt> <tt class="py-param">values</tt><tt class="py-op">=</tt><tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.setTestGet-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.setTestGet-expanded"><a name="L3461"></a><tt class="py-lineno">3461</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L3462"></a><tt class="py-lineno">3462</tt> <tt class="py-line"><tt class="py-docstring"> CLI command to get the elements in a distributed set.</tt> </tt>
-<a name="L3463"></a><tt class="py-lineno">3463</tt> <tt class="py-line"><tt class="py-docstring"> Required arguments:</tt> </tt>
-<a name="L3464"></a><tt class="py-lineno">3464</tt> <tt class="py-line"><tt class="py-docstring"> setName - The name of the set to remove from.</tt> </tt>
-<a name="L3465"></a><tt class="py-lineno">3465</tt> <tt class="py-line"><tt class="py-docstring"> Optional arguments:</tt> </tt>
-<a name="L3466"></a><tt class="py-lineno">3466</tt> <tt class="py-line"><tt class="py-docstring"> values - The value(s) to check if in the set, space seperated.</tt> </tt>
-<a name="L3467"></a><tt class="py-lineno">3467</tt> <tt class="py-line"><tt class="py-docstring"> returns:</tt> </tt>
-<a name="L3468"></a><tt class="py-lineno">3468</tt> <tt class="py-line"><tt class="py-docstring"> main.ERROR on error OR</tt> </tt>
-<a name="L3469"></a><tt class="py-lineno">3469</tt> <tt class="py-line"><tt class="py-docstring"> A list of elements in the set if no optional arguments are</tt> </tt>
-<a name="L3470"></a><tt class="py-lineno">3470</tt> <tt class="py-line"><tt class="py-docstring"> supplied OR</tt> </tt>
-<a name="L3471"></a><tt class="py-lineno">3471</tt> <tt class="py-line"><tt class="py-docstring"> A tuple containing the list then:</tt> </tt>
-<a name="L3472"></a><tt class="py-lineno">3472</tt> <tt class="py-line"><tt class="py-docstring"> main.FALSE if the given values are not in the set OR</tt> </tt>
-<a name="L3473"></a><tt class="py-lineno">3473</tt> <tt class="py-line"><tt class="py-docstring"> main.TRUE if the given values are in the set OR</tt> </tt>
-<a name="L3474"></a><tt class="py-lineno">3474</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L3475"></a><tt class="py-lineno">3475</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3476"></a><tt class="py-lineno">3476</tt> <tt class="py-line"> <tt class="py-name">values</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">values</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">strip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3477"></a><tt class="py-lineno">3477</tt> <tt class="py-line"> <tt class="py-name">setName</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setName</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">strip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3478"></a><tt class="py-lineno">3478</tt> <tt class="py-line"> <tt class="py-name">length</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">values</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3479"></a><tt class="py-lineno">3479</tt> <tt class="py-line"> <tt class="py-name">containsCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3480"></a><tt class="py-lineno">3480</tt> <tt class="py-line"> <tt class="py-comment"># Patterns to match</tt> </tt>
-<a name="L3481"></a><tt class="py-lineno">3481</tt> <tt class="py-line"> <tt class="py-name">setPattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"\[(.*)\]"</tt> </tt>
-<a name="L3482"></a><tt class="py-lineno">3482</tt> <tt class="py-line"> <tt class="py-name">pattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"Items in set "</tt> <tt class="py-op">+</tt> <tt class="py-name">setName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> <tt class="py-name">setPattern</tt> </tt>
-<a name="L3483"></a><tt class="py-lineno">3483</tt> <tt class="py-line"> <tt class="py-name">containsTrue</tt> <tt class="py-op">=</tt> <tt class="py-string">"Set "</tt> <tt class="py-op">+</tt> <tt class="py-name">setName</tt> <tt class="py-op">+</tt> <tt class="py-string">" contains the value "</tt> <tt class="py-op">+</tt> <tt class="py-name">values</tt> </tt>
-<a name="L3484"></a><tt class="py-lineno">3484</tt> <tt class="py-line"> <tt class="py-name">containsFalse</tt> <tt class="py-op">=</tt> <tt class="py-string">"Set "</tt> <tt class="py-op">+</tt> <tt class="py-name">setName</tt> <tt class="py-op">+</tt> <tt class="py-string">" did not contain the value "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L3485"></a><tt class="py-lineno">3485</tt> <tt class="py-line"> <tt class="py-name">values</tt> </tt>
-<a name="L3486"></a><tt class="py-lineno">3486</tt> <tt class="py-line"> <tt class="py-name">containsAllTrue</tt> <tt class="py-op">=</tt> <tt class="py-string">"Set "</tt> <tt class="py-op">+</tt> <tt class="py-name">setName</tt> <tt class="py-op">+</tt> <tt class="py-string">" contains the the subset "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L3487"></a><tt class="py-lineno">3487</tt> <tt class="py-line"> <tt class="py-name">setPattern</tt> </tt>
-<a name="L3488"></a><tt class="py-lineno">3488</tt> <tt class="py-line"> <tt class="py-name">containsAllFalse</tt> <tt class="py-op">=</tt> <tt class="py-string">"Set "</tt> <tt class="py-op">+</tt> <tt class="py-name">setName</tt> <tt class="py-op">+</tt> <tt class="py-string">" did not contain the the"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L3489"></a><tt class="py-lineno">3489</tt> <tt class="py-line"> <tt class="py-string">" subset "</tt> <tt class="py-op">+</tt> <tt class="py-name">setPattern</tt> </tt>
-<a name="L3490"></a><tt class="py-lineno">3490</tt> <tt class="py-line"> </tt>
-<a name="L3491"></a><tt class="py-lineno">3491</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"set-test-get "</tt> </tt>
-<a name="L3492"></a><tt class="py-lineno">3492</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-name">setName</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">values</tt> </tt>
-<a name="L3493"></a><tt class="py-lineno">3493</tt> <tt class="py-line"> <tt id="link-1270" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1270', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1271" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1271', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3494"></a><tt class="py-lineno">3494</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3495"></a><tt class="py-lineno">3495</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Maybe make this less hardcoded</tt> </tt>
-<a name="L3496"></a><tt class="py-lineno">3496</tt> <tt class="py-line"> <tt class="py-comment"># ConsistentMap Exceptions</tt> </tt>
-<a name="L3497"></a><tt class="py-lineno">3497</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"org.onosproject.store.service"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1272" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1272', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3498"></a><tt class="py-lineno">3498</tt> <tt class="py-line"> <tt class="py-comment"># Node not leader</tt> </tt>
-<a name="L3499"></a><tt class="py-lineno">3499</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"java.lang.IllegalStateException"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1273" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1273', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3500"></a><tt class="py-lineno">3500</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3501"></a><tt class="py-lineno">3501</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1274" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1274', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1275" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1275', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing '"</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">+</tt> <tt class="py-string">"' "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3502"></a><tt class="py-lineno">3502</tt> <tt class="py-line"> <tt class="py-string">"command: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1276" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1276', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3503"></a><tt class="py-lineno">3503</tt> <tt class="py-line"> <tt class="py-name">retryTime</tt> <tt class="py-op">=</tt> <tt class="py-number">30</tt> <tt class="py-comment"># Conservative time, given by Madan</tt> </tt>
-<a name="L3504"></a><tt class="py-lineno">3504</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1277" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1277', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">retryTime</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3505"></a><tt class="py-lineno">3505</tt> <tt class="py-line"> <tt class="py-string">"seconds before retrying."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3506"></a><tt class="py-lineno">3506</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">retryTime</tt> <tt class="py-op">)</tt> <tt class="py-comment"># Due to change in mastership</tt> </tt>
-<a name="L3507"></a><tt class="py-lineno">3507</tt> <tt class="py-line"> <tt id="link-1278" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1278', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1279" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1279', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3508"></a><tt class="py-lineno">3508</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"Error executing command"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1280" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1280', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3509"></a><tt class="py-lineno">3509</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1281" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1281', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt id="link-1282" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1282', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L3510"></a><tt class="py-lineno">3510</tt> <tt class="py-line"> </tt>
-<a name="L3511"></a><tt class="py-lineno">3511</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">length</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L3512"></a><tt class="py-lineno">3512</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">pattern</tt><tt class="py-op">,</tt> <tt id="link-1283" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1283', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L3513"></a><tt class="py-lineno">3513</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># if given values</tt> </tt>
-<a name="L3514"></a><tt class="py-lineno">3514</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">length</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> <tt class="py-comment"># Contains output</tt> </tt>
-<a name="L3515"></a><tt class="py-lineno">3515</tt> <tt class="py-line"> <tt class="py-name">patternTrue</tt> <tt class="py-op">=</tt> <tt class="py-name">pattern</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-name">containsTrue</tt> </tt>
-<a name="L3516"></a><tt class="py-lineno">3516</tt> <tt class="py-line"> <tt class="py-name">patternFalse</tt> <tt class="py-op">=</tt> <tt class="py-name">pattern</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-name">containsFalse</tt> </tt>
-<a name="L3517"></a><tt class="py-lineno">3517</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># ContainsAll output</tt> </tt>
-<a name="L3518"></a><tt class="py-lineno">3518</tt> <tt class="py-line"> <tt class="py-name">patternTrue</tt> <tt class="py-op">=</tt> <tt class="py-name">pattern</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-name">containsAllTrue</tt> </tt>
-<a name="L3519"></a><tt class="py-lineno">3519</tt> <tt class="py-line"> <tt class="py-name">patternFalse</tt> <tt class="py-op">=</tt> <tt class="py-name">pattern</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-name">containsAllFalse</tt> </tt>
-<a name="L3520"></a><tt class="py-lineno">3520</tt> <tt class="py-line"> <tt class="py-name">matchTrue</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">patternTrue</tt><tt class="py-op">,</tt> <tt id="link-1284" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1284', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L3521"></a><tt class="py-lineno">3521</tt> <tt class="py-line"> <tt class="py-name">matchFalse</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">patternFalse</tt><tt class="py-op">,</tt> <tt id="link-1285" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1285', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L3522"></a><tt class="py-lineno">3522</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">matchTrue</tt><tt class="py-op">:</tt> </tt>
-<a name="L3523"></a><tt class="py-lineno">3523</tt> <tt class="py-line"> <tt class="py-name">containsCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3524"></a><tt class="py-lineno">3524</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">matchTrue</tt> </tt>
-<a name="L3525"></a><tt class="py-lineno">3525</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">matchFalse</tt><tt class="py-op">:</tt> </tt>
-<a name="L3526"></a><tt class="py-lineno">3526</tt> <tt class="py-line"> <tt class="py-name">containsCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3527"></a><tt class="py-lineno">3527</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">matchFalse</tt> </tt>
-<a name="L3528"></a><tt class="py-lineno">3528</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3529"></a><tt class="py-lineno">3529</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1286" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1286', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1287" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1287', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" setTestGet did not match "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L3530"></a><tt class="py-lineno">3530</tt> <tt class="py-line"> <tt class="py-string">"expected output"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3531"></a><tt class="py-lineno">3531</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1288" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1288', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">pattern</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3532"></a><tt class="py-lineno">3532</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1289" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1289', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-1290" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1290', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3533"></a><tt class="py-lineno">3533</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3534"></a><tt class="py-lineno">3534</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">match</tt><tt class="py-op">:</tt> </tt>
-<a name="L3535"></a><tt class="py-lineno">3535</tt> <tt class="py-line"> <tt class="py-name">setMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3536"></a><tt class="py-lineno">3536</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">setMatch</tt> <tt class="py-op">==</tt> <tt class="py-string">''</tt><tt class="py-op">:</tt> </tt>
-<a name="L3537"></a><tt class="py-lineno">3537</tt> <tt class="py-line"> <tt class="py-name">setList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3538"></a><tt class="py-lineno">3538</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3539"></a><tt class="py-lineno">3539</tt> <tt class="py-line"> <tt class="py-name">setList</tt> <tt class="py-op">=</tt> <tt class="py-name">setMatch</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">", "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3540"></a><tt class="py-lineno">3540</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">length</tt> <tt class="py-op">></tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L3541"></a><tt class="py-lineno">3541</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">(</tt> <tt class="py-name">setList</tt><tt class="py-op">,</tt> <tt class="py-name">containsCheck</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3542"></a><tt class="py-lineno">3542</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3543"></a><tt class="py-lineno">3543</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">setList</tt> </tt>
-<a name="L3544"></a><tt class="py-lineno">3544</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># no match</tt> </tt>
-<a name="L3545"></a><tt class="py-lineno">3545</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1291" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1291', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1292" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1292', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": setTestGet did not"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3546"></a><tt class="py-lineno">3546</tt> <tt class="py-line"> <tt class="py-string">" match expected output"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3547"></a><tt class="py-lineno">3547</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1293" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1293', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">pattern</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3548"></a><tt class="py-lineno">3548</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1294" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1294', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-1295" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1295', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3549"></a><tt class="py-lineno">3549</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L3550"></a><tt class="py-lineno">3550</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3551"></a><tt class="py-lineno">3551</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1296" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1296', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1297" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1297', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing '"</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">+</tt> <tt class="py-string">"' command: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3552"></a><tt class="py-lineno">3552</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1298" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1298', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3553"></a><tt class="py-lineno">3553</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L3554"></a><tt class="py-lineno">3554</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3555"></a><tt class="py-lineno">3555</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1299" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1299', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3556"></a><tt class="py-lineno">3556</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L3557"></a><tt class="py-lineno">3557</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L3558"></a><tt class="py-lineno">3558</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1300" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1300', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1301" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1301', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3559"></a><tt class="py-lineno">3559</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1302" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1302', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1303" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1303', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3560"></a><tt class="py-lineno">3560</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1304" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1304', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3561"></a><tt class="py-lineno">3561</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1305" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1305', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3562"></a><tt class="py-lineno">3562</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L3563"></a><tt class="py-lineno">3563</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1306" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1306', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3564"></a><tt class="py-lineno">3564</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1307" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1307', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3565"></a><tt class="py-lineno">3565</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1308" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1308', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L3566"></a><tt class="py-lineno">3566</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.setTestSize"></a><div id="OnosCliDriver.setTestSize-def"><a name="L3567"></a><tt class="py-lineno">3567</tt> <a class="py-toggle" href="#" id="OnosCliDriver.setTestSize-toggle" onclick="return toggle('OnosCliDriver.setTestSize');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestSize">setTestSize</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">setName</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.setTestSize-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.setTestSize-expanded"><a name="L3568"></a><tt class="py-lineno">3568</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L3569"></a><tt class="py-lineno">3569</tt> <tt class="py-line"><tt class="py-docstring"> CLI command to get the elements in a distributed set.</tt> </tt>
-<a name="L3570"></a><tt class="py-lineno">3570</tt> <tt class="py-line"><tt class="py-docstring"> Required arguments:</tt> </tt>
-<a name="L3571"></a><tt class="py-lineno">3571</tt> <tt class="py-line"><tt class="py-docstring"> setName - The name of the set to remove from.</tt> </tt>
-<a name="L3572"></a><tt class="py-lineno">3572</tt> <tt class="py-line"><tt class="py-docstring"> returns:</tt> </tt>
-<a name="L3573"></a><tt class="py-lineno">3573</tt> <tt class="py-line"><tt class="py-docstring"> The integer value of the size returned or</tt> </tt>
-<a name="L3574"></a><tt class="py-lineno">3574</tt> <tt class="py-line"><tt class="py-docstring"> None on error</tt> </tt>
-<a name="L3575"></a><tt class="py-lineno">3575</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L3576"></a><tt class="py-lineno">3576</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3577"></a><tt class="py-lineno">3577</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Should this check against the number of elements returned</tt> </tt>
-<a name="L3578"></a><tt class="py-lineno">3578</tt> <tt class="py-line"> <tt class="py-comment"># and then return true/false based on that?</tt> </tt>
-<a name="L3579"></a><tt class="py-lineno">3579</tt> <tt class="py-line"> <tt class="py-name">setName</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">setName</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">strip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3580"></a><tt class="py-lineno">3580</tt> <tt class="py-line"> <tt class="py-comment"># Patterns to match</tt> </tt>
-<a name="L3581"></a><tt class="py-lineno">3581</tt> <tt class="py-line"> <tt class="py-name">setPattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"\[(.*)\]"</tt> </tt>
-<a name="L3582"></a><tt class="py-lineno">3582</tt> <tt class="py-line"> <tt class="py-name">pattern</tt> <tt class="py-op">=</tt> <tt class="py-string">"There are (\d+) items in set "</tt> <tt class="py-op">+</tt> <tt class="py-name">setName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L3583"></a><tt class="py-lineno">3583</tt> <tt class="py-line"> <tt class="py-name">setPattern</tt> </tt>
-<a name="L3584"></a><tt class="py-lineno">3584</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"set-test-get -s "</tt> </tt>
-<a name="L3585"></a><tt class="py-lineno">3585</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-name">setName</tt> </tt>
-<a name="L3586"></a><tt class="py-lineno">3586</tt> <tt class="py-line"> <tt id="link-1309" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1309', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1310" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1310', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3587"></a><tt class="py-lineno">3587</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3588"></a><tt class="py-lineno">3588</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Maybe make this less hardcoded</tt> </tt>
-<a name="L3589"></a><tt class="py-lineno">3589</tt> <tt class="py-line"> <tt class="py-comment"># ConsistentMap Exceptions</tt> </tt>
-<a name="L3590"></a><tt class="py-lineno">3590</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"org.onosproject.store.service"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1311" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1311', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3591"></a><tt class="py-lineno">3591</tt> <tt class="py-line"> <tt class="py-comment"># Node not leader</tt> </tt>
-<a name="L3592"></a><tt class="py-lineno">3592</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"java.lang.IllegalStateException"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1312" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1312', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3593"></a><tt class="py-lineno">3593</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3594"></a><tt class="py-lineno">3594</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1313" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1313', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1314" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1314', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing '"</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">+</tt> <tt class="py-string">"' "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3595"></a><tt class="py-lineno">3595</tt> <tt class="py-line"> <tt class="py-string">"command: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1315" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1315', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3596"></a><tt class="py-lineno">3596</tt> <tt class="py-line"> <tt class="py-name">retryTime</tt> <tt class="py-op">=</tt> <tt class="py-number">30</tt> <tt class="py-comment"># Conservative time, given by Madan</tt> </tt>
-<a name="L3597"></a><tt class="py-lineno">3597</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1316" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1316', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">retryTime</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3598"></a><tt class="py-lineno">3598</tt> <tt class="py-line"> <tt class="py-string">"seconds before retrying."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3599"></a><tt class="py-lineno">3599</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">retryTime</tt> <tt class="py-op">)</tt> <tt class="py-comment"># Due to change in mastership</tt> </tt>
-<a name="L3600"></a><tt class="py-lineno">3600</tt> <tt class="py-line"> <tt id="link-1317" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1317', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1318" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1318', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3601"></a><tt class="py-lineno">3601</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"Error executing command"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1319" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1319', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3602"></a><tt class="py-lineno">3602</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1320" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1320', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt id="link-1321" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1321', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L3603"></a><tt class="py-lineno">3603</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">pattern</tt><tt class="py-op">,</tt> <tt id="link-1322" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1322', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L3604"></a><tt class="py-lineno">3604</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">match</tt><tt class="py-op">:</tt> </tt>
-<a name="L3605"></a><tt class="py-lineno">3605</tt> <tt class="py-line"> <tt class="py-name">setSize</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3606"></a><tt class="py-lineno">3606</tt> <tt class="py-line"> <tt class="py-name">setMatch</tt> <tt class="py-op">=</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3607"></a><tt class="py-lineno">3607</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">setMatch</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">setSize</tt><tt class="py-op">:</tt> </tt>
-<a name="L3608"></a><tt class="py-lineno">3608</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1323" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1323', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"The size returned by "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3609"></a><tt class="py-lineno">3609</tt> <tt class="py-line"> <tt class="py-string">" matches the number of elements in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3610"></a><tt class="py-lineno">3610</tt> <tt class="py-line"> <tt class="py-string">"the returned set"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3611"></a><tt class="py-lineno">3611</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3612"></a><tt class="py-lineno">3612</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1324" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1324', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1325" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1325', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"The size returned by "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3613"></a><tt class="py-lineno">3613</tt> <tt class="py-line"> <tt class="py-string">" does not match the number of "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3614"></a><tt class="py-lineno">3614</tt> <tt class="py-line"> <tt class="py-string">"elements in the returned set."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3615"></a><tt class="py-lineno">3615</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">setSize</tt> </tt>
-<a name="L3616"></a><tt class="py-lineno">3616</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># no match</tt> </tt>
-<a name="L3617"></a><tt class="py-lineno">3617</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1326" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1326', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1327" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1327', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": setTestGet did not"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3618"></a><tt class="py-lineno">3618</tt> <tt class="py-line"> <tt class="py-string">" match expected output"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3619"></a><tt class="py-lineno">3619</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1328" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1328', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">pattern</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3620"></a><tt class="py-lineno">3620</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1329" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1329', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-1330" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1330', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3621"></a><tt class="py-lineno">3621</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3622"></a><tt class="py-lineno">3622</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3623"></a><tt class="py-lineno">3623</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1331" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1331', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1332" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1332', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing '"</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">+</tt> <tt class="py-string">"' command: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3624"></a><tt class="py-lineno">3624</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1333" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1333', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3625"></a><tt class="py-lineno">3625</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3626"></a><tt class="py-lineno">3626</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3627"></a><tt class="py-lineno">3627</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1334" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1334', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3628"></a><tt class="py-lineno">3628</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3629"></a><tt class="py-lineno">3629</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L3630"></a><tt class="py-lineno">3630</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1335" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1335', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1336" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1336', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3631"></a><tt class="py-lineno">3631</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1337" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1337', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1338" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1338', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3632"></a><tt class="py-lineno">3632</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1339" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1339', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3633"></a><tt class="py-lineno">3633</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1340" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1340', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3634"></a><tt class="py-lineno">3634</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L3635"></a><tt class="py-lineno">3635</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1341" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1341', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3636"></a><tt class="py-lineno">3636</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1342" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1342', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3637"></a><tt class="py-lineno">3637</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1343" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1343', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L3638"></a><tt class="py-lineno">3638</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.counters"></a><div id="OnosCliDriver.counters-def"><a name="L3639"></a><tt class="py-lineno">3639</tt> <a class="py-toggle" href="#" id="OnosCliDriver.counters-toggle" onclick="return toggle('OnosCliDriver.counters');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counters">counters</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.counters-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.counters-expanded"><a name="L3640"></a><tt class="py-lineno">3640</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L3641"></a><tt class="py-lineno">3641</tt> <tt class="py-line"><tt class="py-docstring"> Command to list the various counters in the system.</tt> </tt>
-<a name="L3642"></a><tt class="py-lineno">3642</tt> <tt class="py-line"><tt class="py-docstring"> returns:</tt> </tt>
-<a name="L3643"></a><tt class="py-lineno">3643</tt> <tt class="py-line"><tt class="py-docstring"> if jsonFormat, a string of the json object returned by the cli</tt> </tt>
-<a name="L3644"></a><tt class="py-lineno">3644</tt> <tt class="py-line"><tt class="py-docstring"> command</tt> </tt>
-<a name="L3645"></a><tt class="py-lineno">3645</tt> <tt class="py-line"><tt class="py-docstring"> if not jsonFormat, the normal string output of the cli command</tt> </tt>
-<a name="L3646"></a><tt class="py-lineno">3646</tt> <tt class="py-line"><tt class="py-docstring"> None on error</tt> </tt>
-<a name="L3647"></a><tt class="py-lineno">3647</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L3648"></a><tt class="py-lineno">3648</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3649"></a><tt class="py-lineno">3649</tt> <tt class="py-line"> <tt id="link-1344" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counters"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters" class="py-name" href="#" onclick="return doclink('link-1344', 'counters', 'link-1344');">counters</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L3650"></a><tt class="py-lineno">3650</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"counters"</tt> </tt>
-<a name="L3651"></a><tt class="py-lineno">3651</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L3652"></a><tt class="py-lineno">3652</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L3653"></a><tt class="py-lineno">3653</tt> <tt class="py-line"> <tt id="link-1345" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1345', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1346" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1346', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3654"></a><tt class="py-lineno">3654</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"Error executing command"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1347" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1347', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3655"></a><tt class="py-lineno">3655</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1348" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1348', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt id="link-1349" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1349', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L3656"></a><tt class="py-lineno">3656</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-1350" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1350', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3657"></a><tt class="py-lineno">3657</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3658"></a><tt class="py-lineno">3658</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1351" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1351', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1352" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1352', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing 'counters' command: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3659"></a><tt class="py-lineno">3659</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1353" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1353', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3660"></a><tt class="py-lineno">3660</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3661"></a><tt class="py-lineno">3661</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3662"></a><tt class="py-lineno">3662</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1354" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1354', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3663"></a><tt class="py-lineno">3663</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3664"></a><tt class="py-lineno">3664</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L3665"></a><tt class="py-lineno">3665</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1355" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1355', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1356" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1356', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3666"></a><tt class="py-lineno">3666</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1357" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1357', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1358" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1358', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3667"></a><tt class="py-lineno">3667</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1359" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1359', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3668"></a><tt class="py-lineno">3668</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1360" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1360', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3669"></a><tt class="py-lineno">3669</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L3670"></a><tt class="py-lineno">3670</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1361" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1361', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3671"></a><tt class="py-lineno">3671</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1362" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1362', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3672"></a><tt class="py-lineno">3672</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1363" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1363', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L3673"></a><tt class="py-lineno">3673</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.counterTestAddAndGet"></a><div id="OnosCliDriver.counterTestAddAndGet-def"><a name="L3674"></a><tt class="py-lineno">3674</tt> <a class="py-toggle" href="#" id="OnosCliDriver.counterTestAddAndGet-toggle" onclick="return toggle('OnosCliDriver.counterTestAddAndGet');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counterTestAddAndGet">counterTestAddAndGet</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">counter</tt><tt class="py-op">,</tt> <tt class="py-param">delta</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-param">inMemory</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.counterTestAddAndGet-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.counterTestAddAndGet-expanded"><a name="L3675"></a><tt class="py-lineno">3675</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L3676"></a><tt class="py-lineno">3676</tt> <tt class="py-line"><tt class="py-docstring"> CLI command to add a delta to then get a distributed counter.</tt> </tt>
-<a name="L3677"></a><tt class="py-lineno">3677</tt> <tt class="py-line"><tt class="py-docstring"> Required arguments:</tt> </tt>
-<a name="L3678"></a><tt class="py-lineno">3678</tt> <tt class="py-line"><tt class="py-docstring"> counter - The name of the counter to increment.</tt> </tt>
-<a name="L3679"></a><tt class="py-lineno">3679</tt> <tt class="py-line"><tt class="py-docstring"> Optional arguments:</tt> </tt>
-<a name="L3680"></a><tt class="py-lineno">3680</tt> <tt class="py-line"><tt class="py-docstring"> delta - The long to add to the counter</tt> </tt>
-<a name="L3681"></a><tt class="py-lineno">3681</tt> <tt class="py-line"><tt class="py-docstring"> inMemory - use in memory map for the counter</tt> </tt>
-<a name="L3682"></a><tt class="py-lineno">3682</tt> <tt class="py-line"><tt class="py-docstring"> returns:</tt> </tt>
-<a name="L3683"></a><tt class="py-lineno">3683</tt> <tt class="py-line"><tt class="py-docstring"> integer value of the counter or</tt> </tt>
-<a name="L3684"></a><tt class="py-lineno">3684</tt> <tt class="py-line"><tt class="py-docstring"> None on Error</tt> </tt>
-<a name="L3685"></a><tt class="py-lineno">3685</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L3686"></a><tt class="py-lineno">3686</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3687"></a><tt class="py-lineno">3687</tt> <tt class="py-line"> <tt class="py-name">counter</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">counter</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3688"></a><tt class="py-lineno">3688</tt> <tt class="py-line"> <tt class="py-name">delta</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">delta</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3689"></a><tt class="py-lineno">3689</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"counter-test-increment "</tt> </tt>
-<a name="L3690"></a><tt class="py-lineno">3690</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">inMemory</tt><tt class="py-op">:</tt> </tt>
-<a name="L3691"></a><tt class="py-lineno">3691</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">"-i "</tt> </tt>
-<a name="L3692"></a><tt class="py-lineno">3692</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-name">counter</tt> </tt>
-<a name="L3693"></a><tt class="py-lineno">3693</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">delta</tt> <tt class="py-op">!=</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L3694"></a><tt class="py-lineno">3694</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">delta</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3695"></a><tt class="py-lineno">3695</tt> <tt class="py-line"> <tt id="link-1364" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1364', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1365" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1365', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3696"></a><tt class="py-lineno">3696</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3697"></a><tt class="py-lineno">3697</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Maybe make this less hardcoded</tt> </tt>
-<a name="L3698"></a><tt class="py-lineno">3698</tt> <tt class="py-line"> <tt class="py-comment"># ConsistentMap Exceptions</tt> </tt>
-<a name="L3699"></a><tt class="py-lineno">3699</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"org.onosproject.store.service"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1366" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1366', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3700"></a><tt class="py-lineno">3700</tt> <tt class="py-line"> <tt class="py-comment"># Node not leader</tt> </tt>
-<a name="L3701"></a><tt class="py-lineno">3701</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"java.lang.IllegalStateException"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1367" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1367', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3702"></a><tt class="py-lineno">3702</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3703"></a><tt class="py-lineno">3703</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1368" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1368', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1369" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1369', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing '"</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">+</tt> <tt class="py-string">"' "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3704"></a><tt class="py-lineno">3704</tt> <tt class="py-line"> <tt class="py-string">"command: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1370" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1370', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3705"></a><tt class="py-lineno">3705</tt> <tt class="py-line"> <tt class="py-name">retryTime</tt> <tt class="py-op">=</tt> <tt class="py-number">30</tt> <tt class="py-comment"># Conservative time, given by Madan</tt> </tt>
-<a name="L3706"></a><tt class="py-lineno">3706</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1371" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1371', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">retryTime</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3707"></a><tt class="py-lineno">3707</tt> <tt class="py-line"> <tt class="py-string">"seconds before retrying."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3708"></a><tt class="py-lineno">3708</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">retryTime</tt> <tt class="py-op">)</tt> <tt class="py-comment"># Due to change in mastership</tt> </tt>
-<a name="L3709"></a><tt class="py-lineno">3709</tt> <tt class="py-line"> <tt id="link-1372" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1372', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1373" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1373', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3710"></a><tt class="py-lineno">3710</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"Error executing command"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1374" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1374', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3711"></a><tt class="py-lineno">3711</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1375" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1375', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt id="link-1376" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1376', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L3712"></a><tt class="py-lineno">3712</tt> <tt class="py-line"> <tt class="py-name">pattern</tt> <tt class="py-op">=</tt> <tt class="py-name">counter</tt> <tt class="py-op">+</tt> <tt class="py-string">" was updated to (-?\d+)"</tt> </tt>
-<a name="L3713"></a><tt class="py-lineno">3713</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">pattern</tt><tt class="py-op">,</tt> <tt id="link-1377" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1377', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L3714"></a><tt class="py-lineno">3714</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">match</tt><tt class="py-op">:</tt> </tt>
-<a name="L3715"></a><tt class="py-lineno">3715</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3716"></a><tt class="py-lineno">3716</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3717"></a><tt class="py-lineno">3717</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1378" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1378', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1379" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1379', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": counterTestAddAndGet did not"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3718"></a><tt class="py-lineno">3718</tt> <tt class="py-line"> <tt class="py-string">" match expected output."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3719"></a><tt class="py-lineno">3719</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1380" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1380', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">pattern</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3720"></a><tt class="py-lineno">3720</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1381" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1381', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-1382" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1382', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3721"></a><tt class="py-lineno">3721</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3722"></a><tt class="py-lineno">3722</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3723"></a><tt class="py-lineno">3723</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1383" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1383', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1384" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1384', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing '"</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">+</tt> <tt class="py-string">"'"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3724"></a><tt class="py-lineno">3724</tt> <tt class="py-line"> <tt class="py-string">" command: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1385" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1385', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3725"></a><tt class="py-lineno">3725</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3726"></a><tt class="py-lineno">3726</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3727"></a><tt class="py-lineno">3727</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1386" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1386', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3728"></a><tt class="py-lineno">3728</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3729"></a><tt class="py-lineno">3729</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L3730"></a><tt class="py-lineno">3730</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1387" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1387', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1388" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1388', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3731"></a><tt class="py-lineno">3731</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1389" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1389', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1390" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1390', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3732"></a><tt class="py-lineno">3732</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1391" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1391', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3733"></a><tt class="py-lineno">3733</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1392" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1392', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3734"></a><tt class="py-lineno">3734</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L3735"></a><tt class="py-lineno">3735</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1393" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1393', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3736"></a><tt class="py-lineno">3736</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1394" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1394', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3737"></a><tt class="py-lineno">3737</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1395" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1395', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L3738"></a><tt class="py-lineno">3738</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.counterTestGetAndAdd"></a><div id="OnosCliDriver.counterTestGetAndAdd-def"><a name="L3739"></a><tt class="py-lineno">3739</tt> <a class="py-toggle" href="#" id="OnosCliDriver.counterTestGetAndAdd-toggle" onclick="return toggle('OnosCliDriver.counterTestGetAndAdd');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counterTestGetAndAdd">counterTestGetAndAdd</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">counter</tt><tt class="py-op">,</tt> <tt class="py-param">delta</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-param">inMemory</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.counterTestGetAndAdd-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.counterTestGetAndAdd-expanded"><a name="L3740"></a><tt class="py-lineno">3740</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L3741"></a><tt class="py-lineno">3741</tt> <tt class="py-line"><tt class="py-docstring"> CLI command to get a distributed counter then add a delta to it.</tt> </tt>
-<a name="L3742"></a><tt class="py-lineno">3742</tt> <tt class="py-line"><tt class="py-docstring"> Required arguments:</tt> </tt>
-<a name="L3743"></a><tt class="py-lineno">3743</tt> <tt class="py-line"><tt class="py-docstring"> counter - The name of the counter to increment.</tt> </tt>
-<a name="L3744"></a><tt class="py-lineno">3744</tt> <tt class="py-line"><tt class="py-docstring"> Optional arguments:</tt> </tt>
-<a name="L3745"></a><tt class="py-lineno">3745</tt> <tt class="py-line"><tt class="py-docstring"> delta - The long to add to the counter</tt> </tt>
-<a name="L3746"></a><tt class="py-lineno">3746</tt> <tt class="py-line"><tt class="py-docstring"> inMemory - use in memory map for the counter</tt> </tt>
-<a name="L3747"></a><tt class="py-lineno">3747</tt> <tt class="py-line"><tt class="py-docstring"> returns:</tt> </tt>
-<a name="L3748"></a><tt class="py-lineno">3748</tt> <tt class="py-line"><tt class="py-docstring"> integer value of the counter or</tt> </tt>
-<a name="L3749"></a><tt class="py-lineno">3749</tt> <tt class="py-line"><tt class="py-docstring"> None on Error</tt> </tt>
-<a name="L3750"></a><tt class="py-lineno">3750</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L3751"></a><tt class="py-lineno">3751</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3752"></a><tt class="py-lineno">3752</tt> <tt class="py-line"> <tt class="py-name">counter</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">counter</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3753"></a><tt class="py-lineno">3753</tt> <tt class="py-line"> <tt class="py-name">delta</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">delta</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3754"></a><tt class="py-lineno">3754</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"counter-test-increment -g "</tt> </tt>
-<a name="L3755"></a><tt class="py-lineno">3755</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">inMemory</tt><tt class="py-op">:</tt> </tt>
-<a name="L3756"></a><tt class="py-lineno">3756</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">"-i "</tt> </tt>
-<a name="L3757"></a><tt class="py-lineno">3757</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-name">counter</tt> </tt>
-<a name="L3758"></a><tt class="py-lineno">3758</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">delta</tt> <tt class="py-op">!=</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L3759"></a><tt class="py-lineno">3759</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">delta</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3760"></a><tt class="py-lineno">3760</tt> <tt class="py-line"> <tt id="link-1396" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1396', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1397" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1397', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3761"></a><tt class="py-lineno">3761</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3762"></a><tt class="py-lineno">3762</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Maybe make this less hardcoded</tt> </tt>
-<a name="L3763"></a><tt class="py-lineno">3763</tt> <tt class="py-line"> <tt class="py-comment"># ConsistentMap Exceptions</tt> </tt>
-<a name="L3764"></a><tt class="py-lineno">3764</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"org.onosproject.store.service"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1398" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1398', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3765"></a><tt class="py-lineno">3765</tt> <tt class="py-line"> <tt class="py-comment"># Node not leader</tt> </tt>
-<a name="L3766"></a><tt class="py-lineno">3766</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"java.lang.IllegalStateException"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1399" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1399', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3767"></a><tt class="py-lineno">3767</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3768"></a><tt class="py-lineno">3768</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1400" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1400', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1401" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1401', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing '"</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">+</tt> <tt class="py-string">"' "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3769"></a><tt class="py-lineno">3769</tt> <tt class="py-line"> <tt class="py-string">"command: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1402" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1402', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3770"></a><tt class="py-lineno">3770</tt> <tt class="py-line"> <tt class="py-name">retryTime</tt> <tt class="py-op">=</tt> <tt class="py-number">30</tt> <tt class="py-comment"># Conservative time, given by Madan</tt> </tt>
-<a name="L3771"></a><tt class="py-lineno">3771</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1403" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1403', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">retryTime</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3772"></a><tt class="py-lineno">3772</tt> <tt class="py-line"> <tt class="py-string">"seconds before retrying."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3773"></a><tt class="py-lineno">3773</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">retryTime</tt> <tt class="py-op">)</tt> <tt class="py-comment"># Due to change in mastership</tt> </tt>
-<a name="L3774"></a><tt class="py-lineno">3774</tt> <tt class="py-line"> <tt id="link-1404" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1404', 'output', 'link-120');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1405" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1405', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3775"></a><tt class="py-lineno">3775</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-string">"Error executing command"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-1406" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1406', 'output', 'link-120');">output</a></tt> </tt>
-<a name="L3776"></a><tt class="py-lineno">3776</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1407" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1407', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt id="link-1408" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1408', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L3777"></a><tt class="py-lineno">3777</tt> <tt class="py-line"> <tt class="py-name">pattern</tt> <tt class="py-op">=</tt> <tt class="py-name">counter</tt> <tt class="py-op">+</tt> <tt class="py-string">" was updated to (-?\d+)"</tt> </tt>
-<a name="L3778"></a><tt class="py-lineno">3778</tt> <tt class="py-line"> <tt class="py-name">match</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-name">pattern</tt><tt class="py-op">,</tt> <tt id="link-1409" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1409', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L3779"></a><tt class="py-lineno">3779</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">match</tt><tt class="py-op">:</tt> </tt>
-<a name="L3780"></a><tt class="py-lineno">3780</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">match</tt><tt class="py-op">.</tt><tt class="py-name">group</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3781"></a><tt class="py-lineno">3781</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3782"></a><tt class="py-lineno">3782</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1410" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1410', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1411" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1411', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": counterTestGetAndAdd did not"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3783"></a><tt class="py-lineno">3783</tt> <tt class="py-line"> <tt class="py-string">" match expected output."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3784"></a><tt class="py-lineno">3784</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1412" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1412', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">pattern</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3785"></a><tt class="py-lineno">3785</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1413" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1413', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-1414" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1414', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3786"></a><tt class="py-lineno">3786</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3787"></a><tt class="py-lineno">3787</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3788"></a><tt class="py-lineno">3788</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1415" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1415', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1416" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1416', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in processing '"</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">+</tt> <tt class="py-string">"'"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3789"></a><tt class="py-lineno">3789</tt> <tt class="py-line"> <tt class="py-string">" command: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-1417" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-1417', 'output', 'link-120');">output</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3790"></a><tt class="py-lineno">3790</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3791"></a><tt class="py-lineno">3791</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3792"></a><tt class="py-lineno">3792</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1418" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1418', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3793"></a><tt class="py-lineno">3793</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3794"></a><tt class="py-lineno">3794</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L3795"></a><tt class="py-lineno">3795</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1419" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1419', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1420" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1420', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3796"></a><tt class="py-lineno">3796</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1421" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1421', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1422" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1422', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3797"></a><tt class="py-lineno">3797</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1423" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1423', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3798"></a><tt class="py-lineno">3798</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1424" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1424', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3799"></a><tt class="py-lineno">3799</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L3800"></a><tt class="py-lineno">3800</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1425" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1425', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3801"></a><tt class="py-lineno">3801</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1426" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1426', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3802"></a><tt class="py-lineno">3802</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1427" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1427', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L3803"></a><tt class="py-lineno">3803</tt> <tt class="py-line"> </tt>
-<a name="L3804"></a><tt class="py-lineno">3804</tt> <tt class="py-line"> </tt>
-<a name="OnosCliDriver.summary"></a><div id="OnosCliDriver.summary-def"><a name="L3805"></a><tt class="py-lineno">3805</tt> <a class="py-toggle" href="#" id="OnosCliDriver.summary-toggle" onclick="return toggle('OnosCliDriver.summary');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#summary">summary</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosCliDriver.summary-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosCliDriver.summary-expanded"><a name="L3806"></a><tt class="py-lineno">3806</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L3807"></a><tt class="py-lineno">3807</tt> <tt class="py-line"><tt class="py-docstring"> Description: Execute summary command in onos</tt> </tt>
-<a name="L3808"></a><tt class="py-lineno">3808</tt> <tt class="py-line"><tt class="py-docstring"> Returns: json object ( summary -j ), returns main.FALSE if there is</tt> </tt>
-<a name="L3809"></a><tt class="py-lineno">3809</tt> <tt class="py-line"><tt class="py-docstring"> no output</tt> </tt>
-<a name="L3810"></a><tt class="py-lineno">3810</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L3811"></a><tt class="py-lineno">3811</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L3812"></a><tt class="py-lineno">3812</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3813"></a><tt class="py-lineno">3813</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"summary"</tt> </tt>
-<a name="L3814"></a><tt class="py-lineno">3814</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">:</tt> </tt>
-<a name="L3815"></a><tt class="py-lineno">3815</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j"</tt> </tt>
-<a name="L3816"></a><tt class="py-lineno">3816</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1428" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-1428', 'sendline', 'link-12');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3817"></a><tt class="py-lineno">3817</tt> <tt class="py-line"> </tt>
-<a name="L3818"></a><tt class="py-lineno">3818</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"Error:"</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3819"></a><tt class="py-lineno">3819</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1429" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1429', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1430" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1430', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": summary() response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3820"></a><tt class="py-lineno">3820</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3821"></a><tt class="py-lineno">3821</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L3822"></a><tt class="py-lineno">3822</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1431" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1431', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1432" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1432', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": There is no output in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3823"></a><tt class="py-lineno">3823</tt> <tt class="py-line"> <tt class="py-string">"summary command"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3824"></a><tt class="py-lineno">3824</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3825"></a><tt class="py-lineno">3825</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L3826"></a><tt class="py-lineno">3826</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3827"></a><tt class="py-lineno">3827</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1433" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1433', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3828"></a><tt class="py-lineno">3828</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L3829"></a><tt class="py-lineno">3829</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L3830"></a><tt class="py-lineno">3830</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1434" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1434', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1435" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1435', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3831"></a><tt class="py-lineno">3831</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1436" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1436', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt id="link-1437" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1437', 'error', 'link-9');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3832"></a><tt class="py-lineno">3832</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1438" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1438', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3833"></a><tt class="py-lineno">3833</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1439" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1439', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3834"></a><tt class="py-lineno">3834</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L3835"></a><tt class="py-lineno">3835</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1440" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1440', 'log', 'link-6');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3836"></a><tt class="py-lineno">3836</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1441" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-1441', 'cleanup', 'link-19');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3837"></a><tt class="py-lineno">3837</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1442" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-1442', 'exit', 'link-20');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L3838"></a><tt class="py-lineno">3838</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html
deleted file mode 100644
index 0c710a1..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html
+++ /dev/null
@@ -1,4087 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.onosclidriver.OnosCliDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.onosclidriver-module.html">Module onosclidriver</a> ::
- Class OnosCliDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class OnosCliDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_onosclidri" name="class_hierarchy_for_onosclidri">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html" title="OnosCliDriver" alt="" coords="5,6,109,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="134,6,225,31"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="component.Component" alt="" coords="251,6,408,31"/>
-</map>
- <img src="class_hierarchy_for_onosclidri.gif" alt='' usemap="#class_hierarchy_for_onosclidri" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Initialize client</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Creates ssh handle for ONOS cli.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Called when Test is complete to disconnect the ONOS handle.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#logout" class="summary-sig-name">logout</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Sends 'logout' command to ONOS cli...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.logout">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell" class="summary-sig-name">setCell</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">cellname</span>)</span><br />
- Calls 'cell <name>' to set the environment variables on
- ONOSbench</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.setCell">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#startOnosCli" class="summary-sig-name">startOnosCli</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ONOSIp</span>,
- <span class="summary-sig-arg">karafTimeout</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">commandlineTimeout</span>=<span class="summary-sig-default">10</span>,
- <span class="summary-sig-arg">onosStartTimeout</span>=<span class="summary-sig-default">60</span>)</span><br />
- karafTimeout is an optional argument.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.startOnosCli">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log" class="summary-sig-name">log</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">cmdStr</span>,
- <span class="summary-sig-arg">level</span>=<span class="summary-sig-default">""</span>)</span><br />
- log the commands in the onos CLI.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.log">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline" class="summary-sig-name">sendline</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">cmdStr</span>,
- <span class="summary-sig-arg">debug</span>=<span class="summary-sig-default">False</span>)</span><br />
- Send a completely user specified string to the onos> prompt.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.sendline">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addNode" class="summary-sig-name">addNode</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">nodeId</span>,
- <span class="summary-sig-arg">ONOSIp</span>,
- <span class="summary-sig-arg">tcpPort</span>=<span class="summary-sig-default">""</span>)</span><br />
- Adds a new cluster node by ID and address information.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.addNode">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#removeNode" class="summary-sig-name">removeNode</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">nodeId</span>)</span><br />
- Removes a cluster by ID...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.removeNode">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#nodes" class="summary-sig-name">nodes</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- List the nodes currently visible...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.nodes">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topology" class="summary-sig-name">topology</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Definition:
- Returns the output of topology command.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.topology">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#featureInstall" class="summary-sig-name">featureInstall</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">featureStr</span>)</span><br />
- Installs a specified feature by issuing command:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.featureInstall">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#featureUninstall" class="summary-sig-name">featureUninstall</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">featureStr</span>)</span><br />
- Uninstalls a specified feature by issuing command:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.featureUninstall">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deviceRemove" class="summary-sig-name">deviceRemove</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">deviceId</span>)</span><br />
- Removes particular device from storage</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.deviceRemove">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#devices" class="summary-sig-name">devices</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Lists all infrastructure devices or switches...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.devices">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="balanceMasters"></a><span class="summary-sig-name">balanceMasters</span>(<span class="summary-sig-arg">self</span>)</span><br />
- This balances the devices across all controllers by issuing command:
- 'onos> onos:balance-masters' If required this could be extended to
- return devices balanced output.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.balanceMasters">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkMasters" class="summary-sig-name">checkMasters</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Returns the output of the masters command.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.checkMasters">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkBalanceMasters" class="summary-sig-name">checkBalanceMasters</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Uses the master command to check that the devices' leadership is
- evenly divided</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.checkBalanceMasters">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#links" class="summary-sig-name">links</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Lists all core links...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.links">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#ports" class="summary-sig-name">ports</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Lists all ports...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.ports">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#roles" class="summary-sig-name">roles</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Lists all devices and the controllers with roles assigned to them...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.roles">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getRole" class="summary-sig-name">getRole</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">deviceId</span>)</span><br />
- Given the a string containing the json representation of the
- "roles" cli command and a partial or whole device id,
- returns a json object containing the roles output for the first
- device whose id contains "device_id"</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getRole">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#rolesNotNull" class="summary-sig-name">rolesNotNull</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Iterates through each device and checks if there is a master assigned...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.rolesNotNull">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#paths" class="summary-sig-name">paths</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">srcId</span>,
- <span class="summary-sig-arg">dstId</span>)</span><br />
- Returns string of paths, and the cost.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.paths">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#hosts" class="summary-sig-name">hosts</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Lists all discovered hosts...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.hosts">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getHost" class="summary-sig-name">getHost</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">mac</span>)</span><br />
- Return the first host from the hosts api whose 'id' contains 'mac'</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getHost">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getHostsId" class="summary-sig-name">getHostsId</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hostList</span>)</span><br />
- Obtain list of hosts
-Issues command: 'onos> hosts'</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getHostsId">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addHostIntent" class="summary-sig-name">addHostIntent</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hostIdOne</span>,
- <span class="summary-sig-arg">hostIdTwo</span>)</span><br />
- Required:
- * hostIdOne: ONOS host id for host1
- * hostIdTwo: ONOS host id for host2
-Description:
- Adds a host-to-host intent ( bidirectional ) by
- specifying the two hosts.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.addHostIntent">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addOpticalIntent" class="summary-sig-name">addOpticalIntent</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ingressDevice</span>,
- <span class="summary-sig-arg">egressDevice</span>)</span><br />
- Required:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.addOpticalIntent">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addPointIntent" class="summary-sig-name">addPointIntent</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ingressDevice</span>,
- <span class="summary-sig-arg">egressDevice</span>,
- <span class="summary-sig-arg">portIngress</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">portEgress</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethType</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">bandwidth</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">lambdaAlloc</span>=<span class="summary-sig-default">False</span>,
- <span class="summary-sig-arg">ipProto</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ipSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ipDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">tcpSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">tcpDst</span>=<span class="summary-sig-default">""</span>)</span><br />
- Required:
- * ingressDevice: device id of ingress device
- * egressDevice: device id of egress device
-Optional:
- * ethType: specify ethType
- * ethSrc: specify ethSrc ( i.e.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.addPointIntent">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addMultipointToSinglepointIntent" class="summary-sig-name">addMultipointToSinglepointIntent</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ingressDeviceList</span>,
- <span class="summary-sig-arg">egressDevice</span>,
- <span class="summary-sig-arg">portIngressList</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">portEgress</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethType</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">bandwidth</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">lambdaAlloc</span>=<span class="summary-sig-default">False</span>,
- <span class="summary-sig-arg">ipProto</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ipSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ipDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">tcpSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">tcpDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">setEthSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">setEthDst</span>=<span class="summary-sig-default">""</span>)</span><br />
- Note:
- This function assumes the format of all ingress devices
- is same.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.addMultipointToSinglepointIntent">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addSinglepointToMultipointIntent" class="summary-sig-name">addSinglepointToMultipointIntent</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ingressDevice</span>,
- <span class="summary-sig-arg">egressDeviceList</span>,
- <span class="summary-sig-arg">portIngress</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">portEgressList</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">ethType</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">bandwidth</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">lambdaAlloc</span>=<span class="summary-sig-default">False</span>,
- <span class="summary-sig-arg">ipProto</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ipSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ipDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">tcpSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">tcpDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">setEthSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">setEthDst</span>=<span class="summary-sig-default">""</span>)</span><br />
- Note:
- This function assumes the format of all egress devices
- is same.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.addSinglepointToMultipointIntent">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addMplsIntent" class="summary-sig-name">addMplsIntent</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ingressDevice</span>,
- <span class="summary-sig-arg">egressDevice</span>,
- <span class="summary-sig-arg">ingressPort</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">egressPort</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethType</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ethDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">bandwidth</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">lambdaAlloc</span>=<span class="summary-sig-default">False</span>,
- <span class="summary-sig-arg">ipProto</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ipSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ipDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">tcpSrc</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">tcpDst</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">ingressLabel</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">egressLabel</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">priority</span>=<span class="summary-sig-default">""</span>)</span><br />
- Required:
- * ingressDevice: device id of ingress device
- * egressDevice: device id of egress device
-Optional:
- * ethType: specify ethType
- * ethSrc: specify ethSrc ( i.e.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.addMplsIntent">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#removeIntent" class="summary-sig-name">removeIntent</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">intentId</span>,
- <span class="summary-sig-arg">app</span>=<span class="summary-sig-default">'org.onosproject.cli'</span>,
- <span class="summary-sig-arg">purge</span>=<span class="summary-sig-default">False</span>,
- <span class="summary-sig-arg">sync</span>=<span class="summary-sig-default">False</span>)</span><br />
- Remove intent for specified application id and intent id
-Optional args:-
--s or --sync: Waits for the removal before returning
--p or --purge: Purge the intent from the store after removal</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.removeIntent">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="purgeWithdrawnIntents"></a><span class="summary-sig-name">purgeWithdrawnIntents</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Purges all WITHDRAWN Intents</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.purgeWithdrawnIntents">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#routes" class="summary-sig-name">routes</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">False</span>)</span><br />
- NOTE: This method should be used after installing application:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.routes">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intents" class="summary-sig-name">intents</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Optional:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.intents">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getIntentState" class="summary-sig-name">getIntentState</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">intentsId</span>,
- <span class="summary-sig-arg">intentsJson</span>=<span class="summary-sig-default">None</span>)</span><br />
- Check intent state.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getIntentState">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkIntentState" class="summary-sig-name">checkIntentState</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">intentsId</span>,
- <span class="summary-sig-arg">expectedState</span>=<span class="summary-sig-default">'INSTALLED'</span>)</span><br />
- Description:
- Check intents state
-Required:
- intentsId - List of intents ID to be checked
-Optional:
- expectedState - Check the expected state(s) of each intents
- state in the list.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.checkIntentState">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#flows" class="summary-sig-name">flows</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Optional:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.flows">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="checkFlowsState"></a><span class="summary-sig-name">checkFlowsState</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Description:
- Check the if all the current flows are in ADDED state or
- PENDING_ADD state
-Return:
- returnValue - Returns main.TRUE only if all flows are in
- ADDED state or PENDING_ADD, return main.FALSE
- otherwise.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.checkFlowsState">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#pushTestIntents" class="summary-sig-name">pushTestIntents</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">dpidSrc</span>,
- <span class="summary-sig-arg">dpidDst</span>,
- <span class="summary-sig-arg">numIntents</span>,
- <span class="summary-sig-arg">numMult</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">appId</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">report</span>=<span class="summary-sig-default">True</span>)</span><br />
- Description:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.pushTestIntents">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intentsEventsMetrics" class="summary-sig-name">intentsEventsMetrics</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Description:Returns topology metrics...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.intentsEventsMetrics">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topologyEventsMetrics" class="summary-sig-name">topologyEventsMetrics</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Description:Returns topology metrics...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.topologyEventsMetrics">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllIntentsId" class="summary-sig-name">getAllIntentsId</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Description:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getAllIntentsId">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="FlowAddedCount"></a><span class="summary-sig-name">FlowAddedCount</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">deviceId</span>)</span><br />
- Determine the number of flow rules for the given device id that are
- in the added state</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.FlowAddedCount">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllDevicesId" class="summary-sig-name">getAllDevicesId</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Use 'devices' function to obtain list of all devices and parse the
- result to obtain a list of all device id's.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getAllDevicesId">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllNodesId" class="summary-sig-name">getAllNodesId</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Uses 'nodes' function to obtain list of all nodes
-and parse the result of nodes to obtain just the
-node id's.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getAllNodesId">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getDevice"></a><span class="summary-sig-name">getDevice</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">dpid</span>=<span class="summary-sig-default">None</span>)</span><br />
- Return the first device from the devices api whose 'id' contains
- 'dpid' Return None if there is no match</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getDevice">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkStatus" class="summary-sig-name">checkStatus</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ip</span>,
- <span class="summary-sig-arg">numoswitch</span>,
- <span class="summary-sig-arg">numolink</span>,
- <span class="summary-sig-arg">logLevel</span>=<span class="summary-sig-default">"info"</span>)</span><br />
- Checks the number of switches & links that ONOS sees against the
-supplied values.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.checkStatus">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deviceRole" class="summary-sig-name">deviceRole</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">deviceId</span>,
- <span class="summary-sig-arg">onosNode</span>,
- <span class="summary-sig-arg">role</span>=<span class="summary-sig-default">"master"</span>)</span><br />
- Calls the device-role cli command.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.deviceRole">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#clusters" class="summary-sig-name">clusters</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Lists all clusters...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.clusters">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestLeader" class="summary-sig-name">electionTestLeader</a>(<span class="summary-sig-arg">self</span>)</span><br />
- CLI command to get the current leader for the Election test application...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.electionTestLeader">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestRun" class="summary-sig-name">electionTestRun</a>(<span class="summary-sig-arg">self</span>)</span><br />
- CLI command to run for leadership of the Election test application.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.electionTestRun">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestWithdraw" class="summary-sig-name">electionTestWithdraw</a>(<span class="summary-sig-arg">self</span>)</span><br />
- * CLI command to withdraw the local node from leadership election for
-* the Election test application.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.electionTestWithdraw">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getDevicePortsEnabledCount"></a><span class="summary-sig-name">getDevicePortsEnabledCount</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">dpid</span>)</span><br />
- Get the count of all enabled ports on a particular device/switch</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getDevicePortsEnabledCount">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getDeviceLinksActiveCount"></a><span class="summary-sig-name">getDeviceLinksActiveCount</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">dpid</span>)</span><br />
- Get the count of all enabled ports on a particular device/switch</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getDeviceLinksActiveCount">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getAllIntentIds"></a><span class="summary-sig-name">getAllIntentIds</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Return a list of all Intent IDs</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getAllIntentIds">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="intentSummary"></a><span class="summary-sig-name">intentSummary</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns a dictionary containing the current intent states and the
- count</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.intentSummary">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#leaders" class="summary-sig-name">leaders</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Returns the output of the leaders command.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.leaders">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#leaderCandidates" class="summary-sig-name">leaderCandidates</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Returns the output of the leaders -c command.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.leaderCandidates">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="specificLeaderCandidate"></a><span class="summary-sig-name">specificLeaderCandidate</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">topic</span>)</span><br />
- Returns a list in format [leader,candidate1,candidate2,...] for a
- given topic parameter and an empty list if the topic doesn't exist If
- no leader is elected leader in the returned list will be
- "none" Returns None if there is a type error processing the
- json object</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.specificLeaderCandidate">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="pendingMap"></a><span class="summary-sig-name">pendingMap</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Returns the output of the intent Pending map.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.pendingMap">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="partitions"></a><span class="summary-sig-name">partitions</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Returns the output of the raft partitions command for ONOS.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.partitions">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#apps" class="summary-sig-name">apps</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Returns the output of the apps command for ONOS.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.apps">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appStatus" class="summary-sig-name">appStatus</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">appName</span>)</span><br />
- Uses the onos:apps cli command to return the status of an application.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.appStatus">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#app" class="summary-sig-name">app</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">appName</span>,
- <span class="summary-sig-arg">option</span>)</span><br />
- Interacts with the app command for ONOS.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.app">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#activateApp" class="summary-sig-name">activateApp</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">appName</span>,
- <span class="summary-sig-arg">check</span>=<span class="summary-sig-default">True</span>)</span><br />
- Activate an app that is already installed in ONOS...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.activateApp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deactivateApp" class="summary-sig-name">deactivateApp</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">appName</span>,
- <span class="summary-sig-arg">check</span>=<span class="summary-sig-default">True</span>)</span><br />
- Deactivate an app that is already activated in ONOS...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.deactivateApp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#uninstallApp" class="summary-sig-name">uninstallApp</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">appName</span>,
- <span class="summary-sig-arg">check</span>=<span class="summary-sig-default">True</span>)</span><br />
- Uninstall an app that is already installed in ONOS...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.uninstallApp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="appIDs"></a><span class="summary-sig-name">appIDs</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Show the mappings between app id and app names given by the 'app-ids'
- cli command</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.appIDs">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appToIDCheck" class="summary-sig-name">appToIDCheck</a>(<span class="summary-sig-arg">self</span>)</span><br />
- This method will check that each application's ID listed in 'apps' is
-the same as the ID listed in 'app-ids'.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.appToIDCheck">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getCfg" class="summary-sig-name">getCfg</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">component</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">propName</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">short</span>=<span class="summary-sig-default">False</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Get configuration settings from onos cli
-Optional arguments:
- component - Optionally only list configurations for a specific
- component.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getCfg">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCfg" class="summary-sig-name">setCfg</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">component</span>,
- <span class="summary-sig-arg">propName</span>,
- <span class="summary-sig-arg">value</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">check</span>=<span class="summary-sig-default">True</span>)</span><br />
- Set/Unset configuration settings from ONOS cli
-Required arguments:
- component - The case sensitive name of the component whose
- property is to be set
- propName - The case sensitive name of the property to be set/unset
-Optional arguments:
- value - The value to set the property to.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.setCfg">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestAdd" class="summary-sig-name">setTestAdd</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">setName</span>,
- <span class="summary-sig-arg">values</span>)</span><br />
- CLI command to add elements to a distributed set.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.setTestAdd">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestRemove" class="summary-sig-name">setTestRemove</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">setName</span>,
- <span class="summary-sig-arg">values</span>,
- <span class="summary-sig-arg">clear</span>=<span class="summary-sig-default">False</span>,
- <span class="summary-sig-arg">retain</span>=<span class="summary-sig-default">False</span>)</span><br />
- CLI command to remove elements from a distributed set.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.setTestRemove">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestGet" class="summary-sig-name">setTestGet</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">setName</span>,
- <span class="summary-sig-arg">values</span>=<span class="summary-sig-default">""</span>)</span><br />
- CLI command to get the elements in a distributed set.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.setTestGet">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestSize" class="summary-sig-name">setTestSize</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">setName</span>)</span><br />
- CLI command to get the elements in a distributed set.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.setTestSize">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counters" class="summary-sig-name">counters</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Command to list the various counters in the system.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.counters">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counterTestAddAndGet" class="summary-sig-name">counterTestAddAndGet</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">counter</span>,
- <span class="summary-sig-arg">delta</span>=<span class="summary-sig-default">1</span>,
- <span class="summary-sig-arg">inMemory</span>=<span class="summary-sig-default">False</span>)</span><br />
- CLI command to add a delta to then get a distributed counter.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.counterTestAddAndGet">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counterTestGetAndAdd" class="summary-sig-name">counterTestGetAndAdd</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">counter</span>,
- <span class="summary-sig-arg">delta</span>=<span class="summary-sig-default">1</span>,
- <span class="summary-sig-arg">inMemory</span>=<span class="summary-sig-default">False</span>)</span><br />
- CLI command to get a distributed counter then add a delta to it.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.counterTestGetAndAdd">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="summary"></a><span class="summary-sig-name">summary</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">jsonFormat</span>=<span class="summary-sig-default">True</span>)</span><br />
- Description: Execute summary command in onos Returns: json object (
- summary -j ), returns main.FALSE if there is no output</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.summary">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>Initialize client</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Creates ssh handle for ONOS cli.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="disconnect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">disconnect</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.disconnect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Called when Test is complete to disconnect the ONOS handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.disconnect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="logout"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">logout</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.logout">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Sends 'logout' command to ONOS cli
-Returns main.TRUE if exited CLI and
- main.FALSE on timeout (not guranteed you are disconnected)
- None on TypeError
- Exits test on unknown error or pexpect exits unexpectedly
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="setCell"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">setCell</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">cellname</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.setCell">source code</a></span>
- </td>
- </tr></table>
-
- <p>Calls 'cell <name>' to set the environment variables on
- ONOSbench</p>
- <p>Before issuing any cli commands, set the environment variable
- first.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="startOnosCli"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">startOnosCli</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ONOSIp</span>,
- <span class="sig-arg">karafTimeout</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">commandlineTimeout</span>=<span class="sig-default">10</span>,
- <span class="sig-arg">onosStartTimeout</span>=<span class="sig-default">60</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.startOnosCli">source code</a></span>
- </td>
- </tr></table>
-
- <p>karafTimeout is an optional argument. karafTimeout value passed by
- user would be used to set the current karaf shell idle timeout. Note that
- when ever this property is modified the shell will exit and the
- subsequent login would reflect new idle timeout. Below is an example to
- start a session with 60 seconds idle timeout ( input value is in
- milliseconds ):</p>
- <p>tValue = "60000" main.ONOScli1.startOnosCli( ONOSIp,
- karafTimeout=tValue )</p>
- <p>Note: karafTimeout is left as str so that this could be read and
- passed to startOnosCli from PARAMS file as str.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="log"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">log</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">cmdStr</span>,
- <span class="sig-arg">level</span>=<span class="sig-default">""</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.log">source code</a></span>
- </td>
- </tr></table>
-
- <p>log the commands in the onos CLI. returns main.TRUE on success
- returns main.FALSE if Error occurred Available level: DEBUG, TRACE, INFO,
- WARN, ERROR Level defaults to INFO</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.log
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="sendline"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">sendline</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">cmdStr</span>,
- <span class="sig-arg">debug</span>=<span class="sig-default">False</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.sendline">source code</a></span>
- </td>
- </tr></table>
-
- <p>Send a completely user specified string to the onos> prompt. Use
- this function if you have a very specific command to send.</p>
- <p>Warning: There are no sanity checking to commands sent using this
- method.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="addNode"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">addNode</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">nodeId</span>,
- <span class="sig-arg">ONOSIp</span>,
- <span class="sig-arg">tcpPort</span>=<span class="sig-default">""</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.addNode">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Adds a new cluster node by ID and address information.
-Required:
- * nodeId
- * ONOSIp
-Optional:
- * tcpPort
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="removeNode"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">removeNode</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">nodeId</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.removeNode">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Removes a cluster by ID
-Issues command: 'remove-node [<node-id>]'
-Required:
- * nodeId
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="nodes"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">nodes</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.nodes">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-List the nodes currently visible
-Issues command: 'nodes'
-Optional argument:
- * jsonFormat - boolean indicating if you want output in json
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="topology"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">topology</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.topology">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Definition:
- Returns the output of topology command.
-Return:
- topology = current ONOS topology
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="featureInstall"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">featureInstall</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">featureStr</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.featureInstall">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Installs a specified feature by issuing command:
- 'feature:install <feature_str>'
-NOTE: This is now deprecated, you should use the activateApp method
- instead
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="featureUninstall"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">featureUninstall</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">featureStr</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.featureUninstall">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Uninstalls a specified feature by issuing command:
- 'feature:uninstall <feature_str>'
-NOTE: This is now deprecated, you should use the deactivateApp method
- instead
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="deviceRemove"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">deviceRemove</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">deviceId</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.deviceRemove">source code</a></span>
- </td>
- </tr></table>
-
- <p>Removes particular device from storage</p>
- <p>TODO: refactor this function</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="devices"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">devices</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.devices">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Lists all infrastructure devices or switches
-Optional argument:
- * jsonFormat - boolean indicating if you want output in json
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="checkMasters"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">checkMasters</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.checkMasters">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Returns the output of the masters command.
-Optional argument:
- * jsonFormat - boolean indicating if you want output in json
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="checkBalanceMasters"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">checkBalanceMasters</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.checkBalanceMasters">source code</a></span>
- </td>
- </tr></table>
-
- <p>Uses the master command to check that the devices' leadership is
- evenly divided</p>
- <p>Dependencies: checkMasters() and summary()</p>
- <p>Returns main.True if the devices are balanced Returns main.False if
- the devices are unbalanced Exits on Exception Returns None on
- TypeError</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="links"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">links</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.links">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Lists all core links
-Optional argument:
- * jsonFormat - boolean indicating if you want output in json
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="ports"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">ports</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.ports">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Lists all ports
-Optional argument:
- * jsonFormat - boolean indicating if you want output in json
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="roles"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">roles</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.roles">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Lists all devices and the controllers with roles assigned to them
-Optional argument:
- * jsonFormat - boolean indicating if you want output in json
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getRole"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getRole</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">deviceId</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getRole">source code</a></span>
- </td>
- </tr></table>
-
- <p>Given the a string containing the json representation of the
- "roles" cli command and a partial or whole device id, returns a
- json object containing the roles output for the first device whose id
- contains "device_id"</p>
- <p>Returns: A dict of the role assignments for the given device or None
- if no match</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="rolesNotNull"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">rolesNotNull</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.rolesNotNull">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Iterates through each device and checks if there is a master assigned
-Returns: main.TRUE if each device has a master
- main.FALSE any device has no master
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="paths"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">paths</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">srcId</span>,
- <span class="sig-arg">dstId</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.paths">source code</a></span>
- </td>
- </tr></table>
-
- <p>Returns string of paths, and the cost. Issues command: onos:paths
- <src> <dst></p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="hosts"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">hosts</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.hosts">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Lists all discovered hosts
-Optional argument:
- * jsonFormat - boolean indicating if you want output in json
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getHost"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getHost</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">mac</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getHost">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Return the first host from the hosts api whose 'id' contains 'mac'
-
-Note: mac must be a colon separated mac address, but could be a
- partial mac address
-
-Return None if there is no match
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getHostsId"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getHostsId</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hostList</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getHostsId">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Obtain list of hosts
-Issues command: 'onos> hosts'
-
-Required:
- * hostList: List of hosts obtained by Mininet
-IMPORTANT:
- This function assumes that you started your
- topology with the option '--mac'.
- Furthermore, it assumes that value of VLAN is '-1'
-Description:
- Converts mininet hosts ( h1, h2, h3... ) into
- ONOS format ( 00:00:00:00:00:01/-1 , ... )
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="addHostIntent"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">addHostIntent</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hostIdOne</span>,
- <span class="sig-arg">hostIdTwo</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.addHostIntent">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Required:
- * hostIdOne: ONOS host id for host1
- * hostIdTwo: ONOS host id for host2
-Description:
- Adds a host-to-host intent ( bidirectional ) by
- specifying the two hosts.
-Returns:
- A string of the intent id or None on Error
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="addOpticalIntent"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">addOpticalIntent</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ingressDevice</span>,
- <span class="sig-arg">egressDevice</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.addOpticalIntent">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Required:
- * ingressDevice: device id of ingress device
- * egressDevice: device id of egress device
-Optional:
- TODO: Still needs to be implemented via dev side
-Description:
- Adds an optical intent by specifying an ingress and egress device
-Returns:
- A string of the intent id or None on error
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="addPointIntent"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">addPointIntent</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ingressDevice</span>,
- <span class="sig-arg">egressDevice</span>,
- <span class="sig-arg">portIngress</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">portEgress</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethType</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">bandwidth</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">lambdaAlloc</span>=<span class="sig-default">False</span>,
- <span class="sig-arg">ipProto</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ipSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ipDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">tcpSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">tcpDst</span>=<span class="sig-default">""</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.addPointIntent">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Required:
- * ingressDevice: device id of ingress device
- * egressDevice: device id of egress device
-Optional:
- * ethType: specify ethType
- * ethSrc: specify ethSrc ( i.e. src mac addr )
- * ethDst: specify ethDst ( i.e. dst mac addr )
- * bandwidth: specify bandwidth capacity of link
- * lambdaAlloc: if True, intent will allocate lambda
- for the specified intent
- * ipProto: specify ip protocol
- * ipSrc: specify ip source address
- * ipDst: specify ip destination address
- * tcpSrc: specify tcp source port
- * tcpDst: specify tcp destination port
-Description:
- Adds a point-to-point intent ( uni-directional ) by
- specifying device id's and optional fields
-Returns:
- A string of the intent id or None on error
-
-NOTE: This function may change depending on the
- options developers provide for point-to-point
- intent via cli
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="addMultipointToSinglepointIntent"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">addMultipointToSinglepointIntent</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ingressDeviceList</span>,
- <span class="sig-arg">egressDevice</span>,
- <span class="sig-arg">portIngressList</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">portEgress</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethType</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">bandwidth</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">lambdaAlloc</span>=<span class="sig-default">False</span>,
- <span class="sig-arg">ipProto</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ipSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ipDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">tcpSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">tcpDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">setEthSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">setEthDst</span>=<span class="sig-default">""</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.addMultipointToSinglepointIntent">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Note:
- This function assumes the format of all ingress devices
- is same. That is, all ingress devices include port numbers
- with a "/" or all ingress devices could specify device
- ids and port numbers seperately.
-Required:
- * ingressDeviceList: List of device ids of ingress device
- ( Atleast 2 ingress devices required in the list )
- * egressDevice: device id of egress device
-Optional:
- * ethType: specify ethType
- * ethSrc: specify ethSrc ( i.e. src mac addr )
- * ethDst: specify ethDst ( i.e. dst mac addr )
- * bandwidth: specify bandwidth capacity of link
- * lambdaAlloc: if True, intent will allocate lambda
- for the specified intent
- * ipProto: specify ip protocol
- * ipSrc: specify ip source address
- * ipDst: specify ip destination address
- * tcpSrc: specify tcp source port
- * tcpDst: specify tcp destination port
- * setEthSrc: action to Rewrite Source MAC Address
- * setEthDst: action to Rewrite Destination MAC Address
-Description:
- Adds a multipoint-to-singlepoint intent ( uni-directional ) by
- specifying device id's and optional fields
-Returns:
- A string of the intent id or None on error
-
-NOTE: This function may change depending on the
- options developers provide for multipoint-to-singlepoint
- intent via cli
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="addSinglepointToMultipointIntent"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">addSinglepointToMultipointIntent</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ingressDevice</span>,
- <span class="sig-arg">egressDeviceList</span>,
- <span class="sig-arg">portIngress</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">portEgressList</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">ethType</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">bandwidth</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">lambdaAlloc</span>=<span class="sig-default">False</span>,
- <span class="sig-arg">ipProto</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ipSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ipDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">tcpSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">tcpDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">setEthSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">setEthDst</span>=<span class="sig-default">""</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.addSinglepointToMultipointIntent">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Note:
- This function assumes the format of all egress devices
- is same. That is, all egress devices include port numbers
- with a "/" or all egress devices could specify device
- ids and port numbers seperately.
-Required:
- * EgressDeviceList: List of device ids of egress device
- ( Atleast 2 eress devices required in the list )
- * ingressDevice: device id of ingress device
-Optional:
- * ethType: specify ethType
- * ethSrc: specify ethSrc ( i.e. src mac addr )
- * ethDst: specify ethDst ( i.e. dst mac addr )
- * bandwidth: specify bandwidth capacity of link
- * lambdaAlloc: if True, intent will allocate lambda
- for the specified intent
- * ipProto: specify ip protocol
- * ipSrc: specify ip source address
- * ipDst: specify ip destination address
- * tcpSrc: specify tcp source port
- * tcpDst: specify tcp destination port
- * setEthSrc: action to Rewrite Source MAC Address
- * setEthDst: action to Rewrite Destination MAC Address
-Description:
- Adds a singlepoint-to-multipoint intent ( uni-directional ) by
- specifying device id's and optional fields
-Returns:
- A string of the intent id or None on error
-
-NOTE: This function may change depending on the
- options developers provide for singlepoint-to-multipoint
- intent via cli
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="addMplsIntent"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">addMplsIntent</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ingressDevice</span>,
- <span class="sig-arg">egressDevice</span>,
- <span class="sig-arg">ingressPort</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">egressPort</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethType</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ethDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">bandwidth</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">lambdaAlloc</span>=<span class="sig-default">False</span>,
- <span class="sig-arg">ipProto</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ipSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ipDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">tcpSrc</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">tcpDst</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">ingressLabel</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">egressLabel</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">priority</span>=<span class="sig-default">""</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.addMplsIntent">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Required:
- * ingressDevice: device id of ingress device
- * egressDevice: device id of egress device
-Optional:
- * ethType: specify ethType
- * ethSrc: specify ethSrc ( i.e. src mac addr )
- * ethDst: specify ethDst ( i.e. dst mac addr )
- * bandwidth: specify bandwidth capacity of link
- * lambdaAlloc: if True, intent will allocate lambda
- for the specified intent
- * ipProto: specify ip protocol
- * ipSrc: specify ip source address
- * ipDst: specify ip destination address
- * tcpSrc: specify tcp source port
- * tcpDst: specify tcp destination port
- * ingressLabel: Ingress MPLS label
- * egressLabel: Egress MPLS label
-Description:
- Adds MPLS intent by
- specifying device id's and optional fields
-Returns:
- A string of the intent id or None on error
-
-NOTE: This function may change depending on the
- options developers provide for MPLS
- intent via cli
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="removeIntent"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">removeIntent</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">intentId</span>,
- <span class="sig-arg">app</span>=<span class="sig-default">'org.onosproject.cli'</span>,
- <span class="sig-arg">purge</span>=<span class="sig-default">False</span>,
- <span class="sig-arg">sync</span>=<span class="sig-default">False</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.removeIntent">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Remove intent for specified application id and intent id
-Optional args:-
--s or --sync: Waits for the removal before returning
--p or --purge: Purge the intent from the store after removal
-
-Returns:
- main.False on error and
- cli output otherwise
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="routes"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">routes</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">False</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.routes">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-NOTE: This method should be used after installing application:
- onos-app-sdnip
-Optional:
- * jsonFormat: enable output formatting in json
-Description:
- Obtain all routes in the system
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="intents"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">intents</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.intents">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Optional:
- * jsonFormat: enable output formatting in json
-Description:
- Obtain intents currently installed
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getIntentState"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getIntentState</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">intentsId</span>,
- <span class="sig-arg">intentsJson</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getIntentState">source code</a></span>
- </td>
- </tr></table>
-
- <p>Check intent state. Accepts a single intent ID (string type) or a list
- of intent IDs. Returns the state(string type) of the id if a single
- intent ID is accepted. Returns a dictionary with intent IDs as the key
- and its corresponding states as the values Parameters: intentId: intent
- ID (string type) intentsJson: parsed json object from the onos:intents
- api Returns: state = An intent's state- INSTALL,WITHDRAWN etc. stateDict
- = Dictionary of intent's state. intent ID as the keys and state as the
- values.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="checkIntentState"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">checkIntentState</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">intentsId</span>,
- <span class="sig-arg">expectedState</span>=<span class="sig-default">'INSTALLED'</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.checkIntentState">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Check intents state
-Required:
- intentsId - List of intents ID to be checked
-Optional:
- expectedState - Check the expected state(s) of each intents
- state in the list.
- *NOTE: You can pass in a list of expected state,
- Eg: expectedState = [ 'INSTALLED' , 'INSTALLING' ]
-Return:
- Returns main.TRUE only if all intent are the same as expected states
- , otherwise, returns main.FALSE.
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="flows"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">flows</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.flows">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Optional:
- * jsonFormat: enable output formatting in json
-Description:
- Obtain flows currently installed
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="pushTestIntents"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">pushTestIntents</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">dpidSrc</span>,
- <span class="sig-arg">dpidDst</span>,
- <span class="sig-arg">numIntents</span>,
- <span class="sig-arg">numMult</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">appId</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">report</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.pushTestIntents">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Push a number of intents in a batch format to
- a specific point-to-point intent definition
-Required:
- * dpidSrc: specify source dpid
- * dpidDst: specify destination dpid
- * numIntents: specify number of intents to push
-Optional:
- * numMult: number multiplier for multiplying
- the number of intents specified
- * appId: specify the application id init to further
- modularize the intents
- * report: default True, returns latency information
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="intentsEventsMetrics"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">intentsEventsMetrics</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.intentsEventsMetrics">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:Returns topology metrics
-Optional:
- * jsonFormat: enable json formatting of output
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="topologyEventsMetrics"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">topologyEventsMetrics</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.topologyEventsMetrics">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:Returns topology metrics
-Optional:
- * jsonFormat: enable json formatting of output
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getAllIntentsId"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getAllIntentsId</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getAllIntentsId">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Obtain all intent id's in a list
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getAllDevicesId"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getAllDevicesId</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getAllDevicesId">source code</a></span>
- </td>
- </tr></table>
-
- <p>Use 'devices' function to obtain list of all devices and parse the
- result to obtain a list of all device id's. Returns this list. Returns
- empty list if no devices exist List is ordered sequentially</p>
- <p>This function may be useful if you are not sure of the device id, and
- wish to execute other commands using the ids. By obtaining the list of
- device ids on the fly, you can iterate through the list to get
- mastership, etc.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getAllNodesId"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getAllNodesId</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getAllNodesId">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Uses 'nodes' function to obtain list of all nodes
-and parse the result of nodes to obtain just the
-node id's.
-Returns:
- list of node id's
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="checkStatus"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">checkStatus</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ip</span>,
- <span class="sig-arg">numoswitch</span>,
- <span class="sig-arg">numolink</span>,
- <span class="sig-arg">logLevel</span>=<span class="sig-default">"info"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.checkStatus">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Checks the number of switches & links that ONOS sees against the
-supplied values. By default this will report to main.log, but the
-log level can be specified.
-
-Params: ip = ip used for the onos cli
- numoswitch = expected number of switches
- numolink = expected number of links
- logLevel = level to log to. Currently accepts
- 'info', 'warn' and 'report'
-
-
-logLevel can
-
-Returns: main.TRUE if the number of switches and links are correct,
- main.FALSE if the number of switches and links is incorrect,
- and main.ERROR otherwise
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="deviceRole"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">deviceRole</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">deviceId</span>,
- <span class="sig-arg">onosNode</span>,
- <span class="sig-arg">role</span>=<span class="sig-default">"master"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.deviceRole">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Calls the device-role cli command.
-deviceId must be the id of a device as seen in the onos devices command
-onosNode is the ip of one of the onos nodes in the cluster
-role must be either master, standby, or none
-
-Returns:
- main.TRUE or main.FALSE based on argument verification and
- main.ERROR if command returns and error
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="clusters"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">clusters</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.clusters">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Lists all clusters
-Optional argument:
- * jsonFormat - boolean indicating if you want output in json
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="electionTestLeader"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">electionTestLeader</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.electionTestLeader">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-CLI command to get the current leader for the Election test application
-NOTE: Requires installation of the onos-app-election feature
-Returns: Node IP of the leader if one exists
- None if none exists
- Main.FALSE on error
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="electionTestRun"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">electionTestRun</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.electionTestRun">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-CLI command to run for leadership of the Election test application.
-NOTE: Requires installation of the onos-app-election feature
-Returns: Main.TRUE on success
- Main.FALSE on error
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="electionTestWithdraw"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">electionTestWithdraw</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.electionTestWithdraw">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-* CLI command to withdraw the local node from leadership election for
-* the Election test application.
-#NOTE: Requires installation of the onos-app-election feature
-Returns: Main.TRUE on success
- Main.FALSE on error
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="leaders"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">leaders</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.leaders">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Returns the output of the leaders command.
-Optional argument:
- * jsonFormat - boolean indicating if you want output in json
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="leaderCandidates"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">leaderCandidates</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.leaderCandidates">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Returns the output of the leaders -c command.
-Optional argument:
- * jsonFormat - boolean indicating if you want output in json
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="apps"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">apps</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.apps">source code</a></span>
- </td>
- </tr></table>
-
- <p>Returns the output of the apps command for ONOS. This command lists
- information about installed ONOS applications</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="appStatus"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">appStatus</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">appName</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.appStatus">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Uses the onos:apps cli command to return the status of an application.
-Returns:
- "ACTIVE" - If app is installed and activated
- "INSTALLED" - If app is installed and deactivated
- "UNINSTALLED" - If app is not installed
- None - on error
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="app"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">app</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">appName</span>,
- <span class="sig-arg">option</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.app">source code</a></span>
- </td>
- </tr></table>
-
- <p>Interacts with the app command for ONOS. This command manages
- application inventory.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="activateApp"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">activateApp</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">appName</span>,
- <span class="sig-arg">check</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.activateApp">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Activate an app that is already installed in ONOS
-appName is the hierarchical app name, not the feature name
-If check is True, method will check the status of the app after the
-command is issued
-Returns main.TRUE if the command was successfully sent
- main.FALSE if the cli responded with an error or given
- incorrect input
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="deactivateApp"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">deactivateApp</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">appName</span>,
- <span class="sig-arg">check</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.deactivateApp">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Deactivate an app that is already activated in ONOS
-appName is the hierarchical app name, not the feature name
-If check is True, method will check the status of the app after the
-command is issued
-Returns main.TRUE if the command was successfully sent
- main.FALSE if the cli responded with an error or given
- incorrect input
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="uninstallApp"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">uninstallApp</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">appName</span>,
- <span class="sig-arg">check</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.uninstallApp">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Uninstall an app that is already installed in ONOS
-appName is the hierarchical app name, not the feature name
-If check is True, method will check the status of the app after the
-command is issued
-Returns main.TRUE if the command was successfully sent
- main.FALSE if the cli responded with an error or given
- incorrect input
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="appToIDCheck"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">appToIDCheck</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.appToIDCheck">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-This method will check that each application's ID listed in 'apps' is
-the same as the ID listed in 'app-ids'. The check will also check that
-there are no duplicate IDs issued. Note that an app ID should be
-a globaly unique numerical identifier for app/app-like features. Once
-an ID is registered, the ID is never freed up so that if an app is
-reinstalled it will have the same ID.
-
-Returns: main.TRUE if the check passes and
- main.FALSE if the check fails or
- main.ERROR if there is some error in processing the test
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getCfg"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getCfg</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">component</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">propName</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">short</span>=<span class="sig-default">False</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.getCfg">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Get configuration settings from onos cli
-Optional arguments:
- component - Optionally only list configurations for a specific
- component. If None, all components with configurations
- are displayed. Case Sensitive string.
- propName - If component is specified, propName option will show
- only this specific configuration from that component.
- Case Sensitive string.
- jsonFormat - Returns output as json. Note that this will override
- the short option
- short - Short, less verbose, version of configurations.
- This is overridden by the json option
-returns:
- Output from cli as a string or None on error
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="setCfg"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">setCfg</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">component</span>,
- <span class="sig-arg">propName</span>,
- <span class="sig-arg">value</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">check</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.setCfg">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Set/Unset configuration settings from ONOS cli
-Required arguments:
- component - The case sensitive name of the component whose
- property is to be set
- propName - The case sensitive name of the property to be set/unset
-Optional arguments:
- value - The value to set the property to. If None, will unset the
- property and revert it to it's default value(if applicable)
- check - Boolean, Check whether the option was successfully set this
- only applies when a value is given.
-returns:
- main.TRUE on success or main.FALSE on failure. If check is False,
- will return main.TRUE unless there is an error
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="setTestAdd"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">setTestAdd</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">setName</span>,
- <span class="sig-arg">values</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.setTestAdd">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-CLI command to add elements to a distributed set.
-Arguments:
- setName - The name of the set to add to.
- values - The value(s) to add to the set, space seperated.
-Example usages:
- setTestAdd( "set1", "a b c" )
- setTestAdd( "set2", "1" )
-returns:
- main.TRUE on success OR
- main.FALSE if elements were already in the set OR
- main.ERROR on error
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="setTestRemove"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">setTestRemove</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">setName</span>,
- <span class="sig-arg">values</span>,
- <span class="sig-arg">clear</span>=<span class="sig-default">False</span>,
- <span class="sig-arg">retain</span>=<span class="sig-default">False</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.setTestRemove">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-CLI command to remove elements from a distributed set.
-Required arguments:
- setName - The name of the set to remove from.
- values - The value(s) to remove from the set, space seperated.
-Optional arguments:
- clear - Clear all elements from the set
- retain - Retain only the given values. (intersection of the
- original set and the given set)
-returns:
- main.TRUE on success OR
- main.FALSE if the set was not changed OR
- main.ERROR on error
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="setTestGet"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">setTestGet</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">setName</span>,
- <span class="sig-arg">values</span>=<span class="sig-default">""</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.setTestGet">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-CLI command to get the elements in a distributed set.
-Required arguments:
- setName - The name of the set to remove from.
-Optional arguments:
- values - The value(s) to check if in the set, space seperated.
-returns:
- main.ERROR on error OR
- A list of elements in the set if no optional arguments are
- supplied OR
- A tuple containing the list then:
- main.FALSE if the given values are not in the set OR
- main.TRUE if the given values are in the set OR
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="setTestSize"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">setTestSize</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">setName</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.setTestSize">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-CLI command to get the elements in a distributed set.
-Required arguments:
- setName - The name of the set to remove from.
-returns:
- The integer value of the size returned or
- None on error
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="counters"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">counters</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">jsonFormat</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.counters">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Command to list the various counters in the system.
-returns:
- if jsonFormat, a string of the json object returned by the cli
- command
- if not jsonFormat, the normal string output of the cli command
- None on error
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="counterTestAddAndGet"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">counterTestAddAndGet</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">counter</span>,
- <span class="sig-arg">delta</span>=<span class="sig-default">1</span>,
- <span class="sig-arg">inMemory</span>=<span class="sig-default">False</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.counterTestAddAndGet">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-CLI command to add a delta to then get a distributed counter.
-Required arguments:
- counter - The name of the counter to increment.
-Optional arguments:
- delta - The long to add to the counter
- inMemory - use in memory map for the counter
-returns:
- integer value of the counter or
- None on Error
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="counterTestGetAndAdd"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">counterTestGetAndAdd</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">counter</span>,
- <span class="sig-arg">delta</span>=<span class="sig-default">1</span>,
- <span class="sig-arg">inMemory</span>=<span class="sig-default">False</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosclidriver-pysrc.html#OnosCliDriver.counterTestGetAndAdd">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-CLI command to get a distributed counter then add a delta to it.
-Required arguments:
- counter - The name of the counter to increment.
-Optional arguments:
- delta - The long to add to the counter
- inMemory - use in memory map for the counter
-returns:
- integer value of the counter or
- None on Error
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosdriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosdriver-module.html
deleted file mode 100644
index 9b4ed34..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosdriver-module.html
+++ /dev/null
@@ -1,151 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.onosdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Module onosdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.onosdriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module onosdriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html">source code</a></span></p>
-<p>This driver interacts with ONOS bench, the OSGi platform that
- configures the ONOS nodes. ( aka ONOS-next )</p>
- <p>Please follow the coding style demonstrated by existing functions and
- document properly.</p>
- <p>If you are a contributor to the driver, please list your email here
- for future contact:</p>
- <p>jhall@onlab.us andrew@onlab.us</p>
- <p>OCT 9 2014</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html" class="summary-name">OnosDriver</a>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosdriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosdriver-pysrc.html
deleted file mode 100644
index 0ef1bea..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosdriver-pysrc.html
+++ /dev/null
@@ -1,2462 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.onosdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Module onosdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.onosdriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.onosdriver-module.html">Module TestON.drivers.common.cli.onosdriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring">This driver interacts with ONOS bench, the OSGi platform</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">that configures the ONOS nodes. ( aka ONOS-next )</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring">Please follow the coding style demonstrated by existing</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring">functions and document properly.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring">If you are a contributor to the driver, please</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring">list your email here for future contact:</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring">jhall@onlab.us</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring">andrew@onlab.us</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring">OCT 9 2014</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">types</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">pexpect</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-0', 'path', 'link-0');">path</a></tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">requests</tt><tt class="py-op">.</tt><tt class="py-name">models</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Response</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-1" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-1', 'drivers', 'link-1');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-2', 'common', 'link-2');">common</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module TestON.drivers.common.clidriver=TestON.drivers.common.clidriver-module.html"><a title="TestON.drivers.common.clidriver" class="py-name" href="#" onclick="return doclink('link-3', 'clidriver', 'link-3');">clidriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class TestON.bin.cli.CLI=TestON.bin.cli.CLI-class.html,Class TestON.drivers.common.clidriver.CLI=TestON.drivers.common.clidriver.CLI-class.html"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-4', 'CLI', 'link-4');">CLI</a></tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver"></a><div id="OnosDriver-def"><a name="L28"></a><tt class="py-lineno"> 28</tt> <a class="py-toggle" href="#" id="OnosDriver-toggle" onclick="return toggle('OnosDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">CLI</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="OnosDriver-expanded"><a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.__init__"></a><div id="OnosDriver.__init__-def"><a name="L30"></a><tt class="py-lineno"> 30</tt> <a class="py-toggle" href="#" id="OnosDriver.__init__-toggle" onclick="return toggle('OnosDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.__init__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.__init__-expanded"><a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring"> Initialize client</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-5" class="py-name"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-5', 'CLI', 'link-4');">CLI</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-6', '__init__', 'link-6');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.connect"></a><div id="OnosDriver.connect-def"><a name="L39"></a><tt class="py-lineno"> 39</tt> <a class="py-toggle" href="#" id="OnosDriver.connect-toggle" onclick="return toggle('OnosDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.connect-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.connect-expanded"><a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring"> Creates ssh handle for ONOS "bench".</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring"> NOTE:</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-docstring"> The ip_address would come from the topo file using the host tag, the</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring"> value can be an environment variable as well as a "localhost" to get</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> the ip address needed to ssh to the "bench"</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">=</tt> <tt class="py-string">"~/onos"</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">key</tt> <tt class="py-op">==</tt> <tt class="py-string">"home"</tt><tt class="py-op">:</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'home'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">==</tt> <tt class="py-string">""</tt><tt class="py-op">:</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">=</tt> <tt class="py-string">"~/onos"</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-comment"># The 'nodes' tag is optional and it is not required in .topo file</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">key</tt> <tt class="py-op">==</tt> <tt class="py-string">"nodes"</tt><tt class="py-op">:</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-comment"># Maximum number of ONOS nodes to run, if there is any</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'nodes'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">==</tt> <tt class="py-string">""</tt><tt class="py-op">:</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-number">100</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-comment"># Grabs all OC environment variables based on max number of nodes</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">onosIps</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> <tt class="py-comment"># Dictionary of all possible ONOS ip</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt><tt class="py-op">:</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">envString</tt> <tt class="py-op">=</tt> <tt class="py-string">"OC"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-comment"># If there is no more OC# then break the loop</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">getenv</tt><tt class="py-op">(</tt> <tt class="py-name">envString</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">onosIps</tt><tt class="py-op">[</tt> <tt class="py-name">envString</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">getenv</tt><tt class="py-op">(</tt> <tt class="py-name">envString</tt> <tt class="py-op">)</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">onosIps</tt> <tt class="py-op">)</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-7', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-string">": Created cluster data with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-string">" maximum number"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-string">" of nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">onosIps</tt><tt class="py-op">:</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-8', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Could not read any environment variable"</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" please load a cell file with all"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-string">" onos IP"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Found "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">onosIps</tt><tt class="py-op">.</tt><tt class="py-name">values</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-string">" ONOS IPs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno"> 100</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">:</tt> </tt>
-<a name="L101"></a><tt class="py-lineno"> 101</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-10', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Invalid environment variable"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L102"></a><tt class="py-lineno"> 102</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">inst</tt><tt class="py-op">:</tt> </tt>
-<a name="L103"></a><tt class="py-lineno"> 103</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-11', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-12', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Uncaught exception: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">inst</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno"> 104</tt> <tt class="py-line"> </tt>
-<a name="L105"></a><tt class="py-lineno"> 105</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L106"></a><tt class="py-lineno"> 106</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">getenv</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L107"></a><tt class="py-lineno"> 107</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">getenv</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno"> 108</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L109"></a><tt class="py-lineno"> 109</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-13', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L110"></a><tt class="py-lineno"> 110</tt> <tt class="py-line"> <tt class="py-string">": Trying to connect to "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L111"></a><tt class="py-lineno"> 111</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno"> 112</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">:</tt> </tt>
-<a name="L113"></a><tt class="py-lineno"> 113</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-14', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Invalid host name,"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L114"></a><tt class="py-lineno"> 114</tt> <tt class="py-line"> <tt class="py-string">" connecting to local host instead"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno"> 115</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">=</tt> <tt class="py-string">'localhost'</tt> </tt>
-<a name="L116"></a><tt class="py-lineno"> 116</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">inst</tt><tt class="py-op">:</tt> </tt>
-<a name="L117"></a><tt class="py-lineno"> 117</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-15', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-16', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Uncaught exception: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">inst</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno"> 118</tt> <tt class="py-line"> </tt>
-<a name="L119"></a><tt class="py-lineno"> 119</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-17" class="py-name" targets="Class TestON.drivers.common.cli.onosdriver.OnosDriver=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver" class="py-name" href="#" onclick="return doclink('link-17', 'OnosDriver', 'link-17');">OnosDriver</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-18', 'connect', 'link-18');">connect</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L120"></a><tt class="py-lineno"> 120</tt> <tt class="py-line"> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L121"></a><tt class="py-lineno"> 121</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L122"></a><tt class="py-lineno"> 122</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt><tt class="py-op">,</tt> </tt>
-<a name="L123"></a><tt class="py-lineno"> 123</tt> <tt class="py-line"> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt><tt class="py-op">,</tt> </tt>
-<a name="L124"></a><tt class="py-lineno"> 124</tt> <tt class="py-line"> <tt class="py-name">home</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">)</tt> </tt>
-<a name="L125"></a><tt class="py-lineno"> 125</tt> <tt class="py-line"> </tt>
-<a name="L126"></a><tt class="py-lineno"> 126</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L127"></a><tt class="py-lineno"> 127</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-19', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cd "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">)</tt> </tt>
-<a name="L128"></a><tt class="py-lineno"> 128</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno"> 129</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-<a name="L130"></a><tt class="py-lineno"> 130</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L131"></a><tt class="py-lineno"> 131</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-20', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to create ONOS handle"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno"> 132</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L133"></a><tt class="py-lineno"> 133</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L134"></a><tt class="py-lineno"> 134</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-21', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-22', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno"> 135</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-23', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-24', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno"> 136</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name" targets="Method TestON.core.teston.TestON.cleanup()=TestON.core.teston.TestON-class.html#cleanup"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-25', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno"> 137</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-26', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L138"></a><tt class="py-lineno"> 138</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L139"></a><tt class="py-lineno"> 139</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-27', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L140"></a><tt class="py-lineno"> 140</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-28', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno"> 141</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-29', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L142"></a><tt class="py-lineno"> 142</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.disconnect"></a><div id="OnosDriver.disconnect-def"><a name="L143"></a><tt class="py-lineno"> 143</tt> <a class="py-toggle" href="#" id="OnosDriver.disconnect-toggle" onclick="return toggle('OnosDriver.disconnect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#disconnect">disconnect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.disconnect-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.disconnect-expanded"><a name="L144"></a><tt class="py-lineno"> 144</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L145"></a><tt class="py-lineno"> 145</tt> <tt class="py-line"><tt class="py-docstring"> Called when Test is complete to disconnect the ONOS handle.</tt> </tt>
-<a name="L146"></a><tt class="py-lineno"> 146</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L147"></a><tt class="py-lineno"> 147</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L148"></a><tt class="py-lineno"> 148</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L149"></a><tt class="py-lineno"> 149</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L150"></a><tt class="py-lineno"> 150</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-30', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno"> 151</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno"> 152</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-31', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"exit"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno"> 153</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"closed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno"> 154</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L155"></a><tt class="py-lineno"> 155</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-32', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-33', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno"> 156</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-34', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-35', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L157"></a><tt class="py-lineno"> 157</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">ValueError</tt><tt class="py-op">:</tt> </tt>
-<a name="L158"></a><tt class="py-lineno"> 158</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-36', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Exception in disconnect of "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> </tt>
-<a name="L159"></a><tt class="py-lineno"> 159</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L160"></a><tt class="py-lineno"> 160</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L161"></a><tt class="py-lineno"> 161</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-37', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L162"></a><tt class="py-lineno"> 162</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L163"></a><tt class="py-lineno"> 163</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-</div><a name="L164"></a><tt class="py-lineno"> 164</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.getEpochMs"></a><div id="OnosDriver.getEpochMs-def"><a name="L165"></a><tt class="py-lineno"> 165</tt> <a class="py-toggle" href="#" id="OnosDriver.getEpochMs-toggle" onclick="return toggle('OnosDriver.getEpochMs');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getEpochMs">getEpochMs</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.getEpochMs-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.getEpochMs-expanded"><a name="L166"></a><tt class="py-lineno"> 166</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L167"></a><tt class="py-lineno"> 167</tt> <tt class="py-line"><tt class="py-docstring"> Returns milliseconds since epoch</tt> </tt>
-<a name="L168"></a><tt class="py-lineno"> 168</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L169"></a><tt class="py-lineno"> 169</tt> <tt class="py-line"><tt class="py-docstring"> When checking multiple nodes in a for loop,</tt> </tt>
-<a name="L170"></a><tt class="py-lineno"> 170</tt> <tt class="py-line"><tt class="py-docstring"> around a hundred milliseconds of difference (ascending) is</tt> </tt>
-<a name="L171"></a><tt class="py-lineno"> 171</tt> <tt class="py-line"><tt class="py-docstring"> generally acceptable due to calltime of the function.</tt> </tt>
-<a name="L172"></a><tt class="py-lineno"> 172</tt> <tt class="py-line"><tt class="py-docstring"> Few seconds, however, is not and it means clocks</tt> </tt>
-<a name="L173"></a><tt class="py-lineno"> 173</tt> <tt class="py-line"><tt class="py-docstring"> are off sync.</tt> </tt>
-<a name="L174"></a><tt class="py-lineno"> 174</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L175"></a><tt class="py-lineno"> 175</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L176"></a><tt class="py-lineno"> 176</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-38', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">'date +%s.%N'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno"> 177</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">'date \+\%s\.\%N'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L178"></a><tt class="py-lineno"> 178</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">'\$'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L179"></a><tt class="py-lineno"> 179</tt> <tt class="py-line"> <tt class="py-name">epochMs</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L180"></a><tt class="py-lineno"> 180</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">epochMs</tt> </tt>
-<a name="L181"></a><tt class="py-lineno"> 181</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L182"></a><tt class="py-lineno"> 182</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-39', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">'Uncaught exception getting epoch time'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L183"></a><tt class="py-lineno"> 183</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-40', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L184"></a><tt class="py-lineno"> 184</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-41', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L185"></a><tt class="py-lineno"> 185</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.onosPackage"></a><div id="OnosDriver.onosPackage-def"><a name="L186"></a><tt class="py-lineno"> 186</tt> <a class="py-toggle" href="#" id="OnosDriver.onosPackage-toggle" onclick="return toggle('OnosDriver.onosPackage');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage">onosPackage</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">opTimeout</tt><tt class="py-op">=</tt><tt class="py-number">30</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.onosPackage-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.onosPackage-expanded"><a name="L187"></a><tt class="py-lineno"> 187</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L188"></a><tt class="py-lineno"> 188</tt> <tt class="py-line"><tt class="py-docstring"> Produce a self-contained tar.gz file that can be deployed</tt> </tt>
-<a name="L189"></a><tt class="py-lineno"> 189</tt> <tt class="py-line"><tt class="py-docstring"> and executed on any platform with Java 7 JRE.</tt> </tt>
-<a name="L190"></a><tt class="py-lineno"> 190</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L191"></a><tt class="py-lineno"> 191</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L192"></a><tt class="py-lineno"> 192</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-42', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos-package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L193"></a><tt class="py-lineno"> 193</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"onos-package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L194"></a><tt class="py-lineno"> 194</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"tar.gz"</tt><tt class="py-op">,</tt> <tt class="py-name">opTimeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L195"></a><tt class="py-lineno"> 195</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L196"></a><tt class="py-lineno"> 196</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-43', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"onos-package command returned: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L197"></a><tt class="py-lineno"> 197</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">)</tt> </tt>
-<a name="L198"></a><tt class="py-lineno"> 198</tt> <tt class="py-line"> <tt class="py-comment"># As long as the sendline does not time out,</tt> </tt>
-<a name="L199"></a><tt class="py-lineno"> 199</tt> <tt class="py-line"> <tt class="py-comment"># return true. However, be careful to interpret</tt> </tt>
-<a name="L200"></a><tt class="py-lineno"> 200</tt> <tt class="py-line"> <tt class="py-comment"># the results of the onos-package command return</tt> </tt>
-<a name="L201"></a><tt class="py-lineno"> 201</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L202"></a><tt class="py-lineno"> 202</tt> <tt class="py-line"> </tt>
-<a name="L203"></a><tt class="py-lineno"> 203</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L204"></a><tt class="py-lineno"> 204</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-44', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-45', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno"> 205</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-46', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-47', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L206"></a><tt class="py-lineno"> 206</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L207"></a><tt class="py-lineno"> 207</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-48', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to package ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L208"></a><tt class="py-lineno"> 208</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-49', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno"> 209</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-50', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L210"></a><tt class="py-lineno"> 210</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.onosBuild"></a><div id="OnosDriver.onosBuild-def"><a name="L211"></a><tt class="py-lineno"> 211</tt> <a class="py-toggle" href="#" id="OnosDriver.onosBuild-toggle" onclick="return toggle('OnosDriver.onosBuild');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosBuild">onosBuild</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.onosBuild-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.onosBuild-expanded"><a name="L212"></a><tt class="py-lineno"> 212</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L213"></a><tt class="py-lineno"> 213</tt> <tt class="py-line"><tt class="py-docstring"> Use the pre defined script to build onos via mvn</tt> </tt>
-<a name="L214"></a><tt class="py-lineno"> 214</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L215"></a><tt class="py-lineno"> 215</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L216"></a><tt class="py-lineno"> 216</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-51', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos-build"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L217"></a><tt class="py-lineno"> 217</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"onos-build"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L218"></a><tt class="py-lineno"> 218</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L219"></a><tt class="py-lineno"> 219</tt> <tt class="py-line"> <tt class="py-string">"BUILD SUCCESS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L220"></a><tt class="py-lineno"> 220</tt> <tt class="py-line"> <tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> </tt>
-<a name="L221"></a><tt class="py-lineno"> 221</tt> <tt class="py-line"> <tt class="py-string">"BUILD FAILED"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L222"></a><tt class="py-lineno"> 222</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L223"></a><tt class="py-lineno"> 223</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L224"></a><tt class="py-lineno"> 224</tt> <tt class="py-line"> </tt>
-<a name="L225"></a><tt class="py-lineno"> 225</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-52', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"onos-build command returned: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L226"></a><tt class="py-lineno"> 226</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">)</tt> </tt>
-<a name="L227"></a><tt class="py-lineno"> 227</tt> <tt class="py-line"> </tt>
-<a name="L228"></a><tt class="py-lineno"> 228</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L229"></a><tt class="py-lineno"> 229</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L230"></a><tt class="py-lineno"> 230</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L231"></a><tt class="py-lineno"> 231</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L232"></a><tt class="py-lineno"> 232</tt> <tt class="py-line"> </tt>
-<a name="L233"></a><tt class="py-lineno"> 233</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L234"></a><tt class="py-lineno"> 234</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-53', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-54', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L235"></a><tt class="py-lineno"> 235</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-55', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-56', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L236"></a><tt class="py-lineno"> 236</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L237"></a><tt class="py-lineno"> 237</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-57', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to build ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L238"></a><tt class="py-lineno"> 238</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-58', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L239"></a><tt class="py-lineno"> 239</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-59', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L240"></a><tt class="py-lineno"> 240</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.cleanInstall"></a><div id="OnosDriver.cleanInstall-def"><a name="L241"></a><tt class="py-lineno"> 241</tt> <a class="py-toggle" href="#" id="OnosDriver.cleanInstall-toggle" onclick="return toggle('OnosDriver.cleanInstall');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cleanInstall">cleanInstall</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">skipTest</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> <tt class="py-param">mciTimeout</tt><tt class="py-op">=</tt><tt class="py-number">600</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.cleanInstall-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.cleanInstall-expanded"><a name="L242"></a><tt class="py-lineno"> 242</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L243"></a><tt class="py-lineno"> 243</tt> <tt class="py-line"><tt class="py-docstring"> Runs mvn clean install in the root of the ONOS directory.</tt> </tt>
-<a name="L244"></a><tt class="py-lineno"> 244</tt> <tt class="py-line"><tt class="py-docstring"> This will clean all ONOS artifacts then compile each module</tt> </tt>
-<a name="L245"></a><tt class="py-lineno"> 245</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L246"></a><tt class="py-lineno"> 246</tt> <tt class="py-line"><tt class="py-docstring"> skipTest - Does "-DskipTests -Dcheckstyle.skip -U -T 1C" which</tt> </tt>
-<a name="L247"></a><tt class="py-lineno"> 247</tt> <tt class="py-line"><tt class="py-docstring"> skip the test. This will make the building faster.</tt> </tt>
-<a name="L248"></a><tt class="py-lineno"> 248</tt> <tt class="py-line"><tt class="py-docstring"> Disregarding the credibility of the build</tt> </tt>
-<a name="L249"></a><tt class="py-lineno"> 249</tt> <tt class="py-line"><tt class="py-docstring"> Returns: main.TRUE on success</tt> </tt>
-<a name="L250"></a><tt class="py-lineno"> 250</tt> <tt class="py-line"><tt class="py-docstring"> On Failure, exits the test</tt> </tt>
-<a name="L251"></a><tt class="py-lineno"> 251</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L252"></a><tt class="py-lineno"> 252</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L253"></a><tt class="py-lineno"> 253</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-60', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Running 'mvn clean install' on "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L254"></a><tt class="py-lineno"> 254</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L255"></a><tt class="py-lineno"> 255</tt> <tt class="py-line"> <tt class="py-string">". This may take some time."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L256"></a><tt class="py-lineno"> 256</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-61', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cd "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">)</tt> </tt>
-<a name="L257"></a><tt class="py-lineno"> 257</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L258"></a><tt class="py-lineno"> 258</tt> <tt class="py-line"> </tt>
-<a name="L259"></a><tt class="py-lineno"> 259</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-62', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno"> 260</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno"> 261</tt> <tt class="py-line"> </tt>
-<a name="L262"></a><tt class="py-lineno"> 262</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">skipTest</tt><tt class="py-op">:</tt> </tt>
-<a name="L263"></a><tt class="py-lineno"> 263</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-63', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"mvn clean install"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L264"></a><tt class="py-lineno"> 264</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mvn clean install"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L265"></a><tt class="py-lineno"> 265</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L266"></a><tt class="py-lineno"> 266</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-64', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"mvn clean install -DskipTests"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L267"></a><tt class="py-lineno"> 267</tt> <tt class="py-line"> <tt class="py-string">" -Dcheckstyle.skip -U -T 1C"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L268"></a><tt class="py-lineno"> 268</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mvn clean install -DskipTests"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L269"></a><tt class="py-lineno"> 269</tt> <tt class="py-line"> <tt class="py-string">" -Dcheckstyle.skip -U -T 1C"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L270"></a><tt class="py-lineno"> 270</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L271"></a><tt class="py-lineno"> 271</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L272"></a><tt class="py-lineno"> 272</tt> <tt class="py-line"> <tt class="py-string">'There\sis\sinsufficient\smemory\sfor\sthe\sJava\s'</tt> <tt class="py-op">+</tt> </tt>
-<a name="L273"></a><tt class="py-lineno"> 273</tt> <tt class="py-line"> <tt class="py-string">'Runtime\sEnvironment\sto\scontinue'</tt><tt class="py-op">,</tt> </tt>
-<a name="L274"></a><tt class="py-lineno"> 274</tt> <tt class="py-line"> <tt class="py-string">'BUILD\sFAILURE'</tt><tt class="py-op">,</tt> </tt>
-<a name="L275"></a><tt class="py-lineno"> 275</tt> <tt class="py-line"> <tt class="py-string">'BUILD\sSUCCESS'</tt><tt class="py-op">,</tt> </tt>
-<a name="L276"></a><tt class="py-lineno"> 276</tt> <tt class="py-line"> <tt class="py-string">'onos\$'</tt><tt class="py-op">,</tt> <tt class="py-comment">#TODO: fix this to be more generic?</tt> </tt>
-<a name="L277"></a><tt class="py-lineno"> 277</tt> <tt class="py-line"> <tt class="py-string">'ONOS\$'</tt><tt class="py-op">,</tt> </tt>
-<a name="L278"></a><tt class="py-lineno"> 278</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">mciTimeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L279"></a><tt class="py-lineno"> 279</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L280"></a><tt class="py-lineno"> 280</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-65', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-66', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">":There is insufficient memory \</tt> </tt>
-<a name="L281"></a><tt class="py-lineno"> 281</tt> <tt class="py-line"><tt class="py-string"> for the Java Runtime Environment to continue."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L282"></a><tt class="py-lineno"> 282</tt> <tt class="py-line"> <tt class="py-comment"># return main.FALSE</tt> </tt>
-<a name="L283"></a><tt class="py-lineno"> 283</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-67', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L284"></a><tt class="py-lineno"> 284</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-68', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L285"></a><tt class="py-lineno"> 285</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L286"></a><tt class="py-lineno"> 286</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-69" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-69', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-70', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Build failure!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L287"></a><tt class="py-lineno"> 287</tt> <tt class="py-line"> <tt class="py-comment"># return main.FALSE</tt> </tt>
-<a name="L288"></a><tt class="py-lineno"> 288</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-71', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L289"></a><tt class="py-lineno"> 289</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-72', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L290"></a><tt class="py-lineno"> 290</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L291"></a><tt class="py-lineno"> 291</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-73', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Build success!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L292"></a><tt class="py-lineno"> 292</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt> <tt class="py-keyword">or</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L293"></a><tt class="py-lineno"> 293</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-74', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Build complete"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L294"></a><tt class="py-lineno"> 294</tt> <tt class="py-line"> <tt class="py-comment"># Print the build time</tt> </tt>
-<a name="L295"></a><tt class="py-lineno"> 295</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L296"></a><tt class="py-lineno"> 296</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Total time:"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt><tt class="py-op">:</tt> </tt>
-<a name="L297"></a><tt class="py-lineno"> 297</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-75', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt> </tt>
-<a name="L298"></a><tt class="py-lineno"> 298</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-76', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L299"></a><tt class="py-lineno"> 299</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L300"></a><tt class="py-lineno"> 300</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L301"></a><tt class="py-lineno"> 301</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">5</tt><tt class="py-op">:</tt> </tt>
-<a name="L302"></a><tt class="py-lineno"> 302</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-77', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-78', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L303"></a><tt class="py-lineno"> 303</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L304"></a><tt class="py-lineno"> 304</tt> <tt class="py-line"> <tt class="py-string">": mvn clean install TIMEOUT!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L305"></a><tt class="py-lineno"> 305</tt> <tt class="py-line"> <tt class="py-comment"># return main.FALSE</tt> </tt>
-<a name="L306"></a><tt class="py-lineno"> 306</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-79', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L307"></a><tt class="py-lineno"> 307</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-80', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L308"></a><tt class="py-lineno"> 308</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L309"></a><tt class="py-lineno"> 309</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-81', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-82', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": unexpected response from "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L310"></a><tt class="py-lineno"> 310</tt> <tt class="py-line"> <tt class="py-string">"mvn clean install"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno"> 311</tt> <tt class="py-line"> <tt class="py-comment"># return main.FALSE</tt> </tt>
-<a name="L312"></a><tt class="py-lineno"> 312</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-83', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L313"></a><tt class="py-lineno"> 313</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-84', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L314"></a><tt class="py-lineno"> 314</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L315"></a><tt class="py-lineno"> 315</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-85', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-86', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L316"></a><tt class="py-lineno"> 316</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-87', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-88', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L317"></a><tt class="py-lineno"> 317</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-89', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L318"></a><tt class="py-lineno"> 318</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-90', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L319"></a><tt class="py-lineno"> 319</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L320"></a><tt class="py-lineno"> 320</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-91', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L321"></a><tt class="py-lineno"> 321</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-92', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L322"></a><tt class="py-lineno"> 322</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-93', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L323"></a><tt class="py-lineno"> 323</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.gitPull"></a><div id="OnosDriver.gitPull-def"><a name="L324"></a><tt class="py-lineno"> 324</tt> <a class="py-toggle" href="#" id="OnosDriver.gitPull-toggle" onclick="return toggle('OnosDriver.gitPull');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull">gitPull</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">comp1</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-param">fastForward</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.gitPull-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.gitPull-expanded"><a name="L325"></a><tt class="py-lineno"> 325</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L326"></a><tt class="py-lineno"> 326</tt> <tt class="py-line"><tt class="py-docstring"> Assumes that "git pull" works without login</tt> </tt>
-<a name="L327"></a><tt class="py-lineno"> 327</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L328"></a><tt class="py-lineno"> 328</tt> <tt class="py-line"><tt class="py-docstring"> If the fastForward boolean is set to true, only git pulls that can</tt> </tt>
-<a name="L329"></a><tt class="py-lineno"> 329</tt> <tt class="py-line"><tt class="py-docstring"> be fast forwarded will be performed. IE if you have not local commits</tt> </tt>
-<a name="L330"></a><tt class="py-lineno"> 330</tt> <tt class="py-line"><tt class="py-docstring"> in your branch.</tt> </tt>
-<a name="L331"></a><tt class="py-lineno"> 331</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L332"></a><tt class="py-lineno"> 332</tt> <tt class="py-line"><tt class="py-docstring"> This function will perform a git pull on the ONOS instance.</tt> </tt>
-<a name="L333"></a><tt class="py-lineno"> 333</tt> <tt class="py-line"><tt class="py-docstring"> If used as gitPull( "NODE" ) it will do git pull + NODE. This is</tt> </tt>
-<a name="L334"></a><tt class="py-lineno"> 334</tt> <tt class="py-line"><tt class="py-docstring"> for the purpose of pulling from other nodes if necessary.</tt> </tt>
-<a name="L335"></a><tt class="py-lineno"> 335</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L336"></a><tt class="py-lineno"> 336</tt> <tt class="py-line"><tt class="py-docstring"> Otherwise, this function will perform a git pull in the</tt> </tt>
-<a name="L337"></a><tt class="py-lineno"> 337</tt> <tt class="py-line"><tt class="py-docstring"> ONOS repository. If it has any problems, it will return main.ERROR</tt> </tt>
-<a name="L338"></a><tt class="py-lineno"> 338</tt> <tt class="py-line"><tt class="py-docstring"> If it successfully does a gitPull, it will return a 1 ( main.TRUE )</tt> </tt>
-<a name="L339"></a><tt class="py-lineno"> 339</tt> <tt class="py-line"><tt class="py-docstring"> If it has no updates, it will return 3.</tt> </tt>
-<a name="L340"></a><tt class="py-lineno"> 340</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L341"></a><tt class="py-lineno"> 341</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L342"></a><tt class="py-lineno"> 342</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L343"></a><tt class="py-lineno"> 343</tt> <tt class="py-line"> <tt class="py-comment"># main.log.info( self.name + ": Stopping ONOS" )</tt> </tt>
-<a name="L344"></a><tt class="py-lineno"> 344</tt> <tt class="py-line"> <tt class="py-comment"># self.stop()</tt> </tt>
-<a name="L345"></a><tt class="py-lineno"> 345</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-94', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cd "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">)</tt> </tt>
-<a name="L346"></a><tt class="py-lineno"> 346</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L347"></a><tt class="py-lineno"> 347</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"git pull"</tt> </tt>
-<a name="L348"></a><tt class="py-lineno"> 348</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">comp1</tt> <tt class="py-op">!=</tt> <tt class="py-string">""</tt><tt class="py-op">:</tt> </tt>
-<a name="L349"></a><tt class="py-lineno"> 349</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">' '</tt> <tt class="py-op">+</tt> <tt class="py-name">comp1</tt> </tt>
-<a name="L350"></a><tt class="py-lineno"> 350</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">fastForward</tt><tt class="py-op">:</tt> </tt>
-<a name="L351"></a><tt class="py-lineno"> 351</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">' '</tt> <tt class="py-op">+</tt> <tt class="py-string">" --ff-only"</tt> </tt>
-<a name="L352"></a><tt class="py-lineno"> 352</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-95', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L353"></a><tt class="py-lineno"> 353</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> </tt>
-<a name="L354"></a><tt class="py-lineno"> 354</tt> <tt class="py-line"> <tt class="py-op">[</tt> </tt>
-<a name="L355"></a><tt class="py-lineno"> 355</tt> <tt class="py-line"> <tt class="py-string">'fatal'</tt><tt class="py-op">,</tt> </tt>
-<a name="L356"></a><tt class="py-lineno"> 356</tt> <tt class="py-line"> <tt class="py-string">'Username\sfor\s(.*):\s'</tt><tt class="py-op">,</tt> </tt>
-<a name="L357"></a><tt class="py-lineno"> 357</tt> <tt class="py-line"> <tt class="py-string">'\sfile(s*) changed,\s'</tt><tt class="py-op">,</tt> </tt>
-<a name="L358"></a><tt class="py-lineno"> 358</tt> <tt class="py-line"> <tt class="py-string">'Already up-to-date'</tt><tt class="py-op">,</tt> </tt>
-<a name="L359"></a><tt class="py-lineno"> 359</tt> <tt class="py-line"> <tt class="py-string">'Aborting'</tt><tt class="py-op">,</tt> </tt>
-<a name="L360"></a><tt class="py-lineno"> 360</tt> <tt class="py-line"> <tt class="py-string">'You\sare\snot\scurrently\son\sa\sbranch'</tt><tt class="py-op">,</tt> </tt>
-<a name="L361"></a><tt class="py-lineno"> 361</tt> <tt class="py-line"> <tt class="py-string">'You asked me to pull without telling me which branch you'</tt><tt class="py-op">,</tt> </tt>
-<a name="L362"></a><tt class="py-lineno"> 362</tt> <tt class="py-line"> <tt class="py-string">'Pull is not possible because you have unmerged files'</tt><tt class="py-op">,</tt> </tt>
-<a name="L363"></a><tt class="py-lineno"> 363</tt> <tt class="py-line"> <tt class="py-string">'Please enter a commit message to explain why this merge'</tt><tt class="py-op">,</tt> </tt>
-<a name="L364"></a><tt class="py-lineno"> 364</tt> <tt class="py-line"> <tt class="py-string">'Found a swap file by the name'</tt><tt class="py-op">,</tt> </tt>
-<a name="L365"></a><tt class="py-lineno"> 365</tt> <tt class="py-line"> <tt class="py-string">'Please, commit your changes before you can merge.'</tt><tt class="py-op">,</tt> </tt>
-<a name="L366"></a><tt class="py-lineno"> 366</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L367"></a><tt class="py-lineno"> 367</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">300</tt> <tt class="py-op">)</tt> </tt>
-<a name="L368"></a><tt class="py-lineno"> 368</tt> <tt class="py-line"> <tt class="py-comment"># debug</tt> </tt>
-<a name="L369"></a><tt class="py-lineno"> 369</tt> <tt class="py-line"> <tt class="py-comment"># main.log.report( self.name +": DEBUG: \n"+</tt> </tt>
-<a name="L370"></a><tt class="py-lineno"> 370</tt> <tt class="py-line"> <tt class="py-comment"># "git pull response: " +</tt> </tt>
-<a name="L371"></a><tt class="py-lineno"> 371</tt> <tt class="py-line"> <tt class="py-comment"># str( self.handle.before ) + str( self.handle.after ) )</tt> </tt>
-<a name="L372"></a><tt class="py-lineno"> 372</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L373"></a><tt class="py-lineno"> 373</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-96', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-97', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Git pull had some issue"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L374"></a><tt class="py-lineno"> 374</tt> <tt class="py-line"> <tt id="link-98" class="py-name" targets="Function TestON.bin.cli.output()=TestON.bin.cli-module.html#output"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-98', 'output', 'link-98');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> </tt>
-<a name="L375"></a><tt class="py-lineno"> 375</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">'\$'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L376"></a><tt class="py-lineno"> 376</tt> <tt class="py-line"> <tt id="link-99" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-99', 'output', 'link-98');">output</a></tt> <tt class="py-op">+=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L377"></a><tt class="py-lineno"> 377</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-100', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt id="link-101" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-101', 'output', 'link-98');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L378"></a><tt class="py-lineno"> 378</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L379"></a><tt class="py-lineno"> 379</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L380"></a><tt class="py-lineno"> 380</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-102', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-103', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L381"></a><tt class="py-lineno"> 381</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L382"></a><tt class="py-lineno"> 382</tt> <tt class="py-line"> <tt class="py-string">": Git Pull Asking for username. "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L383"></a><tt class="py-lineno"> 383</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L384"></a><tt class="py-lineno"> 384</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L385"></a><tt class="py-lineno"> 385</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-104', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L386"></a><tt class="py-lineno"> 386</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L387"></a><tt class="py-lineno"> 387</tt> <tt class="py-line"> <tt class="py-string">": Git Pull - pulling repository now"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L388"></a><tt class="py-lineno"> 388</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L389"></a><tt class="py-lineno"> 389</tt> <tt class="py-line"> <tt class="py-comment"># So that only when git pull is done, we do mvn clean compile</tt> </tt>
-<a name="L390"></a><tt class="py-lineno"> 390</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L391"></a><tt class="py-lineno"> 391</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L392"></a><tt class="py-lineno"> 392</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-105', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Git Pull - Already up to date"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L393"></a><tt class="py-lineno"> 393</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">i</tt> </tt>
-<a name="L394"></a><tt class="py-lineno"> 394</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L395"></a><tt class="py-lineno"> 395</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-106" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-106', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L396"></a><tt class="py-lineno"> 396</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L397"></a><tt class="py-lineno"> 397</tt> <tt class="py-line"> <tt class="py-string">": Git Pull - Aborting..."</tt> <tt class="py-op">+</tt> </tt>
-<a name="L398"></a><tt class="py-lineno"> 398</tt> <tt class="py-line"> <tt class="py-string">"Are there conflicting git files?"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L399"></a><tt class="py-lineno"> 399</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L400"></a><tt class="py-lineno"> 400</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">5</tt><tt class="py-op">:</tt> </tt>
-<a name="L401"></a><tt class="py-lineno"> 401</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-107', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L402"></a><tt class="py-lineno"> 402</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L403"></a><tt class="py-lineno"> 403</tt> <tt class="py-line"> <tt class="py-string">": Git Pull - You are not currently "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L404"></a><tt class="py-lineno"> 404</tt> <tt class="py-line"> <tt class="py-string">"on a branch so git pull failed!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L405"></a><tt class="py-lineno"> 405</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L406"></a><tt class="py-lineno"> 406</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">6</tt><tt class="py-op">:</tt> </tt>
-<a name="L407"></a><tt class="py-lineno"> 407</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-108', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L408"></a><tt class="py-lineno"> 408</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L409"></a><tt class="py-lineno"> 409</tt> <tt class="py-line"> <tt class="py-string">": Git Pull - You have not configured an upstream "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L410"></a><tt class="py-lineno"> 410</tt> <tt class="py-line"> <tt class="py-string">"branch to pull from. Git pull failed!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L411"></a><tt class="py-lineno"> 411</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L412"></a><tt class="py-lineno"> 412</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">7</tt><tt class="py-op">:</tt> </tt>
-<a name="L413"></a><tt class="py-lineno"> 413</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-109', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L414"></a><tt class="py-lineno"> 414</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L415"></a><tt class="py-lineno"> 415</tt> <tt class="py-line"> <tt class="py-string">": Git Pull - Pull is not possible because "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L416"></a><tt class="py-lineno"> 416</tt> <tt class="py-line"> <tt class="py-string">"you have unmerged files."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L417"></a><tt class="py-lineno"> 417</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L418"></a><tt class="py-lineno"> 418</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">8</tt><tt class="py-op">:</tt> </tt>
-<a name="L419"></a><tt class="py-lineno"> 419</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: abandoning test since we can't reliably handle this</tt> </tt>
-<a name="L420"></a><tt class="py-lineno"> 420</tt> <tt class="py-line"> <tt class="py-comment"># there could be different default text editors and we</tt> </tt>
-<a name="L421"></a><tt class="py-lineno"> 421</tt> <tt class="py-line"> <tt class="py-comment"># also don't know if we actually want to make the commit</tt> </tt>
-<a name="L422"></a><tt class="py-lineno"> 422</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-110', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-111', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Git pull resulted in a merge commit message"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L423"></a><tt class="py-lineno"> 423</tt> <tt class="py-line"> <tt class="py-string">". Exiting test!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L424"></a><tt class="py-lineno"> 424</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-112', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L425"></a><tt class="py-lineno"> 425</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-113', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L426"></a><tt class="py-lineno"> 426</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">9</tt><tt class="py-op">:</tt> <tt class="py-comment"># Merge commit message but swap file exists</tt> </tt>
-<a name="L427"></a><tt class="py-lineno"> 427</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-114', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-115" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-115', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Git pull resulted in a merge commit message"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L428"></a><tt class="py-lineno"> 428</tt> <tt class="py-line"> <tt class="py-string">" but a swap file exists."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L429"></a><tt class="py-lineno"> 429</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L430"></a><tt class="py-lineno"> 430</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#send"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-116', 'send', 'link-116');">send</a></tt><tt class="py-op">(</tt> <tt class="py-string">'A'</tt> <tt class="py-op">)</tt> <tt class="py-comment"># Abort</tt> </tt>
-<a name="L431"></a><tt class="py-lineno"> 431</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L432"></a><tt class="py-lineno"> 432</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L433"></a><tt class="py-lineno"> 433</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L434"></a><tt class="py-lineno"> 434</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-117', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Couldn't exit editor prompt!"</tt><tt class="py-op">)</tt> </tt>
-<a name="L435"></a><tt class="py-lineno"> 435</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-118', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L436"></a><tt class="py-lineno"> 436</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-119', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L437"></a><tt class="py-lineno"> 437</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">10</tt><tt class="py-op">:</tt> <tt class="py-comment"># In the middle of a merge commit</tt> </tt>
-<a name="L438"></a><tt class="py-lineno"> 438</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-120" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-120', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-121" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-121', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Git branch is in the middle of a merge. "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L439"></a><tt class="py-lineno"> 439</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-122', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> <tt class="py-op">)</tt> </tt>
-<a name="L440"></a><tt class="py-lineno"> 440</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L441"></a><tt class="py-lineno"> 441</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">11</tt><tt class="py-op">:</tt> </tt>
-<a name="L442"></a><tt class="py-lineno"> 442</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-123', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-124" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-124', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Git Pull - TIMEOUT"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L443"></a><tt class="py-lineno"> 443</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-125', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-126', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L444"></a><tt class="py-lineno"> 444</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" Response was: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L445"></a><tt class="py-lineno"> 445</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L446"></a><tt class="py-lineno"> 446</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L447"></a><tt class="py-lineno"> 447</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L448"></a><tt class="py-lineno"> 448</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-127', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-128', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L449"></a><tt class="py-lineno"> 449</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L450"></a><tt class="py-lineno"> 450</tt> <tt class="py-line"> <tt class="py-string">": Git Pull - Unexpected response, check for pull errors"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L451"></a><tt class="py-lineno"> 451</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L452"></a><tt class="py-lineno"> 452</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L453"></a><tt class="py-lineno"> 453</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-129', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-130" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-130', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L454"></a><tt class="py-lineno"> 454</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-131', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-132', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L455"></a><tt class="py-lineno"> 455</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-133', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L456"></a><tt class="py-lineno"> 456</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-134" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-134', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L457"></a><tt class="py-lineno"> 457</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L458"></a><tt class="py-lineno"> 458</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-135', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L459"></a><tt class="py-lineno"> 459</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-136" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-136', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L460"></a><tt class="py-lineno"> 460</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-137', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L461"></a><tt class="py-lineno"> 461</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.gitCheckout"></a><div id="OnosDriver.gitCheckout-def"><a name="L462"></a><tt class="py-lineno"> 462</tt> <a class="py-toggle" href="#" id="OnosDriver.gitCheckout-toggle" onclick="return toggle('OnosDriver.gitCheckout');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitCheckout">gitCheckout</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">branch</tt><tt class="py-op">=</tt><tt class="py-string">"master"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.gitCheckout-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.gitCheckout-expanded"><a name="L463"></a><tt class="py-lineno"> 463</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L464"></a><tt class="py-lineno"> 464</tt> <tt class="py-line"><tt class="py-docstring"> Assumes that "git pull" works without login</tt> </tt>
-<a name="L465"></a><tt class="py-lineno"> 465</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L466"></a><tt class="py-lineno"> 466</tt> <tt class="py-line"><tt class="py-docstring"> This function will perform a git git checkout on the ONOS instance.</tt> </tt>
-<a name="L467"></a><tt class="py-lineno"> 467</tt> <tt class="py-line"><tt class="py-docstring"> If used as gitCheckout( "branch" ) it will do git checkout</tt> </tt>
-<a name="L468"></a><tt class="py-lineno"> 468</tt> <tt class="py-line"><tt class="py-docstring"> of the "branch".</tt> </tt>
-<a name="L469"></a><tt class="py-lineno"> 469</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L470"></a><tt class="py-lineno"> 470</tt> <tt class="py-line"><tt class="py-docstring"> Otherwise, this function will perform a git checkout of the master</tt> </tt>
-<a name="L471"></a><tt class="py-lineno"> 471</tt> <tt class="py-line"><tt class="py-docstring"> branch of the ONOS repository. If it has any problems, it will return</tt> </tt>
-<a name="L472"></a><tt class="py-lineno"> 472</tt> <tt class="py-line"><tt class="py-docstring"> main.ERROR.</tt> </tt>
-<a name="L473"></a><tt class="py-lineno"> 473</tt> <tt class="py-line"><tt class="py-docstring"> If the branch was already the specified branch, or the git checkout was</tt> </tt>
-<a name="L474"></a><tt class="py-lineno"> 474</tt> <tt class="py-line"><tt class="py-docstring"> successful then the function will return main.TRUE.</tt> </tt>
-<a name="L475"></a><tt class="py-lineno"> 475</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L476"></a><tt class="py-lineno"> 476</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L477"></a><tt class="py-lineno"> 477</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L478"></a><tt class="py-lineno"> 478</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-138', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cd "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">)</tt> </tt>
-<a name="L479"></a><tt class="py-lineno"> 479</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L480"></a><tt class="py-lineno"> 480</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-139" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-139', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L481"></a><tt class="py-lineno"> 481</tt> <tt class="py-line"> <tt class="py-string">": Checking out git branch/ref: "</tt> <tt class="py-op">+</tt> <tt class="py-name">branch</tt> <tt class="py-op">+</tt> <tt class="py-string">"..."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L482"></a><tt class="py-lineno"> 482</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"git checkout "</tt> <tt class="py-op">+</tt> <tt class="py-name">branch</tt> </tt>
-<a name="L483"></a><tt class="py-lineno"> 483</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-140" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-140', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L484"></a><tt class="py-lineno"> 484</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L485"></a><tt class="py-lineno"> 485</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> </tt>
-<a name="L486"></a><tt class="py-lineno"> 486</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">'fatal'</tt><tt class="py-op">,</tt> </tt>
-<a name="L487"></a><tt class="py-lineno"> 487</tt> <tt class="py-line"> <tt class="py-string">'Username for (.*): '</tt><tt class="py-op">,</tt> </tt>
-<a name="L488"></a><tt class="py-lineno"> 488</tt> <tt class="py-line"> <tt class="py-string">'Already on \''</tt><tt class="py-op">,</tt> </tt>
-<a name="L489"></a><tt class="py-lineno"> 489</tt> <tt class="py-line"> <tt class="py-string">'Switched to (a new )?branch \''</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">branch</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L490"></a><tt class="py-lineno"> 490</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">,</tt> </tt>
-<a name="L491"></a><tt class="py-lineno"> 491</tt> <tt class="py-line"> <tt class="py-string">'error: Your local changes to the following files'</tt> <tt class="py-op">+</tt> </tt>
-<a name="L492"></a><tt class="py-lineno"> 492</tt> <tt class="py-line"> <tt class="py-string">'would be overwritten by checkout:'</tt><tt class="py-op">,</tt> </tt>
-<a name="L493"></a><tt class="py-lineno"> 493</tt> <tt class="py-line"> <tt class="py-string">'error: you need to resolve your current index first'</tt><tt class="py-op">,</tt> </tt>
-<a name="L494"></a><tt class="py-lineno"> 494</tt> <tt class="py-line"> <tt class="py-string">"You are in 'detached HEAD' state."</tt><tt class="py-op">,</tt> </tt>
-<a name="L495"></a><tt class="py-lineno"> 495</tt> <tt class="py-line"> <tt class="py-string">"HEAD is now at "</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L496"></a><tt class="py-lineno"> 496</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L497"></a><tt class="py-lineno"> 497</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L498"></a><tt class="py-lineno"> 498</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-141" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-141', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-142', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L499"></a><tt class="py-lineno"> 499</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L500"></a><tt class="py-lineno"> 500</tt> <tt class="py-line"> <tt class="py-string">": Git checkout had some issue..."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L501"></a><tt class="py-lineno"> 501</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-143', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-144" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-144', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L502"></a><tt class="py-lineno"> 502</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L503"></a><tt class="py-lineno"> 503</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L504"></a><tt class="py-lineno"> 504</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-145" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-145', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-146" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-146', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L505"></a><tt class="py-lineno"> 505</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L506"></a><tt class="py-lineno"> 506</tt> <tt class="py-line"> <tt class="py-string">": Git checkout asking for username."</tt> <tt class="py-op">+</tt> </tt>
-<a name="L507"></a><tt class="py-lineno"> 507</tt> <tt class="py-line"> <tt class="py-string">" Please configure your local git repository to be able "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L508"></a><tt class="py-lineno"> 508</tt> <tt class="py-line"> <tt class="py-string">"to access your remote repository passwordlessly"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L509"></a><tt class="py-lineno"> 509</tt> <tt class="py-line"> <tt class="py-comment"># TODO add support for authenticating</tt> </tt>
-<a name="L510"></a><tt class="py-lineno"> 510</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L511"></a><tt class="py-lineno"> 511</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L512"></a><tt class="py-lineno"> 512</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-147', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L513"></a><tt class="py-lineno"> 513</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L514"></a><tt class="py-lineno"> 514</tt> <tt class="py-line"> <tt class="py-string">": Git Checkout %s : Already on this branch"</tt> <tt class="py-op">%</tt> <tt class="py-name">branch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L515"></a><tt class="py-lineno"> 515</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L516"></a><tt class="py-lineno"> 516</tt> <tt class="py-line"> <tt class="py-comment"># main.log.info( "DEBUG: after checkout cmd = "+</tt> </tt>
-<a name="L517"></a><tt class="py-lineno"> 517</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.before )</tt> </tt>
-<a name="L518"></a><tt class="py-lineno"> 518</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L519"></a><tt class="py-lineno"> 519</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L520"></a><tt class="py-lineno"> 520</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-148" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-148', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L521"></a><tt class="py-lineno"> 521</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L522"></a><tt class="py-lineno"> 522</tt> <tt class="py-line"> <tt class="py-string">": Git checkout %s - Switched to this branch"</tt> <tt class="py-op">%</tt> <tt class="py-name">branch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L523"></a><tt class="py-lineno"> 523</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L524"></a><tt class="py-lineno"> 524</tt> <tt class="py-line"> <tt class="py-comment"># main.log.info( "DEBUG: after checkout cmd = "+</tt> </tt>
-<a name="L525"></a><tt class="py-lineno"> 525</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.before )</tt> </tt>
-<a name="L526"></a><tt class="py-lineno"> 526</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L527"></a><tt class="py-lineno"> 527</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L528"></a><tt class="py-lineno"> 528</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-149" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-149', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-150" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-150', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Git Checkout- TIMEOUT"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L529"></a><tt class="py-lineno"> 529</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-151" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-151', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-152', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L530"></a><tt class="py-lineno"> 530</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" Response was: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L531"></a><tt class="py-lineno"> 531</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L532"></a><tt class="py-lineno"> 532</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">5</tt><tt class="py-op">:</tt> </tt>
-<a name="L533"></a><tt class="py-lineno"> 533</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"Aborting"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L534"></a><tt class="py-lineno"> 534</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-153', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-154" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-154', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L535"></a><tt class="py-lineno"> 535</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L536"></a><tt class="py-lineno"> 536</tt> <tt class="py-line"> <tt class="py-string">": Git checkout error: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L537"></a><tt class="py-lineno"> 537</tt> <tt class="py-line"> <tt class="py-string">"Your local changes to the following files would"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L538"></a><tt class="py-lineno"> 538</tt> <tt class="py-line"> <tt class="py-string">" be overwritten by checkout:"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L539"></a><tt class="py-lineno"> 539</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L540"></a><tt class="py-lineno"> 540</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L541"></a><tt class="py-lineno"> 541</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L542"></a><tt class="py-lineno"> 542</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">6</tt><tt class="py-op">:</tt> </tt>
-<a name="L543"></a><tt class="py-lineno"> 543</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-155', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-156" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-156', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L544"></a><tt class="py-lineno"> 544</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L545"></a><tt class="py-lineno"> 545</tt> <tt class="py-line"> <tt class="py-string">": Git checkout error: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L546"></a><tt class="py-lineno"> 546</tt> <tt class="py-line"> <tt class="py-string">"You need to resolve your current index first:"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L547"></a><tt class="py-lineno"> 547</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L548"></a><tt class="py-lineno"> 548</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L549"></a><tt class="py-lineno"> 549</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L550"></a><tt class="py-lineno"> 550</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">7</tt><tt class="py-op">:</tt> </tt>
-<a name="L551"></a><tt class="py-lineno"> 551</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-157', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L552"></a><tt class="py-lineno"> 552</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L553"></a><tt class="py-lineno"> 553</tt> <tt class="py-line"> <tt class="py-string">": Git checkout "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">branch</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L554"></a><tt class="py-lineno"> 554</tt> <tt class="py-line"> <tt class="py-string">" - You are in 'detached HEAD' state. HEAD is now at "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L555"></a><tt class="py-lineno"> 555</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">branch</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L556"></a><tt class="py-lineno"> 556</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L557"></a><tt class="py-lineno"> 557</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L558"></a><tt class="py-lineno"> 558</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">8</tt><tt class="py-op">:</tt> <tt class="py-comment"># Already in detached HEAD on the specified commit</tt> </tt>
-<a name="L559"></a><tt class="py-lineno"> 559</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-158" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-158', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L560"></a><tt class="py-lineno"> 560</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L561"></a><tt class="py-lineno"> 561</tt> <tt class="py-line"> <tt class="py-string">": Git Checkout %s : Already on commit"</tt> <tt class="py-op">%</tt> <tt class="py-name">branch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L562"></a><tt class="py-lineno"> 562</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L563"></a><tt class="py-lineno"> 563</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L564"></a><tt class="py-lineno"> 564</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L565"></a><tt class="py-lineno"> 565</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-159" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-159', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-160" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-160', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L566"></a><tt class="py-lineno"> 566</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L567"></a><tt class="py-lineno"> 567</tt> <tt class="py-line"> <tt class="py-string">": Git Checkout - Unexpected response, "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L568"></a><tt class="py-lineno"> 568</tt> <tt class="py-line"> <tt class="py-string">"check for pull errors"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L569"></a><tt class="py-lineno"> 569</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-161" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-161', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-162', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L570"></a><tt class="py-lineno"> 570</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L571"></a><tt class="py-lineno"> 571</tt> <tt class="py-line"> </tt>
-<a name="L572"></a><tt class="py-lineno"> 572</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L573"></a><tt class="py-lineno"> 573</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-163" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-163', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-164" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-164', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L574"></a><tt class="py-lineno"> 574</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-165" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-165', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-166" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-166', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L575"></a><tt class="py-lineno"> 575</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-167', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L576"></a><tt class="py-lineno"> 576</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-168', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L577"></a><tt class="py-lineno"> 577</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L578"></a><tt class="py-lineno"> 578</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-169" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-169', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L579"></a><tt class="py-lineno"> 579</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-170" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-170', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L580"></a><tt class="py-lineno"> 580</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-171" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-171', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L581"></a><tt class="py-lineno"> 581</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.getBranchName"></a><div id="OnosDriver.getBranchName-def"><a name="L582"></a><tt class="py-lineno"> 582</tt> <a class="py-toggle" href="#" id="OnosDriver.getBranchName-toggle" onclick="return toggle('OnosDriver.getBranchName');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getBranchName">getBranchName</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.getBranchName-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.getBranchName-expanded"><a name="L583"></a><tt class="py-lineno"> 583</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-172" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-172', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"self.home = "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L584"></a><tt class="py-lineno"> 584</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-173', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">)</tt> </tt>
-<a name="L585"></a><tt class="py-lineno"> 585</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-174" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-174', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cd "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">)</tt> </tt>
-<a name="L586"></a><tt class="py-lineno"> 586</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L587"></a><tt class="py-lineno"> 587</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-175" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-175', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"git name-rev --name-only HEAD"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L588"></a><tt class="py-lineno"> 588</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"git name-rev --name-only HEAD"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L589"></a><tt class="py-lineno"> 589</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L590"></a><tt class="py-lineno"> 590</tt> <tt class="py-line"> </tt>
-<a name="L591"></a><tt class="py-lineno"> 591</tt> <tt class="py-line"> <tt class="py-name">lines</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L592"></a><tt class="py-lineno"> 592</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">lines</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"master"</tt><tt class="py-op">:</tt> </tt>
-<a name="L593"></a><tt class="py-lineno"> 593</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">"master"</tt> </tt>
-<a name="L594"></a><tt class="py-lineno"> 594</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">lines</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"onos-1.0"</tt><tt class="py-op">:</tt> </tt>
-<a name="L595"></a><tt class="py-lineno"> 595</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">"onos-1.0"</tt> </tt>
-<a name="L596"></a><tt class="py-lineno"> 596</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L597"></a><tt class="py-lineno"> 597</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-176" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-176', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">lines</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L598"></a><tt class="py-lineno"> 598</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">"unexpected ONOS branch for SDN-IP test"</tt> </tt>
-</div><a name="L599"></a><tt class="py-lineno"> 599</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.getVersion"></a><div id="OnosDriver.getVersion-def"><a name="L600"></a><tt class="py-lineno"> 600</tt> <a class="py-toggle" href="#" id="OnosDriver.getVersion-toggle" onclick="return toggle('OnosDriver.getVersion');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion">getVersion</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">report</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.getVersion-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.getVersion-expanded"><a name="L601"></a><tt class="py-lineno"> 601</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L602"></a><tt class="py-lineno"> 602</tt> <tt class="py-line"><tt class="py-docstring"> Writes the COMMIT number to the report to be parsed</tt> </tt>
-<a name="L603"></a><tt class="py-lineno"> 603</tt> <tt class="py-line"><tt class="py-docstring"> by Jenkins data collector.</tt> </tt>
-<a name="L604"></a><tt class="py-lineno"> 604</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L605"></a><tt class="py-lineno"> 605</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L606"></a><tt class="py-lineno"> 606</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-177" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-177', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L607"></a><tt class="py-lineno"> 607</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L608"></a><tt class="py-lineno"> 608</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-178" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-178', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L609"></a><tt class="py-lineno"> 609</tt> <tt class="py-line"> <tt class="py-string">"cd "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L610"></a><tt class="py-lineno"> 610</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> </tt>
-<a name="L611"></a><tt class="py-lineno"> 611</tt> <tt class="py-line"> <tt class="py-string">"; git log -1 --pretty=fuller --decorate=short | grep -A 6 "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L612"></a><tt class="py-lineno"> 612</tt> <tt class="py-line"> <tt class="py-string">" \"commit\" --color=never"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L613"></a><tt class="py-lineno"> 613</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: for some reason there are backspaces inserted in this</tt> </tt>
-<a name="L614"></a><tt class="py-lineno"> 614</tt> <tt class="py-line"> <tt class="py-comment"># phrase when run from Jenkins on some tests</tt> </tt>
-<a name="L615"></a><tt class="py-lineno"> 615</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"never"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L616"></a><tt class="py-lineno"> 616</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L617"></a><tt class="py-lineno"> 617</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": \n"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L618"></a><tt class="py-lineno"> 618</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L619"></a><tt class="py-lineno"> 619</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-179" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-179', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cd "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">)</tt> </tt>
-<a name="L620"></a><tt class="py-lineno"> 620</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L621"></a><tt class="py-lineno"> 621</tt> <tt class="py-line"> <tt class="py-name">lines</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L622"></a><tt class="py-lineno"> 622</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">lines</tt><tt class="py-op">:</tt> </tt>
-<a name="L623"></a><tt class="py-lineno"> 623</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">line</tt> </tt>
-<a name="L624"></a><tt class="py-lineno"> 624</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">report</tt><tt class="py-op">:</tt> </tt>
-<a name="L625"></a><tt class="py-lineno"> 625</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-180" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-180', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-string">"<blockquote>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L626"></a><tt class="py-lineno"> 626</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">lines</tt><tt class="py-op">[</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">1</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L627"></a><tt class="py-lineno"> 627</tt> <tt class="py-line"> <tt class="py-comment"># Bracket replacement is for Wiki-compliant</tt> </tt>
-<a name="L628"></a><tt class="py-lineno"> 628</tt> <tt class="py-line"> <tt class="py-comment"># formatting. '<' or '>' are interpreted</tt> </tt>
-<a name="L629"></a><tt class="py-lineno"> 629</tt> <tt class="py-line"> <tt class="py-comment"># as xml specific tags that cause errors</tt> </tt>
-<a name="L630"></a><tt class="py-lineno"> 630</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"<"</tt><tt class="py-op">,</tt> <tt class="py-string">"["</tt> <tt class="py-op">)</tt> </tt>
-<a name="L631"></a><tt class="py-lineno"> 631</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">">"</tt><tt class="py-op">,</tt> <tt class="py-string">"]"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L632"></a><tt class="py-lineno"> 632</tt> <tt class="py-line"> <tt class="py-comment">#main.log.wiki( "\t" + line )</tt> </tt>
-<a name="L633"></a><tt class="py-lineno"> 633</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-181" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-181', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-name">line</tt> <tt class="py-op">+</tt> <tt class="py-string">"<br /> "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L634"></a><tt class="py-lineno"> 634</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-182" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-182', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-183" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.summary()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#summary"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.summary" class="py-name" href="#" onclick="return doclink('link-183', 'summary', 'link-183');">summary</a></tt><tt class="py-op">(</tt> <tt class="py-name">line</tt> <tt class="py-op">)</tt> </tt>
-<a name="L635"></a><tt class="py-lineno"> 635</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-184" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-184', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt> <tt class="py-string">"</blockquote>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L636"></a><tt class="py-lineno"> 636</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-185" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-185', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-186" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.summary" class="py-name" href="#" onclick="return doclink('link-186', 'summary', 'link-183');">summary</a></tt><tt class="py-op">(</tt><tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L637"></a><tt class="py-lineno"> 637</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">lines</tt><tt class="py-op">[</tt> <tt class="py-number">2</tt> <tt class="py-op">]</tt> </tt>
-<a name="L638"></a><tt class="py-lineno"> 638</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L639"></a><tt class="py-lineno"> 639</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-187" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-187', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-188" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-188', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L640"></a><tt class="py-lineno"> 640</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-189" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-189', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-190" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-190', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L641"></a><tt class="py-lineno"> 641</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-191" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-191', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L642"></a><tt class="py-lineno"> 642</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-192" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-192', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L643"></a><tt class="py-lineno"> 643</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">:</tt> </tt>
-<a name="L644"></a><tt class="py-lineno"> 644</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-193" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-193', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-194" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-194', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": TIMEOUT exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L645"></a><tt class="py-lineno"> 645</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-195" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-195', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-196" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-196', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L646"></a><tt class="py-lineno"> 646</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-197" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-197', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L647"></a><tt class="py-lineno"> 647</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-198" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-198', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L648"></a><tt class="py-lineno"> 648</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L649"></a><tt class="py-lineno"> 649</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-199" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-199', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L650"></a><tt class="py-lineno"> 650</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-200" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-200', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L651"></a><tt class="py-lineno"> 651</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-201" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-201', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L652"></a><tt class="py-lineno"> 652</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.createCellFile"></a><div id="OnosDriver.createCellFile-def"><a name="L653"></a><tt class="py-lineno"> 653</tt> <a class="py-toggle" href="#" id="OnosDriver.createCellFile-toggle" onclick="return toggle('OnosDriver.createCellFile');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile">createCellFile</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">benchIp</tt><tt class="py-op">,</tt> <tt class="py-param">fileName</tt><tt class="py-op">,</tt> <tt class="py-param">mnIpAddrs</tt><tt class="py-op">,</tt> </tt>
-<a name="L654"></a><tt class="py-lineno"> 654</tt> <tt class="py-line"> <tt class="py-param">appString</tt><tt class="py-op">,</tt> <tt class="py-param">onosIpAddrs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.createCellFile-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.createCellFile-expanded"><a name="L655"></a><tt class="py-lineno"> 655</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L656"></a><tt class="py-lineno"> 656</tt> <tt class="py-line"><tt class="py-docstring"> Creates a cell file based on arguments</tt> </tt>
-<a name="L657"></a><tt class="py-lineno"> 657</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L658"></a><tt class="py-lineno"> 658</tt> <tt class="py-line"><tt class="py-docstring"> * Bench IP address ( benchIp )</tt> </tt>
-<a name="L659"></a><tt class="py-lineno"> 659</tt> <tt class="py-line"><tt class="py-docstring"> - Needed to copy the cell file over</tt> </tt>
-<a name="L660"></a><tt class="py-lineno"> 660</tt> <tt class="py-line"><tt class="py-docstring"> * File name of the cell file ( fileName )</tt> </tt>
-<a name="L661"></a><tt class="py-lineno"> 661</tt> <tt class="py-line"><tt class="py-docstring"> * Mininet IP address ( mnIpAddrs )</tt> </tt>
-<a name="L662"></a><tt class="py-lineno"> 662</tt> <tt class="py-line"><tt class="py-docstring"> - Note that only 1 ip address is</tt> </tt>
-<a name="L663"></a><tt class="py-lineno"> 663</tt> <tt class="py-line"><tt class="py-docstring"> supported currently</tt> </tt>
-<a name="L664"></a><tt class="py-lineno"> 664</tt> <tt class="py-line"><tt class="py-docstring"> * ONOS IP addresses ( onosIpAddrs )</tt> </tt>
-<a name="L665"></a><tt class="py-lineno"> 665</tt> <tt class="py-line"><tt class="py-docstring"> - Must be passed in as last arguments</tt> </tt>
-<a name="L666"></a><tt class="py-lineno"> 666</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L667"></a><tt class="py-lineno"> 667</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: Assumes cells are located at:</tt> </tt>
-<a name="L668"></a><tt class="py-lineno"> 668</tt> <tt class="py-line"><tt class="py-docstring"> ~/<self.home>/tools/test/cells/</tt> </tt>
-<a name="L669"></a><tt class="py-lineno"> 669</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L670"></a><tt class="py-lineno"> 670</tt> <tt class="py-line"> <tt class="py-comment"># Variable initialization</tt> </tt>
-<a name="L671"></a><tt class="py-lineno"> 671</tt> <tt class="py-line"> <tt class="py-name">cellDirectory</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"/tools/test/cells/"</tt> </tt>
-<a name="L672"></a><tt class="py-lineno"> 672</tt> <tt class="py-line"> <tt class="py-comment"># We want to create the cell file in the dependencies directory</tt> </tt>
-<a name="L673"></a><tt class="py-lineno"> 673</tt> <tt class="py-line"> <tt class="py-comment"># of TestON first, then copy over to ONOS bench</tt> </tt>
-<a name="L674"></a><tt class="py-lineno"> 674</tt> <tt class="py-line"> <tt class="py-name">tempDirectory</tt> <tt class="py-op">=</tt> <tt class="py-string">"/tmp/"</tt> </tt>
-<a name="L675"></a><tt class="py-lineno"> 675</tt> <tt class="py-line"> <tt class="py-comment"># Create the cell file in the directory for writing ( w+ )</tt> </tt>
-<a name="L676"></a><tt class="py-lineno"> 676</tt> <tt class="py-line"> <tt class="py-name">cellFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt> <tt class="py-name">tempDirectory</tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt><tt class="py-op">,</tt> <tt class="py-string">'w+'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L677"></a><tt class="py-lineno"> 677</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">onosIpAddrs</tt><tt class="py-op">,</tt> <tt class="py-name">types</tt><tt class="py-op">.</tt><tt class="py-name">StringType</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L678"></a><tt class="py-lineno"> 678</tt> <tt class="py-line"> <tt class="py-name">onosIpAddrs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">onosIpAddrs</tt> <tt class="py-op">]</tt> </tt>
-<a name="L679"></a><tt class="py-lineno"> 679</tt> <tt class="py-line"> </tt>
-<a name="L680"></a><tt class="py-lineno"> 680</tt> <tt class="py-line"> <tt class="py-comment"># App string is hardcoded environment variables</tt> </tt>
-<a name="L681"></a><tt class="py-lineno"> 681</tt> <tt class="py-line"> <tt class="py-comment"># That you may wish to use by default on startup.</tt> </tt>
-<a name="L682"></a><tt class="py-lineno"> 682</tt> <tt class="py-line"> <tt class="py-comment"># Note that you may not want certain apps listed</tt> </tt>
-<a name="L683"></a><tt class="py-lineno"> 683</tt> <tt class="py-line"> <tt class="py-comment"># on here.</tt> </tt>
-<a name="L684"></a><tt class="py-lineno"> 684</tt> <tt class="py-line"> <tt class="py-name">appString</tt> <tt class="py-op">=</tt> <tt class="py-string">"export ONOS_APPS="</tt> <tt class="py-op">+</tt> <tt class="py-name">appString</tt> </tt>
-<a name="L685"></a><tt class="py-lineno"> 685</tt> <tt class="py-line"> <tt class="py-name">mnString</tt> <tt class="py-op">=</tt> <tt class="py-string">"export OCN="</tt> </tt>
-<a name="L686"></a><tt class="py-lineno"> 686</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">mnIpAddrs</tt> <tt class="py-op">==</tt> <tt class="py-string">""</tt><tt class="py-op">:</tt> </tt>
-<a name="L687"></a><tt class="py-lineno"> 687</tt> <tt class="py-line"> <tt class="py-name">mnString</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L688"></a><tt class="py-lineno"> 688</tt> <tt class="py-line"> <tt class="py-name">onosString</tt> <tt class="py-op">=</tt> <tt class="py-string">"export OC"</tt> </tt>
-<a name="L689"></a><tt class="py-lineno"> 689</tt> <tt class="py-line"> <tt class="py-name">tempCount</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L690"></a><tt class="py-lineno"> 690</tt> <tt class="py-line"> </tt>
-<a name="L691"></a><tt class="py-lineno"> 691</tt> <tt class="py-line"> <tt class="py-comment"># Create ONOSNIC ip address prefix</tt> </tt>
-<a name="L692"></a><tt class="py-lineno"> 692</tt> <tt class="py-line"> <tt class="py-name">tempOnosIp</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosIpAddrs</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L693"></a><tt class="py-lineno"> 693</tt> <tt class="py-line"> <tt class="py-name">tempList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L694"></a><tt class="py-lineno"> 694</tt> <tt class="py-line"> <tt class="py-name">tempList</tt> <tt class="py-op">=</tt> <tt class="py-name">tempOnosIp</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L695"></a><tt class="py-lineno"> 695</tt> <tt class="py-line"> <tt class="py-comment"># Omit last element of list to format for NIC</tt> </tt>
-<a name="L696"></a><tt class="py-lineno"> 696</tt> <tt class="py-line"> <tt class="py-name">tempList</tt> <tt class="py-op">=</tt> <tt class="py-name">tempList</tt><tt class="py-op">[</tt> <tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L697"></a><tt class="py-lineno"> 697</tt> <tt class="py-line"> <tt class="py-comment"># Structure the nic string ip</tt> </tt>
-<a name="L698"></a><tt class="py-lineno"> 698</tt> <tt class="py-line"> <tt class="py-name">nicAddr</tt> <tt class="py-op">=</tt> <tt class="py-string">"."</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt> <tt class="py-name">tempList</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">".*"</tt> </tt>
-<a name="L699"></a><tt class="py-lineno"> 699</tt> <tt class="py-line"> <tt class="py-name">onosNicString</tt> <tt class="py-op">=</tt> <tt class="py-string">"export ONOS_NIC="</tt> <tt class="py-op">+</tt> <tt class="py-name">nicAddr</tt> </tt>
-<a name="L700"></a><tt class="py-lineno"> 700</tt> <tt class="py-line"> </tt>
-<a name="L701"></a><tt class="py-lineno"> 701</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L702"></a><tt class="py-lineno"> 702</tt> <tt class="py-line"> <tt class="py-comment"># Start writing to file</tt> </tt>
-<a name="L703"></a><tt class="py-lineno"> 703</tt> <tt class="py-line"> <tt class="py-name">cellFile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt> <tt class="py-name">onosNicString</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L704"></a><tt class="py-lineno"> 704</tt> <tt class="py-line"> </tt>
-<a name="L705"></a><tt class="py-lineno"> 705</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">arg</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosIpAddrs</tt><tt class="py-op">:</tt> </tt>
-<a name="L706"></a><tt class="py-lineno"> 706</tt> <tt class="py-line"> <tt class="py-comment"># For each argument in onosIpAddrs, write to file</tt> </tt>
-<a name="L707"></a><tt class="py-lineno"> 707</tt> <tt class="py-line"> <tt class="py-comment"># Output should look like the following:</tt> </tt>
-<a name="L708"></a><tt class="py-lineno"> 708</tt> <tt class="py-line"> <tt class="py-comment"># export OC1="10.128.20.11"</tt> </tt>
-<a name="L709"></a><tt class="py-lineno"> 709</tt> <tt class="py-line"> <tt class="py-comment"># export OC2="10.128.20.12"</tt> </tt>
-<a name="L710"></a><tt class="py-lineno"> 710</tt> <tt class="py-line"> <tt class="py-name">cellFile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt> <tt class="py-name">onosString</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tempCount</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L711"></a><tt class="py-lineno"> 711</tt> <tt class="py-line"> <tt class="py-string">"="</tt> <tt class="py-op">+</tt> <tt class="py-string">"\""</tt> <tt class="py-op">+</tt> <tt class="py-name">arg</tt> <tt class="py-op">+</tt> <tt class="py-string">"\""</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L712"></a><tt class="py-lineno"> 712</tt> <tt class="py-line"> <tt class="py-name">tempCount</tt> <tt class="py-op">=</tt> <tt class="py-name">tempCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L713"></a><tt class="py-lineno"> 713</tt> <tt class="py-line"> </tt>
-<a name="L714"></a><tt class="py-lineno"> 714</tt> <tt class="py-line"> <tt class="py-name">cellFile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt> <tt class="py-name">mnString</tt> <tt class="py-op">+</tt> <tt class="py-string">"\""</tt> <tt class="py-op">+</tt> <tt class="py-name">mnIpAddrs</tt> <tt class="py-op">+</tt> <tt class="py-string">"\""</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L715"></a><tt class="py-lineno"> 715</tt> <tt class="py-line"> <tt class="py-name">cellFile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt> <tt class="py-name">appString</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L716"></a><tt class="py-lineno"> 716</tt> <tt class="py-line"> <tt class="py-name">cellFile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L717"></a><tt class="py-lineno"> 717</tt> <tt class="py-line"> </tt>
-<a name="L718"></a><tt class="py-lineno"> 718</tt> <tt class="py-line"> <tt class="py-comment"># We use os.system to send the command to TestON cluster</tt> </tt>
-<a name="L719"></a><tt class="py-lineno"> 719</tt> <tt class="py-line"> <tt class="py-comment"># to account for the case in which TestON is not located</tt> </tt>
-<a name="L720"></a><tt class="py-lineno"> 720</tt> <tt class="py-line"> <tt class="py-comment"># on the same cluster as the ONOS bench</tt> </tt>
-<a name="L721"></a><tt class="py-lineno"> 721</tt> <tt class="py-line"> <tt class="py-comment"># Note that even if TestON is located on the same cluster</tt> </tt>
-<a name="L722"></a><tt class="py-lineno"> 722</tt> <tt class="py-line"> <tt class="py-comment"># as ONOS bench, you must setup passwordless ssh</tt> </tt>
-<a name="L723"></a><tt class="py-lineno"> 723</tt> <tt class="py-line"> <tt class="py-comment"># between TestON and ONOS bench in order to automate the test.</tt> </tt>
-<a name="L724"></a><tt class="py-lineno"> 724</tt> <tt class="py-line"> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">system</tt><tt class="py-op">(</tt> <tt class="py-string">"scp "</tt> <tt class="py-op">+</tt> <tt class="py-name">tempDirectory</tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L725"></a><tt class="py-lineno"> 725</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">cellDirectory</tt> <tt class="py-op">)</tt> </tt>
-<a name="L726"></a><tt class="py-lineno"> 726</tt> <tt class="py-line"> </tt>
-<a name="L727"></a><tt class="py-lineno"> 727</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L728"></a><tt class="py-lineno"> 728</tt> <tt class="py-line"> </tt>
-<a name="L729"></a><tt class="py-lineno"> 729</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L730"></a><tt class="py-lineno"> 730</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-202" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-202', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-203" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-203', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L731"></a><tt class="py-lineno"> 731</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-204" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-204', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-205" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-205', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L732"></a><tt class="py-lineno"> 732</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-206" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-206', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L733"></a><tt class="py-lineno"> 733</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-207" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-207', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L734"></a><tt class="py-lineno"> 734</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L735"></a><tt class="py-lineno"> 735</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-208" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-208', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L736"></a><tt class="py-lineno"> 736</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-209" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-209', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L737"></a><tt class="py-lineno"> 737</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-210" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-210', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L738"></a><tt class="py-lineno"> 738</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.setCell"></a><div id="OnosDriver.setCell-def"><a name="L739"></a><tt class="py-lineno"> 739</tt> <a class="py-toggle" href="#" id="OnosDriver.setCell-toggle" onclick="return toggle('OnosDriver.setCell');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell">setCell</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">cellname</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.setCell-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.setCell-expanded"><a name="L740"></a><tt class="py-lineno"> 740</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L741"></a><tt class="py-lineno"> 741</tt> <tt class="py-line"><tt class="py-docstring"> Calls 'cell <name>' to set the environment variables on ONOSbench</tt> </tt>
-<a name="L742"></a><tt class="py-lineno"> 742</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L743"></a><tt class="py-lineno"> 743</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L744"></a><tt class="py-lineno"> 744</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L745"></a><tt class="py-lineno"> 745</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">cellname</tt><tt class="py-op">:</tt> </tt>
-<a name="L746"></a><tt class="py-lineno"> 746</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-211" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-211', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-212" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-212', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Must define cellname"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L747"></a><tt class="py-lineno"> 747</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-213" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-213', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L748"></a><tt class="py-lineno"> 748</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-214" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-214', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L749"></a><tt class="py-lineno"> 749</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L750"></a><tt class="py-lineno"> 750</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-215" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-215', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cell "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">cellname</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L751"></a><tt class="py-lineno"> 751</tt> <tt class="py-line"> <tt class="py-comment"># Expect the cellname in the ONOSCELL variable.</tt> </tt>
-<a name="L752"></a><tt class="py-lineno"> 752</tt> <tt class="py-line"> <tt class="py-comment"># Note that this variable name is subject to change</tt> </tt>
-<a name="L753"></a><tt class="py-lineno"> 753</tt> <tt class="py-line"> <tt class="py-comment"># and that this driver will have to change accordingly</tt> </tt>
-<a name="L754"></a><tt class="py-lineno"> 754</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">cellname</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L755"></a><tt class="py-lineno"> 755</tt> <tt class="py-line"> <tt class="py-name">handleBefore</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L756"></a><tt class="py-lineno"> 756</tt> <tt class="py-line"> <tt class="py-name">handleAfter</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> </tt>
-<a name="L757"></a><tt class="py-lineno"> 757</tt> <tt class="py-line"> <tt class="py-comment"># Get the rest of the handle</tt> </tt>
-<a name="L758"></a><tt class="py-lineno"> 758</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-216" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-216', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L759"></a><tt class="py-lineno"> 759</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">"\$"</tt><tt class="py-op">)</tt> </tt>
-<a name="L760"></a><tt class="py-lineno"> 760</tt> <tt class="py-line"> <tt class="py-name">handleMore</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L761"></a><tt class="py-lineno"> 761</tt> <tt class="py-line"> </tt>
-<a name="L762"></a><tt class="py-lineno"> 762</tt> <tt class="py-line"> <tt class="py-name">cell_result</tt> <tt class="py-op">=</tt> <tt class="py-name">handleBefore</tt> <tt class="py-op">+</tt> <tt class="py-name">handleAfter</tt> <tt class="py-op">+</tt> <tt class="py-name">handleMore</tt> </tt>
-<a name="L763"></a><tt class="py-lineno"> 763</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">cell_result</tt> </tt>
-<a name="L764"></a><tt class="py-lineno"> 764</tt> <tt class="py-line"> <tt class="py-keyword">if</tt><tt class="py-op">(</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"No such cell"</tt><tt class="py-op">,</tt> <tt class="py-name">cell_result</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L765"></a><tt class="py-lineno"> 765</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-217" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-217', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-218" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-218', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cell call returned: "</tt> <tt class="py-op">+</tt> <tt class="py-name">handleBefore</tt> <tt class="py-op">+</tt> </tt>
-<a name="L766"></a><tt class="py-lineno"> 766</tt> <tt class="py-line"> <tt class="py-name">handleAfter</tt> <tt class="py-op">+</tt> <tt class="py-name">handleMore</tt> <tt class="py-op">)</tt> </tt>
-<a name="L767"></a><tt class="py-lineno"> 767</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-219" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-219', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L768"></a><tt class="py-lineno"> 768</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-220" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-220', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L769"></a><tt class="py-lineno"> 769</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L770"></a><tt class="py-lineno"> 770</tt> <tt class="py-line"> </tt>
-<a name="L771"></a><tt class="py-lineno"> 771</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L772"></a><tt class="py-lineno"> 772</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-221" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-221', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-222" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-222', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L773"></a><tt class="py-lineno"> 773</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-223" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-223', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-224" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-224', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L774"></a><tt class="py-lineno"> 774</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-225" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-225', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L775"></a><tt class="py-lineno"> 775</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-226" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-226', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L776"></a><tt class="py-lineno"> 776</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L777"></a><tt class="py-lineno"> 777</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-227" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-227', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L778"></a><tt class="py-lineno"> 778</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-228" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-228', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L779"></a><tt class="py-lineno"> 779</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-229" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-229', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L780"></a><tt class="py-lineno"> 780</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.verifyCell"></a><div id="OnosDriver.verifyCell-def"><a name="L781"></a><tt class="py-lineno"> 781</tt> <a class="py-toggle" href="#" id="OnosDriver.verifyCell-toggle" onclick="return toggle('OnosDriver.verifyCell');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell">verifyCell</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.verifyCell-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.verifyCell-expanded"><a name="L782"></a><tt class="py-lineno"> 782</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L783"></a><tt class="py-lineno"> 783</tt> <tt class="py-line"><tt class="py-docstring"> Calls 'onos-verify-cell' to check for cell installation</tt> </tt>
-<a name="L784"></a><tt class="py-lineno"> 784</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L785"></a><tt class="py-lineno"> 785</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Add meaningful expect value</tt> </tt>
-<a name="L786"></a><tt class="py-lineno"> 786</tt> <tt class="py-line"> </tt>
-<a name="L787"></a><tt class="py-lineno"> 787</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L788"></a><tt class="py-lineno"> 788</tt> <tt class="py-line"> <tt class="py-comment"># Clean handle by sending empty and expecting $</tt> </tt>
-<a name="L789"></a><tt class="py-lineno"> 789</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-230" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-230', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L790"></a><tt class="py-lineno"> 790</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L791"></a><tt class="py-lineno"> 791</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-231" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-231', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos-verify-cell"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L792"></a><tt class="py-lineno"> 792</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L793"></a><tt class="py-lineno"> 793</tt> <tt class="py-line"> <tt class="py-name">handleBefore</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L794"></a><tt class="py-lineno"> 794</tt> <tt class="py-line"> <tt class="py-name">handleAfter</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> </tt>
-<a name="L795"></a><tt class="py-lineno"> 795</tt> <tt class="py-line"> <tt class="py-comment"># Get the rest of the handle</tt> </tt>
-<a name="L796"></a><tt class="py-lineno"> 796</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-232" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-232', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L797"></a><tt class="py-lineno"> 797</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L798"></a><tt class="py-lineno"> 798</tt> <tt class="py-line"> <tt class="py-name">handleMore</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L799"></a><tt class="py-lineno"> 799</tt> <tt class="py-line"> </tt>
-<a name="L800"></a><tt class="py-lineno"> 800</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-233" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-233', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Verify cell returned: "</tt> <tt class="py-op">+</tt> <tt class="py-name">handleBefore</tt> <tt class="py-op">+</tt> </tt>
-<a name="L801"></a><tt class="py-lineno"> 801</tt> <tt class="py-line"> <tt class="py-name">handleAfter</tt> <tt class="py-op">+</tt> <tt class="py-name">handleMore</tt> <tt class="py-op">)</tt> </tt>
-<a name="L802"></a><tt class="py-lineno"> 802</tt> <tt class="py-line"> </tt>
-<a name="L803"></a><tt class="py-lineno"> 803</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L804"></a><tt class="py-lineno"> 804</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">ExceptionPexpect</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L805"></a><tt class="py-lineno"> 805</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-234" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-234', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-235" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-235', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Pexpect exception found of type "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L806"></a><tt class="py-lineno"> 806</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L807"></a><tt class="py-lineno"> 807</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-236" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-236', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-237" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-237', 'error', 'link-12');">error</a></tt> <tt class="py-op">(</tt> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">get_trace</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L808"></a><tt class="py-lineno"> 808</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-238" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-238', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-239" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-239', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L809"></a><tt class="py-lineno"> 809</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-240" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-240', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L810"></a><tt class="py-lineno"> 810</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-241" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-241', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L811"></a><tt class="py-lineno"> 811</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L812"></a><tt class="py-lineno"> 812</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-242" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-242', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L813"></a><tt class="py-lineno"> 813</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-243" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-243', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L814"></a><tt class="py-lineno"> 814</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-244" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-244', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L815"></a><tt class="py-lineno"> 815</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.onosCfgSet"></a><div id="OnosDriver.onosCfgSet-def"><a name="L816"></a><tt class="py-lineno"> 816</tt> <a class="py-toggle" href="#" id="OnosDriver.onosCfgSet-toggle" onclick="return toggle('OnosDriver.onosCfgSet');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosCfgSet">onosCfgSet</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ONOSIp</tt><tt class="py-op">,</tt> <tt class="py-param">configName</tt><tt class="py-op">,</tt> <tt class="py-param">configParam</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.onosCfgSet-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.onosCfgSet-expanded"><a name="L817"></a><tt class="py-lineno"> 817</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L818"></a><tt class="py-lineno"> 818</tt> <tt class="py-line"><tt class="py-docstring"> Uses 'onos <node-ip> cfg set' to change a parameter value of an</tt> </tt>
-<a name="L819"></a><tt class="py-lineno"> 819</tt> <tt class="py-line"><tt class="py-docstring"> application.</tt> </tt>
-<a name="L820"></a><tt class="py-lineno"> 820</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L821"></a><tt class="py-lineno"> 821</tt> <tt class="py-line"><tt class="py-docstring"> ex)</tt> </tt>
-<a name="L822"></a><tt class="py-lineno"> 822</tt> <tt class="py-line"><tt class="py-docstring"> onos 10.0.0.1 cfg set org.onosproject.myapp appSetting 1</tt> </tt>
-<a name="L823"></a><tt class="py-lineno"> 823</tt> <tt class="py-line"><tt class="py-docstring"> ONOSIp = '10.0.0.1'</tt> </tt>
-<a name="L824"></a><tt class="py-lineno"> 824</tt> <tt class="py-line"><tt class="py-docstring"> configName = 'org.onosproject.myapp'</tt> </tt>
-<a name="L825"></a><tt class="py-lineno"> 825</tt> <tt class="py-line"><tt class="py-docstring"> configParam = 'appSetting 1'</tt> </tt>
-<a name="L826"></a><tt class="py-lineno"> 826</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L827"></a><tt class="py-lineno"> 827</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L828"></a><tt class="py-lineno"> 828</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L829"></a><tt class="py-lineno"> 829</tt> <tt class="py-line"> <tt class="py-name">cfgStr</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-string">"onos "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-string">" cfg set "</tt><tt class="py-op">+</tt> </tt>
-<a name="L830"></a><tt class="py-lineno"> 830</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">configName</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L831"></a><tt class="py-lineno"> 831</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">configParam</tt><tt class="py-op">)</tt> </tt>
-<a name="L832"></a><tt class="py-lineno"> 832</tt> <tt class="py-line"> <tt class="py-op">)</tt> </tt>
-<a name="L833"></a><tt class="py-lineno"> 833</tt> <tt class="py-line"> </tt>
-<a name="L834"></a><tt class="py-lineno"> 834</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-245" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-245', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L835"></a><tt class="py-lineno"> 835</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">":~"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L836"></a><tt class="py-lineno"> 836</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-246" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-246', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cfgStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L837"></a><tt class="py-lineno"> 837</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">"cfg set"</tt><tt class="py-op">)</tt> </tt>
-<a name="L838"></a><tt class="py-lineno"> 838</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">":~"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L839"></a><tt class="py-lineno"> 839</tt> <tt class="py-line"> </tt>
-<a name="L840"></a><tt class="py-lineno"> 840</tt> <tt class="py-line"> <tt class="py-name">paramValue</tt> <tt class="py-op">=</tt> <tt class="py-name">configParam</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L841"></a><tt class="py-lineno"> 841</tt> <tt class="py-line"> <tt class="py-name">paramName</tt> <tt class="py-op">=</tt> <tt class="py-name">configParam</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L842"></a><tt class="py-lineno"> 842</tt> <tt class="py-line"> </tt>
-<a name="L843"></a><tt class="py-lineno"> 843</tt> <tt class="py-line"> <tt class="py-name">checkStr</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-string">"onos "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">""" cfg get " """</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">configName</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">paramName</tt> <tt class="py-op">+</tt> <tt class="py-string">""" " """</tt><tt class="py-op">)</tt> </tt>
-<a name="L844"></a><tt class="py-lineno"> 844</tt> <tt class="py-line"> </tt>
-<a name="L845"></a><tt class="py-lineno"> 845</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-247" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-247', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">checkStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L846"></a><tt class="py-lineno"> 846</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">":~"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L847"></a><tt class="py-lineno"> 847</tt> <tt class="py-line"> </tt>
-<a name="L848"></a><tt class="py-lineno"> 848</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"value="</tt> <tt class="py-op">+</tt> <tt class="py-name">paramValue</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt><tt class="py-op">:</tt> </tt>
-<a name="L849"></a><tt class="py-lineno"> 849</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-248" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-248', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"cfg "</tt> <tt class="py-op">+</tt> <tt class="py-name">configName</tt> <tt class="py-op">+</tt> <tt class="py-string">" successfully set to "</tt> <tt class="py-op">+</tt> <tt class="py-name">configParam</tt><tt class="py-op">)</tt> </tt>
-<a name="L850"></a><tt class="py-lineno"> 850</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L851"></a><tt class="py-lineno"> 851</tt> <tt class="py-line"> </tt>
-<a name="L852"></a><tt class="py-lineno"> 852</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">ExceptionPexpect</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L853"></a><tt class="py-lineno"> 853</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-249" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-249', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-250" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-250', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Pexpect exception found of type "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L854"></a><tt class="py-lineno"> 854</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L855"></a><tt class="py-lineno"> 855</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-251" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-251', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-252" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-252', 'error', 'link-12');">error</a></tt> <tt class="py-op">(</tt> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">get_trace</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L856"></a><tt class="py-lineno"> 856</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-253" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-253', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-254" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-254', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L857"></a><tt class="py-lineno"> 857</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-255" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-255', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L858"></a><tt class="py-lineno"> 858</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-256" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-256', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L859"></a><tt class="py-lineno"> 859</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L860"></a><tt class="py-lineno"> 860</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-257" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-257', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L861"></a><tt class="py-lineno"> 861</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-258" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-258', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L862"></a><tt class="py-lineno"> 862</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-259" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-259', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L863"></a><tt class="py-lineno"> 863</tt> <tt class="py-line"> </tt>
-<a name="L864"></a><tt class="py-lineno"> 864</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L865"></a><tt class="py-lineno"> 865</tt> <tt class="py-line"> </tt>
-<a name="L866"></a><tt class="py-lineno"> 866</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-260" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-260', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-261" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-261', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">"CFG SET FAILURE: "</tt> <tt class="py-op">+</tt> <tt class="py-name">configName</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">configParam</tt> <tt class="py-op">)</tt> </tt>
-<a name="L867"></a><tt class="py-lineno"> 867</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-262" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-262', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 cfg get"</tt><tt class="py-op">)</tt> </tt>
-<a name="L868"></a><tt class="py-lineno"> 868</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">"\$"</tt><tt class="py-op">)</tt> </tt>
-<a name="L869"></a><tt class="py-lineno"> 869</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L870"></a><tt class="py-lineno"> 870</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-263" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.logReport()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#logReport"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-263', 'logReport', 'link-263');">logReport</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt><tt class="py-string">"WARN"</tt><tt class="py-op">,</tt><tt class="py-string">"EXCEPT"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"d"</tt><tt class="py-op">)</tt> </tt>
-<a name="L871"></a><tt class="py-lineno"> 871</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L872"></a><tt class="py-lineno"> 872</tt> <tt class="py-line"> </tt>
-<a name="L873"></a><tt class="py-lineno"> 873</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.onosCli"></a><div id="OnosDriver.onosCli-def"><a name="L874"></a><tt class="py-lineno"> 874</tt> <a class="py-toggle" href="#" id="OnosDriver.onosCli-toggle" onclick="return toggle('OnosDriver.onosCli');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosCli">onosCli</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ONOSIp</tt><tt class="py-op">,</tt> <tt class="py-param">cmdstr</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.onosCli-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.onosCli-expanded"><a name="L875"></a><tt class="py-lineno"> 875</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L876"></a><tt class="py-lineno"> 876</tt> <tt class="py-line"><tt class="py-docstring"> Uses 'onos' command to send various ONOS CLI arguments.</tt> </tt>
-<a name="L877"></a><tt class="py-lineno"> 877</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L878"></a><tt class="py-lineno"> 878</tt> <tt class="py-line"><tt class="py-docstring"> * ONOSIp: specify the ip of the cell machine</tt> </tt>
-<a name="L879"></a><tt class="py-lineno"> 879</tt> <tt class="py-line"><tt class="py-docstring"> * cmdstr: specify the command string to send</tt> </tt>
-<a name="L880"></a><tt class="py-lineno"> 880</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L881"></a><tt class="py-lineno"> 881</tt> <tt class="py-line"><tt class="py-docstring"> This function is intended to expose the entire karaf</tt> </tt>
-<a name="L882"></a><tt class="py-lineno"> 882</tt> <tt class="py-line"><tt class="py-docstring"> CLI commands for ONOS. Try to use this function first</tt> </tt>
-<a name="L883"></a><tt class="py-lineno"> 883</tt> <tt class="py-line"><tt class="py-docstring"> before attempting to write a ONOS CLI specific driver</tt> </tt>
-<a name="L884"></a><tt class="py-lineno"> 884</tt> <tt class="py-line"><tt class="py-docstring"> function.</tt> </tt>
-<a name="L885"></a><tt class="py-lineno"> 885</tt> <tt class="py-line"><tt class="py-docstring"> You can see a list of available 'cmdstr' arguments</tt> </tt>
-<a name="L886"></a><tt class="py-lineno"> 886</tt> <tt class="py-line"><tt class="py-docstring"> by starting onos, and typing in 'onos' to enter the</tt> </tt>
-<a name="L887"></a><tt class="py-lineno"> 887</tt> <tt class="py-line"><tt class="py-docstring"> onos> CLI. Then, type 'help' to see the list of</tt> </tt>
-<a name="L888"></a><tt class="py-lineno"> 888</tt> <tt class="py-line"><tt class="py-docstring"> available commands.</tt> </tt>
-<a name="L889"></a><tt class="py-lineno"> 889</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L890"></a><tt class="py-lineno"> 890</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L891"></a><tt class="py-lineno"> 891</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">:</tt> </tt>
-<a name="L892"></a><tt class="py-lineno"> 892</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-264" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-264', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-265" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-265', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"You must specify the IP address"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L893"></a><tt class="py-lineno"> 893</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L894"></a><tt class="py-lineno"> 894</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">cmdstr</tt><tt class="py-op">:</tt> </tt>
-<a name="L895"></a><tt class="py-lineno"> 895</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-266" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-266', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-267" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-267', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"You must specify the command string"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L896"></a><tt class="py-lineno"> 896</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L897"></a><tt class="py-lineno"> 897</tt> <tt class="py-line"> </tt>
-<a name="L898"></a><tt class="py-lineno"> 898</tt> <tt class="py-line"> <tt class="py-name">cmdstr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">cmdstr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L899"></a><tt class="py-lineno"> 899</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-268" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-268', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L900"></a><tt class="py-lineno"> 900</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L901"></a><tt class="py-lineno"> 901</tt> <tt class="py-line"> </tt>
-<a name="L902"></a><tt class="py-lineno"> 902</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-269" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-269', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos -w "</tt> <tt class="py-op">+</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">cmdstr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L903"></a><tt class="py-lineno"> 903</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L904"></a><tt class="py-lineno"> 904</tt> <tt class="py-line"> </tt>
-<a name="L905"></a><tt class="py-lineno"> 905</tt> <tt class="py-line"> <tt class="py-name">handleBefore</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L906"></a><tt class="py-lineno"> 906</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"handle_before = "</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L907"></a><tt class="py-lineno"> 907</tt> <tt class="py-line"> <tt class="py-comment"># handleAfter = str( self.handle.after )</tt> </tt>
-<a name="L908"></a><tt class="py-lineno"> 908</tt> <tt class="py-line"> </tt>
-<a name="L909"></a><tt class="py-lineno"> 909</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.sendline( "" )</tt> </tt>
-<a name="L910"></a><tt class="py-lineno"> 910</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "\$" )</tt> </tt>
-<a name="L911"></a><tt class="py-lineno"> 911</tt> <tt class="py-line"> <tt class="py-comment"># handleMore = str( self.handle.before )</tt> </tt>
-<a name="L912"></a><tt class="py-lineno"> 912</tt> <tt class="py-line"> </tt>
-<a name="L913"></a><tt class="py-lineno"> 913</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-270" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-270', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Command sent successfully"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L914"></a><tt class="py-lineno"> 914</tt> <tt class="py-line"> </tt>
-<a name="L915"></a><tt class="py-lineno"> 915</tt> <tt class="py-line"> <tt class="py-comment"># Obtain return handle that consists of result from</tt> </tt>
-<a name="L916"></a><tt class="py-lineno"> 916</tt> <tt class="py-line"> <tt class="py-comment"># the onos command. The string may need to be</tt> </tt>
-<a name="L917"></a><tt class="py-lineno"> 917</tt> <tt class="py-line"> <tt class="py-comment"># configured further.</tt> </tt>
-<a name="L918"></a><tt class="py-lineno"> 918</tt> <tt class="py-line"> <tt class="py-comment"># returnString = handleBefore + handleAfter</tt> </tt>
-<a name="L919"></a><tt class="py-lineno"> 919</tt> <tt class="py-line"> <tt class="py-name">returnString</tt> <tt class="py-op">=</tt> <tt class="py-name">handleBefore</tt> </tt>
-<a name="L920"></a><tt class="py-lineno"> 920</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"return_string = "</tt><tt class="py-op">,</tt> <tt class="py-name">returnString</tt> </tt>
-<a name="L921"></a><tt class="py-lineno"> 921</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">returnString</tt> </tt>
-<a name="L922"></a><tt class="py-lineno"> 922</tt> <tt class="py-line"> </tt>
-<a name="L923"></a><tt class="py-lineno"> 923</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L924"></a><tt class="py-lineno"> 924</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-271" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-271', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-272" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-272', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L925"></a><tt class="py-lineno"> 925</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-273" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-273', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-274" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-274', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L926"></a><tt class="py-lineno"> 926</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-275" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-275', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L927"></a><tt class="py-lineno"> 927</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-276" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-276', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L928"></a><tt class="py-lineno"> 928</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L929"></a><tt class="py-lineno"> 929</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-277" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-277', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L930"></a><tt class="py-lineno"> 930</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-278" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-278', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L931"></a><tt class="py-lineno"> 931</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-279" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-279', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L932"></a><tt class="py-lineno"> 932</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.onosInstall"></a><div id="OnosDriver.onosInstall-def"><a name="L933"></a><tt class="py-lineno"> 933</tt> <a class="py-toggle" href="#" id="OnosDriver.onosInstall-toggle" onclick="return toggle('OnosDriver.onosInstall');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall">onosInstall</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">options</tt><tt class="py-op">=</tt><tt class="py-string">"-f"</tt><tt class="py-op">,</tt> <tt class="py-param">node</tt><tt class="py-op">=</tt><tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.onosInstall-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.onosInstall-expanded"><a name="L934"></a><tt class="py-lineno"> 934</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L935"></a><tt class="py-lineno"> 935</tt> <tt class="py-line"><tt class="py-docstring"> Installs ONOS bits on the designated cell machine.</tt> </tt>
-<a name="L936"></a><tt class="py-lineno"> 936</tt> <tt class="py-line"><tt class="py-docstring"> If -f option is provided, it also forces an uninstall.</tt> </tt>
-<a name="L937"></a><tt class="py-lineno"> 937</tt> <tt class="py-line"><tt class="py-docstring"> Presently, install also includes onos-push-bits and</tt> </tt>
-<a name="L938"></a><tt class="py-lineno"> 938</tt> <tt class="py-line"><tt class="py-docstring"> onos-config within.</tt> </tt>
-<a name="L939"></a><tt class="py-lineno"> 939</tt> <tt class="py-line"><tt class="py-docstring"> The node option allows you to selectively only push the jar</tt> </tt>
-<a name="L940"></a><tt class="py-lineno"> 940</tt> <tt class="py-line"><tt class="py-docstring"> files to certain onos nodes</tt> </tt>
-<a name="L941"></a><tt class="py-lineno"> 941</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L942"></a><tt class="py-lineno"> 942</tt> <tt class="py-line"><tt class="py-docstring"> Returns: main.TRUE on success and main.FALSE on failure</tt> </tt>
-<a name="L943"></a><tt class="py-lineno"> 943</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L944"></a><tt class="py-lineno"> 944</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L945"></a><tt class="py-lineno"> 945</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L946"></a><tt class="py-lineno"> 946</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-280" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-280', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos-install "</tt> <tt class="py-op">+</tt> <tt class="py-name">options</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt> <tt class="py-op">)</tt> </tt>
-<a name="L947"></a><tt class="py-lineno"> 947</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L948"></a><tt class="py-lineno"> 948</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-281" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-281', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos-install "</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt> <tt class="py-op">)</tt> </tt>
-<a name="L949"></a><tt class="py-lineno"> 949</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"onos-install "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L950"></a><tt class="py-lineno"> 950</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: this timeout may need to change depending on the network</tt> </tt>
-<a name="L951"></a><tt class="py-lineno"> 951</tt> <tt class="py-line"> <tt class="py-comment"># and size of ONOS</tt> </tt>
-<a name="L952"></a><tt class="py-lineno"> 952</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"Network\sis\sunreachable"</tt><tt class="py-op">,</tt> </tt>
-<a name="L953"></a><tt class="py-lineno"> 953</tt> <tt class="py-line"> <tt class="py-string">"onos\sstart/running,\sprocess"</tt><tt class="py-op">,</tt> </tt>
-<a name="L954"></a><tt class="py-lineno"> 954</tt> <tt class="py-line"> <tt class="py-string">"ONOS\sis\salready\sinstalled"</tt><tt class="py-op">,</tt> </tt>
-<a name="L955"></a><tt class="py-lineno"> 955</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L956"></a><tt class="py-lineno"> 956</tt> <tt class="py-line"> </tt>
-<a name="L957"></a><tt class="py-lineno"> 957</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L958"></a><tt class="py-lineno"> 958</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-282" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-282', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Network is unreachable"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L959"></a><tt class="py-lineno"> 959</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L960"></a><tt class="py-lineno"> 960</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L961"></a><tt class="py-lineno"> 961</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-283" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-283', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L962"></a><tt class="py-lineno"> 962</tt> <tt class="py-line"> <tt class="py-string">"ONOS was installed on "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L963"></a><tt class="py-lineno"> 963</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">+</tt> </tt>
-<a name="L964"></a><tt class="py-lineno"> 964</tt> <tt class="py-line"> <tt class="py-string">" and started"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L965"></a><tt class="py-lineno"> 965</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L966"></a><tt class="py-lineno"> 966</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L967"></a><tt class="py-lineno"> 967</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-284" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-284', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS is already installed on "</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt> <tt class="py-op">)</tt> </tt>
-<a name="L968"></a><tt class="py-lineno"> 968</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L969"></a><tt class="py-lineno"> 969</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L970"></a><tt class="py-lineno"> 970</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-285" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-285', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L971"></a><tt class="py-lineno"> 971</tt> <tt class="py-line"> <tt class="py-string">"Installation of ONOS on "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L972"></a><tt class="py-lineno"> 972</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">+</tt> </tt>
-<a name="L973"></a><tt class="py-lineno"> 973</tt> <tt class="py-line"> <tt class="py-string">" timed out"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L974"></a><tt class="py-lineno"> 974</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L975"></a><tt class="py-lineno"> 975</tt> <tt class="py-line"> </tt>
-<a name="L976"></a><tt class="py-lineno"> 976</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L977"></a><tt class="py-lineno"> 977</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-286" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-286', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-287" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-287', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L978"></a><tt class="py-lineno"> 978</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-288" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-288', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-289" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-289', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L979"></a><tt class="py-lineno"> 979</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-290" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-290', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L980"></a><tt class="py-lineno"> 980</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-291" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-291', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L981"></a><tt class="py-lineno"> 981</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L982"></a><tt class="py-lineno"> 982</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-292" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-292', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L983"></a><tt class="py-lineno"> 983</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-293" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-293', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L984"></a><tt class="py-lineno"> 984</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-294" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-294', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L985"></a><tt class="py-lineno"> 985</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.onosStart"></a><div id="OnosDriver.onosStart-def"><a name="L986"></a><tt class="py-lineno"> 986</tt> <a class="py-toggle" href="#" id="OnosDriver.onosStart-toggle" onclick="return toggle('OnosDriver.onosStart');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStart">onosStart</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">nodeIp</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.onosStart-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.onosStart-expanded"><a name="L987"></a><tt class="py-lineno"> 987</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L988"></a><tt class="py-lineno"> 988</tt> <tt class="py-line"><tt class="py-docstring"> Calls onos command: 'onos-service [<node-ip>] start'</tt> </tt>
-<a name="L989"></a><tt class="py-lineno"> 989</tt> <tt class="py-line"><tt class="py-docstring"> This command is a remote management of the ONOS upstart daemon</tt> </tt>
-<a name="L990"></a><tt class="py-lineno"> 990</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L991"></a><tt class="py-lineno"> 991</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L992"></a><tt class="py-lineno"> 992</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-295" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-295', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L993"></a><tt class="py-lineno"> 993</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L994"></a><tt class="py-lineno"> 994</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-296" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-296', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos-service "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">nodeIp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L995"></a><tt class="py-lineno"> 995</tt> <tt class="py-line"> <tt class="py-string">" start"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L996"></a><tt class="py-lineno"> 996</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L997"></a><tt class="py-lineno"> 997</tt> <tt class="py-line"> <tt class="py-string">"Job\sis\salready\srunning"</tt><tt class="py-op">,</tt> </tt>
-<a name="L998"></a><tt class="py-lineno"> 998</tt> <tt class="py-line"> <tt class="py-string">"start/running"</tt><tt class="py-op">,</tt> </tt>
-<a name="L999"></a><tt class="py-lineno"> 999</tt> <tt class="py-line"> <tt class="py-string">"Unknown\sinstance"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1000"></a><tt class="py-lineno">1000</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1001"></a><tt class="py-lineno">1001</tt> <tt class="py-line"> </tt>
-<a name="L1002"></a><tt class="py-lineno">1002</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1003"></a><tt class="py-lineno">1003</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-297" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-297', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Service is already running"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1004"></a><tt class="py-lineno">1004</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1005"></a><tt class="py-lineno">1005</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1006"></a><tt class="py-lineno">1006</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-298" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-298', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS service started"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1007"></a><tt class="py-lineno">1007</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1008"></a><tt class="py-lineno">1008</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1009"></a><tt class="py-lineno">1009</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-299" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-299', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-300" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-300', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS service failed to start"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1010"></a><tt class="py-lineno">1010</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-301" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-301', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1011"></a><tt class="py-lineno">1011</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-302" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-302', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1012"></a><tt class="py-lineno">1012</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1013"></a><tt class="py-lineno">1013</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-303" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-303', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-304" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-304', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1014"></a><tt class="py-lineno">1014</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-305" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-305', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-306" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-306', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1015"></a><tt class="py-lineno">1015</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-307" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-307', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1016"></a><tt class="py-lineno">1016</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-308" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-308', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1017"></a><tt class="py-lineno">1017</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1018"></a><tt class="py-lineno">1018</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-309" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-309', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1019"></a><tt class="py-lineno">1019</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-310" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-310', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1020"></a><tt class="py-lineno">1020</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-311" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-311', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1021"></a><tt class="py-lineno">1021</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.onosStop"></a><div id="OnosDriver.onosStop-def"><a name="L1022"></a><tt class="py-lineno">1022</tt> <a class="py-toggle" href="#" id="OnosDriver.onosStop-toggle" onclick="return toggle('OnosDriver.onosStop');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStop">onosStop</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">nodeIp</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.onosStop-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.onosStop-expanded"><a name="L1023"></a><tt class="py-lineno">1023</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1024"></a><tt class="py-lineno">1024</tt> <tt class="py-line"><tt class="py-docstring"> Calls onos command: 'onos-service [<node-ip>] stop'</tt> </tt>
-<a name="L1025"></a><tt class="py-lineno">1025</tt> <tt class="py-line"><tt class="py-docstring"> This command is a remote management of the ONOS upstart daemon</tt> </tt>
-<a name="L1026"></a><tt class="py-lineno">1026</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1027"></a><tt class="py-lineno">1027</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1028"></a><tt class="py-lineno">1028</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-312" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-312', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1029"></a><tt class="py-lineno">1029</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1030"></a><tt class="py-lineno">1030</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-313" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-313', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos-service "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">nodeIp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1031"></a><tt class="py-lineno">1031</tt> <tt class="py-line"> <tt class="py-string">" stop"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1032"></a><tt class="py-lineno">1032</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L1033"></a><tt class="py-lineno">1033</tt> <tt class="py-line"> <tt class="py-string">"stop/waiting"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1034"></a><tt class="py-lineno">1034</tt> <tt class="py-line"> <tt class="py-string">"Could not resolve hostname"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1035"></a><tt class="py-lineno">1035</tt> <tt class="py-line"> <tt class="py-string">"Unknown\sinstance"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1036"></a><tt class="py-lineno">1036</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1037"></a><tt class="py-lineno">1037</tt> <tt class="py-line"> </tt>
-<a name="L1038"></a><tt class="py-lineno">1038</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1039"></a><tt class="py-lineno">1039</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-314" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-314', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS service stopped"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1040"></a><tt class="py-lineno">1040</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1041"></a><tt class="py-lineno">1041</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1042"></a><tt class="py-lineno">1042</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-315" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-315', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"onosStop() Unknown ONOS instance specified: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1043"></a><tt class="py-lineno">1043</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">nodeIp</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1044"></a><tt class="py-lineno">1044</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1045"></a><tt class="py-lineno">1045</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L1046"></a><tt class="py-lineno">1046</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-316" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-316', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS wasn't running"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1047"></a><tt class="py-lineno">1047</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1048"></a><tt class="py-lineno">1048</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1049"></a><tt class="py-lineno">1049</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-317" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-317', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-318" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-318', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS service failed to stop"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1050"></a><tt class="py-lineno">1050</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1051"></a><tt class="py-lineno">1051</tt> <tt class="py-line"> </tt>
-<a name="L1052"></a><tt class="py-lineno">1052</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1053"></a><tt class="py-lineno">1053</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-319" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-319', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-320" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-320', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1054"></a><tt class="py-lineno">1054</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-321" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-321', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-322" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-322', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1055"></a><tt class="py-lineno">1055</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-323" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-323', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1056"></a><tt class="py-lineno">1056</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-324" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-324', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1057"></a><tt class="py-lineno">1057</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1058"></a><tt class="py-lineno">1058</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-325" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-325', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1059"></a><tt class="py-lineno">1059</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-326" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-326', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1060"></a><tt class="py-lineno">1060</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-327" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-327', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1061"></a><tt class="py-lineno">1061</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.onosUninstall"></a><div id="OnosDriver.onosUninstall-def"><a name="L1062"></a><tt class="py-lineno">1062</tt> <a class="py-toggle" href="#" id="OnosDriver.onosUninstall-toggle" onclick="return toggle('OnosDriver.onosUninstall');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall">onosUninstall</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">nodeIp</tt><tt class="py-op">=</tt><tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.onosUninstall-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.onosUninstall-expanded"><a name="L1063"></a><tt class="py-lineno">1063</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1064"></a><tt class="py-lineno">1064</tt> <tt class="py-line"><tt class="py-docstring"> Calls the command: 'onos-uninstall'</tt> </tt>
-<a name="L1065"></a><tt class="py-lineno">1065</tt> <tt class="py-line"><tt class="py-docstring"> Uninstalls ONOS from the designated cell machine, stopping</tt> </tt>
-<a name="L1066"></a><tt class="py-lineno">1066</tt> <tt class="py-line"><tt class="py-docstring"> if needed</tt> </tt>
-<a name="L1067"></a><tt class="py-lineno">1067</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1068"></a><tt class="py-lineno">1068</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1069"></a><tt class="py-lineno">1069</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-328" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-328', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1070"></a><tt class="py-lineno">1070</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1071"></a><tt class="py-lineno">1071</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-329" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-329', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos-uninstall "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">nodeIp</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1072"></a><tt class="py-lineno">1072</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1073"></a><tt class="py-lineno">1073</tt> <tt class="py-line"> </tt>
-<a name="L1074"></a><tt class="py-lineno">1074</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-330" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-330', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">nodeIp</tt> <tt class="py-op">+</tt> <tt class="py-string">" was uninstalled"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1075"></a><tt class="py-lineno">1075</tt> <tt class="py-line"> </tt>
-<a name="L1076"></a><tt class="py-lineno">1076</tt> <tt class="py-line"> <tt class="py-comment"># onos-uninstall command does not return any text</tt> </tt>
-<a name="L1077"></a><tt class="py-lineno">1077</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1078"></a><tt class="py-lineno">1078</tt> <tt class="py-line"> </tt>
-<a name="L1079"></a><tt class="py-lineno">1079</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">:</tt> </tt>
-<a name="L1080"></a><tt class="py-lineno">1080</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-331" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-331', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Timeout in onosUninstall"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1081"></a><tt class="py-lineno">1081</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1082"></a><tt class="py-lineno">1082</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1083"></a><tt class="py-lineno">1083</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-332" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-332', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-333" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-333', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1084"></a><tt class="py-lineno">1084</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-334" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-334', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-335" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-335', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1085"></a><tt class="py-lineno">1085</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-336" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-336', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1086"></a><tt class="py-lineno">1086</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-337" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-337', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1087"></a><tt class="py-lineno">1087</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1088"></a><tt class="py-lineno">1088</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-338" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-338', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1089"></a><tt class="py-lineno">1089</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-339" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-339', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1090"></a><tt class="py-lineno">1090</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-340" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-340', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1091"></a><tt class="py-lineno">1091</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.onosDie"></a><div id="OnosDriver.onosDie-def"><a name="L1092"></a><tt class="py-lineno">1092</tt> <a class="py-toggle" href="#" id="OnosDriver.onosDie-toggle" onclick="return toggle('OnosDriver.onosDie');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosDie">onosDie</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">nodeIp</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.onosDie-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.onosDie-expanded"><a name="L1093"></a><tt class="py-lineno">1093</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1094"></a><tt class="py-lineno">1094</tt> <tt class="py-line"><tt class="py-docstring"> Issues the command 'onos-die <node-ip>'</tt> </tt>
-<a name="L1095"></a><tt class="py-lineno">1095</tt> <tt class="py-line"><tt class="py-docstring"> This command calls onos-kill and also stops the node</tt> </tt>
-<a name="L1096"></a><tt class="py-lineno">1096</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1097"></a><tt class="py-lineno">1097</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1098"></a><tt class="py-lineno">1098</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-341" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-341', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1099"></a><tt class="py-lineno">1099</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1100"></a><tt class="py-lineno">1100</tt> <tt class="py-line"> <tt class="py-name">cmdStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos-kill "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">nodeIp</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1101"></a><tt class="py-lineno">1101</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-342" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-342', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmdStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1102"></a><tt class="py-lineno">1102</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L1103"></a><tt class="py-lineno">1103</tt> <tt class="py-line"> <tt class="py-string">"Killing\sONOS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1104"></a><tt class="py-lineno">1104</tt> <tt class="py-line"> <tt class="py-string">"ONOS\sprocess\sis\snot\srunning"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1105"></a><tt class="py-lineno">1105</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">20</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1106"></a><tt class="py-lineno">1106</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1107"></a><tt class="py-lineno">1107</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-343" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-343', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS instance "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">nodeIp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1108"></a><tt class="py-lineno">1108</tt> <tt class="py-line"> <tt class="py-string">" was killed and stopped"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1109"></a><tt class="py-lineno">1109</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1110"></a><tt class="py-lineno">1110</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1111"></a><tt class="py-lineno">1111</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-344" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-344', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS process was not running"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1112"></a><tt class="py-lineno">1112</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1113"></a><tt class="py-lineno">1113</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1114"></a><tt class="py-lineno">1114</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-345" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-345', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-346" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-346', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1115"></a><tt class="py-lineno">1115</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-347" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-347', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-348" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-348', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1116"></a><tt class="py-lineno">1116</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-349" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-349', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1117"></a><tt class="py-lineno">1117</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-350" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-350', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1118"></a><tt class="py-lineno">1118</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1119"></a><tt class="py-lineno">1119</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-351" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-351', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1120"></a><tt class="py-lineno">1120</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-352" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-352', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1121"></a><tt class="py-lineno">1121</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-353" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-353', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1122"></a><tt class="py-lineno">1122</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.onosKill"></a><div id="OnosDriver.onosKill-def"><a name="L1123"></a><tt class="py-lineno">1123</tt> <a class="py-toggle" href="#" id="OnosDriver.onosKill-toggle" onclick="return toggle('OnosDriver.onosKill');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosKill">onosKill</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">nodeIp</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.onosKill-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.onosKill-expanded"><a name="L1124"></a><tt class="py-lineno">1124</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1125"></a><tt class="py-lineno">1125</tt> <tt class="py-line"><tt class="py-docstring"> Calls the command: 'onos-kill [<node-ip>]'</tt> </tt>
-<a name="L1126"></a><tt class="py-lineno">1126</tt> <tt class="py-line"><tt class="py-docstring"> "Remotely, and unceremoniously kills the ONOS instance running on</tt> </tt>
-<a name="L1127"></a><tt class="py-lineno">1127</tt> <tt class="py-line"><tt class="py-docstring"> the specified cell machine" - Tom V</tt> </tt>
-<a name="L1128"></a><tt class="py-lineno">1128</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1129"></a><tt class="py-lineno">1129</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1130"></a><tt class="py-lineno">1130</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-354" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-354', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1131"></a><tt class="py-lineno">1131</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1132"></a><tt class="py-lineno">1132</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-355" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-355', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos-kill "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">nodeIp</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1133"></a><tt class="py-lineno">1133</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L1134"></a><tt class="py-lineno">1134</tt> <tt class="py-line"> <tt class="py-string">"\$"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1135"></a><tt class="py-lineno">1135</tt> <tt class="py-line"> <tt class="py-string">"No\sroute\sto\shost"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1136"></a><tt class="py-lineno">1136</tt> <tt class="py-line"> <tt class="py-string">"password:"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1137"></a><tt class="py-lineno">1137</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">20</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1138"></a><tt class="py-lineno">1138</tt> <tt class="py-line"> </tt>
-<a name="L1139"></a><tt class="py-lineno">1139</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1140"></a><tt class="py-lineno">1140</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-356" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-356', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L1141"></a><tt class="py-lineno">1141</tt> <tt class="py-line"> <tt class="py-string">"ONOS instance "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L1142"></a><tt class="py-lineno">1142</tt> <tt class="py-line"> <tt class="py-name">nodeIp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" was killed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1143"></a><tt class="py-lineno">1143</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1144"></a><tt class="py-lineno">1144</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1145"></a><tt class="py-lineno">1145</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-357" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-357', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"No route to host"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1146"></a><tt class="py-lineno">1146</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1147"></a><tt class="py-lineno">1147</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L1148"></a><tt class="py-lineno">1148</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-358" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-358', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L1149"></a><tt class="py-lineno">1149</tt> <tt class="py-line"> <tt class="py-string">"Passwordless login for host: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1150"></a><tt class="py-lineno">1150</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">nodeIp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1151"></a><tt class="py-lineno">1151</tt> <tt class="py-line"> <tt class="py-string">" not configured"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1152"></a><tt class="py-lineno">1152</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1153"></a><tt class="py-lineno">1153</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1154"></a><tt class="py-lineno">1154</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-359" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-359', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS instance was not killed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1155"></a><tt class="py-lineno">1155</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1156"></a><tt class="py-lineno">1156</tt> <tt class="py-line"> </tt>
-<a name="L1157"></a><tt class="py-lineno">1157</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1158"></a><tt class="py-lineno">1158</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-360" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-360', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-361" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-361', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1159"></a><tt class="py-lineno">1159</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-362" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-362', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-363" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-363', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1160"></a><tt class="py-lineno">1160</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-364" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-364', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1161"></a><tt class="py-lineno">1161</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-365" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-365', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1162"></a><tt class="py-lineno">1162</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1163"></a><tt class="py-lineno">1163</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-366" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-366', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1164"></a><tt class="py-lineno">1164</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-367" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-367', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1165"></a><tt class="py-lineno">1165</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-368" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-368', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1166"></a><tt class="py-lineno">1166</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.onosRemoveRaftLogs"></a><div id="OnosDriver.onosRemoveRaftLogs-def"><a name="L1167"></a><tt class="py-lineno">1167</tt> <a class="py-toggle" href="#" id="OnosDriver.onosRemoveRaftLogs-toggle" onclick="return toggle('OnosDriver.onosRemoveRaftLogs');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosRemoveRaftLogs">onosRemoveRaftLogs</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.onosRemoveRaftLogs-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.onosRemoveRaftLogs-expanded"><a name="L1168"></a><tt class="py-lineno">1168</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1169"></a><tt class="py-lineno">1169</tt> <tt class="py-line"><tt class="py-docstring"> Removes Raft / Copy cat files from ONOS to ensure</tt> </tt>
-<a name="L1170"></a><tt class="py-lineno">1170</tt> <tt class="py-line"><tt class="py-docstring"> a cleaner environment.</tt> </tt>
-<a name="L1171"></a><tt class="py-lineno">1171</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1172"></a><tt class="py-lineno">1172</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1173"></a><tt class="py-lineno">1173</tt> <tt class="py-line"><tt class="py-docstring"> Stops all ONOS defined in the cell,</tt> </tt>
-<a name="L1174"></a><tt class="py-lineno">1174</tt> <tt class="py-line"><tt class="py-docstring"> wipes the raft / copycat log files</tt> </tt>
-<a name="L1175"></a><tt class="py-lineno">1175</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1176"></a><tt class="py-lineno">1176</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1177"></a><tt class="py-lineno">1177</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-369" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-369', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1178"></a><tt class="py-lineno">1178</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1179"></a><tt class="py-lineno">1179</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-370" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-370', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos-remove-raft-logs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1180"></a><tt class="py-lineno">1180</tt> <tt class="py-line"> <tt class="py-comment"># Sometimes this command hangs</tt> </tt>
-<a name="L1181"></a><tt class="py-lineno">1181</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1182"></a><tt class="py-lineno">1182</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1183"></a><tt class="py-lineno">1183</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1184"></a><tt class="py-lineno">1184</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1185"></a><tt class="py-lineno">1185</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1186"></a><tt class="py-lineno">1186</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1187"></a><tt class="py-lineno">1187</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1188"></a><tt class="py-lineno">1188</tt> <tt class="py-line"> <tt class="py-comment">#self.handle.sendline( "" )</tt> </tt>
-<a name="L1189"></a><tt class="py-lineno">1189</tt> <tt class="py-line"> <tt class="py-comment">#self.handle.expect( "\$" )</tt> </tt>
-<a name="L1190"></a><tt class="py-lineno">1190</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1191"></a><tt class="py-lineno">1191</tt> <tt class="py-line"> </tt>
-<a name="L1192"></a><tt class="py-lineno">1192</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1193"></a><tt class="py-lineno">1193</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-371" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-371', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-372" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-372', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1194"></a><tt class="py-lineno">1194</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-373" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-373', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-374" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-374', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1195"></a><tt class="py-lineno">1195</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-375" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-375', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1196"></a><tt class="py-lineno">1196</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-376" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-376', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1197"></a><tt class="py-lineno">1197</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1198"></a><tt class="py-lineno">1198</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-377" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-377', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1199"></a><tt class="py-lineno">1199</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-378" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-378', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1200"></a><tt class="py-lineno">1200</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-379" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-379', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1201"></a><tt class="py-lineno">1201</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.onosStartNetwork"></a><div id="OnosDriver.onosStartNetwork-def"><a name="L1202"></a><tt class="py-lineno">1202</tt> <a class="py-toggle" href="#" id="OnosDriver.onosStartNetwork-toggle" onclick="return toggle('OnosDriver.onosStartNetwork');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStartNetwork">onosStartNetwork</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">mntopo</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.onosStartNetwork-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.onosStartNetwork-expanded"><a name="L1203"></a><tt class="py-lineno">1203</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1204"></a><tt class="py-lineno">1204</tt> <tt class="py-line"><tt class="py-docstring"> Calls the command 'onos-start-network [ <mininet-topo> ]</tt> </tt>
-<a name="L1205"></a><tt class="py-lineno">1205</tt> <tt class="py-line"><tt class="py-docstring"> "remotely starts the specified topology on the cell's</tt> </tt>
-<a name="L1206"></a><tt class="py-lineno">1206</tt> <tt class="py-line"><tt class="py-docstring"> mininet machine against all controllers configured in the</tt> </tt>
-<a name="L1207"></a><tt class="py-lineno">1207</tt> <tt class="py-line"><tt class="py-docstring"> cell."</tt> </tt>
-<a name="L1208"></a><tt class="py-lineno">1208</tt> <tt class="py-line"><tt class="py-docstring"> * Specify mininet topology file name for mntopo</tt> </tt>
-<a name="L1209"></a><tt class="py-lineno">1209</tt> <tt class="py-line"><tt class="py-docstring"> * Topo files should be placed at:</tt> </tt>
-<a name="L1210"></a><tt class="py-lineno">1210</tt> <tt class="py-line"><tt class="py-docstring"> ~/<your-onos-directory>/tools/test/topos</tt> </tt>
-<a name="L1211"></a><tt class="py-lineno">1211</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1212"></a><tt class="py-lineno">1212</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: This function will take you to the mininet prompt</tt> </tt>
-<a name="L1213"></a><tt class="py-lineno">1213</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1214"></a><tt class="py-lineno">1214</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1215"></a><tt class="py-lineno">1215</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">mntopo</tt><tt class="py-op">:</tt> </tt>
-<a name="L1216"></a><tt class="py-lineno">1216</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-380" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-380', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-381" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-381', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"You must specify a topo file to execute"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1217"></a><tt class="py-lineno">1217</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1218"></a><tt class="py-lineno">1218</tt> <tt class="py-line"> </tt>
-<a name="L1219"></a><tt class="py-lineno">1219</tt> <tt class="py-line"> <tt class="py-name">mntopo</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mntopo</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1220"></a><tt class="py-lineno">1220</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-382" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-382', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1221"></a><tt class="py-lineno">1221</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1222"></a><tt class="py-lineno">1222</tt> <tt class="py-line"> </tt>
-<a name="L1223"></a><tt class="py-lineno">1223</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-383" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-383', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos-start-network "</tt> <tt class="py-op">+</tt> <tt class="py-name">mntopo</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1224"></a><tt class="py-lineno">1224</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"mininet>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1225"></a><tt class="py-lineno">1225</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-384" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-384', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Network started, entered mininet prompt"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1226"></a><tt class="py-lineno">1226</tt> <tt class="py-line"> </tt>
-<a name="L1227"></a><tt class="py-lineno">1227</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Think about whether return is necessary or not</tt> </tt>
-<a name="L1228"></a><tt class="py-lineno">1228</tt> <tt class="py-line"> </tt>
-<a name="L1229"></a><tt class="py-lineno">1229</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1230"></a><tt class="py-lineno">1230</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-385" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-385', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-386" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-386', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1231"></a><tt class="py-lineno">1231</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-387" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-387', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-388" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-388', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1232"></a><tt class="py-lineno">1232</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-389" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-389', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1233"></a><tt class="py-lineno">1233</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-390" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-390', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1234"></a><tt class="py-lineno">1234</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1235"></a><tt class="py-lineno">1235</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-391" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-391', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1236"></a><tt class="py-lineno">1236</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-392" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-392', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1237"></a><tt class="py-lineno">1237</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-393" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-393', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1238"></a><tt class="py-lineno">1238</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.isup"></a><div id="OnosDriver.isup-def"><a name="L1239"></a><tt class="py-lineno">1239</tt> <a class="py-toggle" href="#" id="OnosDriver.isup-toggle" onclick="return toggle('OnosDriver.isup');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup">isup</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">node</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-param">timeout</tt> <tt class="py-op">=</tt> <tt class="py-number">120</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.isup-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.isup-expanded"><a name="L1240"></a><tt class="py-lineno">1240</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1241"></a><tt class="py-lineno">1241</tt> <tt class="py-line"><tt class="py-docstring"> Run's onos-wait-for-start which only returns once ONOS is at run</tt> </tt>
-<a name="L1242"></a><tt class="py-lineno">1242</tt> <tt class="py-line"><tt class="py-docstring"> level 100(ready for use)</tt> </tt>
-<a name="L1243"></a><tt class="py-lineno">1243</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1244"></a><tt class="py-lineno">1244</tt> <tt class="py-line"><tt class="py-docstring"> Returns: main.TRUE if ONOS is running and main.FALSE on timeout</tt> </tt>
-<a name="L1245"></a><tt class="py-lineno">1245</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1246"></a><tt class="py-lineno">1246</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1247"></a><tt class="py-lineno">1247</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-394" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-394', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos-wait-for-start "</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1248"></a><tt class="py-lineno">1248</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">"onos-wait-for-start"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1249"></a><tt class="py-lineno">1249</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: this timeout is arbitrary"</tt> </tt>
-<a name="L1250"></a><tt class="py-lineno">1250</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L1251"></a><tt class="py-lineno">1251</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1252"></a><tt class="py-lineno">1252</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-395" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-395', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt> <tt class="py-op">+</tt> <tt class="py-string">" is up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1253"></a><tt class="py-lineno">1253</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1254"></a><tt class="py-lineno">1254</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1255"></a><tt class="py-lineno">1255</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: since this function won't return until ONOS is ready,</tt> </tt>
-<a name="L1256"></a><tt class="py-lineno">1256</tt> <tt class="py-line"> <tt class="py-comment"># we will kill it on timeout</tt> </tt>
-<a name="L1257"></a><tt class="py-lineno">1257</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-396" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-396', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-397" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-397', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS has not started yet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1258"></a><tt class="py-lineno">1258</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-398" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-398', 'send', 'link-116');">send</a></tt><tt class="py-op">(</tt> <tt class="py-string">"\x03"</tt> <tt class="py-op">)</tt> <tt class="py-comment"># Control-C</tt> </tt>
-<a name="L1259"></a><tt class="py-lineno">1259</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1260"></a><tt class="py-lineno">1260</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1261"></a><tt class="py-lineno">1261</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1262"></a><tt class="py-lineno">1262</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-399" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-399', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-400" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-400', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1263"></a><tt class="py-lineno">1263</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-401" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-401', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-402" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-402', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1264"></a><tt class="py-lineno">1264</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-403" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-403', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1265"></a><tt class="py-lineno">1265</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-404" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-404', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1266"></a><tt class="py-lineno">1266</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1267"></a><tt class="py-lineno">1267</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-405" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-405', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1268"></a><tt class="py-lineno">1268</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-406" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-406', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1269"></a><tt class="py-lineno">1269</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-407" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-407', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1270"></a><tt class="py-lineno">1270</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.pushTestIntentsShell"></a><div id="OnosDriver.pushTestIntentsShell-def"><a name="L1271"></a><tt class="py-lineno">1271</tt> <a class="py-toggle" href="#" id="OnosDriver.pushTestIntentsShell-toggle" onclick="return toggle('OnosDriver.pushTestIntentsShell');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#pushTestIntentsShell">pushTestIntentsShell</a><tt class="py-op">(</tt> </tt>
-<a name="L1272"></a><tt class="py-lineno">1272</tt> <tt class="py-line"> <tt class="py-param">self</tt><tt class="py-op">,</tt> </tt>
-<a name="L1273"></a><tt class="py-lineno">1273</tt> <tt class="py-line"> <tt class="py-param">dpidSrc</tt><tt class="py-op">,</tt> </tt>
-<a name="L1274"></a><tt class="py-lineno">1274</tt> <tt class="py-line"> <tt class="py-param">dpidDst</tt><tt class="py-op">,</tt> </tt>
-<a name="L1275"></a><tt class="py-lineno">1275</tt> <tt class="py-line"> <tt class="py-param">numIntents</tt><tt class="py-op">,</tt> </tt>
-<a name="L1276"></a><tt class="py-lineno">1276</tt> <tt class="py-line"> <tt class="py-param">dirFile</tt><tt class="py-op">,</tt> </tt>
-<a name="L1277"></a><tt class="py-lineno">1277</tt> <tt class="py-line"> <tt class="py-param">onosIp</tt><tt class="py-op">,</tt> </tt>
-<a name="L1278"></a><tt class="py-lineno">1278</tt> <tt class="py-line"> <tt class="py-param">numMult</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1279"></a><tt class="py-lineno">1279</tt> <tt class="py-line"> <tt class="py-param">appId</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1280"></a><tt class="py-lineno">1280</tt> <tt class="py-line"> <tt class="py-param">report</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1281"></a><tt class="py-lineno">1281</tt> <tt class="py-line"> <tt class="py-param">options</tt><tt class="py-op">=</tt><tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.pushTestIntentsShell-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.pushTestIntentsShell-expanded"><a name="L1282"></a><tt class="py-lineno">1282</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1283"></a><tt class="py-lineno">1283</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1284"></a><tt class="py-lineno">1284</tt> <tt class="py-line"><tt class="py-docstring"> Use the linux prompt to push test intents to</tt> </tt>
-<a name="L1285"></a><tt class="py-lineno">1285</tt> <tt class="py-line"><tt class="py-docstring"> better parallelize the results than the CLI</tt> </tt>
-<a name="L1286"></a><tt class="py-lineno">1286</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L1287"></a><tt class="py-lineno">1287</tt> <tt class="py-line"><tt class="py-docstring"> * dpidSrc: specify source dpid</tt> </tt>
-<a name="L1288"></a><tt class="py-lineno">1288</tt> <tt class="py-line"><tt class="py-docstring"> * dpidDst: specify destination dpid</tt> </tt>
-<a name="L1289"></a><tt class="py-lineno">1289</tt> <tt class="py-line"><tt class="py-docstring"> * numIntents: specify number of intents to push</tt> </tt>
-<a name="L1290"></a><tt class="py-lineno">1290</tt> <tt class="py-line"><tt class="py-docstring"> * dirFile: specify directory and file name to save</tt> </tt>
-<a name="L1291"></a><tt class="py-lineno">1291</tt> <tt class="py-line"><tt class="py-docstring"> results</tt> </tt>
-<a name="L1292"></a><tt class="py-lineno">1292</tt> <tt class="py-line"><tt class="py-docstring"> * onosIp: specify the IP of ONOS to install on</tt> </tt>
-<a name="L1293"></a><tt class="py-lineno">1293</tt> <tt class="py-line"><tt class="py-docstring"> NOTE:</tt> </tt>
-<a name="L1294"></a><tt class="py-lineno">1294</tt> <tt class="py-line"><tt class="py-docstring"> You must invoke this command at linux shell prompt</tt> </tt>
-<a name="L1295"></a><tt class="py-lineno">1295</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1296"></a><tt class="py-lineno">1296</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1297"></a><tt class="py-lineno">1297</tt> <tt class="py-line"> <tt class="py-comment"># Create the string to sendline</tt> </tt>
-<a name="L1298"></a><tt class="py-lineno">1298</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L1299"></a><tt class="py-lineno">1299</tt> <tt class="py-line"> <tt class="py-name">baseCmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosIp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" push-test-intents "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1300"></a><tt class="py-lineno">1300</tt> <tt class="py-line"> <tt class="py-name">options</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> </tt>
-<a name="L1301"></a><tt class="py-lineno">1301</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1302"></a><tt class="py-lineno">1302</tt> <tt class="py-line"> <tt class="py-name">baseCmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosIp</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" push-test-intents "</tt> </tt>
-<a name="L1303"></a><tt class="py-lineno">1303</tt> <tt class="py-line"> </tt>
-<a name="L1304"></a><tt class="py-lineno">1304</tt> <tt class="py-line"> <tt class="py-name">addDpid</tt> <tt class="py-op">=</tt> <tt class="py-name">baseCmd</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dpidSrc</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dpidDst</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1305"></a><tt class="py-lineno">1305</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">numMult</tt><tt class="py-op">:</tt> </tt>
-<a name="L1306"></a><tt class="py-lineno">1306</tt> <tt class="py-line"> <tt class="py-name">addIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">addDpid</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">numIntents</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1307"></a><tt class="py-lineno">1307</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">numMult</tt><tt class="py-op">:</tt> </tt>
-<a name="L1308"></a><tt class="py-lineno">1308</tt> <tt class="py-line"> <tt class="py-name">addIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">addDpid</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">numIntents</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1309"></a><tt class="py-lineno">1309</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">numMult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1310"></a><tt class="py-lineno">1310</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appId</tt><tt class="py-op">:</tt> </tt>
-<a name="L1311"></a><tt class="py-lineno">1311</tt> <tt class="py-line"> <tt class="py-name">addApp</tt> <tt class="py-op">=</tt> <tt class="py-name">addIntents</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">appId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1312"></a><tt class="py-lineno">1312</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1313"></a><tt class="py-lineno">1313</tt> <tt class="py-line"> <tt class="py-name">addApp</tt> <tt class="py-op">=</tt> <tt class="py-name">addIntents</tt> </tt>
-<a name="L1314"></a><tt class="py-lineno">1314</tt> <tt class="py-line"> </tt>
-<a name="L1315"></a><tt class="py-lineno">1315</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">report</tt><tt class="py-op">:</tt> </tt>
-<a name="L1316"></a><tt class="py-lineno">1316</tt> <tt class="py-line"> <tt class="py-name">sendCmd</tt> <tt class="py-op">=</tt> <tt class="py-name">addApp</tt> <tt class="py-op">+</tt> <tt class="py-string">" > "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dirFile</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" &"</tt> </tt>
-<a name="L1317"></a><tt class="py-lineno">1317</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1318"></a><tt class="py-lineno">1318</tt> <tt class="py-line"> <tt class="py-name">sendCmd</tt> <tt class="py-op">=</tt> <tt class="py-name">addApp</tt> <tt class="py-op">+</tt> <tt class="py-string">" &"</tt> </tt>
-<a name="L1319"></a><tt class="py-lineno">1319</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-408" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-408', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Send cmd: "</tt> <tt class="py-op">+</tt> <tt class="py-name">sendCmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1320"></a><tt class="py-lineno">1320</tt> <tt class="py-line"> </tt>
-<a name="L1321"></a><tt class="py-lineno">1321</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-409" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-409', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">sendCmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1322"></a><tt class="py-lineno">1322</tt> <tt class="py-line"> </tt>
-<a name="L1323"></a><tt class="py-lineno">1323</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1324"></a><tt class="py-lineno">1324</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-410" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-410', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-411" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-411', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1325"></a><tt class="py-lineno">1325</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-412" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-412', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-413" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-413', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1326"></a><tt class="py-lineno">1326</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-414" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-414', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1327"></a><tt class="py-lineno">1327</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-415" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-415', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1328"></a><tt class="py-lineno">1328</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1329"></a><tt class="py-lineno">1329</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-416" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-416', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1330"></a><tt class="py-lineno">1330</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-417" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-417', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1331"></a><tt class="py-lineno">1331</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-418" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-418', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1332"></a><tt class="py-lineno">1332</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.getTopology"></a><div id="OnosDriver.getTopology-def"><a name="L1333"></a><tt class="py-lineno">1333</tt> <a class="py-toggle" href="#" id="OnosDriver.getTopology-toggle" onclick="return toggle('OnosDriver.getTopology');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getTopology">getTopology</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">topologyOutput</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.getTopology-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.getTopology-expanded"><a name="L1334"></a><tt class="py-lineno">1334</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1335"></a><tt class="py-lineno">1335</tt> <tt class="py-line"><tt class="py-docstring"> Definition:</tt> </tt>
-<a name="L1336"></a><tt class="py-lineno">1336</tt> <tt class="py-line"><tt class="py-docstring"> Loads a json topology output</tt> </tt>
-<a name="L1337"></a><tt class="py-lineno">1337</tt> <tt class="py-line"><tt class="py-docstring"> Return:</tt> </tt>
-<a name="L1338"></a><tt class="py-lineno">1338</tt> <tt class="py-line"><tt class="py-docstring"> topology = current ONOS topology</tt> </tt>
-<a name="L1339"></a><tt class="py-lineno">1339</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1340"></a><tt class="py-lineno">1340</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L1341"></a><tt class="py-lineno">1341</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1342"></a><tt class="py-lineno">1342</tt> <tt class="py-line"> <tt class="py-comment"># either onos:topology or 'topology' will work in CLI</tt> </tt>
-<a name="L1343"></a><tt class="py-lineno">1343</tt> <tt class="py-line"> <tt id="link-419" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#topology,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topology"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-419', 'topology', 'link-419');">topology</a></tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">topologyOutput</tt><tt class="py-op">)</tt> </tt>
-<a name="L1344"></a><tt class="py-lineno">1344</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt id="link-420" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-420', 'topology', 'link-419');">topology</a></tt> </tt>
-<a name="L1345"></a><tt class="py-lineno">1345</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-421" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-421', 'topology', 'link-419');">topology</a></tt> </tt>
-<a name="L1346"></a><tt class="py-lineno">1346</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1347"></a><tt class="py-lineno">1347</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-422" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-422', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-423" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-423', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1348"></a><tt class="py-lineno">1348</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-424" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-424', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-425" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-425', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1349"></a><tt class="py-lineno">1349</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-426" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-426', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1350"></a><tt class="py-lineno">1350</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-427" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-427', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1351"></a><tt class="py-lineno">1351</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1352"></a><tt class="py-lineno">1352</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-428" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-428', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1353"></a><tt class="py-lineno">1353</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-429" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-429', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1354"></a><tt class="py-lineno">1354</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-430" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-430', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1355"></a><tt class="py-lineno">1355</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.checkStatus"></a><div id="OnosDriver.checkStatus-def"><a name="L1356"></a><tt class="py-lineno">1356</tt> <a class="py-toggle" href="#" id="OnosDriver.checkStatus-toggle" onclick="return toggle('OnosDriver.checkStatus');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#checkStatus">checkStatus</a><tt class="py-op">(</tt> </tt>
-<a name="L1357"></a><tt class="py-lineno">1357</tt> <tt class="py-line"> <tt class="py-param">self</tt><tt class="py-op">,</tt> </tt>
-<a name="L1358"></a><tt class="py-lineno">1358</tt> <tt class="py-line"> <tt class="py-param">topologyResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1359"></a><tt class="py-lineno">1359</tt> <tt class="py-line"> <tt class="py-param">numoswitch</tt><tt class="py-op">,</tt> </tt>
-<a name="L1360"></a><tt class="py-lineno">1360</tt> <tt class="py-line"> <tt class="py-param">numolink</tt><tt class="py-op">,</tt> </tt>
-<a name="L1361"></a><tt class="py-lineno">1361</tt> <tt class="py-line"> <tt class="py-param">logLevel</tt><tt class="py-op">=</tt><tt class="py-string">"info"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.checkStatus-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.checkStatus-expanded"><a name="L1362"></a><tt class="py-lineno">1362</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1363"></a><tt class="py-lineno">1363</tt> <tt class="py-line"><tt class="py-docstring"> Checks the number of switches & links that ONOS sees against the</tt> </tt>
-<a name="L1364"></a><tt class="py-lineno">1364</tt> <tt class="py-line"><tt class="py-docstring"> supplied values. By default this will report to main.log, but the</tt> </tt>
-<a name="L1365"></a><tt class="py-lineno">1365</tt> <tt class="py-line"><tt class="py-docstring"> log level can be specific.</tt> </tt>
-<a name="L1366"></a><tt class="py-lineno">1366</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1367"></a><tt class="py-lineno">1367</tt> <tt class="py-line"><tt class="py-docstring"> Params: ip = ip used for the onos cli</tt> </tt>
-<a name="L1368"></a><tt class="py-lineno">1368</tt> <tt class="py-line"><tt class="py-docstring"> numoswitch = expected number of switches</tt> </tt>
-<a name="L1369"></a><tt class="py-lineno">1369</tt> <tt class="py-line"><tt class="py-docstring"> numolink = expected number of links</tt> </tt>
-<a name="L1370"></a><tt class="py-lineno">1370</tt> <tt class="py-line"><tt class="py-docstring"> logLevel = level to log to.</tt> </tt>
-<a name="L1371"></a><tt class="py-lineno">1371</tt> <tt class="py-line"><tt class="py-docstring"> Currently accepts 'info', 'warn' and 'report'</tt> </tt>
-<a name="L1372"></a><tt class="py-lineno">1372</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1373"></a><tt class="py-lineno">1373</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1374"></a><tt class="py-lineno">1374</tt> <tt class="py-line"><tt class="py-docstring"> logLevel can</tt> </tt>
-<a name="L1375"></a><tt class="py-lineno">1375</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1376"></a><tt class="py-lineno">1376</tt> <tt class="py-line"><tt class="py-docstring"> Returns: main.TRUE if the number of switches and links are correct,</tt> </tt>
-<a name="L1377"></a><tt class="py-lineno">1377</tt> <tt class="py-line"><tt class="py-docstring"> main.FALSE if the number of switches and links is incorrect,</tt> </tt>
-<a name="L1378"></a><tt class="py-lineno">1378</tt> <tt class="py-line"><tt class="py-docstring"> and main.ERROR otherwise</tt> </tt>
-<a name="L1379"></a><tt class="py-lineno">1379</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1380"></a><tt class="py-lineno">1380</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1381"></a><tt class="py-lineno">1381</tt> <tt class="py-line"> <tt id="link-431" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-431', 'topology', 'link-419');">topology</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-432" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.getTopology()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getTopology"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.getTopology" class="py-name" href="#" onclick="return doclink('link-432', 'getTopology', 'link-432');">getTopology</a></tt><tt class="py-op">(</tt> <tt class="py-name">topologyResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1382"></a><tt class="py-lineno">1382</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-433" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-433', 'topology', 'link-419');">topology</a></tt> <tt class="py-op">==</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">:</tt> </tt>
-<a name="L1383"></a><tt class="py-lineno">1383</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L1384"></a><tt class="py-lineno">1384</tt> <tt class="py-line"> <tt id="link-434" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-434', 'output', 'link-98');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L1385"></a><tt class="py-lineno">1385</tt> <tt class="py-line"> <tt class="py-comment"># Is the number of switches is what we expected</tt> </tt>
-<a name="L1386"></a><tt class="py-lineno">1386</tt> <tt class="py-line"> <tt id="link-435" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#devices"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-435', 'devices', 'link-435');">devices</a></tt> <tt class="py-op">=</tt> <tt id="link-436" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-436', 'topology', 'link-419');">topology</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'devices'</tt><tt class="py-op">,</tt> <tt class="py-name">False</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1387"></a><tt class="py-lineno">1387</tt> <tt class="py-line"> <tt id="link-437" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#links,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#links"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-437', 'links', 'link-437');">links</a></tt> <tt class="py-op">=</tt> <tt id="link-438" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-438', 'topology', 'link-419');">topology</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'links'</tt><tt class="py-op">,</tt> <tt class="py-name">False</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1388"></a><tt class="py-lineno">1388</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt id="link-439" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-439', 'devices', 'link-435');">devices</a></tt> <tt class="py-keyword">or</tt> <tt class="py-keyword">not</tt> <tt id="link-440" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-440', 'links', 'link-437');">links</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1389"></a><tt class="py-lineno">1389</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L1390"></a><tt class="py-lineno">1390</tt> <tt class="py-line"> <tt class="py-name">switchCheck</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt id="link-441" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-441', 'devices', 'link-435');">devices</a></tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">numoswitch</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1391"></a><tt class="py-lineno">1391</tt> <tt class="py-line"> <tt class="py-comment"># Is the number of links is what we expected</tt> </tt>
-<a name="L1392"></a><tt class="py-lineno">1392</tt> <tt class="py-line"> <tt class="py-name">linkCheck</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt id="link-442" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-442', 'links', 'link-437');">links</a></tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">numolink</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1393"></a><tt class="py-lineno">1393</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">switchCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">linkCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L1394"></a><tt class="py-lineno">1394</tt> <tt class="py-line"> <tt class="py-comment"># We expected the correct numbers</tt> </tt>
-<a name="L1395"></a><tt class="py-lineno">1395</tt> <tt class="py-line"> <tt id="link-443" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-443', 'output', 'link-98');">output</a></tt> <tt class="py-op">=</tt> <tt id="link-444" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-444', 'output', 'link-98');">output</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"The number of links and switches match "</tt>\ </tt>
-<a name="L1396"></a><tt class="py-lineno">1396</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">"what was expected"</tt> </tt>
-<a name="L1397"></a><tt class="py-lineno">1397</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1398"></a><tt class="py-lineno">1398</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1399"></a><tt class="py-lineno">1399</tt> <tt class="py-line"> <tt id="link-445" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-445', 'output', 'link-98');">output</a></tt> <tt class="py-op">=</tt> <tt id="link-446" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-446', 'output', 'link-98');">output</a></tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1400"></a><tt class="py-lineno">1400</tt> <tt class="py-line"> <tt class="py-string">"The number of links and switches does not match "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1401"></a><tt class="py-lineno">1401</tt> <tt class="py-line"> <tt class="py-string">"what was expected"</tt> </tt>
-<a name="L1402"></a><tt class="py-lineno">1402</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1403"></a><tt class="py-lineno">1403</tt> <tt class="py-line"> <tt id="link-447" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-447', 'output', 'link-98');">output</a></tt> <tt class="py-op">=</tt> <tt id="link-448" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-448', 'output', 'link-98');">output</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"\n ONOS sees %i devices"</tt> <tt class="py-op">%</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt id="link-449" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-449', 'devices', 'link-435');">devices</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L1404"></a><tt class="py-lineno">1404</tt> <tt class="py-line"> <tt id="link-450" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-450', 'output', 'link-98');">output</a></tt> <tt class="py-op">=</tt> <tt id="link-451" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-451', 'output', 'link-98');">output</a></tt> <tt class="py-op">+</tt> <tt class="py-string">" (%i expected) "</tt> <tt class="py-op">%</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">numoswitch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1405"></a><tt class="py-lineno">1405</tt> <tt class="py-line"> <tt id="link-452" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-452', 'output', 'link-98');">output</a></tt> <tt class="py-op">=</tt> <tt id="link-453" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-453', 'output', 'link-98');">output</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"and %i links "</tt> <tt class="py-op">%</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt id="link-454" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-454', 'links', 'link-437');">links</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L1406"></a><tt class="py-lineno">1406</tt> <tt class="py-line"> <tt id="link-455" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-455', 'output', 'link-98');">output</a></tt> <tt class="py-op">=</tt> <tt id="link-456" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-456', 'output', 'link-98');">output</a></tt> <tt class="py-op">+</tt> <tt class="py-string">"(%i expected)"</tt> <tt class="py-op">%</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">numolink</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1407"></a><tt class="py-lineno">1407</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">logLevel</tt> <tt class="py-op">==</tt> <tt class="py-string">"report"</tt><tt class="py-op">:</tt> </tt>
-<a name="L1408"></a><tt class="py-lineno">1408</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-457" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-457', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt id="link-458" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-458', 'output', 'link-98');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L1409"></a><tt class="py-lineno">1409</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">logLevel</tt> <tt class="py-op">==</tt> <tt class="py-string">"warn"</tt><tt class="py-op">:</tt> </tt>
-<a name="L1410"></a><tt class="py-lineno">1410</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-459" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-459', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt id="link-460" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-460', 'output', 'link-98');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L1411"></a><tt class="py-lineno">1411</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1412"></a><tt class="py-lineno">1412</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-461" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-461', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt id="link-462" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-462', 'output', 'link-98');">output</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L1413"></a><tt class="py-lineno">1413</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-<a name="L1414"></a><tt class="py-lineno">1414</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1415"></a><tt class="py-lineno">1415</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-463" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-463', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-464" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-464', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1416"></a><tt class="py-lineno">1416</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-465" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-465', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-466" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-466', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1417"></a><tt class="py-lineno">1417</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-467" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-467', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1418"></a><tt class="py-lineno">1418</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-468" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-468', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1419"></a><tt class="py-lineno">1419</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1420"></a><tt class="py-lineno">1420</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-469" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-469', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1421"></a><tt class="py-lineno">1421</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-470" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-470', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1422"></a><tt class="py-lineno">1422</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-471" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-471', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1423"></a><tt class="py-lineno">1423</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.tsharkPcap"></a><div id="OnosDriver.tsharkPcap-def"><a name="L1424"></a><tt class="py-lineno">1424</tt> <a class="py-toggle" href="#" id="OnosDriver.tsharkPcap-toggle" onclick="return toggle('OnosDriver.tsharkPcap');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkPcap">tsharkPcap</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">interface</tt><tt class="py-op">,</tt> <tt class="py-param">dirFile</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.tsharkPcap-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.tsharkPcap-expanded"><a name="L1425"></a><tt class="py-lineno">1425</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1426"></a><tt class="py-lineno">1426</tt> <tt class="py-line"><tt class="py-docstring"> Capture all packet activity and store in specified</tt> </tt>
-<a name="L1427"></a><tt class="py-lineno">1427</tt> <tt class="py-line"><tt class="py-docstring"> directory/file</tt> </tt>
-<a name="L1428"></a><tt class="py-lineno">1428</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1429"></a><tt class="py-lineno">1429</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L1430"></a><tt class="py-lineno">1430</tt> <tt class="py-line"><tt class="py-docstring"> * interface: interface to capture</tt> </tt>
-<a name="L1431"></a><tt class="py-lineno">1431</tt> <tt class="py-line"><tt class="py-docstring"> * dir: directory/filename to store pcap</tt> </tt>
-<a name="L1432"></a><tt class="py-lineno">1432</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1433"></a><tt class="py-lineno">1433</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1434"></a><tt class="py-lineno">1434</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-472" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-472', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1435"></a><tt class="py-lineno">1435</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1436"></a><tt class="py-lineno">1436</tt> <tt class="py-line"> </tt>
-<a name="L1437"></a><tt class="py-lineno">1437</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-473" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-473', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"tshark -i "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">interface</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" -t e -w "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dirFile</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" &"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1438"></a><tt class="py-lineno">1438</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-474" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-474', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"\r"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1439"></a><tt class="py-lineno">1439</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"Capturing on"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1440"></a><tt class="py-lineno">1440</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-475" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-475', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"\r"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1441"></a><tt class="py-lineno">1441</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1442"></a><tt class="py-lineno">1442</tt> <tt class="py-line"> </tt>
-<a name="L1443"></a><tt class="py-lineno">1443</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-476" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-476', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Tshark started capturing files on "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1444"></a><tt class="py-lineno">1444</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">interface</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" and saving to directory: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1445"></a><tt class="py-lineno">1445</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">dirFile</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1446"></a><tt class="py-lineno">1446</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1447"></a><tt class="py-lineno">1447</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-477" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-477', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-478" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-478', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1448"></a><tt class="py-lineno">1448</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-479" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-479', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-480" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-480', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1449"></a><tt class="py-lineno">1449</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-481" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-481', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1450"></a><tt class="py-lineno">1450</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-482" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-482', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1451"></a><tt class="py-lineno">1451</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1452"></a><tt class="py-lineno">1452</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-483" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-483', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1453"></a><tt class="py-lineno">1453</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-484" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-484', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1454"></a><tt class="py-lineno">1454</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-485" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-485', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1455"></a><tt class="py-lineno">1455</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.runOnosTopoCfg"></a><div id="OnosDriver.runOnosTopoCfg-def"><a name="L1456"></a><tt class="py-lineno">1456</tt> <a class="py-toggle" href="#" id="OnosDriver.runOnosTopoCfg-toggle" onclick="return toggle('OnosDriver.runOnosTopoCfg');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#runOnosTopoCfg">runOnosTopoCfg</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">instanceName</tt><tt class="py-op">,</tt> <tt class="py-param">jsonFile</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.runOnosTopoCfg-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.runOnosTopoCfg-expanded"><a name="L1457"></a><tt class="py-lineno">1457</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1458"></a><tt class="py-lineno">1458</tt> <tt class="py-line"><tt class="py-docstring"> On ONOS bench, run this command:</tt> </tt>
-<a name="L1459"></a><tt class="py-lineno">1459</tt> <tt class="py-line"><tt class="py-docstring"> {ONOS_HOME}/tools/test/bin/onos-topo-cfg $OC1 filename</tt> </tt>
-<a name="L1460"></a><tt class="py-lineno">1460</tt> <tt class="py-line"><tt class="py-docstring"> which starts the rest and copies</tt> </tt>
-<a name="L1461"></a><tt class="py-lineno">1461</tt> <tt class="py-line"><tt class="py-docstring"> the json file to the onos instance</tt> </tt>
-<a name="L1462"></a><tt class="py-lineno">1462</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1463"></a><tt class="py-lineno">1463</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1464"></a><tt class="py-lineno">1464</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-486" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-486', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1465"></a><tt class="py-lineno">1465</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1466"></a><tt class="py-lineno">1466</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-487" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-487', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cd "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"/tools/test/bin"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1467"></a><tt class="py-lineno">1467</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"/bin$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1468"></a><tt class="py-lineno">1468</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"./onos-topo-cfg "</tt> <tt class="py-op">+</tt> <tt class="py-name">instanceName</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">jsonFile</tt> </tt>
-<a name="L1469"></a><tt class="py-lineno">1469</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"cmd = "</tt><tt class="py-op">,</tt> <tt class="py-name">cmd</tt> </tt>
-<a name="L1470"></a><tt class="py-lineno">1470</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-488" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-488', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1471"></a><tt class="py-lineno">1471</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1472"></a><tt class="py-lineno">1472</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-489" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-489', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cd ~"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1473"></a><tt class="py-lineno">1473</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1474"></a><tt class="py-lineno">1474</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1475"></a><tt class="py-lineno">1475</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1476"></a><tt class="py-lineno">1476</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-490" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-490', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-491" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-491', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1477"></a><tt class="py-lineno">1477</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-492" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-492', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-493" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-493', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1478"></a><tt class="py-lineno">1478</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-494" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-494', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1479"></a><tt class="py-lineno">1479</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-495" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-495', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1480"></a><tt class="py-lineno">1480</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1481"></a><tt class="py-lineno">1481</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-496" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-496', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1482"></a><tt class="py-lineno">1482</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-497" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-497', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1483"></a><tt class="py-lineno">1483</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-498" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-498', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1484"></a><tt class="py-lineno">1484</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.tsharkGrep"></a><div id="OnosDriver.tsharkGrep-def"><a name="L1485"></a><tt class="py-lineno">1485</tt> <a class="py-toggle" href="#" id="OnosDriver.tsharkGrep-toggle" onclick="return toggle('OnosDriver.tsharkGrep');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkGrep">tsharkGrep</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">grep</tt><tt class="py-op">,</tt> <tt class="py-param">directory</tt><tt class="py-op">,</tt> <tt class="py-param">interface</tt><tt class="py-op">=</tt><tt class="py-string">'eth0'</tt><tt class="py-op">,</tt> <tt class="py-param">grepOptions</tt><tt class="py-op">=</tt><tt class="py-string">''</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.tsharkGrep-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.tsharkGrep-expanded"><a name="L1486"></a><tt class="py-lineno">1486</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1487"></a><tt class="py-lineno">1487</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L1488"></a><tt class="py-lineno">1488</tt> <tt class="py-line"><tt class="py-docstring"> * grep string</tt> </tt>
-<a name="L1489"></a><tt class="py-lineno">1489</tt> <tt class="py-line"><tt class="py-docstring"> * directory to store results</tt> </tt>
-<a name="L1490"></a><tt class="py-lineno">1490</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L1491"></a><tt class="py-lineno">1491</tt> <tt class="py-line"><tt class="py-docstring"> * interface - default: eth0</tt> </tt>
-<a name="L1492"></a><tt class="py-lineno">1492</tt> <tt class="py-line"><tt class="py-docstring"> * grepOptions - options for grep</tt> </tt>
-<a name="L1493"></a><tt class="py-lineno">1493</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1494"></a><tt class="py-lineno">1494</tt> <tt class="py-line"><tt class="py-docstring"> Uses tshark command to grep specific group of packets</tt> </tt>
-<a name="L1495"></a><tt class="py-lineno">1495</tt> <tt class="py-line"><tt class="py-docstring"> and stores the results to specified directory.</tt> </tt>
-<a name="L1496"></a><tt class="py-lineno">1496</tt> <tt class="py-line"><tt class="py-docstring"> The timestamp is hardcoded to be in epoch</tt> </tt>
-<a name="L1497"></a><tt class="py-lineno">1497</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1498"></a><tt class="py-lineno">1498</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1499"></a><tt class="py-lineno">1499</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-499" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-499', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1500"></a><tt class="py-lineno">1500</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1501"></a><tt class="py-lineno">1501</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-500" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-500', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1502"></a><tt class="py-lineno">1502</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">grepOptions</tt><tt class="py-op">:</tt> </tt>
-<a name="L1503"></a><tt class="py-lineno">1503</tt> <tt class="py-line"> <tt class="py-name">grepStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"grep "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">grepOptions</tt><tt class="py-op">)</tt> </tt>
-<a name="L1504"></a><tt class="py-lineno">1504</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1505"></a><tt class="py-lineno">1505</tt> <tt class="py-line"> <tt class="py-name">grepStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"grep"</tt> </tt>
-<a name="L1506"></a><tt class="py-lineno">1506</tt> <tt class="py-line"> </tt>
-<a name="L1507"></a><tt class="py-lineno">1507</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> </tt>
-<a name="L1508"></a><tt class="py-lineno">1508</tt> <tt class="py-line"> <tt class="py-string">"sudo tshark -i "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1509"></a><tt class="py-lineno">1509</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">interface</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1510"></a><tt class="py-lineno">1510</tt> <tt class="py-line"> <tt class="py-string">" -t e | "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1511"></a><tt class="py-lineno">1511</tt> <tt class="py-line"> <tt class="py-name">grepStr</tt> <tt class="py-op">+</tt> <tt class="py-string">" --line-buffered \""</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1512"></a><tt class="py-lineno">1512</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">grep</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1513"></a><tt class="py-lineno">1513</tt> <tt class="py-line"> <tt class="py-string">"\" >"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1514"></a><tt class="py-lineno">1514</tt> <tt class="py-line"> <tt class="py-name">directory</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1515"></a><tt class="py-lineno">1515</tt> <tt class="py-line"> <tt class="py-string">" &"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1516"></a><tt class="py-lineno">1516</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-501" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-501', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L1517"></a><tt class="py-lineno">1517</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-502" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-502', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L1518"></a><tt class="py-lineno">1518</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"Capturing on"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1519"></a><tt class="py-lineno">1519</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-503" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-503', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1520"></a><tt class="py-lineno">1520</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1521"></a><tt class="py-lineno">1521</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1522"></a><tt class="py-lineno">1522</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-504" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-504', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-505" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-505', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1523"></a><tt class="py-lineno">1523</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-506" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-506', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-507" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-507', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1524"></a><tt class="py-lineno">1524</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-508" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-508', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1525"></a><tt class="py-lineno">1525</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-509" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-509', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1526"></a><tt class="py-lineno">1526</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1527"></a><tt class="py-lineno">1527</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-510" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-510', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1528"></a><tt class="py-lineno">1528</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-511" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-511', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1529"></a><tt class="py-lineno">1529</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-512" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-512', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1530"></a><tt class="py-lineno">1530</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.tsharkStop"></a><div id="OnosDriver.tsharkStop-def"><a name="L1531"></a><tt class="py-lineno">1531</tt> <a class="py-toggle" href="#" id="OnosDriver.tsharkStop-toggle" onclick="return toggle('OnosDriver.tsharkStop');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkStop">tsharkStop</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.tsharkStop-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.tsharkStop-expanded"><a name="L1532"></a><tt class="py-lineno">1532</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1533"></a><tt class="py-lineno">1533</tt> <tt class="py-line"><tt class="py-docstring"> Removes wireshark files from /tmp and kills all tshark processes</tt> </tt>
-<a name="L1534"></a><tt class="py-lineno">1534</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1535"></a><tt class="py-lineno">1535</tt> <tt class="py-line"> <tt class="py-comment"># Remove all pcap from previous captures</tt> </tt>
-<a name="L1536"></a><tt class="py-lineno">1536</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1537"></a><tt class="py-lineno">1537</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-513" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.execute()=TestON.bin.generatedriver.GenerateDriver-class.html#execute,Method TestON.drivers.common.clidriver.CLI.execute()=TestON.drivers.common.clidriver.CLI-class.html#execute"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-513', 'execute', 'link-513');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"sudo rm /tmp/wireshark*"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1538"></a><tt class="py-lineno">1538</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-514" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-514', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1539"></a><tt class="py-lineno">1539</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-515" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-515', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"sudo kill -9 `ps -ef | grep \"tshark -i\""</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1540"></a><tt class="py-lineno">1540</tt> <tt class="py-line"> <tt class="py-string">" | grep -v grep | awk '{print $2}'`"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1541"></a><tt class="py-lineno">1541</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-516" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-516', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1542"></a><tt class="py-lineno">1542</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-517" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-517', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Tshark stopped"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1543"></a><tt class="py-lineno">1543</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1544"></a><tt class="py-lineno">1544</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-518" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-518', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-519" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-519', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1545"></a><tt class="py-lineno">1545</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-520" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-520', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-521" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-521', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1546"></a><tt class="py-lineno">1546</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-522" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-522', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1547"></a><tt class="py-lineno">1547</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-523" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-523', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1548"></a><tt class="py-lineno">1548</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1549"></a><tt class="py-lineno">1549</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-524" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-524', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1550"></a><tt class="py-lineno">1550</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-525" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-525', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1551"></a><tt class="py-lineno">1551</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-526" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-526', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1552"></a><tt class="py-lineno">1552</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.ptpd"></a><div id="OnosDriver.ptpd-def"><a name="L1553"></a><tt class="py-lineno">1553</tt> <a class="py-toggle" href="#" id="OnosDriver.ptpd-toggle" onclick="return toggle('OnosDriver.ptpd');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#ptpd">ptpd</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.ptpd-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.ptpd-expanded"><a name="L1554"></a><tt class="py-lineno">1554</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1555"></a><tt class="py-lineno">1555</tt> <tt class="py-line"><tt class="py-docstring"> Initiate ptp with user-specified args.</tt> </tt>
-<a name="L1556"></a><tt class="py-lineno">1556</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L1557"></a><tt class="py-lineno">1557</tt> <tt class="py-line"><tt class="py-docstring"> * args: specify string of args after command</tt> </tt>
-<a name="L1558"></a><tt class="py-lineno">1558</tt> <tt class="py-line"><tt class="py-docstring"> 'sudo ptpd'</tt> </tt>
-<a name="L1559"></a><tt class="py-lineno">1559</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1560"></a><tt class="py-lineno">1560</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1561"></a><tt class="py-lineno">1561</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-527" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-527', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"sudo ptpd "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">args</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1562"></a><tt class="py-lineno">1562</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L1563"></a><tt class="py-lineno">1563</tt> <tt class="py-line"> <tt class="py-string">"Multiple"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1564"></a><tt class="py-lineno">1564</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1565"></a><tt class="py-lineno">1565</tt> <tt class="py-line"> <tt class="py-string">"\$"</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1566"></a><tt class="py-lineno">1566</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1567"></a><tt class="py-lineno">1567</tt> <tt class="py-line"> </tt>
-<a name="L1568"></a><tt class="py-lineno">1568</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1569"></a><tt class="py-lineno">1569</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L1570"></a><tt class="py-lineno">1570</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-528" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-528', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ptpd returned an error: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1571"></a><tt class="py-lineno">1571</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1572"></a><tt class="py-lineno">1572</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L1573"></a><tt class="py-lineno">1573</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1574"></a><tt class="py-lineno">1574</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L1575"></a><tt class="py-lineno">1575</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-529" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-529', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-530" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-530', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ptpd returned an error: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1576"></a><tt class="py-lineno">1576</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">handle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1577"></a><tt class="py-lineno">1577</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L1578"></a><tt class="py-lineno">1578</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1579"></a><tt class="py-lineno">1579</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1580"></a><tt class="py-lineno">1580</tt> <tt class="py-line"> </tt>
-<a name="L1581"></a><tt class="py-lineno">1581</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1582"></a><tt class="py-lineno">1582</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-531" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-531', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-532" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-532', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1583"></a><tt class="py-lineno">1583</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-533" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-533', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-534" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-534', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1584"></a><tt class="py-lineno">1584</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-535" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-535', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1585"></a><tt class="py-lineno">1585</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-536" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-536', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1586"></a><tt class="py-lineno">1586</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1587"></a><tt class="py-lineno">1587</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-537" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-537', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1588"></a><tt class="py-lineno">1588</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-538" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-538', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1589"></a><tt class="py-lineno">1589</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-539" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-539', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1590"></a><tt class="py-lineno">1590</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.cpLogsToDir"></a><div id="OnosDriver.cpLogsToDir-def"><a name="L1591"></a><tt class="py-lineno">1591</tt> <a class="py-toggle" href="#" id="OnosDriver.cpLogsToDir-toggle" onclick="return toggle('OnosDriver.cpLogsToDir');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cpLogsToDir">cpLogsToDir</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">logToCopy</tt><tt class="py-op">,</tt> </tt>
-<a name="L1592"></a><tt class="py-lineno">1592</tt> <tt class="py-line"> <tt class="py-param">destDir</tt><tt class="py-op">,</tt> <tt class="py-param">copyFileName</tt><tt class="py-op">=</tt><tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.cpLogsToDir-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.cpLogsToDir-expanded"><a name="L1593"></a><tt class="py-lineno">1593</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1594"></a><tt class="py-lineno">1594</tt> <tt class="py-line"><tt class="py-docstring"> Copies logs to a desired directory.</tt> </tt>
-<a name="L1595"></a><tt class="py-lineno">1595</tt> <tt class="py-line"><tt class="py-docstring"> Current implementation of ONOS deletes its karaf</tt> </tt>
-<a name="L1596"></a><tt class="py-lineno">1596</tt> <tt class="py-line"><tt class="py-docstring"> logs on every iteration. For debugging purposes,</tt> </tt>
-<a name="L1597"></a><tt class="py-lineno">1597</tt> <tt class="py-line"><tt class="py-docstring"> you may want to use this function to capture</tt> </tt>
-<a name="L1598"></a><tt class="py-lineno">1598</tt> <tt class="py-line"><tt class="py-docstring"> certain karaf logs. ( or any other logs if needed )</tt> </tt>
-<a name="L1599"></a><tt class="py-lineno">1599</tt> <tt class="py-line"><tt class="py-docstring"> Localtime will be attached to the filename</tt> </tt>
-<a name="L1600"></a><tt class="py-lineno">1600</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1601"></a><tt class="py-lineno">1601</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L1602"></a><tt class="py-lineno">1602</tt> <tt class="py-line"><tt class="py-docstring"> * logToCopy: specify directory and log name to</tt> </tt>
-<a name="L1603"></a><tt class="py-lineno">1603</tt> <tt class="py-line"><tt class="py-docstring"> copy.</tt> </tt>
-<a name="L1604"></a><tt class="py-lineno">1604</tt> <tt class="py-line"><tt class="py-docstring"> ex ) /opt/onos/log/karaf.log.1</tt> </tt>
-<a name="L1605"></a><tt class="py-lineno">1605</tt> <tt class="py-line"><tt class="py-docstring"> For copying multiple files, leave copyFileName</tt> </tt>
-<a name="L1606"></a><tt class="py-lineno">1606</tt> <tt class="py-line"><tt class="py-docstring"> empty and only specify destDir -</tt> </tt>
-<a name="L1607"></a><tt class="py-lineno">1607</tt> <tt class="py-line"><tt class="py-docstring"> ex ) /opt/onos/log/karaf*</tt> </tt>
-<a name="L1608"></a><tt class="py-lineno">1608</tt> <tt class="py-line"><tt class="py-docstring"> * destDir: specify directory to copy to.</tt> </tt>
-<a name="L1609"></a><tt class="py-lineno">1609</tt> <tt class="py-line"><tt class="py-docstring"> ex ) /tmp/</tt> </tt>
-<a name="L1610"></a><tt class="py-lineno">1610</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L1611"></a><tt class="py-lineno">1611</tt> <tt class="py-line"><tt class="py-docstring"> * copyFileName: If you want to rename the log</tt> </tt>
-<a name="L1612"></a><tt class="py-lineno">1612</tt> <tt class="py-line"><tt class="py-docstring"> file, specify copyFileName. This will not work</tt> </tt>
-<a name="L1613"></a><tt class="py-lineno">1613</tt> <tt class="py-line"><tt class="py-docstring"> with multiple file copying</tt> </tt>
-<a name="L1614"></a><tt class="py-lineno">1614</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1615"></a><tt class="py-lineno">1615</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1616"></a><tt class="py-lineno">1616</tt> <tt class="py-line"> <tt class="py-name">localtime</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt> <tt class="py-string">'%x %X'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1617"></a><tt class="py-lineno">1617</tt> <tt class="py-line"> <tt class="py-name">localtime</tt> <tt class="py-op">=</tt> <tt class="py-name">localtime</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"/"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1618"></a><tt class="py-lineno">1618</tt> <tt class="py-line"> <tt class="py-name">localtime</tt> <tt class="py-op">=</tt> <tt class="py-name">localtime</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">" "</tt><tt class="py-op">,</tt> <tt class="py-string">"_"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1619"></a><tt class="py-lineno">1619</tt> <tt class="py-line"> <tt class="py-name">localtime</tt> <tt class="py-op">=</tt> <tt class="py-name">localtime</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">":"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1620"></a><tt class="py-lineno">1620</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">destDir</tt><tt class="py-op">[</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">:</tt> <tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">"/"</tt><tt class="py-op">:</tt> </tt>
-<a name="L1621"></a><tt class="py-lineno">1621</tt> <tt class="py-line"> <tt class="py-name">destDir</tt> <tt class="py-op">+=</tt> <tt class="py-string">"/"</tt> </tt>
-<a name="L1622"></a><tt class="py-lineno">1622</tt> <tt class="py-line"> </tt>
-<a name="L1623"></a><tt class="py-lineno">1623</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">copyFileName</tt><tt class="py-op">:</tt> </tt>
-<a name="L1624"></a><tt class="py-lineno">1624</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-540" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-540', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cp "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">logToCopy</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1625"></a><tt class="py-lineno">1625</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">destDir</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">copyFileName</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1626"></a><tt class="py-lineno">1626</tt> <tt class="py-line"> <tt class="py-name">localtime</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1627"></a><tt class="py-lineno">1627</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"cp"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1628"></a><tt class="py-lineno">1628</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1629"></a><tt class="py-lineno">1629</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1630"></a><tt class="py-lineno">1630</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-541" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-541', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cp "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">logToCopy</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1631"></a><tt class="py-lineno">1631</tt> <tt class="py-line"> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">destDir</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1632"></a><tt class="py-lineno">1632</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"cp"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1633"></a><tt class="py-lineno">1633</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1634"></a><tt class="py-lineno">1634</tt> <tt class="py-line"> </tt>
-<a name="L1635"></a><tt class="py-lineno">1635</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L1636"></a><tt class="py-lineno">1636</tt> <tt class="py-line"> </tt>
-<a name="L1637"></a><tt class="py-lineno">1637</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1638"></a><tt class="py-lineno">1638</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-542" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-542', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-543" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-543', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Copying files failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1639"></a><tt class="py-lineno">1639</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-544" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-544', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-545" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-545', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1640"></a><tt class="py-lineno">1640</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-546" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-546', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-547" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-547', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1641"></a><tt class="py-lineno">1641</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1642"></a><tt class="py-lineno">1642</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-548" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-548', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Copying files failed"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1643"></a><tt class="py-lineno">1643</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.checkLogs"></a><div id="OnosDriver.checkLogs-def"><a name="L1644"></a><tt class="py-lineno">1644</tt> <a class="py-toggle" href="#" id="OnosDriver.checkLogs-toggle" onclick="return toggle('OnosDriver.checkLogs');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#checkLogs">checkLogs</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">onosIp</tt><tt class="py-op">,</tt> <tt class="py-param">restart</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.checkLogs-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.checkLogs-expanded"><a name="L1645"></a><tt class="py-lineno">1645</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1646"></a><tt class="py-lineno">1646</tt> <tt class="py-line"><tt class="py-docstring"> runs onos-check-logs on the given onos node</tt> </tt>
-<a name="L1647"></a><tt class="py-lineno">1647</tt> <tt class="py-line"><tt class="py-docstring"> If restart is True, use the old version of onos-check-logs which</tt> </tt>
-<a name="L1648"></a><tt class="py-lineno">1648</tt> <tt class="py-line"><tt class="py-docstring"> does not print the full stacktrace, but shows the entire log file,</tt> </tt>
-<a name="L1649"></a><tt class="py-lineno">1649</tt> <tt class="py-line"><tt class="py-docstring"> including across restarts</tt> </tt>
-<a name="L1650"></a><tt class="py-lineno">1650</tt> <tt class="py-line"><tt class="py-docstring"> returns the response</tt> </tt>
-<a name="L1651"></a><tt class="py-lineno">1651</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1652"></a><tt class="py-lineno">1652</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1653"></a><tt class="py-lineno">1653</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos-check-logs "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosIp</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1654"></a><tt class="py-lineno">1654</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">restart</tt><tt class="py-op">:</tt> </tt>
-<a name="L1655"></a><tt class="py-lineno">1655</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" old"</tt> </tt>
-<a name="L1656"></a><tt class="py-lineno">1656</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-549" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-549', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1657"></a><tt class="py-lineno">1657</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1658"></a><tt class="py-lineno">1658</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1659"></a><tt class="py-lineno">1659</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L1660"></a><tt class="py-lineno">1660</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-<a name="L1661"></a><tt class="py-lineno">1661</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1662"></a><tt class="py-lineno">1662</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-550" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-550', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-551" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-551', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Lost ssh connection"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1663"></a><tt class="py-lineno">1663</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-552" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-552', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-553" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-553', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1664"></a><tt class="py-lineno">1664</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-554" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-554', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-555" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-555', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1665"></a><tt class="py-lineno">1665</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1666"></a><tt class="py-lineno">1666</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-556" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-556', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1667"></a><tt class="py-lineno">1667</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-557" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-557', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1668"></a><tt class="py-lineno">1668</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-558" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-558', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1669"></a><tt class="py-lineno">1669</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.onosStatus"></a><div id="OnosDriver.onosStatus-def"><a name="L1670"></a><tt class="py-lineno">1670</tt> <a class="py-toggle" href="#" id="OnosDriver.onosStatus-toggle" onclick="return toggle('OnosDriver.onosStatus');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStatus">onosStatus</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">node</tt><tt class="py-op">=</tt><tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.onosStatus-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.onosStatus-expanded"><a name="L1671"></a><tt class="py-lineno">1671</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1672"></a><tt class="py-lineno">1672</tt> <tt class="py-line"><tt class="py-docstring"> Calls onos command: 'onos-service [<node-ip>] status'</tt> </tt>
-<a name="L1673"></a><tt class="py-lineno">1673</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1674"></a><tt class="py-lineno">1674</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1675"></a><tt class="py-lineno">1675</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-559" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-559', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1676"></a><tt class="py-lineno">1676</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1677"></a><tt class="py-lineno">1677</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-560" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-560', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onos-service "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1678"></a><tt class="py-lineno">1678</tt> <tt class="py-line"> <tt class="py-string">" status"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1679"></a><tt class="py-lineno">1679</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L1680"></a><tt class="py-lineno">1680</tt> <tt class="py-line"> <tt class="py-string">"start/running"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1681"></a><tt class="py-lineno">1681</tt> <tt class="py-line"> <tt class="py-string">"stop/waiting"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1682"></a><tt class="py-lineno">1682</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1683"></a><tt class="py-lineno">1683</tt> <tt class="py-line"> </tt>
-<a name="L1684"></a><tt class="py-lineno">1684</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1685"></a><tt class="py-lineno">1685</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-561" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-561', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS is running"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1686"></a><tt class="py-lineno">1686</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1687"></a><tt class="py-lineno">1687</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1688"></a><tt class="py-lineno">1688</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-562" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-562', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS is stopped"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1689"></a><tt class="py-lineno">1689</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-563" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-563', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-564" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-564', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS service failed to check the status"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1690"></a><tt class="py-lineno">1690</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-565" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-565', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1691"></a><tt class="py-lineno">1691</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-566" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-566', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1692"></a><tt class="py-lineno">1692</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1693"></a><tt class="py-lineno">1693</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-567" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-567', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-568" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-568', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1694"></a><tt class="py-lineno">1694</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-569" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-569', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-570" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-570', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1695"></a><tt class="py-lineno">1695</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-571" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-571', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1696"></a><tt class="py-lineno">1696</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-572" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-572', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1697"></a><tt class="py-lineno">1697</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1698"></a><tt class="py-lineno">1698</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-573" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-573', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1699"></a><tt class="py-lineno">1699</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-574" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-574', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1700"></a><tt class="py-lineno">1700</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-575" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-575', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1701"></a><tt class="py-lineno">1701</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.setIpTables"></a><div id="OnosDriver.setIpTables-def"><a name="L1702"></a><tt class="py-lineno">1702</tt> <a class="py-toggle" href="#" id="OnosDriver.setIpTables-toggle" onclick="return toggle('OnosDriver.setIpTables');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setIpTables">setIpTables</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt class="py-string">''</tt><tt class="py-op">,</tt> <tt class="py-param">action</tt><tt class="py-op">=</tt><tt class="py-string">'add'</tt><tt class="py-op">,</tt> <tt class="py-param">packet_type</tt><tt class="py-op">=</tt><tt class="py-string">''</tt><tt class="py-op">,</tt> </tt>
-<a name="L1703"></a><tt class="py-lineno">1703</tt> <tt class="py-line"> <tt class="py-param">direction</tt><tt class="py-op">=</tt><tt class="py-string">'INPUT'</tt><tt class="py-op">,</tt> <tt class="py-param">rule</tt><tt class="py-op">=</tt><tt class="py-string">'DROP'</tt><tt class="py-op">,</tt> <tt class="py-param">states</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.setIpTables-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.setIpTables-expanded"><a name="L1704"></a><tt class="py-lineno">1704</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1705"></a><tt class="py-lineno">1705</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L1706"></a><tt class="py-lineno">1706</tt> <tt class="py-line"><tt class="py-docstring"> add or remove iptables rule to DROP (default) packets from</tt> </tt>
-<a name="L1707"></a><tt class="py-lineno">1707</tt> <tt class="py-line"><tt class="py-docstring"> specific IP and PORT</tt> </tt>
-<a name="L1708"></a><tt class="py-lineno">1708</tt> <tt class="py-line"><tt class="py-docstring"> Usage:</tt> </tt>
-<a name="L1709"></a><tt class="py-lineno">1709</tt> <tt class="py-line"><tt class="py-docstring"> * specify action ('add' or 'remove')</tt> </tt>
-<a name="L1710"></a><tt class="py-lineno">1710</tt> <tt class="py-line"><tt class="py-docstring"> when removing, pass in the same argument as you would add. It will</tt> </tt>
-<a name="L1711"></a><tt class="py-lineno">1711</tt> <tt class="py-line"><tt class="py-docstring"> delete that specific rule.</tt> </tt>
-<a name="L1712"></a><tt class="py-lineno">1712</tt> <tt class="py-line"><tt class="py-docstring"> * specify the ip to block</tt> </tt>
-<a name="L1713"></a><tt class="py-lineno">1713</tt> <tt class="py-line"><tt class="py-docstring"> * specify the destination port to block (defaults to all ports)</tt> </tt>
-<a name="L1714"></a><tt class="py-lineno">1714</tt> <tt class="py-line"><tt class="py-docstring"> * optional packet type to block (default tcp)</tt> </tt>
-<a name="L1715"></a><tt class="py-lineno">1715</tt> <tt class="py-line"><tt class="py-docstring"> * optional iptables rule (default DROP)</tt> </tt>
-<a name="L1716"></a><tt class="py-lineno">1716</tt> <tt class="py-line"><tt class="py-docstring"> * optional direction to block (default 'INPUT')</tt> </tt>
-<a name="L1717"></a><tt class="py-lineno">1717</tt> <tt class="py-line"><tt class="py-docstring"> * States boolean toggles adding all supported tcp states to the</tt> </tt>
-<a name="L1718"></a><tt class="py-lineno">1718</tt> <tt class="py-line"><tt class="py-docstring"> firewall rule</tt> </tt>
-<a name="L1719"></a><tt class="py-lineno">1719</tt> <tt class="py-line"><tt class="py-docstring"> Returns:</tt> </tt>
-<a name="L1720"></a><tt class="py-lineno">1720</tt> <tt class="py-line"><tt class="py-docstring"> main.TRUE on success or</tt> </tt>
-<a name="L1721"></a><tt class="py-lineno">1721</tt> <tt class="py-line"><tt class="py-docstring"> main.FALSE if given invalid input or</tt> </tt>
-<a name="L1722"></a><tt class="py-lineno">1722</tt> <tt class="py-line"><tt class="py-docstring"> main.ERROR if there is an error in response from iptables</tt> </tt>
-<a name="L1723"></a><tt class="py-lineno">1723</tt> <tt class="py-line"><tt class="py-docstring"> WARNING:</tt> </tt>
-<a name="L1724"></a><tt class="py-lineno">1724</tt> <tt class="py-line"><tt class="py-docstring"> * This function uses root privilege iptables command which may result</tt> </tt>
-<a name="L1725"></a><tt class="py-lineno">1725</tt> <tt class="py-line"><tt class="py-docstring"> in unwanted network errors. USE WITH CAUTION</tt> </tt>
-<a name="L1726"></a><tt class="py-lineno">1726</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1727"></a><tt class="py-lineno">1727</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1728"></a><tt class="py-lineno">1728</tt> <tt class="py-line"> </tt>
-<a name="L1729"></a><tt class="py-lineno">1729</tt> <tt class="py-line"> <tt class="py-comment"># NOTE*********</tt> </tt>
-<a name="L1730"></a><tt class="py-lineno">1730</tt> <tt class="py-line"> <tt class="py-comment"># The strict checking methods of this driver function is intentional</tt> </tt>
-<a name="L1731"></a><tt class="py-lineno">1731</tt> <tt class="py-line"> <tt class="py-comment"># to discourage any misuse or error of iptables, which can cause</tt> </tt>
-<a name="L1732"></a><tt class="py-lineno">1732</tt> <tt class="py-line"> <tt class="py-comment"># severe network errors</tt> </tt>
-<a name="L1733"></a><tt class="py-lineno">1733</tt> <tt class="py-line"> <tt class="py-comment"># *************</tt> </tt>
-<a name="L1734"></a><tt class="py-lineno">1734</tt> <tt class="py-line"> </tt>
-<a name="L1735"></a><tt class="py-lineno">1735</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Sleep needed to give some time for rule to be added and</tt> </tt>
-<a name="L1736"></a><tt class="py-lineno">1736</tt> <tt class="py-line"> <tt class="py-comment"># registered to the instance. If you are calling this function</tt> </tt>
-<a name="L1737"></a><tt class="py-lineno">1737</tt> <tt class="py-line"> <tt class="py-comment"># multiple times this sleep will prevent any errors.</tt> </tt>
-<a name="L1738"></a><tt class="py-lineno">1738</tt> <tt class="py-line"> <tt class="py-comment"># DO NOT REMOVE</tt> </tt>
-<a name="L1739"></a><tt class="py-lineno">1739</tt> <tt class="py-line"> <tt class="py-comment"># time.sleep( 5 )</tt> </tt>
-<a name="L1740"></a><tt class="py-lineno">1740</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1741"></a><tt class="py-lineno">1741</tt> <tt class="py-line"> <tt class="py-comment"># input validation</tt> </tt>
-<a name="L1742"></a><tt class="py-lineno">1742</tt> <tt class="py-line"> <tt class="py-name">action_type</tt> <tt class="py-op">=</tt> <tt class="py-name">action</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1743"></a><tt class="py-lineno">1743</tt> <tt class="py-line"> <tt class="py-name">rule</tt> <tt class="py-op">=</tt> <tt class="py-name">rule</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1744"></a><tt class="py-lineno">1744</tt> <tt class="py-line"> <tt class="py-name">direction</tt> <tt class="py-op">=</tt> <tt class="py-name">direction</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1745"></a><tt class="py-lineno">1745</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">action_type</tt> <tt class="py-op">!=</tt> <tt class="py-string">'add'</tt> <tt class="py-keyword">and</tt> <tt class="py-name">action_type</tt> <tt class="py-op">!=</tt> <tt class="py-string">'remove'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1746"></a><tt class="py-lineno">1746</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-576" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-576', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-577" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-577', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Invalid action type. Use 'add' or "</tt> </tt>
-<a name="L1747"></a><tt class="py-lineno">1747</tt> <tt class="py-line"> <tt class="py-string">"'remove' table rule"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1748"></a><tt class="py-lineno">1748</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">rule</tt> <tt class="py-op">!=</tt> <tt class="py-string">'DROP'</tt> <tt class="py-keyword">and</tt> <tt class="py-name">rule</tt> <tt class="py-op">!=</tt> <tt class="py-string">'ACCEPT'</tt> <tt class="py-keyword">and</tt> <tt class="py-name">rule</tt> <tt class="py-op">!=</tt> <tt class="py-string">'LOG'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1749"></a><tt class="py-lineno">1749</tt> <tt class="py-line"> <tt class="py-comment"># NOTE Currently only supports rules DROP, ACCEPT, and LOG</tt> </tt>
-<a name="L1750"></a><tt class="py-lineno">1750</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-578" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-578', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-579" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-579', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Invalid rule. Valid rules are 'DROP' or "</tt> </tt>
-<a name="L1751"></a><tt class="py-lineno">1751</tt> <tt class="py-line"> <tt class="py-string">"'ACCEPT' or 'LOG' only."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1752"></a><tt class="py-lineno">1752</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">direction</tt> <tt class="py-op">!=</tt> <tt class="py-string">'INPUT'</tt> <tt class="py-keyword">and</tt> <tt class="py-name">direction</tt> <tt class="py-op">!=</tt> <tt class="py-string">'OUTPUT'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1753"></a><tt class="py-lineno">1753</tt> <tt class="py-line"> <tt class="py-comment"># NOTE currently only supports rules INPUT and OUPTUT</tt> </tt>
-<a name="L1754"></a><tt class="py-lineno">1754</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-580" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-580', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-581" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-581', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Invalid rule. Valid directions are"</tt> </tt>
-<a name="L1755"></a><tt class="py-lineno">1755</tt> <tt class="py-line"> <tt class="py-string">" 'OUTPUT' or 'INPUT'"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1756"></a><tt class="py-lineno">1756</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1757"></a><tt class="py-lineno">1757</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1758"></a><tt class="py-lineno">1758</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1759"></a><tt class="py-lineno">1759</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">action_type</tt> <tt class="py-op">==</tt> <tt class="py-string">'add'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1760"></a><tt class="py-lineno">1760</tt> <tt class="py-line"> <tt class="py-comment"># -A is the 'append' action of iptables</tt> </tt>
-<a name="L1761"></a><tt class="py-lineno">1761</tt> <tt class="py-line"> <tt class="py-name">actionFlag</tt> <tt class="py-op">=</tt> <tt class="py-string">'-A'</tt> </tt>
-<a name="L1762"></a><tt class="py-lineno">1762</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">action_type</tt> <tt class="py-op">==</tt> <tt class="py-string">'remove'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1763"></a><tt class="py-lineno">1763</tt> <tt class="py-line"> <tt class="py-comment"># -D is the 'delete' rule of iptables</tt> </tt>
-<a name="L1764"></a><tt class="py-lineno">1764</tt> <tt class="py-line"> <tt class="py-name">actionFlag</tt> <tt class="py-op">=</tt> <tt class="py-string">'-D'</tt> </tt>
-<a name="L1765"></a><tt class="py-lineno">1765</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-582" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-582', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1766"></a><tt class="py-lineno">1766</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1767"></a><tt class="py-lineno">1767</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"sudo iptables "</tt> <tt class="py-op">+</tt> <tt class="py-name">actionFlag</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1768"></a><tt class="py-lineno">1768</tt> <tt class="py-line"> <tt class="py-name">direction</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1769"></a><tt class="py-lineno">1769</tt> <tt class="py-line"> <tt class="py-string">" -s "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1770"></a><tt class="py-lineno">1770</tt> <tt class="py-line"> <tt class="py-comment"># " -p " + str( packet_type ) +\</tt> </tt>
-<a name="L1771"></a><tt class="py-lineno">1771</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">packet_type</tt><tt class="py-op">:</tt> </tt>
-<a name="L1772"></a><tt class="py-lineno">1772</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -p "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">packet_type</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1773"></a><tt class="py-lineno">1773</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt><tt class="py-op">:</tt> </tt>
-<a name="L1774"></a><tt class="py-lineno">1774</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" --dport "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1775"></a><tt class="py-lineno">1775</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">states</tt><tt class="py-op">:</tt> </tt>
-<a name="L1776"></a><tt class="py-lineno">1776</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -m state --state="</tt> </tt>
-<a name="L1777"></a><tt class="py-lineno">1777</tt> <tt class="py-line"> <tt class="py-comment">#FIXME- Allow user to configure which states to block</tt> </tt>
-<a name="L1778"></a><tt class="py-lineno">1778</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">"INVALID,ESTABLISHED,NEW,RELATED,UNTRACKED"</tt> </tt>
-<a name="L1779"></a><tt class="py-lineno">1779</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -j "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">rule</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1780"></a><tt class="py-lineno">1780</tt> <tt class="py-line"> </tt>
-<a name="L1781"></a><tt class="py-lineno">1781</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-583" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-583', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1782"></a><tt class="py-lineno">1782</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1783"></a><tt class="py-lineno">1783</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-584" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-584', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1784"></a><tt class="py-lineno">1784</tt> <tt class="py-line"> </tt>
-<a name="L1785"></a><tt class="py-lineno">1785</tt> <tt class="py-line"> <tt class="py-name">info_string</tt> <tt class="py-op">=</tt> <tt class="py-string">"On "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1786"></a><tt class="py-lineno">1786</tt> <tt class="py-line"> <tt class="py-name">info_string</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">action_type</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1787"></a><tt class="py-lineno">1787</tt> <tt class="py-line"> <tt class="py-name">info_string</tt> <tt class="py-op">+=</tt> <tt class="py-string">" iptable rule [ "</tt> </tt>
-<a name="L1788"></a><tt class="py-lineno">1788</tt> <tt class="py-line"> <tt class="py-name">info_string</tt> <tt class="py-op">+=</tt> <tt class="py-string">" IP: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1789"></a><tt class="py-lineno">1789</tt> <tt class="py-line"> <tt class="py-name">info_string</tt> <tt class="py-op">+=</tt> <tt class="py-string">" Port: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1790"></a><tt class="py-lineno">1790</tt> <tt class="py-line"> <tt class="py-name">info_string</tt> <tt class="py-op">+=</tt> <tt class="py-string">" Rule: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">rule</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1791"></a><tt class="py-lineno">1791</tt> <tt class="py-line"> <tt class="py-name">info_string</tt> <tt class="py-op">+=</tt> <tt class="py-string">" Direction: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">direction</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ]"</tt> </tt>
-<a name="L1792"></a><tt class="py-lineno">1792</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-585" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-585', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">info_string</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1793"></a><tt class="py-lineno">1793</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1794"></a><tt class="py-lineno">1794</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">:</tt> </tt>
-<a name="L1795"></a><tt class="py-lineno">1795</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-586" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-586', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Timeout exception in "</tt> </tt>
-<a name="L1796"></a><tt class="py-lineno">1796</tt> <tt class="py-line"> <tt class="py-string">"setIpTables function"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1797"></a><tt class="py-lineno">1797</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt> </tt>
-<a name="L1798"></a><tt class="py-lineno">1798</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1799"></a><tt class="py-lineno">1799</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-587" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-587', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-588" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-588', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1800"></a><tt class="py-lineno">1800</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-589" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-589', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-590" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-590', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1801"></a><tt class="py-lineno">1801</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-591" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-591', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1802"></a><tt class="py-lineno">1802</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-592" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-592', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1803"></a><tt class="py-lineno">1803</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1804"></a><tt class="py-lineno">1804</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-593" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-593', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1805"></a><tt class="py-lineno">1805</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-594" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-594', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1806"></a><tt class="py-lineno">1806</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-595" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-595', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1807"></a><tt class="py-lineno">1807</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.detailed_status"></a><div id="OnosDriver.detailed_status-def"><a name="L1808"></a><tt class="py-lineno">1808</tt> <a class="py-toggle" href="#" id="OnosDriver.detailed_status-toggle" onclick="return toggle('OnosDriver.detailed_status');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#detailed_status">detailed_status</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">log_filename</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.detailed_status-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.detailed_status-expanded"><a name="L1809"></a><tt class="py-lineno">1809</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1810"></a><tt class="py-lineno">1810</tt> <tt class="py-line"><tt class="py-docstring"> This method is used by STS to check the status of the controller</tt> </tt>
-<a name="L1811"></a><tt class="py-lineno">1811</tt> <tt class="py-line"><tt class="py-docstring"> Reports RUNNING, STARTING, STOPPED, FROZEN, ERROR (and reason)</tt> </tt>
-<a name="L1812"></a><tt class="py-lineno">1812</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1813"></a><tt class="py-lineno">1813</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L1814"></a><tt class="py-lineno">1814</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1815"></a><tt class="py-lineno">1815</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-596" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-596', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1816"></a><tt class="py-lineno">1816</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1817"></a><tt class="py-lineno">1817</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-597" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-597', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"cd "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1818"></a><tt class="py-lineno">1818</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1819"></a><tt class="py-lineno">1819</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-598" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-598', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"service onos status"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1820"></a><tt class="py-lineno">1820</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1821"></a><tt class="py-lineno">1821</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L1822"></a><tt class="py-lineno">1822</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"onos start/running"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1823"></a><tt class="py-lineno">1823</tt> <tt class="py-line"> <tt class="py-comment"># onos start/running, process 10457</tt> </tt>
-<a name="L1824"></a><tt class="py-lineno">1824</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'RUNNING'</tt> </tt>
-<a name="L1825"></a><tt class="py-lineno">1825</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: Implement this case</tt> </tt>
-<a name="L1826"></a><tt class="py-lineno">1826</tt> <tt class="py-line"> <tt class="py-comment"># elif re.search( pattern, response ):</tt> </tt>
-<a name="L1827"></a><tt class="py-lineno">1827</tt> <tt class="py-line"> <tt class="py-comment"># return 'STARTING'</tt> </tt>
-<a name="L1828"></a><tt class="py-lineno">1828</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"onos stop/"</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1829"></a><tt class="py-lineno">1829</tt> <tt class="py-line"> <tt class="py-comment"># onos stop/waiting</tt> </tt>
-<a name="L1830"></a><tt class="py-lineno">1830</tt> <tt class="py-line"> <tt class="py-comment"># FIXME handle this differently?: onos stop/pre-stop</tt> </tt>
-<a name="L1831"></a><tt class="py-lineno">1831</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'STOPPED'</tt> </tt>
-<a name="L1832"></a><tt class="py-lineno">1832</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: Implement this case</tt> </tt>
-<a name="L1833"></a><tt class="py-lineno">1833</tt> <tt class="py-line"> <tt class="py-comment"># elif re.search( pattern, response ):</tt> </tt>
-<a name="L1834"></a><tt class="py-lineno">1834</tt> <tt class="py-line"> <tt class="py-comment"># return 'FROZEN'</tt> </tt>
-<a name="L1835"></a><tt class="py-lineno">1835</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1836"></a><tt class="py-lineno">1836</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-599" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-599', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1837"></a><tt class="py-lineno">1837</tt> <tt class="py-line"> <tt class="py-string">" WARNING: status received unknown response"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1838"></a><tt class="py-lineno">1838</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-600" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-600', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1839"></a><tt class="py-lineno">1839</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'ERROR'</tt><tt class="py-op">,</tt> <tt class="py-string">"Unknown response: %s"</tt> <tt class="py-op">%</tt> <tt class="py-name">response</tt> </tt>
-<a name="L1840"></a><tt class="py-lineno">1840</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">:</tt> </tt>
-<a name="L1841"></a><tt class="py-lineno">1841</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-601" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-601', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Timeout exception in "</tt> </tt>
-<a name="L1842"></a><tt class="py-lineno">1842</tt> <tt class="py-line"> <tt class="py-string">"setIpTables function"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1843"></a><tt class="py-lineno">1843</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'ERROR'</tt><tt class="py-op">,</tt> <tt class="py-string">"Pexpect Timeout"</tt> </tt>
-<a name="L1844"></a><tt class="py-lineno">1844</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L1845"></a><tt class="py-lineno">1845</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-602" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-602', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-603" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-603', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1846"></a><tt class="py-lineno">1846</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-604" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-604', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-605" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-605', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1847"></a><tt class="py-lineno">1847</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-606" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-606', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1848"></a><tt class="py-lineno">1848</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-607" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-607', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1849"></a><tt class="py-lineno">1849</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1850"></a><tt class="py-lineno">1850</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-608" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-608', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1851"></a><tt class="py-lineno">1851</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-609" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-609', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1852"></a><tt class="py-lineno">1852</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-610" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-610', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1853"></a><tt class="py-lineno">1853</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.createLinkGraphFile"></a><div id="OnosDriver.createLinkGraphFile-def"><a name="L1854"></a><tt class="py-lineno">1854</tt> <a class="py-toggle" href="#" id="OnosDriver.createLinkGraphFile-toggle" onclick="return toggle('OnosDriver.createLinkGraphFile');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createLinkGraphFile">createLinkGraphFile</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">benchIp</tt><tt class="py-op">,</tt> <tt class="py-param">ONOSIpList</tt><tt class="py-op">,</tt> <tt class="py-param">deviceCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.createLinkGraphFile-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.createLinkGraphFile-expanded"><a name="L1855"></a><tt class="py-lineno">1855</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L1856"></a><tt class="py-lineno">1856</tt> <tt class="py-line"><tt class="py-docstring"> Create/formats the LinkGraph.cfg file based on arguments</tt> </tt>
-<a name="L1857"></a><tt class="py-lineno">1857</tt> <tt class="py-line"><tt class="py-docstring"> -only creates a linear topology and connects islands</tt> </tt>
-<a name="L1858"></a><tt class="py-lineno">1858</tt> <tt class="py-line"><tt class="py-docstring"> -evenly distributes devices</tt> </tt>
-<a name="L1859"></a><tt class="py-lineno">1859</tt> <tt class="py-line"><tt class="py-docstring"> -must be called by ONOSbench</tt> </tt>
-<a name="L1860"></a><tt class="py-lineno">1860</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1861"></a><tt class="py-lineno">1861</tt> <tt class="py-line"><tt class="py-docstring"> ONOSIpList - list of all of the node IPs to be used</tt> </tt>
-<a name="L1862"></a><tt class="py-lineno">1862</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1863"></a><tt class="py-lineno">1863</tt> <tt class="py-line"><tt class="py-docstring"> deviceCount - number of switches to be assigned</tt> </tt>
-<a name="L1864"></a><tt class="py-lineno">1864</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L1865"></a><tt class="py-lineno">1865</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-611" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-611', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-612" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-612', 'step', 'link-612');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Creating link graph configuration file."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1866"></a><tt class="py-lineno">1866</tt> <tt class="py-line"> <tt class="py-name">linkGraphPath</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"/tools/package/etc/linkGraph.cfg"</tt> </tt>
-<a name="L1867"></a><tt class="py-lineno">1867</tt> <tt class="py-line"> <tt class="py-name">tempFile</tt> <tt class="py-op">=</tt> <tt class="py-string">"/tmp/linkGraph.cfg"</tt> </tt>
-<a name="L1868"></a><tt class="py-lineno">1868</tt> <tt class="py-line"> </tt>
-<a name="L1869"></a><tt class="py-lineno">1869</tt> <tt class="py-line"> <tt class="py-name">linkGraph</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">tempFile</tt><tt class="py-op">,</tt> <tt class="py-string">'w+'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1870"></a><tt class="py-lineno">1870</tt> <tt class="py-line"> <tt class="py-name">linkGraph</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"# NullLinkProvider topology description (config file).\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1871"></a><tt class="py-lineno">1871</tt> <tt class="py-line"> <tt class="py-name">linkGraph</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"# The NodeId is only added if the destination is another node's device.\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1872"></a><tt class="py-lineno">1872</tt> <tt class="py-line"> <tt class="py-name">linkGraph</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"# Bugs: Comments cannot be appended to a line to be read.\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1873"></a><tt class="py-lineno">1873</tt> <tt class="py-line"> </tt>
-<a name="L1874"></a><tt class="py-lineno">1874</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIpList</tt><tt class="py-op">)</tt> </tt>
-<a name="L1875"></a><tt class="py-lineno">1875</tt> <tt class="py-line"> </tt>
-<a name="L1876"></a><tt class="py-lineno">1876</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">deviceCount</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">int</tt> <tt class="py-keyword">or</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">deviceCount</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">str</tt><tt class="py-op">:</tt> </tt>
-<a name="L1877"></a><tt class="py-lineno">1877</tt> <tt class="py-line"> <tt class="py-name">deviceCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">deviceCount</tt><tt class="py-op">)</tt> </tt>
-<a name="L1878"></a><tt class="py-lineno">1878</tt> <tt class="py-line"> <tt class="py-name">switchList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L1879"></a><tt class="py-lineno">1879</tt> <tt class="py-line"> <tt class="py-name">baselineSwitchCount</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceCount</tt><tt class="py-op">/</tt><tt class="py-name">clusterCount</tt> </tt>
-<a name="L1880"></a><tt class="py-lineno">1880</tt> <tt class="py-line"> </tt>
-<a name="L1881"></a><tt class="py-lineno">1881</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1882"></a><tt class="py-lineno">1882</tt> <tt class="py-line"> <tt class="py-name">switchList</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">baselineSwitchCount</tt> </tt>
-<a name="L1883"></a><tt class="py-lineno">1883</tt> <tt class="py-line"> </tt>
-<a name="L1884"></a><tt class="py-lineno">1884</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">deviceCount</tt><tt class="py-op">%</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1885"></a><tt class="py-lineno">1885</tt> <tt class="py-line"> <tt class="py-name">switchList</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1886"></a><tt class="py-lineno">1886</tt> <tt class="py-line"> </tt>
-<a name="L1887"></a><tt class="py-lineno">1887</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">deviceCount</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">list</tt><tt class="py-op">:</tt> </tt>
-<a name="L1888"></a><tt class="py-lineno">1888</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-613" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-613', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Using provided device distribution"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1889"></a><tt class="py-lineno">1889</tt> <tt class="py-line"> <tt class="py-name">switchList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L1890"></a><tt class="py-lineno">1890</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">deviceCount</tt><tt class="py-op">:</tt> </tt>
-<a name="L1891"></a><tt class="py-lineno">1891</tt> <tt class="py-line"> <tt class="py-name">switchList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1892"></a><tt class="py-lineno">1892</tt> <tt class="py-line"> </tt>
-<a name="L1893"></a><tt class="py-lineno">1893</tt> <tt class="py-line"> <tt class="py-name">tempList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-string">'0'</tt><tt class="py-op">]</tt> </tt>
-<a name="L1894"></a><tt class="py-lineno">1894</tt> <tt class="py-line"> <tt class="py-name">tempList</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIpList</tt><tt class="py-op">)</tt> </tt>
-<a name="L1895"></a><tt class="py-lineno">1895</tt> <tt class="py-line"> <tt class="py-name">ONOSIpList</tt> <tt class="py-op">=</tt> <tt class="py-name">tempList</tt> </tt>
-<a name="L1896"></a><tt class="py-lineno">1896</tt> <tt class="py-line"> </tt>
-<a name="L1897"></a><tt class="py-lineno">1897</tt> <tt class="py-line"> <tt class="py-name">myPort</tt> <tt class="py-op">=</tt> <tt class="py-number">6</tt> </tt>
-<a name="L1898"></a><tt class="py-lineno">1898</tt> <tt class="py-line"> <tt class="py-name">lastSwitch</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1899"></a><tt class="py-lineno">1899</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1900"></a><tt class="py-lineno">1900</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">switchList</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1901"></a><tt class="py-lineno">1901</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L1902"></a><tt class="py-lineno">1902</tt> <tt class="py-line"> </tt>
-<a name="L1903"></a><tt class="py-lineno">1903</tt> <tt class="py-line"> <tt class="py-name">linkGraph</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"graph "</tt> <tt class="py-op">+</tt> <tt class="py-name">ONOSIpList</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" {\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1904"></a><tt class="py-lineno">1904</tt> <tt class="py-line"> </tt>
-<a name="L1905"></a><tt class="py-lineno">1905</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">node</tt> <tt class="py-op">></tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1906"></a><tt class="py-lineno">1906</tt> <tt class="py-line"> <tt class="py-comment">#connect to last device on previous node</tt> </tt>
-<a name="L1907"></a><tt class="py-lineno">1907</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-string">"\t0:5 -> "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">lastSwitch</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":6:"</tt> <tt class="py-op">+</tt> <tt class="py-name">lastIp</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt><tt class="py-op">)</tt> <tt class="py-comment">#ONOSIpList[node-1]</tt> </tt>
-<a name="L1908"></a><tt class="py-lineno">1908</tt> <tt class="py-line"> <tt class="py-name">linkGraph</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L1909"></a><tt class="py-lineno">1909</tt> <tt class="py-line"> </tt>
-<a name="L1910"></a><tt class="py-lineno">1910</tt> <tt class="py-line"> <tt class="py-name">lastSwitch</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1911"></a><tt class="py-lineno">1911</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt> <tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">switchList</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1912"></a><tt class="py-lineno">1912</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L1913"></a><tt class="py-lineno">1913</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-string">"\t"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">myPort</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1914"></a><tt class="py-lineno">1914</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">+=</tt> <tt class="py-string">" -- "</tt> </tt>
-<a name="L1915"></a><tt class="py-lineno">1915</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">+=</tt> <tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">myPort</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1916"></a><tt class="py-lineno">1916</tt> <tt class="py-line"> <tt class="py-name">linkGraph</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L1917"></a><tt class="py-lineno">1917</tt> <tt class="py-line"> <tt class="py-name">lastSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">switch</tt><tt class="py-op">+</tt><tt class="py-number">1</tt> </tt>
-<a name="L1918"></a><tt class="py-lineno">1918</tt> <tt class="py-line"> <tt class="py-name">lastIp</tt> <tt class="py-op">=</tt> <tt class="py-name">ONOSIpList</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> </tt>
-<a name="L1919"></a><tt class="py-lineno">1919</tt> <tt class="py-line"> </tt>
-<a name="L1920"></a><tt class="py-lineno">1920</tt> <tt class="py-line"> <tt class="py-comment">#lastSwitch += 1</tt> </tt>
-<a name="L1921"></a><tt class="py-lineno">1921</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">node</tt> <tt class="py-op"><</tt> <tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1922"></a><tt class="py-lineno">1922</tt> <tt class="py-line"> <tt class="py-comment">#connect to first device on the next node</tt> </tt>
-<a name="L1923"></a><tt class="py-lineno">1923</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-string">"\t"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">lastSwitch</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":6 -> 0:5:"</tt> <tt class="py-op">+</tt> <tt class="py-name">ONOSIpList</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1924"></a><tt class="py-lineno">1924</tt> <tt class="py-line"> <tt class="py-name">linkGraph</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L1925"></a><tt class="py-lineno">1925</tt> <tt class="py-line"> </tt>
-<a name="L1926"></a><tt class="py-lineno">1926</tt> <tt class="py-line"> <tt class="py-name">linkGraph</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"}\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1927"></a><tt class="py-lineno">1927</tt> <tt class="py-line"> <tt class="py-name">linkGraph</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1928"></a><tt class="py-lineno">1928</tt> <tt class="py-line"> </tt>
-<a name="L1929"></a><tt class="py-lineno">1929</tt> <tt class="py-line"> <tt class="py-comment">#SCP</tt> </tt>
-<a name="L1930"></a><tt class="py-lineno">1930</tt> <tt class="py-line"> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">system</tt><tt class="py-op">(</tt> <tt class="py-string">"scp "</tt> <tt class="py-op">+</tt> <tt class="py-name">tempFile</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> <tt class="py-name">benchIp</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">linkGraphPath</tt><tt class="py-op">)</tt> </tt>
-<a name="L1931"></a><tt class="py-lineno">1931</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-614" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-614', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"linkGraph.cfg creation complete"</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1932"></a><tt class="py-lineno">1932</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.configNullDev"></a><div id="OnosDriver.configNullDev-def"><a name="L1933"></a><tt class="py-lineno">1933</tt> <a class="py-toggle" href="#" id="OnosDriver.configNullDev-toggle" onclick="return toggle('OnosDriver.configNullDev');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#configNullDev">configNullDev</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ONOSIpList</tt><tt class="py-op">,</tt> <tt class="py-param">deviceCount</tt><tt class="py-op">,</tt> <tt class="py-param">numPorts</tt><tt class="py-op">=</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.configNullDev-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.configNullDev-expanded"><a name="L1934"></a><tt class="py-lineno">1934</tt> <tt class="py-line"> </tt>
-<a name="L1935"></a><tt class="py-lineno">1935</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L1936"></a><tt class="py-lineno">1936</tt> <tt class="py-line"><tt class="py-docstring"> ONOSIpList = list of Ip addresses of nodes switches will be devided amongst</tt> </tt>
-<a name="L1937"></a><tt class="py-lineno">1937</tt> <tt class="py-line"><tt class="py-docstring"> deviceCount = number of switches to distribute, or list of values to use as custom distribution</tt> </tt>
-<a name="L1938"></a><tt class="py-lineno">1938</tt> <tt class="py-line"><tt class="py-docstring"> numPorts = number of ports per device. Defaults to 10 both in this function and in ONOS. Optional arg</tt> </tt>
-<a name="L1939"></a><tt class="py-lineno">1939</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L1940"></a><tt class="py-lineno">1940</tt> <tt class="py-line"> </tt>
-<a name="L1941"></a><tt class="py-lineno">1941</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-615" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-615', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-616" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-616', 'step', 'link-612');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Configuring Null Device Provider"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1942"></a><tt class="py-lineno">1942</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIpList</tt><tt class="py-op">)</tt> </tt>
-<a name="L1943"></a><tt class="py-lineno">1943</tt> <tt class="py-line"> </tt>
-<a name="L1944"></a><tt class="py-lineno">1944</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1945"></a><tt class="py-lineno">1945</tt> <tt class="py-line"> </tt>
-<a name="L1946"></a><tt class="py-lineno">1946</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">deviceCount</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">int</tt> <tt class="py-keyword">or</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">deviceCount</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">str</tt><tt class="py-op">:</tt> </tt>
-<a name="L1947"></a><tt class="py-lineno">1947</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-617" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-617', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-618" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-618', 'step', 'link-612');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Creating device distribution"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1948"></a><tt class="py-lineno">1948</tt> <tt class="py-line"> <tt class="py-name">deviceCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">deviceCount</tt><tt class="py-op">)</tt> </tt>
-<a name="L1949"></a><tt class="py-lineno">1949</tt> <tt class="py-line"> <tt class="py-name">switchList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L1950"></a><tt class="py-lineno">1950</tt> <tt class="py-line"> <tt class="py-name">baselineSwitchCount</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceCount</tt><tt class="py-op">/</tt><tt class="py-name">clusterCount</tt> </tt>
-<a name="L1951"></a><tt class="py-lineno">1951</tt> <tt class="py-line"> </tt>
-<a name="L1952"></a><tt class="py-lineno">1952</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1953"></a><tt class="py-lineno">1953</tt> <tt class="py-line"> <tt class="py-name">switchList</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">baselineSwitchCount</tt> </tt>
-<a name="L1954"></a><tt class="py-lineno">1954</tt> <tt class="py-line"> </tt>
-<a name="L1955"></a><tt class="py-lineno">1955</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">deviceCount</tt><tt class="py-op">%</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1956"></a><tt class="py-lineno">1956</tt> <tt class="py-line"> <tt class="py-name">switchList</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1957"></a><tt class="py-lineno">1957</tt> <tt class="py-line"> </tt>
-<a name="L1958"></a><tt class="py-lineno">1958</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">deviceCount</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">list</tt><tt class="py-op">:</tt> </tt>
-<a name="L1959"></a><tt class="py-lineno">1959</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-619" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-619', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Using provided device distribution"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1960"></a><tt class="py-lineno">1960</tt> <tt class="py-line"> </tt>
-<a name="L1961"></a><tt class="py-lineno">1961</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">deviceCount</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">clusterCount</tt><tt class="py-op">:</tt> </tt>
-<a name="L1962"></a><tt class="py-lineno">1962</tt> <tt class="py-line"> <tt class="py-name">switchList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-string">'0'</tt><tt class="py-op">]</tt> </tt>
-<a name="L1963"></a><tt class="py-lineno">1963</tt> <tt class="py-line"> <tt class="py-name">switchList</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-name">deviceCount</tt><tt class="py-op">)</tt> </tt>
-<a name="L1964"></a><tt class="py-lineno">1964</tt> <tt class="py-line"> </tt>
-<a name="L1965"></a><tt class="py-lineno">1965</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">deviceCount</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-op">(</tt><tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1966"></a><tt class="py-lineno">1966</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">deviceCount</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'0'</tt> <tt class="py-keyword">or</tt> <tt class="py-name">deviceCount</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1967"></a><tt class="py-lineno">1967</tt> <tt class="py-line"> <tt class="py-name">switchList</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceCount</tt> </tt>
-<a name="L1968"></a><tt class="py-lineno">1968</tt> <tt class="py-line"> </tt>
-<a name="L1969"></a><tt class="py-lineno">1969</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">switchList</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-op">(</tt><tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L1970"></a><tt class="py-lineno">1970</tt> <tt class="py-line"> </tt>
-<a name="L1971"></a><tt class="py-lineno">1971</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1972"></a><tt class="py-lineno">1972</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-620" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-620', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-621" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-621', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Bad device/Ip list match"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1973"></a><tt class="py-lineno">1973</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">TypeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1974"></a><tt class="py-lineno">1974</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-622" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-622', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1975"></a><tt class="py-lineno">1975</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1976"></a><tt class="py-lineno">1976</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L1977"></a><tt class="py-lineno">1977</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-623" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-623', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1978"></a><tt class="py-lineno">1978</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-624" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-624', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1979"></a><tt class="py-lineno">1979</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-625" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-625', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1980"></a><tt class="py-lineno">1980</tt> <tt class="py-line"> </tt>
-<a name="L1981"></a><tt class="py-lineno">1981</tt> <tt class="py-line"> </tt>
-<a name="L1982"></a><tt class="py-lineno">1982</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L1983"></a><tt class="py-lineno">1983</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIpList</tt><tt class="py-op">)</tt> </tt>
-<a name="L1984"></a><tt class="py-lineno">1984</tt> <tt class="py-line"> </tt>
-<a name="L1985"></a><tt class="py-lineno">1985</tt> <tt class="py-line"> <tt class="py-name">devicesString</tt> <tt class="py-op">=</tt> <tt class="py-string">"devConfigs = "</tt> </tt>
-<a name="L1986"></a><tt class="py-lineno">1986</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1987"></a><tt class="py-lineno">1987</tt> <tt class="py-line"> <tt class="py-name">devicesString</tt> <tt class="py-op">+=</tt> <tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">switchList</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1988"></a><tt class="py-lineno">1988</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">node</tt> <tt class="py-op"><</tt> <tt class="py-name">clusterCount</tt><tt class="py-op">:</tt> </tt>
-<a name="L1989"></a><tt class="py-lineno">1989</tt> <tt class="py-line"> <tt class="py-name">devicesString</tt> <tt class="py-op">+=</tt> <tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L1990"></a><tt class="py-lineno">1990</tt> <tt class="py-line"> </tt>
-<a name="L1991"></a><tt class="py-lineno">1991</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1992"></a><tt class="py-lineno">1992</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-626" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-626', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 cfg set org.onosproject.provider.nil.device.impl.NullDeviceProvider devConfigs "</tt> <tt class="py-op">+</tt> <tt class="py-name">devicesString</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1993"></a><tt class="py-lineno">1993</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1994"></a><tt class="py-lineno">1994</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-627" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-627', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 cfg set org.onosproject.provider.nil.device.impl.NullDeviceProvider numPorts "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">numPorts</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1995"></a><tt class="py-lineno">1995</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1996"></a><tt class="py-lineno">1996</tt> <tt class="py-line"> </tt>
-<a name="L1997"></a><tt class="py-lineno">1997</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1998"></a><tt class="py-lineno">1998</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-628" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-628', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 cfg get org.onosproject.provider.nil.device.impl.NullDeviceProvider"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1999"></a><tt class="py-lineno">1999</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2000"></a><tt class="py-lineno">2000</tt> <tt class="py-line"> <tt class="py-name">verification</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L2001"></a><tt class="py-lineno">2001</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">" value="</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">numPorts</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">verification</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-string">" value="</tt> <tt class="py-op">+</tt> <tt class="py-name">devicesString</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">verification</tt><tt class="py-op">:</tt> </tt>
-<a name="L2002"></a><tt class="py-lineno">2002</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2003"></a><tt class="py-lineno">2003</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2004"></a><tt class="py-lineno">2004</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L2005"></a><tt class="py-lineno">2005</tt> <tt class="py-line"> </tt>
-<a name="L2006"></a><tt class="py-lineno">2006</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-op">(</tt><tt class="py-string">"value="</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">numPorts</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">verification</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-string">" value="</tt> <tt class="py-op">+</tt> <tt class="py-name">devicesString</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">verification</tt> </tt>
-<a name="L2007"></a><tt class="py-lineno">2007</tt> <tt class="py-line"> </tt>
-<a name="L2008"></a><tt class="py-lineno">2008</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2009"></a><tt class="py-lineno">2009</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-629" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-629', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-630" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-630', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">"Incorrect Config settings: "</tt> <tt class="py-op">+</tt> <tt class="py-name">verification</tt><tt class="py-op">)</tt> </tt>
-<a name="L2010"></a><tt class="py-lineno">2010</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2011"></a><tt class="py-lineno">2011</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-631" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-631', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2012"></a><tt class="py-lineno">2012</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-632" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-632', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2013"></a><tt class="py-lineno">2013</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-633" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-633', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2014"></a><tt class="py-lineno">2014</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.configNullLink"></a><div id="OnosDriver.configNullLink-def"><a name="L2015"></a><tt class="py-lineno">2015</tt> <a class="py-toggle" href="#" id="OnosDriver.configNullLink-toggle" onclick="return toggle('OnosDriver.configNullLink');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#configNullLink">configNullLink</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">fileName</tt><tt class="py-op">=</tt><tt class="py-string">"/opt/onos/apache-karaf-3.0.3/etc/linkGraph.cfg"</tt><tt class="py-op">,</tt> <tt class="py-param">eventRate</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.configNullLink-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.configNullLink-expanded"><a name="L2016"></a><tt class="py-lineno">2016</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L2017"></a><tt class="py-lineno">2017</tt> <tt class="py-line"><tt class="py-docstring"> fileName default is currently the same as the default on ONOS, specify alternate file if</tt> </tt>
-<a name="L2018"></a><tt class="py-lineno">2018</tt> <tt class="py-line"><tt class="py-docstring"> you want to use a different topology file than linkGraph.cfg</tt> </tt>
-<a name="L2019"></a><tt class="py-lineno">2019</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L2020"></a><tt class="py-lineno">2020</tt> <tt class="py-line"> </tt>
-<a name="L2021"></a><tt class="py-lineno">2021</tt> <tt class="py-line"> </tt>
-<a name="L2022"></a><tt class="py-lineno">2022</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2023"></a><tt class="py-lineno">2023</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-634" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-634', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 cfg set org.onosproject.provider.nil.link.impl.NullLinkProvider eventRate "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">eventRate</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L2024"></a><tt class="py-lineno">2024</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2025"></a><tt class="py-lineno">2025</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-635" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-635', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 cfg set org.onosproject.provider.nil.link.impl.NullLinkProvider cfgFile "</tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2026"></a><tt class="py-lineno">2026</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2027"></a><tt class="py-lineno">2027</tt> <tt class="py-line"> </tt>
-<a name="L2028"></a><tt class="py-lineno">2028</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2029"></a><tt class="py-lineno">2029</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-636" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-636', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 cfg get org.onosproject.provider.nil.link.impl.NullLinkProvider"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2030"></a><tt class="py-lineno">2030</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2031"></a><tt class="py-lineno">2031</tt> <tt class="py-line"> <tt class="py-name">verification</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L2032"></a><tt class="py-lineno">2032</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">" value="</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">eventRate</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">verification</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-string">" value="</tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">verification</tt><tt class="py-op">:</tt> </tt>
-<a name="L2033"></a><tt class="py-lineno">2033</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2034"></a><tt class="py-lineno">2034</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2035"></a><tt class="py-lineno">2035</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L2036"></a><tt class="py-lineno">2036</tt> <tt class="py-line"> </tt>
-<a name="L2037"></a><tt class="py-lineno">2037</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-op">(</tt><tt class="py-string">"value="</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">eventRate</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">verification</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-string">" value="</tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">verification</tt> </tt>
-<a name="L2038"></a><tt class="py-lineno">2038</tt> <tt class="py-line"> </tt>
-<a name="L2039"></a><tt class="py-lineno">2039</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2040"></a><tt class="py-lineno">2040</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-637" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-637', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-638" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-638', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2041"></a><tt class="py-lineno">2041</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-639" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-639', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-640" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-640', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2042"></a><tt class="py-lineno">2042</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-641" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-641', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2043"></a><tt class="py-lineno">2043</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-642" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-642', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2044"></a><tt class="py-lineno">2044</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2045"></a><tt class="py-lineno">2045</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-643" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-643', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Settings did not post to ONOS"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2046"></a><tt class="py-lineno">2046</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-644" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-644', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-645" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-645', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt><tt class="py-name">varification</tt><tt class="py-op">)</tt> </tt>
-<a name="L2047"></a><tt class="py-lineno">2047</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L2048"></a><tt class="py-lineno">2048</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-646" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-646', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Uncaught exception!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2049"></a><tt class="py-lineno">2049</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-647" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-647', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-648" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-648', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt><tt class="py-name">varification</tt><tt class="py-op">)</tt> </tt>
-<a name="L2050"></a><tt class="py-lineno">2050</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-649" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-649', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2051"></a><tt class="py-lineno">2051</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-650" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-650', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2052"></a><tt class="py-lineno">2052</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.getOnosIps"></a><div id="OnosDriver.getOnosIps-def"><a name="L2053"></a><tt class="py-lineno">2053</tt> <a class="py-toggle" href="#" id="OnosDriver.getOnosIps-toggle" onclick="return toggle('OnosDriver.getOnosIps');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getOnosIps">getOnosIps</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.getOnosIps-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.getOnosIps-expanded"><a name="L2054"></a><tt class="py-lineno">2054</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2055"></a><tt class="py-lineno">2055</tt> <tt class="py-line"><tt class="py-docstring"> Get all onos IPs stored in</tt> </tt>
-<a name="L2056"></a><tt class="py-lineno">2056</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2057"></a><tt class="py-lineno">2057</tt> <tt class="py-line"> </tt>
-<a name="L2058"></a><tt class="py-lineno">2058</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">onosIps</tt><tt class="py-op">.</tt><tt class="py-name">values</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2059"></a><tt class="py-lineno">2059</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.logReport"></a><div id="OnosDriver.logReport-def"><a name="L2060"></a><tt class="py-lineno">2060</tt> <a class="py-toggle" href="#" id="OnosDriver.logReport-toggle" onclick="return toggle('OnosDriver.logReport');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#logReport">logReport</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">nodeIp</tt><tt class="py-op">,</tt> <tt class="py-param">searchTerms</tt><tt class="py-op">,</tt> <tt class="py-param">outputMode</tt><tt class="py-op">=</tt><tt class="py-string">"s"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.logReport-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.logReport-expanded"><a name="L2061"></a><tt class="py-lineno">2061</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L2062"></a><tt class="py-lineno">2062</tt> <tt class="py-line"><tt class="py-docstring"> - accepts either a list or a string for "searchTerms" these</tt> </tt>
-<a name="L2063"></a><tt class="py-lineno">2063</tt> <tt class="py-line"><tt class="py-docstring"> terms will be searched for in the log and have their</tt> </tt>
-<a name="L2064"></a><tt class="py-lineno">2064</tt> <tt class="py-line"><tt class="py-docstring"> instances counted</tt> </tt>
-<a name="L2065"></a><tt class="py-lineno">2065</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L2066"></a><tt class="py-lineno">2066</tt> <tt class="py-line"><tt class="py-docstring"> - nodeIp is the ip of the node whos log is to be scanned</tt> </tt>
-<a name="L2067"></a><tt class="py-lineno">2067</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L2068"></a><tt class="py-lineno">2068</tt> <tt class="py-line"><tt class="py-docstring"> - output modes:</tt> </tt>
-<a name="L2069"></a><tt class="py-lineno">2069</tt> <tt class="py-line"><tt class="py-docstring"> "s" - Simple. Quiet output mode that just prints</tt> </tt>
-<a name="L2070"></a><tt class="py-lineno">2070</tt> <tt class="py-line"><tt class="py-docstring"> the occurences of each search term</tt> </tt>
-<a name="L2071"></a><tt class="py-lineno">2071</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L2072"></a><tt class="py-lineno">2072</tt> <tt class="py-line"><tt class="py-docstring"> "d" - Detailed. Prints number of occurences as well as the entire</tt> </tt>
-<a name="L2073"></a><tt class="py-lineno">2073</tt> <tt class="py-line"><tt class="py-docstring"> line for each of the last 5 occurences</tt> </tt>
-<a name="L2074"></a><tt class="py-lineno">2074</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L2075"></a><tt class="py-lineno">2075</tt> <tt class="py-line"><tt class="py-docstring"> - returns total of the number of instances of all search terms</tt> </tt>
-<a name="L2076"></a><tt class="py-lineno">2076</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L2077"></a><tt class="py-lineno">2077</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-651" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-651', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"========================== Log Report ===========================\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2078"></a><tt class="py-lineno">2078</tt> <tt class="py-line"> </tt>
-<a name="L2079"></a><tt class="py-lineno">2079</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">searchTerms</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">str</tt><tt class="py-op">:</tt> </tt>
-<a name="L2080"></a><tt class="py-lineno">2080</tt> <tt class="py-line"> <tt class="py-name">searchTerms</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">searchTerms</tt><tt class="py-op">]</tt> </tt>
-<a name="L2081"></a><tt class="py-lineno">2081</tt> <tt class="py-line"> </tt>
-<a name="L2082"></a><tt class="py-lineno">2082</tt> <tt class="py-line"> <tt class="py-name">logLines</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-op">[</tt><tt class="py-string">" "</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">searchTerms</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2083"></a><tt class="py-lineno">2083</tt> <tt class="py-line"> </tt>
-<a name="L2084"></a><tt class="py-lineno">2084</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">term</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">searchTerms</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2085"></a><tt class="py-lineno">2085</tt> <tt class="py-line"> <tt class="py-name">logLines</tt><tt class="py-op">[</tt><tt class="py-name">term</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">searchTerms</tt><tt class="py-op">[</tt><tt class="py-name">term</tt><tt class="py-op">]</tt> </tt>
-<a name="L2086"></a><tt class="py-lineno">2086</tt> <tt class="py-line"> </tt>
-<a name="L2087"></a><tt class="py-lineno">2087</tt> <tt class="py-line"> <tt class="py-name">totalHits</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2088"></a><tt class="py-lineno">2088</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">term</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">searchTerms</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2089"></a><tt class="py-lineno">2089</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos-ssh "</tt> <tt class="py-op">+</tt> <tt class="py-name">nodeIp</tt> <tt class="py-op">+</tt> <tt class="py-string">" cat /opt/onos/log/karaf.log | grep "</tt> <tt class="py-op">+</tt> <tt class="py-name">searchTerms</tt><tt class="py-op">[</tt><tt class="py-name">term</tt><tt class="py-op">]</tt> </tt>
-<a name="L2090"></a><tt class="py-lineno">2090</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-652" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-652', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L2091"></a><tt class="py-lineno">2091</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2092"></a><tt class="py-lineno">2092</tt> <tt class="py-line"> <tt class="py-name">before</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2093"></a><tt class="py-lineno">2093</tt> <tt class="py-line"> </tt>
-<a name="L2094"></a><tt class="py-lineno">2094</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">searchTerms</tt><tt class="py-op">[</tt><tt class="py-name">term</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L2095"></a><tt class="py-lineno">2095</tt> <tt class="py-line"> </tt>
-<a name="L2096"></a><tt class="py-lineno">2096</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">before</tt><tt class="py-op">:</tt> </tt>
-<a name="L2097"></a><tt class="py-lineno">2097</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">searchTerms</tt><tt class="py-op">[</tt><tt class="py-name">term</tt><tt class="py-op">]</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt> <tt class="py-keyword">and</tt> <tt class="py-string">"grep"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt><tt class="py-op">:</tt> </tt>
-<a name="L2098"></a><tt class="py-lineno">2098</tt> <tt class="py-line"> <tt class="py-name">count</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2099"></a><tt class="py-lineno">2099</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">before</tt><tt class="py-op">.</tt><tt class="py-name">index</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">before</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">7</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2100"></a><tt class="py-lineno">2100</tt> <tt class="py-line"> <tt class="py-name">logLines</tt><tt class="py-op">[</tt><tt class="py-name">term</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L2101"></a><tt class="py-lineno">2101</tt> <tt class="py-line"> </tt>
-<a name="L2102"></a><tt class="py-lineno">2102</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-653" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-653', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">count</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">count</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2103"></a><tt class="py-lineno">2103</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">term</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">searchTerms</tt><tt class="py-op">)</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2104"></a><tt class="py-lineno">2104</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt><tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2105"></a><tt class="py-lineno">2105</tt> <tt class="py-line"> <tt class="py-name">totalHits</tt> <tt class="py-op">+=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">count</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L2106"></a><tt class="py-lineno">2106</tt> <tt class="py-line"> </tt>
-<a name="L2107"></a><tt class="py-lineno">2107</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">outputMode</tt> <tt class="py-op">!=</tt> <tt class="py-string">"s"</tt> <tt class="py-keyword">and</tt> <tt class="py-name">outputMode</tt> <tt class="py-op">!=</tt> <tt class="py-string">"S"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2108"></a><tt class="py-lineno">2108</tt> <tt class="py-line"> <tt class="py-name">outputString</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L2109"></a><tt class="py-lineno">2109</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">logLines</tt><tt class="py-op">:</tt> </tt>
-<a name="L2110"></a><tt class="py-lineno">2110</tt> <tt class="py-line"> <tt class="py-name">outputString</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">": \n"</tt> </tt>
-<a name="L2111"></a><tt class="py-lineno">2111</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2112"></a><tt class="py-lineno">2112</tt> <tt class="py-line"> <tt class="py-name">outputString</tt> <tt class="py-op">+=</tt> <tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">[</tt><tt class="py-name">x</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2113"></a><tt class="py-lineno">2113</tt> <tt class="py-line"> </tt>
-<a name="L2114"></a><tt class="py-lineno">2114</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">outputString</tt> <tt class="py-op">!=</tt> <tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">": \n"</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2115"></a><tt class="py-lineno">2115</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-654" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-654', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">outputString</tt><tt class="py-op">)</tt> </tt>
-<a name="L2116"></a><tt class="py-lineno">2116</tt> <tt class="py-line"> </tt>
-<a name="L2117"></a><tt class="py-lineno">2117</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-655" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-655', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"================================================================\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2118"></a><tt class="py-lineno">2118</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">totalHits</tt> </tt>
-</div><a name="L2119"></a><tt class="py-lineno">2119</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.copyMininetFile"></a><div id="OnosDriver.copyMininetFile-def"><a name="L2120"></a><tt class="py-lineno">2120</tt> <a class="py-toggle" href="#" id="OnosDriver.copyMininetFile-toggle" onclick="return toggle('OnosDriver.copyMininetFile');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#copyMininetFile">copyMininetFile</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">fileName</tt><tt class="py-op">,</tt> <tt class="py-param">localPath</tt><tt class="py-op">,</tt> <tt class="py-param">userName</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">,</tt> </tt>
-<a name="L2121"></a><tt class="py-lineno">2121</tt> <tt class="py-line"> <tt class="py-param">mnPath</tt><tt class="py-op">=</tt><tt class="py-string">'~/mininet/custom/'</tt><tt class="py-op">,</tt> <tt class="py-param">timeout</tt> <tt class="py-op">=</tt> <tt class="py-number">60</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.copyMininetFile-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.copyMininetFile-expanded"><a name="L2122"></a><tt class="py-lineno">2122</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2123"></a><tt class="py-lineno">2123</tt> <tt class="py-line"><tt class="py-docstring"> Description:</tt> </tt>
-<a name="L2124"></a><tt class="py-lineno">2124</tt> <tt class="py-line"><tt class="py-docstring"> Copy mininet topology file from dependency folder in the test folder</tt> </tt>
-<a name="L2125"></a><tt class="py-lineno">2125</tt> <tt class="py-line"><tt class="py-docstring"> and paste it to the mininet machine's mininet/custom folder</tt> </tt>
-<a name="L2126"></a><tt class="py-lineno">2126</tt> <tt class="py-line"><tt class="py-docstring"> Required:</tt> </tt>
-<a name="L2127"></a><tt class="py-lineno">2127</tt> <tt class="py-line"><tt class="py-docstring"> fileName - Name of the topology file to copy</tt> </tt>
-<a name="L2128"></a><tt class="py-lineno">2128</tt> <tt class="py-line"><tt class="py-docstring"> localPath - File path of the mininet topology file</tt> </tt>
-<a name="L2129"></a><tt class="py-lineno">2129</tt> <tt class="py-line"><tt class="py-docstring"> userName - User name of the mininet machine to send the file to</tt> </tt>
-<a name="L2130"></a><tt class="py-lineno">2130</tt> <tt class="py-line"><tt class="py-docstring"> ip - Ip address of the mininet machine</tt> </tt>
-<a name="L2131"></a><tt class="py-lineno">2131</tt> <tt class="py-line"><tt class="py-docstring"> Optional:</tt> </tt>
-<a name="L2132"></a><tt class="py-lineno">2132</tt> <tt class="py-line"><tt class="py-docstring"> mnPath - of the mininet directory to send the file to</tt> </tt>
-<a name="L2133"></a><tt class="py-lineno">2133</tt> <tt class="py-line"><tt class="py-docstring"> Return:</tt> </tt>
-<a name="L2134"></a><tt class="py-lineno">2134</tt> <tt class="py-line"><tt class="py-docstring"> Return main.TRUE if successfully copied the file otherwise</tt> </tt>
-<a name="L2135"></a><tt class="py-lineno">2135</tt> <tt class="py-line"><tt class="py-docstring"> return main.FALSE</tt> </tt>
-<a name="L2136"></a><tt class="py-lineno">2136</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2137"></a><tt class="py-lineno">2137</tt> <tt class="py-line"> </tt>
-<a name="L2138"></a><tt class="py-lineno">2138</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2139"></a><tt class="py-lineno">2139</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"scp "</tt> <tt class="py-op">+</tt> <tt class="py-name">localPath</tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">userName</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L2140"></a><tt class="py-lineno">2140</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">mnPath</tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt> </tt>
-<a name="L2141"></a><tt class="py-lineno">2141</tt> <tt class="py-line"> </tt>
-<a name="L2142"></a><tt class="py-lineno">2142</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-656" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-656', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2143"></a><tt class="py-lineno">2143</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2144"></a><tt class="py-lineno">2144</tt> <tt class="py-line"> </tt>
-<a name="L2145"></a><tt class="py-lineno">2145</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-657" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-657', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Execute: "</tt> <tt class="py-op">+</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2146"></a><tt class="py-lineno">2146</tt> <tt class="py-line"> </tt>
-<a name="L2147"></a><tt class="py-lineno">2147</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-658" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-658', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2148"></a><tt class="py-lineno">2148</tt> <tt class="py-line"> </tt>
-<a name="L2149"></a><tt class="py-lineno">2149</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">'No such file'</tt><tt class="py-op">,</tt> </tt>
-<a name="L2150"></a><tt class="py-lineno">2150</tt> <tt class="py-line"> <tt class="py-string">"100%"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2151"></a><tt class="py-lineno">2151</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2152"></a><tt class="py-lineno">2152</tt> <tt class="py-line"> </tt>
-<a name="L2153"></a><tt class="py-lineno">2153</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L2154"></a><tt class="py-lineno">2154</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-659" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-659', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-660" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-660', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": File "</tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2155"></a><tt class="py-lineno">2155</tt> <tt class="py-line"> <tt class="py-string">" does not exist!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2156"></a><tt class="py-lineno">2156</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2157"></a><tt class="py-lineno">2157</tt> <tt class="py-line"> </tt>
-<a name="L2158"></a><tt class="py-lineno">2158</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2159"></a><tt class="py-lineno">2159</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-661" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-661', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": File "</tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2160"></a><tt class="py-lineno">2160</tt> <tt class="py-line"> <tt class="py-string">" has been copied!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2161"></a><tt class="py-lineno">2161</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-662" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-662', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2162"></a><tt class="py-lineno">2162</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2163"></a><tt class="py-lineno">2163</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2164"></a><tt class="py-lineno">2164</tt> <tt class="py-line"> </tt>
-<a name="L2165"></a><tt class="py-lineno">2165</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">:</tt> </tt>
-<a name="L2166"></a><tt class="py-lineno">2166</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-663" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-663', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-664" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-664', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": EOF exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2167"></a><tt class="py-lineno">2167</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-665" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-665', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-666" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-666', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2168"></a><tt class="py-lineno">2168</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-667" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-667', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2169"></a><tt class="py-lineno">2169</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-668" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-668', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2170"></a><tt class="py-lineno">2170</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">:</tt> </tt>
-<a name="L2171"></a><tt class="py-lineno">2171</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-669" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-669', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-670" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-670', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": TIMEOUT exception found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2172"></a><tt class="py-lineno">2172</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-671" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-671', 'log', 'link-7');">log</a></tt><tt class="py-op">.</tt><tt id="link-672" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-672', 'error', 'link-12');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2173"></a><tt class="py-lineno">2173</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-673" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-673', 'cleanup', 'link-25');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2174"></a><tt class="py-lineno">2174</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-674" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-674', 'exit', 'link-26');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2175"></a><tt class="py-lineno">2175</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.jvmSet"></a><div id="OnosDriver.jvmSet-def"><a name="L2176"></a><tt class="py-lineno">2176</tt> <a class="py-toggle" href="#" id="OnosDriver.jvmSet-toggle" onclick="return toggle('OnosDriver.jvmSet');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#jvmSet">jvmSet</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">memory</tt><tt class="py-op">=</tt><tt class="py-number">8</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.jvmSet-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.jvmSet-expanded"><a name="L2177"></a><tt class="py-lineno">2177</tt> <tt class="py-line"> </tt>
-<a name="L2178"></a><tt class="py-lineno">2178</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L2179"></a><tt class="py-lineno">2179</tt> <tt class="py-line"> </tt>
-<a name="L2180"></a><tt class="py-lineno">2180</tt> <tt class="py-line"> <tt class="py-name">homeDir</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-675" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-675', 'path', 'link-0');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">expanduser</tt><tt class="py-op">(</tt><tt class="py-string">'~'</tt><tt class="py-op">)</tt> </tt>
-<a name="L2181"></a><tt class="py-lineno">2181</tt> <tt class="py-line"> <tt class="py-name">filename</tt> <tt class="py-op">=</tt> <tt class="py-string">"/onos/tools/package/bin/onos-service"</tt> </tt>
-<a name="L2182"></a><tt class="py-lineno">2182</tt> <tt class="py-line"> </tt>
-<a name="L2183"></a><tt class="py-lineno">2183</tt> <tt class="py-line"> <tt class="py-name">serviceConfig</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">homeDir</tt> <tt class="py-op">+</tt> <tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-string">'w+'</tt><tt class="py-op">)</tt> </tt>
-<a name="L2184"></a><tt class="py-lineno">2184</tt> <tt class="py-line"> <tt class="py-name">serviceConfig</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"#!/bin/bash\n "</tt><tt class="py-op">)</tt> </tt>
-<a name="L2185"></a><tt class="py-lineno">2185</tt> <tt class="py-line"> <tt class="py-name">serviceConfig</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"#------------------------------------- \n "</tt><tt class="py-op">)</tt> </tt>
-<a name="L2186"></a><tt class="py-lineno">2186</tt> <tt class="py-line"> <tt class="py-name">serviceConfig</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"# Starts ONOS Apache Karaf container\n "</tt><tt class="py-op">)</tt> </tt>
-<a name="L2187"></a><tt class="py-lineno">2187</tt> <tt class="py-line"> <tt class="py-name">serviceConfig</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"#------------------------------------- \n "</tt><tt class="py-op">)</tt> </tt>
-<a name="L2188"></a><tt class="py-lineno">2188</tt> <tt class="py-line"> <tt class="py-name">serviceConfig</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"#export JAVA_HOME=${JAVA_HOME:-/usr/lib/jvm/java-7-openjdk-amd64/}\n "</tt><tt class="py-op">)</tt> </tt>
-<a name="L2189"></a><tt class="py-lineno">2189</tt> <tt class="py-line"> <tt class="py-name">serviceConfig</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"""export JAVA_OPTS="${JAVA_OPTS:--Xms"""</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">memory</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"G -Xmx"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">memory</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"""G}" \n """</tt><tt class="py-op">)</tt> </tt>
-<a name="L2190"></a><tt class="py-lineno">2190</tt> <tt class="py-line"> <tt class="py-name">serviceConfig</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"[ -d $ONOS_HOME ] && cd $ONOS_HOME || ONOS_HOME=$(dirname $0)/..\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2191"></a><tt class="py-lineno">2191</tt> <tt class="py-line"> <tt class="py-name">serviceConfig</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"""${ONOS_HOME}/apache-karaf-$KARAF_VERSION/bin/karaf "$@" \n """</tt><tt class="py-op">)</tt> </tt>
-<a name="L2192"></a><tt class="py-lineno">2192</tt> <tt class="py-line"> <tt class="py-name">serviceConfig</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2193"></a><tt class="py-lineno">2193</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.createDBFile"></a><div id="OnosDriver.createDBFile-def"><a name="L2194"></a><tt class="py-lineno">2194</tt> <a class="py-toggle" href="#" id="OnosDriver.createDBFile-toggle" onclick="return toggle('OnosDriver.createDBFile');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createDBFile">createDBFile</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">testData</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.createDBFile-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.createDBFile-expanded"><a name="L2195"></a><tt class="py-lineno">2195</tt> <tt class="py-line"> </tt>
-<a name="L2196"></a><tt class="py-lineno">2196</tt> <tt class="py-line"> <tt class="py-name">filename</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">+</tt> <tt class="py-string">"DB"</tt> </tt>
-<a name="L2197"></a><tt class="py-lineno">2197</tt> <tt class="py-line"> <tt class="py-name">DBString</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L2198"></a><tt class="py-lineno">2198</tt> <tt class="py-line"> </tt>
-<a name="L2199"></a><tt class="py-lineno">2199</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">testData</tt><tt class="py-op">:</tt> </tt>
-<a name="L2200"></a><tt class="py-lineno">2200</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">string</tt><tt class="py-op">:</tt> </tt>
-<a name="L2201"></a><tt class="py-lineno">2201</tt> <tt class="py-line"> <tt class="py-name">item</tt> <tt class="py-op">=</tt> <tt class="py-string">"'"</tt> <tt class="py-op">+</tt> <tt class="py-name">item</tt> <tt class="py-op">+</tt> <tt class="py-string">"'"</tt> </tt>
-<a name="L2202"></a><tt class="py-lineno">2202</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">testData</tt><tt class="py-op">.</tt><tt class="py-name">index</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> <tt class="py-op"><</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">testData</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2203"></a><tt class="py-lineno">2203</tt> <tt class="py-line"> <tt class="py-name">item</tt> <tt class="py-op">+=</tt> <tt class="py-string">","</tt> </tt>
-<a name="L2204"></a><tt class="py-lineno">2204</tt> <tt class="py-line"> <tt class="py-name">DBString</tt> <tt class="py-op">+=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L2205"></a><tt class="py-lineno">2205</tt> <tt class="py-line"> </tt>
-<a name="L2206"></a><tt class="py-lineno">2206</tt> <tt class="py-line"> <tt class="py-name">DBFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-string">"a"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2207"></a><tt class="py-lineno">2207</tt> <tt class="py-line"> <tt class="py-name">DBFile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">DBString</tt><tt class="py-op">)</tt> </tt>
-<a name="L2208"></a><tt class="py-lineno">2208</tt> <tt class="py-line"> <tt class="py-name">DBFile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2209"></a><tt class="py-lineno">2209</tt> <tt class="py-line"> </tt>
-<a name="OnosDriver.verifySummary"></a><div id="OnosDriver.verifySummary-def"><a name="L2210"></a><tt class="py-lineno">2210</tt> <a class="py-toggle" href="#" id="OnosDriver.verifySummary-toggle" onclick="return toggle('OnosDriver.verifySummary');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifySummary">verifySummary</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ONOSIp</tt><tt class="py-op">,</tt><tt class="py-op">*</tt><tt class="py-param">deviceCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OnosDriver.verifySummary-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="OnosDriver.verifySummary-expanded"><a name="L2211"></a><tt class="py-lineno">2211</tt> <tt class="py-line"> </tt>
-<a name="L2212"></a><tt class="py-lineno">2212</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-676" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-676', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos "</tt> <tt class="py-op">+</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-op">+</tt> <tt class="py-string">" summary"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2213"></a><tt class="py-lineno">2213</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2214"></a><tt class="py-lineno">2214</tt> <tt class="py-line"> </tt>
-<a name="L2215"></a><tt class="py-lineno">2215</tt> <tt class="py-line"> <tt class="py-name">summaryStr</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L2216"></a><tt class="py-lineno">2216</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"\nSummary\n==============\n"</tt> <tt class="py-op">+</tt> <tt class="py-name">summaryStr</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n\n"</tt> </tt>
-<a name="L2217"></a><tt class="py-lineno">2217</tt> <tt class="py-line"> </tt>
-<a name="L2218"></a><tt class="py-lineno">2218</tt> <tt class="py-line"> <tt class="py-comment">#passed = "SCC(s)=1" in summaryStr</tt> </tt>
-<a name="L2219"></a><tt class="py-lineno">2219</tt> <tt class="py-line"> <tt class="py-comment">#if deviceCount:</tt> </tt>
-<a name="L2220"></a><tt class="py-lineno">2220</tt> <tt class="py-line"> <tt class="py-comment"># passed = "devices=" + str(deviceCount) + "," not in summaryStr</tt> </tt>
-<a name="L2221"></a><tt class="py-lineno">2221</tt> <tt class="py-line"> </tt>
-<a name="L2222"></a><tt class="py-lineno">2222</tt> <tt class="py-line"> </tt>
-<a name="L2223"></a><tt class="py-lineno">2223</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"SCC(s)=1,"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">summaryStr</tt><tt class="py-op">:</tt> </tt>
-<a name="L2224"></a><tt class="py-lineno">2224</tt> <tt class="py-line"> <tt class="py-name">passed</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2225"></a><tt class="py-lineno">2225</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt><tt class="py-string">"Summary is verifed"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2226"></a><tt class="py-lineno">2226</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2227"></a><tt class="py-lineno">2227</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt><tt class="py-string">"Summary failed"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2228"></a><tt class="py-lineno">2228</tt> <tt class="py-line"> </tt>
-<a name="L2229"></a><tt class="py-lineno">2229</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">deviceCount</tt><tt class="py-op">:</tt> </tt>
-<a name="L2230"></a><tt class="py-lineno">2230</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-string">" ============================="</tt> </tt>
-<a name="L2231"></a><tt class="py-lineno">2231</tt> <tt class="py-line"> <tt class="py-name">checkStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"devices="</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceCount</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt> </tt>
-<a name="L2232"></a><tt class="py-lineno">2232</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Checkstr: "</tt> <tt class="py-op">+</tt> <tt class="py-name">checkStr</tt> </tt>
-<a name="L2233"></a><tt class="py-lineno">2233</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">checkStr</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">summaryStr</tt><tt class="py-op">:</tt> </tt>
-<a name="L2234"></a><tt class="py-lineno">2234</tt> <tt class="py-line"> <tt class="py-name">passed</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2235"></a><tt class="py-lineno">2235</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt><tt class="py-string">"Device count failed"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2236"></a><tt class="py-lineno">2236</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2237"></a><tt class="py-lineno">2237</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"device count verified"</tt> </tt>
-<a name="L2238"></a><tt class="py-lineno">2238</tt> <tt class="py-line"> </tt>
-<a name="L2239"></a><tt class="py-lineno">2239</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">passed</tt> </tt>
-</div></div><a name="L2240"></a><tt class="py-lineno">2240</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosdriver.OnosDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosdriver.OnosDriver-class.html
deleted file mode 100644
index a4d43f7..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.onosdriver.OnosDriver-class.html
+++ /dev/null
@@ -1,2120 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.onosdriver.OnosDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.onosdriver-module.html">Module onosdriver</a> ::
- Class OnosDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class OnosDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_onosdriver" name="class_hierarchy_for_onosdriver">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html" title="OnosDriver" alt="" coords="5,6,93,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="118,6,209,31"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="component.Component" alt="" coords="235,6,392,31"/>
-</map>
- <img src="class_hierarchy_for_onosdriver.gif" alt='' usemap="#class_hierarchy_for_onosdriver" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Initialize client</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Creates ssh handle for ONOS "bench".</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Called when Test is complete to disconnect the ONOS handle.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getEpochMs" class="summary-sig-name">getEpochMs</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns milliseconds since epoch</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.getEpochMs">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onosPackage"></a><span class="summary-sig-name">onosPackage</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">opTimeout</span>=<span class="summary-sig-default">30</span>)</span><br />
- Produce a self-contained tar.gz file that can be deployed and
- executed on any platform with Java 7 JRE.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosPackage">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onosBuild"></a><span class="summary-sig-name">onosBuild</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Use the pre defined script to build onos via mvn</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosBuild">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cleanInstall" class="summary-sig-name">cleanInstall</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">skipTest</span>=<span class="summary-sig-default">False</span>,
- <span class="summary-sig-arg">mciTimeout</span>=<span class="summary-sig-default">600</span>)</span><br />
- Runs mvn clean install in the root of the ONOS directory.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.cleanInstall">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull" class="summary-sig-name">gitPull</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">comp1</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">fastForward</span>=<span class="summary-sig-default">True</span>)</span><br />
- Assumes that "git pull" works without login</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.gitPull">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitCheckout" class="summary-sig-name">gitCheckout</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">branch</span>=<span class="summary-sig-default">"master"</span>)</span><br />
- Assumes that "git pull" works without login</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.gitCheckout">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getBranchName"></a><span class="summary-sig-name">getBranchName</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.getBranchName">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getVersion"></a><span class="summary-sig-name">getVersion</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">report</span>=<span class="summary-sig-default">False</span>)</span><br />
- Writes the COMMIT number to the report to be parsed
- by Jenkins data collector.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.getVersion">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile" class="summary-sig-name">createCellFile</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">benchIp</span>,
- <span class="summary-sig-arg">fileName</span>,
- <span class="summary-sig-arg">mnIpAddrs</span>,
- <span class="summary-sig-arg">appString</span>,
- <span class="summary-sig-arg">onosIpAddrs</span>)</span><br />
- Creates a cell file based on arguments
-Required:
- * Bench IP address ( benchIp )
- - Needed to copy the cell file over
- * File name of the cell file ( fileName )
- * Mininet IP address ( mnIpAddrs )
- - Note that only 1 ip address is
- supported currently
- * ONOS IP addresses ( onosIpAddrs )
- - Must be passed in as last arguments</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.createCellFile">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="setCell"></a><span class="summary-sig-name">setCell</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">cellname</span>)</span><br />
- Calls 'cell <name>' to set the environment variables on
- ONOSbench</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.setCell">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="verifyCell"></a><span class="summary-sig-name">verifyCell</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Calls 'onos-verify-cell' to check for cell installation</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.verifyCell">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosCfgSet" class="summary-sig-name">onosCfgSet</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ONOSIp</span>,
- <span class="summary-sig-arg">configName</span>,
- <span class="summary-sig-arg">configParam</span>)</span><br />
- Uses 'onos <node-ip> cfg set' to change a parameter value of an
-application.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosCfgSet">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosCli" class="summary-sig-name">onosCli</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ONOSIp</span>,
- <span class="summary-sig-arg">cmdstr</span>)</span><br />
- Uses 'onos' command to send various ONOS CLI arguments.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosCli">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall" class="summary-sig-name">onosInstall</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">options</span>=<span class="summary-sig-default">"-f"</span>,
- <span class="summary-sig-arg">node</span>=<span class="summary-sig-default">""</span>)</span><br />
- Installs ONOS bits on the designated cell machine.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosInstall">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onosStart"></a><span class="summary-sig-name">onosStart</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">nodeIp</span>)</span><br />
- Calls onos command: 'onos-service [<node-ip>] start' This
- command is a remote management of the ONOS upstart daemon</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosStart">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onosStop"></a><span class="summary-sig-name">onosStop</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">nodeIp</span>)</span><br />
- Calls onos command: 'onos-service [<node-ip>] stop' This
- command is a remote management of the ONOS upstart daemon</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosStop">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onosUninstall"></a><span class="summary-sig-name">onosUninstall</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">nodeIp</span>=<span class="summary-sig-default">""</span>)</span><br />
- Calls the command: 'onos-uninstall' Uninstalls ONOS from the
- designated cell machine, stopping if needed</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosUninstall">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onosDie"></a><span class="summary-sig-name">onosDie</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">nodeIp</span>)</span><br />
- Issues the command 'onos-die <node-ip>' This command calls
- onos-kill and also stops the node</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosDie">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onosKill"></a><span class="summary-sig-name">onosKill</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">nodeIp</span>)</span><br />
- Calls the command: 'onos-kill [<node-ip>]' "Remotely, and
- unceremoniously kills the ONOS instance running on the specified cell
- machine" - Tom V</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosKill">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosRemoveRaftLogs" class="summary-sig-name">onosRemoveRaftLogs</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Removes Raft / Copy cat files from ONOS to ensure
-a cleaner environment.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosRemoveRaftLogs">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStartNetwork" class="summary-sig-name">onosStartNetwork</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">mntopo</span>)</span><br />
- Calls the command 'onos-start-network [ <mininet-topo> ]
-"remotely starts the specified topology on the cell's
-mininet machine against all controllers configured in the
-cell."
-* Specify mininet topology file name for mntopo
-* Topo files should be placed at:
- ~/<your-onos-directory>/tools/test/topos</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosStartNetwork">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup" class="summary-sig-name">isup</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">node</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">timeout</span>=<span class="summary-sig-default">120</span>)</span><br />
- Run's onos-wait-for-start which only returns once ONOS is at run
- level 100(ready for use)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.isup">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#pushTestIntentsShell" class="summary-sig-name">pushTestIntentsShell</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">dpidSrc</span>,
- <span class="summary-sig-arg">dpidDst</span>,
- <span class="summary-sig-arg">numIntents</span>,
- <span class="summary-sig-arg">dirFile</span>,
- <span class="summary-sig-arg">onosIp</span>,
- <span class="summary-sig-arg">numMult</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">appId</span>=<span class="summary-sig-default">""</span>,
- <span class="summary-sig-arg">report</span>=<span class="summary-sig-default">True</span>,
- <span class="summary-sig-arg">options</span>=<span class="summary-sig-default">""</span>)</span><br />
- Description:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.pushTestIntentsShell">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getTopology" class="summary-sig-name">getTopology</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">topologyOutput</span>)</span><br />
- Definition:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.getTopology">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#checkStatus" class="summary-sig-name">checkStatus</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">topologyResult</span>,
- <span class="summary-sig-arg">numoswitch</span>,
- <span class="summary-sig-arg">numolink</span>,
- <span class="summary-sig-arg">logLevel</span>=<span class="summary-sig-default">"info"</span>)</span><br />
- Checks the number of switches & links that ONOS sees against the
-supplied values.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.checkStatus">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkPcap" class="summary-sig-name">tsharkPcap</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">interface</span>,
- <span class="summary-sig-arg">dirFile</span>)</span><br />
- Capture all packet activity and store in specified
-directory/file</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.tsharkPcap">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runOnosTopoCfg"></a><span class="summary-sig-name">runOnosTopoCfg</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">instanceName</span>,
- <span class="summary-sig-arg">jsonFile</span>)</span><br />
- On ONOS bench, run this command:
- {ONOS_HOME}/tools/test/bin/onos-topo-cfg $OC1 filename which starts
- the rest and copies the json file to the onos instance</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.runOnosTopoCfg">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkGrep" class="summary-sig-name">tsharkGrep</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">grep</span>,
- <span class="summary-sig-arg">directory</span>,
- <span class="summary-sig-arg">interface</span>=<span class="summary-sig-default">'eth0'</span>,
- <span class="summary-sig-arg">grepOptions</span>=<span class="summary-sig-default">''</span>)</span><br />
- Required:
- * grep string
- * directory to store results
-Optional:
- * interface - default: eth0
- * grepOptions - options for grep
-Description:
- Uses tshark command to grep specific group of packets
- and stores the results to specified directory.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.tsharkGrep">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="tsharkStop"></a><span class="summary-sig-name">tsharkStop</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Removes wireshark files from /tmp and kills all tshark processes</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.tsharkStop">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#ptpd" class="summary-sig-name">ptpd</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">args</span>)</span><br />
- Initiate ptp with user-specified args.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.ptpd">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cpLogsToDir" class="summary-sig-name">cpLogsToDir</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">logToCopy</span>,
- <span class="summary-sig-arg">destDir</span>,
- <span class="summary-sig-arg">copyFileName</span>=<span class="summary-sig-default">""</span>)</span><br />
- Copies logs to a desired directory.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.cpLogsToDir">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#checkLogs" class="summary-sig-name">checkLogs</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">onosIp</span>,
- <span class="summary-sig-arg">restart</span>=<span class="summary-sig-default">False</span>)</span><br />
- runs onos-check-logs on the given onos node...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.checkLogs">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onosStatus"></a><span class="summary-sig-name">onosStatus</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">node</span>=<span class="summary-sig-default">""</span>)</span><br />
- Calls onos command: 'onos-service [<node-ip>] status'</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosStatus">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setIpTables" class="summary-sig-name">setIpTables</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ip</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">''</span>,
- <span class="summary-sig-arg">action</span>=<span class="summary-sig-default">'add'</span>,
- <span class="summary-sig-arg">packet_type</span>=<span class="summary-sig-default">''</span>,
- <span class="summary-sig-arg">direction</span>=<span class="summary-sig-default">'INPUT'</span>,
- <span class="summary-sig-arg">rule</span>=<span class="summary-sig-default">'DROP'</span>,
- <span class="summary-sig-arg">states</span>=<span class="summary-sig-default">True</span>)</span><br />
- Description:
- add or remove iptables rule to DROP (default) packets from
- specific IP and PORT
-Usage:
-* specify action ('add' or 'remove')
- when removing, pass in the same argument as you would add.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.setIpTables">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="detailed_status"></a><span class="summary-sig-name">detailed_status</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">log_filename</span>)</span><br />
- This method is used by STS to check the status of the controller
- Reports RUNNING, STARTING, STOPPED, FROZEN, ERROR (and reason)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.detailed_status">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createLinkGraphFile" class="summary-sig-name">createLinkGraphFile</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">benchIp</span>,
- <span class="summary-sig-arg">ONOSIpList</span>,
- <span class="summary-sig-arg">deviceCount</span>)</span><br />
- Create/formats the LinkGraph.cfg file based on arguments
- -only creates a linear topology and connects islands
- -evenly distributes devices
- -must be called by ONOSbench</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.createLinkGraphFile">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#configNullDev" class="summary-sig-name">configNullDev</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ONOSIpList</span>,
- <span class="summary-sig-arg">deviceCount</span>,
- <span class="summary-sig-arg">numPorts</span>=<span class="summary-sig-default">10</span>)</span><br />
- ONOSIpList = list of Ip addresses of nodes switches will be devided
- amongst deviceCount = number of switches to distribute, or list of
- values to use as custom distribution numPorts = number of ports per
- device.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.configNullDev">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="configNullLink"></a><span class="summary-sig-name">configNullLink</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">fileName</span>=<span class="summary-sig-default">"/opt/onos/apache-karaf-3.0.3/etc/linkGraph.cfg"</span>,
- <span class="summary-sig-arg">eventRate</span>=<span class="summary-sig-default">0</span>)</span><br />
- fileName default is currently the same as the default on ONOS,
- specify alternate file if you want to use a different topology file
- than linkGraph.cfg</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.configNullLink">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getOnosIps"></a><span class="summary-sig-name">getOnosIps</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Get all onos IPs stored in</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.getOnosIps">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#logReport" class="summary-sig-name">logReport</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">nodeIp</span>,
- <span class="summary-sig-arg">searchTerms</span>,
- <span class="summary-sig-arg">outputMode</span>=<span class="summary-sig-default">"s"</span>)</span><br />
- - accepts either a list or a string for "searchTerms" these
- terms will be searched for in the log and have their
- instances counted</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.logReport">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#copyMininetFile" class="summary-sig-name">copyMininetFile</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">fileName</span>,
- <span class="summary-sig-arg">localPath</span>,
- <span class="summary-sig-arg">userName</span>,
- <span class="summary-sig-arg">ip</span>,
- <span class="summary-sig-arg">mnPath</span>=<span class="summary-sig-default">'~/mininet/custom/'</span>,
- <span class="summary-sig-arg">timeout</span>=<span class="summary-sig-default">60</span>)</span><br />
- Description:...</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.copyMininetFile">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="jvmSet"></a><span class="summary-sig-name">jvmSet</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">memory</span>=<span class="summary-sig-default">8</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.jvmSet">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="createDBFile"></a><span class="summary-sig-name">createDBFile</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">testData</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.createDBFile">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="verifySummary"></a><span class="summary-sig-name">verifySummary</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ONOSIp</span>,
- <span class="summary-sig-arg">*deviceCount</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.verifySummary">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>Initialize client</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Creates ssh handle for ONOS "bench". NOTE: The ip_address
- would come from the topo file using the host tag, the value can be an
- environment variable as well as a "localhost" to get the ip
- address needed to ssh to the "bench"</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="disconnect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">disconnect</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.disconnect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Called when Test is complete to disconnect the ONOS handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.disconnect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="getEpochMs"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getEpochMs</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.getEpochMs">source code</a></span>
- </td>
- </tr></table>
-
- <p>Returns milliseconds since epoch</p>
- <p>When checking multiple nodes in a for loop, around a hundred
- milliseconds of difference (ascending) is generally acceptable due to
- calltime of the function. Few seconds, however, is not and it means
- clocks are off sync.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="cleanInstall"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">cleanInstall</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">skipTest</span>=<span class="sig-default">False</span>,
- <span class="sig-arg">mciTimeout</span>=<span class="sig-default">600</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.cleanInstall">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Runs mvn clean install in the root of the ONOS directory.
-This will clean all ONOS artifacts then compile each module
-Optional:
- skipTest - Does "-DskipTests -Dcheckstyle.skip -U -T 1C" which
- skip the test. This will make the building faster.
- Disregarding the credibility of the build
-Returns: main.TRUE on success
-On Failure, exits the test
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="gitPull"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">gitPull</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">comp1</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">fastForward</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.gitPull">source code</a></span>
- </td>
- </tr></table>
-
- <p>Assumes that "git pull" works without login</p>
- <p>If the fastForward boolean is set to true, only git pulls that can be
- fast forwarded will be performed. IE if you have not local commits in
- your branch.</p>
- <p>This function will perform a git pull on the ONOS instance. If used as
- gitPull( "NODE" ) it will do git pull + NODE. This is for the
- purpose of pulling from other nodes if necessary.</p>
- <p>Otherwise, this function will perform a git pull in the ONOS
- repository. If it has any problems, it will return main.ERROR If it
- successfully does a gitPull, it will return a 1 ( main.TRUE ) If it has
- no updates, it will return 3.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="gitCheckout"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">gitCheckout</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">branch</span>=<span class="sig-default">"master"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.gitCheckout">source code</a></span>
- </td>
- </tr></table>
-
- <p>Assumes that "git pull" works without login</p>
- <p>This function will perform a git git checkout on the ONOS instance. If
- used as gitCheckout( "branch" ) it will do git checkout of the
- "branch".</p>
- <p>Otherwise, this function will perform a git checkout of the master
- branch of the ONOS repository. If it has any problems, it will return
- main.ERROR. If the branch was already the specified branch, or the git
- checkout was successful then the function will return main.TRUE.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="createCellFile"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">createCellFile</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">benchIp</span>,
- <span class="sig-arg">fileName</span>,
- <span class="sig-arg">mnIpAddrs</span>,
- <span class="sig-arg">appString</span>,
- <span class="sig-arg">onosIpAddrs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.createCellFile">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Creates a cell file based on arguments
-Required:
- * Bench IP address ( benchIp )
- - Needed to copy the cell file over
- * File name of the cell file ( fileName )
- * Mininet IP address ( mnIpAddrs )
- - Note that only 1 ip address is
- supported currently
- * ONOS IP addresses ( onosIpAddrs )
- - Must be passed in as last arguments
-
-NOTE: Assumes cells are located at:
- ~/<self.home>/tools/test/cells/
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="onosCfgSet"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">onosCfgSet</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ONOSIp</span>,
- <span class="sig-arg">configName</span>,
- <span class="sig-arg">configParam</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosCfgSet">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Uses 'onos <node-ip> cfg set' to change a parameter value of an
-application.
-
-ex)
- onos 10.0.0.1 cfg set org.onosproject.myapp appSetting 1
-ONOSIp = '10.0.0.1'
-configName = 'org.onosproject.myapp'
-configParam = 'appSetting 1'
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="onosCli"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">onosCli</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ONOSIp</span>,
- <span class="sig-arg">cmdstr</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosCli">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Uses 'onos' command to send various ONOS CLI arguments.
-Required:
- * ONOSIp: specify the ip of the cell machine
- * cmdstr: specify the command string to send
-
-This function is intended to expose the entire karaf
-CLI commands for ONOS. Try to use this function first
-before attempting to write a ONOS CLI specific driver
-function.
-You can see a list of available 'cmdstr' arguments
-by starting onos, and typing in 'onos' to enter the
-onos> CLI. Then, type 'help' to see the list of
-available commands.
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="onosInstall"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">onosInstall</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">options</span>=<span class="sig-default">"-f"</span>,
- <span class="sig-arg">node</span>=<span class="sig-default">""</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosInstall">source code</a></span>
- </td>
- </tr></table>
-
- <p>Installs ONOS bits on the designated cell machine. If -f option is
- provided, it also forces an uninstall. Presently, install also includes
- onos-push-bits and onos-config within. The node option allows you to
- selectively only push the jar files to certain onos nodes</p>
- <p>Returns: main.TRUE on success and main.FALSE on failure</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="onosRemoveRaftLogs"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">onosRemoveRaftLogs</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosRemoveRaftLogs">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Removes Raft / Copy cat files from ONOS to ensure
-a cleaner environment.
-
-Description:
- Stops all ONOS defined in the cell,
- wipes the raft / copycat log files
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="onosStartNetwork"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">onosStartNetwork</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">mntopo</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.onosStartNetwork">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Calls the command 'onos-start-network [ <mininet-topo> ]
-"remotely starts the specified topology on the cell's
-mininet machine against all controllers configured in the
-cell."
-* Specify mininet topology file name for mntopo
-* Topo files should be placed at:
- ~/<your-onos-directory>/tools/test/topos
-
-NOTE: This function will take you to the mininet prompt
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="isup"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">isup</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">node</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">timeout</span>=<span class="sig-default">120</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.isup">source code</a></span>
- </td>
- </tr></table>
-
- <p>Run's onos-wait-for-start which only returns once ONOS is at run level
- 100(ready for use)</p>
- <p>Returns: main.TRUE if ONOS is running and main.FALSE on timeout</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="pushTestIntentsShell"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">pushTestIntentsShell</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">dpidSrc</span>,
- <span class="sig-arg">dpidDst</span>,
- <span class="sig-arg">numIntents</span>,
- <span class="sig-arg">dirFile</span>,
- <span class="sig-arg">onosIp</span>,
- <span class="sig-arg">numMult</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">appId</span>=<span class="sig-default">""</span>,
- <span class="sig-arg">report</span>=<span class="sig-default">True</span>,
- <span class="sig-arg">options</span>=<span class="sig-default">""</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.pushTestIntentsShell">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Use the linux prompt to push test intents to
- better parallelize the results than the CLI
-Required:
- * dpidSrc: specify source dpid
- * dpidDst: specify destination dpid
- * numIntents: specify number of intents to push
- * dirFile: specify directory and file name to save
- results
- * onosIp: specify the IP of ONOS to install on
-NOTE:
- You must invoke this command at linux shell prompt
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="getTopology"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getTopology</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">topologyOutput</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.getTopology">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Definition:
- Loads a json topology output
-Return:
- topology = current ONOS topology
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="checkStatus"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">checkStatus</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">topologyResult</span>,
- <span class="sig-arg">numoswitch</span>,
- <span class="sig-arg">numolink</span>,
- <span class="sig-arg">logLevel</span>=<span class="sig-default">"info"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.checkStatus">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Checks the number of switches & links that ONOS sees against the
-supplied values. By default this will report to main.log, but the
-log level can be specific.
-
-Params: ip = ip used for the onos cli
- numoswitch = expected number of switches
- numolink = expected number of links
- logLevel = level to log to.
- Currently accepts 'info', 'warn' and 'report'
-
-
-logLevel can
-
-Returns: main.TRUE if the number of switches and links are correct,
- main.FALSE if the number of switches and links is incorrect,
- and main.ERROR otherwise
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="tsharkPcap"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">tsharkPcap</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">interface</span>,
- <span class="sig-arg">dirFile</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.tsharkPcap">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Capture all packet activity and store in specified
-directory/file
-
-Required:
- * interface: interface to capture
- * dir: directory/filename to store pcap
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="tsharkGrep"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">tsharkGrep</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">grep</span>,
- <span class="sig-arg">directory</span>,
- <span class="sig-arg">interface</span>=<span class="sig-default">'eth0'</span>,
- <span class="sig-arg">grepOptions</span>=<span class="sig-default">''</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.tsharkGrep">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Required:
- * grep string
- * directory to store results
-Optional:
- * interface - default: eth0
- * grepOptions - options for grep
-Description:
- Uses tshark command to grep specific group of packets
- and stores the results to specified directory.
- The timestamp is hardcoded to be in epoch
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="ptpd"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">ptpd</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">args</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.ptpd">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Initiate ptp with user-specified args.
-Required:
- * args: specify string of args after command
- 'sudo ptpd'
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="cpLogsToDir"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">cpLogsToDir</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">logToCopy</span>,
- <span class="sig-arg">destDir</span>,
- <span class="sig-arg">copyFileName</span>=<span class="sig-default">""</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.cpLogsToDir">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Copies logs to a desired directory.
-Current implementation of ONOS deletes its karaf
-logs on every iteration. For debugging purposes,
-you may want to use this function to capture
-certain karaf logs. ( or any other logs if needed )
-Localtime will be attached to the filename
-
-Required:
- * logToCopy: specify directory and log name to
- copy.
- ex ) /opt/onos/log/karaf.log.1
- For copying multiple files, leave copyFileName
- empty and only specify destDir -
- ex ) /opt/onos/log/karaf*
- * destDir: specify directory to copy to.
- ex ) /tmp/
-Optional:
- * copyFileName: If you want to rename the log
- file, specify copyFileName. This will not work
- with multiple file copying
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="checkLogs"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">checkLogs</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">onosIp</span>,
- <span class="sig-arg">restart</span>=<span class="sig-default">False</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.checkLogs">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-runs onos-check-logs on the given onos node
-If restart is True, use the old version of onos-check-logs which
- does not print the full stacktrace, but shows the entire log file,
- including across restarts
-returns the response
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="setIpTables"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">setIpTables</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ip</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">''</span>,
- <span class="sig-arg">action</span>=<span class="sig-default">'add'</span>,
- <span class="sig-arg">packet_type</span>=<span class="sig-default">''</span>,
- <span class="sig-arg">direction</span>=<span class="sig-default">'INPUT'</span>,
- <span class="sig-arg">rule</span>=<span class="sig-default">'DROP'</span>,
- <span class="sig-arg">states</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.setIpTables">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- add or remove iptables rule to DROP (default) packets from
- specific IP and PORT
-Usage:
-* specify action ('add' or 'remove')
- when removing, pass in the same argument as you would add. It will
- delete that specific rule.
-* specify the ip to block
-* specify the destination port to block (defaults to all ports)
-* optional packet type to block (default tcp)
-* optional iptables rule (default DROP)
-* optional direction to block (default 'INPUT')
-* States boolean toggles adding all supported tcp states to the
- firewall rule
-Returns:
- main.TRUE on success or
- main.FALSE if given invalid input or
- main.ERROR if there is an error in response from iptables
-WARNING:
-* This function uses root privilege iptables command which may result
- in unwanted network errors. USE WITH CAUTION
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="createLinkGraphFile"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">createLinkGraphFile</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">benchIp</span>,
- <span class="sig-arg">ONOSIpList</span>,
- <span class="sig-arg">deviceCount</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.createLinkGraphFile">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Create/formats the LinkGraph.cfg file based on arguments
- -only creates a linear topology and connects islands
- -evenly distributes devices
- -must be called by ONOSbench
-
- ONOSIpList - list of all of the node IPs to be used
-
- deviceCount - number of switches to be assigned
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="configNullDev"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">configNullDev</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">ONOSIpList</span>,
- <span class="sig-arg">deviceCount</span>,
- <span class="sig-arg">numPorts</span>=<span class="sig-default">10</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.configNullDev">source code</a></span>
- </td>
- </tr></table>
-
- <p>ONOSIpList = list of Ip addresses of nodes switches will be devided
- amongst deviceCount = number of switches to distribute, or list of values
- to use as custom distribution numPorts = number of ports per device.
- Defaults to 10 both in this function and in ONOS. Optional arg</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="logReport"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">logReport</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">nodeIp</span>,
- <span class="sig-arg">searchTerms</span>,
- <span class="sig-arg">outputMode</span>=<span class="sig-default">"s"</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.logReport">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-- accepts either a list or a string for "searchTerms" these
- terms will be searched for in the log and have their
- instances counted
-
-- nodeIp is the ip of the node whos log is to be scanned
-
-- output modes:
- "s" - Simple. Quiet output mode that just prints
- the occurences of each search term
-
- "d" - Detailed. Prints number of occurences as well as the entire
- line for each of the last 5 occurences
-
-- returns total of the number of instances of all search terms
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="copyMininetFile"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">copyMininetFile</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">fileName</span>,
- <span class="sig-arg">localPath</span>,
- <span class="sig-arg">userName</span>,
- <span class="sig-arg">ip</span>,
- <span class="sig-arg">mnPath</span>=<span class="sig-default">'~/mininet/custom/'</span>,
- <span class="sig-arg">timeout</span>=<span class="sig-default">60</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.onosdriver-pysrc.html#OnosDriver.copyMininetFile">source code</a></span>
- </td>
- </tr></table>
-
- <pre class="literalblock">
-
-Description:
- Copy mininet topology file from dependency folder in the test folder
- and paste it to the mininet machine's mininet/custom folder
-Required:
- fileName - Name of the topology file to copy
- localPath - File path of the mininet topology file
- userName - User name of the mininet machine to send the file to
- ip - Ip address of the mininet machine
-Optional:
- mnPath - of the mininet directory to send the file to
-Return:
- Return main.TRUE if successfully copied the file otherwise
- return main.FALSE
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.quaggaclidriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.quaggaclidriver-module.html
deleted file mode 100644
index c05463e..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.quaggaclidriver-module.html
+++ /dev/null
@@ -1,142 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.quaggaclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Module quaggaclidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.quaggaclidriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module quaggaclidriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html" class="summary-name">QuaggaCliDriver</a>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.quaggaclidriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.quaggaclidriver-pysrc.html
deleted file mode 100644
index def5d2d..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.quaggaclidriver-pysrc.html
+++ /dev/null
@@ -1,1145 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.quaggaclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Module quaggaclidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.quaggaclidriver-module.html">Module TestON.drivers.common.cli.quaggaclidriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">pexpect</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.drivers.common.clidriver=TestON.drivers.common.clidriver-module.html"><a title="TestON.drivers.common.clidriver" class="py-name" href="#" onclick="return doclink('link-2', 'clidriver', 'link-2');">clidriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Class TestON.bin.cli.CLI=TestON.bin.cli.CLI-class.html,Class TestON.drivers.common.clidriver.CLI=TestON.drivers.common.clidriver.CLI-class.html"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-3', 'CLI', 'link-3');">CLI</a></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> </tt>
-<a name="QuaggaCliDriver"></a><div id="QuaggaCliDriver-def"><a name="L10"></a><tt class="py-lineno"> 10</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver-toggle" onclick="return toggle('QuaggaCliDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">CLI</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="QuaggaCliDriver-expanded"><a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"> </tt>
-<a name="QuaggaCliDriver.__init__"></a><div id="QuaggaCliDriver.__init__-def"><a name="L12"></a><tt class="py-lineno"> 12</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.__init__-toggle" onclick="return toggle('QuaggaCliDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.__init__-expanded"><a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-4" class="py-name"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-4', 'CLI', 'link-3');">CLI</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-5', '__init__', 'link-5');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"> <tt class="py-comment"># TODO: simplify this method</tt> </tt>
-<a name="QuaggaCliDriver.connect"></a><div id="QuaggaCliDriver.connect-def"><a name="L16"></a><tt class="py-lineno"> 16</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.connect-toggle" onclick="return toggle('QuaggaCliDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.connect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.connect-expanded"><a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-6" class="py-name" targets="Class TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html"><a title="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver" class="py-name" href="#" onclick="return doclink('link-6', 'QuaggaCliDriver', 'link-6');">QuaggaCliDriver</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-7', 'connect', 'link-7');">connect</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-string">"127.0.0.1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt><tt class="py-op">,</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-8', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"NO HANDLE"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> </tt>
-<a name="QuaggaCliDriver.connectQuagga"></a><div id="QuaggaCliDriver.connectQuagga-def"><a name="L31"></a><tt class="py-lineno"> 31</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.connectQuagga-toggle" onclick="return toggle('QuaggaCliDriver.connectQuagga');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connectQuagga">connectQuagga</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.connectQuagga-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.connectQuagga-expanded"><a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-comment"># self.handle = super( QuaggaCliDriver,self ).connect(</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-comment"># user_name=self.user_name, ip_address=self.ip_address,port=self.port,</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-comment"># pwd=self.pwd )</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver" class="py-name" href="#" onclick="return doclink('link-9', 'QuaggaCliDriver', 'link-6');">QuaggaCliDriver</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-10', 'connect', 'link-7');">connect</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-string">"1.1.1.1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt><tt class="py-op">,</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-comment">#main.log.info( "connect parameters:" + str( self.user_name ) + ";"</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-comment"># + str( self.ip_address ) + ";" + str( self.port )</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-comment"># + ";" + str(self.pwd ) )</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "",timeout=10 )</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "\$",timeout=10 )</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-11', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"telnet localhost 2605"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "Password:", timeout=5 )</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"Password:"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-12', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"hello"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "bgpd", timeout=5 )</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"bgpd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-13', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"enable"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "bgpd#", timeout=5 )</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"bgpd#"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-14', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"NO HANDLE"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> </tt>
-<a name="QuaggaCliDriver.loginQuagga"></a><div id="QuaggaCliDriver.loginQuagga-def"><a name="L62"></a><tt class="py-lineno"> 62</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.loginQuagga-toggle" onclick="return toggle('QuaggaCliDriver.loginQuagga');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#loginQuagga">loginQuagga</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ip_address</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.loginQuagga-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.loginQuagga-expanded"><a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver" class="py-name" href="#" onclick="return doclink('link-15', 'QuaggaCliDriver', 'link-6');">QuaggaCliDriver</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-16', 'connect', 'link-7');">connect</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-17', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"connect parameters:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">";"</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">";"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> <tt class="py-op">)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">";"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "" )</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "\$" )</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-18', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"telnet localhost 2605"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "Password:", timeout=5 )</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"Password:"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-19', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"hello"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "bgpd", timeout=5 )</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"bgpd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-20', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"enable"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "bgpd#", timeout=5 )</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"bgpd#"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-21', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"I am in quagga on host "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-22', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"NO HANDLE"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> </tt>
-<a name="QuaggaCliDriver.enterConfig"></a><div id="QuaggaCliDriver.enterConfig-def"><a name="L90"></a><tt class="py-lineno"> 90</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.enterConfig-toggle" onclick="return toggle('QuaggaCliDriver.enterConfig');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#enterConfig">enterConfig</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">asn</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.enterConfig-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.enterConfig-expanded"><a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-23', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"I am in enter_config method!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-24', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"bgpd#"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-25', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Probably not currently in enable mode!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.disconnect()=TestON.bin.generatedriver.GenerateDriver-class.html#disconnect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#disconnect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#disconnect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#disconnect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#disconnect,Method TestON.drivers.common.clidriver.CLI.disconnect()=TestON.drivers.common.clidriver.CLI-class.html#disconnect"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-26', 'disconnect', 'link-26');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-27', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"configure terminal"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"config"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">routerAS</tt> <tt class="py-op">=</tt> <tt class="py-string">"router bgp "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">asn</tt> <tt class="py-op">)</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-28', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">routerAS</tt> <tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"config-router"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> </tt>
-<a name="QuaggaCliDriver.generatePrefixes"></a><div id="QuaggaCliDriver.generatePrefixes-def"><a name="L109"></a><tt class="py-lineno">109</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.generatePrefixes-toggle" onclick="return toggle('QuaggaCliDriver.generatePrefixes');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#generatePrefixes">generatePrefixes</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">net</tt><tt class="py-op">,</tt> <tt class="py-param">numRoutes</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.generatePrefixes-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.generatePrefixes-expanded"><a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-29', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"I am in generate_prefixes method!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-comment"># each IP prefix is composed by "net" + "." + m + "." + n + "." + x</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-comment"># the length of each IP prefix is 24</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt id="link-30" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.routes()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#routes"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.routes" class="py-name" href="#" onclick="return doclink('link-30', 'routes', 'link-30');">routes</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">routesGen</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt class="py-name">numRoutes</tt> <tt class="py-op">/</tt> <tt class="py-number">256</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">numRoutes</tt> <tt class="py-op">%</tt> <tt class="py-number">256</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">m</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-number">256</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">network</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-31" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#net"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-31', 'net', 'link-31');">net</a></tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">j</tt> <tt class="py-op">)</tt> \ </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">".0/24"</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt id="link-32" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.routes" class="py-name" href="#" onclick="return doclink('link-32', 'routes', 'link-30');">routes</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">network</tt> <tt class="py-op">)</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">routesGen</tt> <tt class="py-op">=</tt> <tt class="py-name">routesGen</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">n</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">network</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-33" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-33', 'net', 'link-31');">net</a></tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">m</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">j</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">".0/24"</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.routes" class="py-name" href="#" onclick="return doclink('link-34', 'routes', 'link-30');">routes</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">network</tt> <tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">routesGen</tt> <tt class="py-op">=</tt> <tt class="py-name">routesGen</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">routesGen</tt> <tt class="py-op">==</tt> <tt class="py-name">numRoutes</tt><tt class="py-op">:</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-35', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Successfully generated "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">numRoutes</tt> <tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" prefixes!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.routes" class="py-name" href="#" onclick="return doclink('link-36', 'routes', 'link-30');">routes</a></tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-comment"># This method generates a multiple to single point intent(</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-comment"># MultiPointToSinglePointIntent ) for a given route</tt> </tt>
-<a name="QuaggaCliDriver.generateExpectedSingleRouteIntent"></a><div id="QuaggaCliDriver.generateExpectedSingleRouteIntent-def"><a name="L139"></a><tt class="py-lineno">139</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.generateExpectedSingleRouteIntent-toggle" onclick="return toggle('QuaggaCliDriver.generateExpectedSingleRouteIntent');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#generateExpectedSingleRouteIntent">generateExpectedSingleRouteIntent</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">prefix</tt><tt class="py-op">,</tt> <tt class="py-param">nextHop</tt><tt class="py-op">,</tt> <tt class="py-param">nextHopMac</tt><tt class="py-op">,</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-param">sdnipData</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.generateExpectedSingleRouteIntent-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.generateExpectedSingleRouteIntent-expanded"><a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">ingresses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-name">egress</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">peer</tt> <tt class="py-keyword">in</tt> <tt class="py-name">sdnipData</tt><tt class="py-op">[</tt> <tt class="py-string">'bgpPeers'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">peer</tt><tt class="py-op">[</tt> <tt class="py-string">'ipAddress'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">nextHop</tt><tt class="py-op">:</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-name">egress</tt> <tt class="py-op">=</tt> <tt class="py-string">"of:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">peer</tt><tt class="py-op">[</tt> <tt class="py-string">'attachmentDpid'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">":"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> \ </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">peer</tt><tt class="py-op">[</tt> <tt class="py-string">'attachmentPort'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">peer</tt> <tt class="py-keyword">in</tt> <tt class="py-name">sdnipData</tt><tt class="py-op">[</tt> <tt class="py-string">'bgpPeers'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">peer</tt><tt class="py-op">[</tt> <tt class="py-string">'ipAddress'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">nextHop</tt><tt class="py-op">:</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-name">ingress</tt> <tt class="py-op">=</tt> <tt class="py-string">"of:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">peer</tt><tt class="py-op">[</tt> <tt class="py-string">'attachmentDpid'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">":"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> \ </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">peer</tt><tt class="py-op">[</tt> <tt class="py-string">'attachmentPort'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ingress</tt> <tt class="py-op">==</tt> <tt class="py-name">egress</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ingress</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ingresses</tt><tt class="py-op">:</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">ingresses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">ingress</tt> <tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-comment"># ingresses.append( "of:" + str( peer[ 'attachmentDpid' ]</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-comment"># ).replace( ":", "" ) + ":" + str( peer[ 'attachmentPort'</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-comment"># ] ) )</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">selector</tt> <tt class="py-op">=</tt> <tt class="py-string">"ETH_TYPE{ethType=800},IPV4_DST{ip="</tt> <tt class="py-op">+</tt> <tt class="py-name">prefix</tt> <tt class="py-op">+</tt> <tt class="py-string">"}"</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-name">treatment</tt> <tt class="py-op">=</tt> <tt class="py-string">"[ETH_DST{mac="</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">nextHopMac</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"}]"</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt id="link-37" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intent"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-37', 'intent', 'link-37');">intent</a></tt> <tt class="py-op">=</tt> <tt class="py-name">egress</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">ingresses</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">selector</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">treatment</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-38" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-38', 'intent', 'link-37');">intent</a></tt> </tt>
-</div><a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> </tt>
-<a name="QuaggaCliDriver.generateExpectedOnePeerRouteIntents"></a><div id="QuaggaCliDriver.generateExpectedOnePeerRouteIntents-def"><a name="L167"></a><tt class="py-lineno">167</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.generateExpectedOnePeerRouteIntents-toggle" onclick="return toggle('QuaggaCliDriver.generateExpectedOnePeerRouteIntents');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#generateExpectedOnePeerRouteIntents">generateExpectedOnePeerRouteIntents</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">prefixes</tt><tt class="py-op">,</tt> <tt class="py-param">nextHop</tt><tt class="py-op">,</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-param">nextHopMac</tt><tt class="py-op">,</tt> <tt class="py-param">sdnipJsonFilePath</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.generateExpectedOnePeerRouteIntents-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.generateExpectedOnePeerRouteIntents-expanded"><a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt id="link-39" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intents,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intents"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-39', 'intents', 'link-39');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-name">sdnipJsonFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt> <tt class="py-name">sdnipJsonFilePath</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">read</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-name">sdnipData</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">sdnipJsonFile</tt> <tt class="py-op">)</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">prefix</tt> <tt class="py-keyword">in</tt> <tt class="py-name">prefixes</tt><tt class="py-op">:</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt id="link-40" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-40', 'intents', 'link-39');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name" targets="Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.generateExpectedSingleRouteIntent()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#generateExpectedSingleRouteIntent"><a title="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.generateExpectedSingleRouteIntent" class="py-name" href="#" onclick="return doclink('link-41', 'generateExpectedSingleRouteIntent', 'link-41');">generateExpectedSingleRouteIntent</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">prefix</tt><tt class="py-op">,</tt> <tt class="py-name">nextHop</tt><tt class="py-op">,</tt> <tt class="py-name">nextHopMac</tt><tt class="py-op">,</tt> <tt class="py-name">sdnipData</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt id="link-42" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-42', 'intents', 'link-39');">intents</a></tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-comment"># TODO</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-comment"># This method generates all expected route intents for all BGP peers</tt> </tt>
-<a name="QuaggaCliDriver.generateExpectedRouteIntents"></a><div id="QuaggaCliDriver.generateExpectedRouteIntents-def"><a name="L182"></a><tt class="py-lineno">182</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.generateExpectedRouteIntents-toggle" onclick="return toggle('QuaggaCliDriver.generateExpectedRouteIntents');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#generateExpectedRouteIntents">generateExpectedRouteIntents</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.generateExpectedRouteIntents-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.generateExpectedRouteIntents-expanded"><a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt id="link-43" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-43', 'intents', 'link-39');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-44" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-44', 'intents', 'link-39');">intents</a></tt> </tt>
-</div><a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-comment"># This method extracts all actual routes from ONOS CLI</tt> </tt>
-<a name="QuaggaCliDriver.extractActualRoutesOneDotZero"></a><div id="QuaggaCliDriver.extractActualRoutesOneDotZero-def"><a name="L187"></a><tt class="py-lineno">187</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.extractActualRoutesOneDotZero-toggle" onclick="return toggle('QuaggaCliDriver.extractActualRoutesOneDotZero');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualRoutesOneDotZero">extractActualRoutesOneDotZero</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">getRoutesResult</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.extractActualRoutesOneDotZero-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.extractActualRoutesOneDotZero-expanded"><a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-name">routesJsonObj</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">getRoutesResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">allRoutesActual</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">route</tt> <tt class="py-keyword">in</tt> <tt class="py-name">routesJsonObj</tt><tt class="py-op">[</tt><tt class="py-string">'routes4'</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">'prefix'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">route</tt><tt class="py-op">:</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">route</tt><tt class="py-op">[</tt> <tt class="py-string">'prefix'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'172.16.10.0/24'</tt><tt class="py-op">:</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">allRoutesActual</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">route</tt><tt class="py-op">[</tt> <tt class="py-string">'prefix'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">route</tt><tt class="py-op">[</tt> <tt class="py-string">'nextHop'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">allRoutesActual</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> </tt>
-<a name="QuaggaCliDriver.extractActualRoutesMaster"></a><div id="QuaggaCliDriver.extractActualRoutesMaster-def"><a name="L200"></a><tt class="py-lineno">200</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.extractActualRoutesMaster-toggle" onclick="return toggle('QuaggaCliDriver.extractActualRoutesMaster');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualRoutesMaster">extractActualRoutesMaster</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">getRoutesResult</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.extractActualRoutesMaster-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.extractActualRoutesMaster-expanded"><a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-name">routesJsonObj</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">getRoutesResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-name">allRoutesActual</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">route</tt> <tt class="py-keyword">in</tt> <tt class="py-name">routesJsonObj</tt><tt class="py-op">[</tt><tt class="py-string">'routes4'</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">route</tt><tt class="py-op">[</tt> <tt class="py-string">'prefix'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'172.16.10.0/24'</tt><tt class="py-op">:</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-name">allRoutesActual</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">route</tt><tt class="py-op">[</tt> <tt class="py-string">'prefix'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">route</tt><tt class="py-op">[</tt> <tt class="py-string">'nextHop'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">allRoutesActual</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-comment"># This method extracts all actual route intents from ONOS CLI</tt> </tt>
-<a name="QuaggaCliDriver.extractActualRouteIntents"></a><div id="QuaggaCliDriver.extractActualRouteIntents-def"><a name="L213"></a><tt class="py-lineno">213</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.extractActualRouteIntents-toggle" onclick="return toggle('QuaggaCliDriver.extractActualRouteIntents');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualRouteIntents">extractActualRouteIntents</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">getIntentsResult</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.extractActualRouteIntents-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.extractActualRouteIntents-expanded"><a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt id="link-45" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-45', 'intents', 'link-39');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-comment"># TODO: delete the line below when change to Mininet demo script</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-comment"># getIntentsResult=open( "../tests/SdnIpTest/intents.json" ).read()</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-name">intentsJsonObj</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">getIntentsResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-46" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-46', 'intent', 'link-37');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsJsonObj</tt><tt class="py-op">:</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-comment">#if intent[ 'appId' ] != "org.onosproject.sdnip":</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-comment"># continue</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-47" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-47', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'type'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"MultiPointToSinglePointIntent"</tt> \ </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt id="link-48" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-48', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'INSTALLED'</tt><tt class="py-op">:</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-name">egress</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-49" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-49', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'egress'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'device'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> \ </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-50" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-50', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'egress'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-name">ingress</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">attachmentPoint</tt> <tt class="py-keyword">in</tt> <tt id="link-51" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-51', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'ingress'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-name">ingress</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">attachmentPoint</tt><tt class="py-op">[</tt> <tt class="py-string">'device'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">attachmentPoint</tt><tt class="py-op">[</tt> <tt class="py-string">'port'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">selector</tt> <tt class="py-op">=</tt> <tt id="link-52" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-52', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-string">"["</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"]"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">" "</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">selector</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">startswith</tt><tt class="py-op">(</tt> <tt class="py-string">"IPV4"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-name">str1</tt><tt class="py-op">,</tt> <tt class="py-name">str2</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">selector</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt> <tt class="py-op">)</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-name">selector</tt> <tt class="py-op">=</tt> <tt class="py-name">str2</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt> <tt class="py-op">+</tt> <tt class="py-name">str1</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt id="link-53" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-53', 'intent', 'link-37');">intent</a></tt> <tt class="py-op">=</tt> <tt class="py-name">egress</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">ingress</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">selector</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt id="link-54" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-54', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'treatment'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt id="link-55" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-55', 'intents', 'link-39');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-56" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-56', 'intent', 'link-37');">intent</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt id="link-57" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-57', 'intents', 'link-39');">intents</a></tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-comment"># This method calculates the MultiPointToSinglePointIntent number installed</tt> </tt>
-<a name="QuaggaCliDriver.extractActualRouteIntentNum"></a><div id="QuaggaCliDriver.extractActualRouteIntentNum-def"><a name="L244"></a><tt class="py-lineno">244</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.extractActualRouteIntentNum-toggle" onclick="return toggle('QuaggaCliDriver.extractActualRouteIntentNum');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualRouteIntentNum">extractActualRouteIntentNum</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">getIntentsResult</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.extractActualRouteIntentNum-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.extractActualRouteIntentNum-expanded"><a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-name">intentsJsonObj</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">getIntentsResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-58" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-58', 'intent', 'link-37');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsJsonObj</tt><tt class="py-op">:</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-59" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-59', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'type'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"MultiPointToSinglePointIntent"</tt> \ </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt id="link-60" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-60', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'INSTALLED'</tt><tt class="py-op">:</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-name">num</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">num</tt> </tt>
-</div><a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-comment"># This method calculates the PointToPointIntent number installed</tt> </tt>
-<a name="QuaggaCliDriver.extractActualBgpIntentNum"></a><div id="QuaggaCliDriver.extractActualBgpIntentNum-def"><a name="L254"></a><tt class="py-lineno">254</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.extractActualBgpIntentNum-toggle" onclick="return toggle('QuaggaCliDriver.extractActualBgpIntentNum');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualBgpIntentNum">extractActualBgpIntentNum</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">getIntentsResult</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.extractActualBgpIntentNum-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.extractActualBgpIntentNum-expanded"><a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-name">intentsJsonObj</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">getIntentsResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-61" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-61', 'intent', 'link-37');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsJsonObj</tt><tt class="py-op">:</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-62" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-62', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'type'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"PointToPointIntent"</tt> \ </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt id="link-63" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-63', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'INSTALLED'</tt><tt class="py-op">:</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-name">num</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">num</tt> </tt>
-</div><a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-comment"># This method extracts all actual BGP intents from ONOS CLI</tt> </tt>
-<a name="QuaggaCliDriver.extractActualBgpIntents"></a><div id="QuaggaCliDriver.extractActualBgpIntents-def"><a name="L264"></a><tt class="py-lineno">264</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.extractActualBgpIntents-toggle" onclick="return toggle('QuaggaCliDriver.extractActualBgpIntents');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualBgpIntents">extractActualBgpIntents</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">getIntentsResult</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.extractActualBgpIntents-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.extractActualBgpIntents-expanded"><a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt id="link-64" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-64', 'intents', 'link-39');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-comment"># TODO: delete the line below when change to Mininet demo script</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-comment"># getIntentsResult=open( "../tests/SdnIpTest/intents.json" ).read()</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-name">intentsJsonObj</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">getIntentsResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-65" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-65', 'intent', 'link-37');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsJsonObj</tt><tt class="py-op">:</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-comment">#if intent[ 'appId' ] != "org.onosproject.sdnip":</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-comment"># continue</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-66" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-66', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'type'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"PointToPointIntent"</tt> \ </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-string">"protocol=6"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-67" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-67', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-name">ingress</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-68" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-68', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'ingress'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'device'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> \ </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-69" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-69', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'ingress'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-name">egress</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-70" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-70', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'egress'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'device'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-71" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-71', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'egress'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-name">selector</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-72" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-72', 'intent', 'link-37');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'selector'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">" "</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt>\ </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"["</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"]"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt> <tt class="py-op">)</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt id="link-73" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-73', 'intent', 'link-37');">intent</a></tt> <tt class="py-op">=</tt> <tt class="py-name">ingress</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">egress</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">selector</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt id="link-74" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-74', 'intents', 'link-39');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-75" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-75', 'intent', 'link-37');">intent</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt id="link-76" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-76', 'intents', 'link-39');">intents</a></tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-comment"># This method generates a single point to single point intent(</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-comment"># PointToPointIntent ) for BGP path</tt> </tt>
-<a name="QuaggaCliDriver.generateExpectedBgpIntents"></a><div id="QuaggaCliDriver.generateExpectedBgpIntents-def"><a name="L289"></a><tt class="py-lineno">289</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.generateExpectedBgpIntents-toggle" onclick="return toggle('QuaggaCliDriver.generateExpectedBgpIntents');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#generateExpectedBgpIntents">generateExpectedBgpIntents</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sdnipJsonFilePath</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.generateExpectedBgpIntents-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.generateExpectedBgpIntents-expanded"><a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-keyword">from</tt> <tt class="py-name">operator</tt> <tt class="py-keyword">import</tt> <tt class="py-name">eq</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-name">sdnipJsonFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt> <tt class="py-name">sdnipJsonFilePath</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">read</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-name">sdnipData</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">sdnipJsonFile</tt> <tt class="py-op">)</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt id="link-77" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-77', 'intents', 'link-39');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-name">bgpPeerAttachmentPoint</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-name">bgpSpeakerAttachmentPoint</tt> <tt class="py-op">=</tt> <tt class="py-string">"of:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-name">sdnipData</tt><tt class="py-op">[</tt> <tt class="py-string">'bgpSpeakers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'attachmentDpid'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt>\ </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">":"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> \ </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sdnipData</tt><tt class="py-op">[</tt> <tt class="py-string">'bgpSpeakers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'attachmentPort'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">peer</tt> <tt class="py-keyword">in</tt> <tt class="py-name">sdnipData</tt><tt class="py-op">[</tt> <tt class="py-string">'bgpPeers'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-name">bgpPeerAttachmentPoint</tt> <tt class="py-op">=</tt> <tt class="py-string">"of:"</tt> \ </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">peer</tt><tt class="py-op">[</tt> <tt class="py-string">'attachmentDpid'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">":"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> \ </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">peer</tt><tt class="py-op">[</tt> <tt class="py-string">'attachmentPort'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-comment"># find out the BGP speaker IP address for this BGP peer</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-name">bgpSpeakerIpAddress</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">interfaceAddress</tt> <tt class="py-keyword">in</tt> \ </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-name">sdnipData</tt><tt class="py-op">[</tt> <tt class="py-string">'bgpSpeakers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'interfaceAddresses'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-comment"># if eq( interfaceAddress[ 'interfaceDpid' ],sdnipData[</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-comment"># 'bgpSpeakers' ][ 0 ][ 'attachmentDpid' ] ) and eq(</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-comment"># interfaceAddress[ 'interfacePort' ], sdnipData[ 'bgpSpeakers'</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-comment"># ][ 0 ][ 'attachmentPort' ] ):</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">eq</tt><tt class="py-op">(</tt> <tt class="py-name">interfaceAddress</tt><tt class="py-op">[</tt> <tt class="py-string">'interfaceDpid'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-name">peer</tt><tt class="py-op">[</tt> <tt class="py-string">'attachmentDpid'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> \ </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-name">eq</tt><tt class="py-op">(</tt> <tt class="py-name">interfaceAddress</tt><tt class="py-op">[</tt> <tt class="py-string">'interfacePort'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-name">peer</tt><tt class="py-op">[</tt> <tt class="py-string">'attachmentPort'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-name">bgpSpeakerIpAddress</tt> <tt class="py-op">=</tt> <tt class="py-name">interfaceAddress</tt><tt class="py-op">[</tt> <tt class="py-string">'ipAddress'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-comment"># from bgpSpeakerAttachmentPoint to bgpPeerAttachmentPoint</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-comment"># direction</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> <tt class="py-name">selectorStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"IPV4_SRC{ip="</tt> <tt class="py-op">+</tt> <tt class="py-name">bgpSpeakerIpAddress</tt> <tt class="py-op">+</tt> <tt class="py-string">"/32},"</tt> \ </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">"IPV4_DST{ip="</tt> <tt class="py-op">+</tt> <tt class="py-name">peer</tt><tt class="py-op">[</tt> <tt class="py-string">'ipAddress'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">"/32},"</tt> \ </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">"IP_PROTO{protocol=6}, ETH_TYPE{ethType=800}, \</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"><tt class="py-string"> TCP_DST{tcpPort=179}"</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-name">selector</tt> <tt class="py-op">=</tt> <tt class="py-name">selectorStr</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">" "</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"["</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt>\ </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> <tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"]"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt> <tt class="py-op">)</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> <tt id="link-78" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-78', 'intent', 'link-37');">intent</a></tt> <tt class="py-op">=</tt> <tt class="py-name">bgpSpeakerAttachmentPoint</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-name">bgpPeerAttachmentPoint</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">selector</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> <tt id="link-79" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-79', 'intents', 'link-39');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-80" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-80', 'intent', 'link-37');">intent</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> <tt class="py-name">selectorStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"IPV4_SRC{ip="</tt> <tt class="py-op">+</tt> <tt class="py-name">bgpSpeakerIpAddress</tt> <tt class="py-op">+</tt> <tt class="py-string">"/32},"</tt> \ </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">"IPV4_DST{ip="</tt> <tt class="py-op">+</tt> <tt class="py-name">peer</tt><tt class="py-op">[</tt> <tt class="py-string">'ipAddress'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">"/32},"</tt> \ </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">"IP_PROTO{protocol=6}, ETH_TYPE{ethType=800}, \</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"><tt class="py-string"> TCP_SRC{tcpPort=179}"</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> <tt class="py-name">selector</tt> <tt class="py-op">=</tt> <tt class="py-name">selectorStr</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">" "</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"["</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt>\ </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"]"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt> <tt class="py-op">)</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> <tt id="link-81" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-81', 'intent', 'link-37');">intent</a></tt> <tt class="py-op">=</tt> <tt class="py-name">bgpSpeakerAttachmentPoint</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> \ </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">bgpPeerAttachmentPoint</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">selector</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> <tt id="link-82" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-82', 'intents', 'link-39');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-83" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-83', 'intent', 'link-37');">intent</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-comment"># from bgpPeerAttachmentPoint to bgpSpeakerAttachmentPoint</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-comment"># direction</tt> </tt>
-<a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> <tt class="py-name">selectorStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"IPV4_SRC{ip="</tt> <tt class="py-op">+</tt> <tt class="py-name">peer</tt><tt class="py-op">[</tt> <tt class="py-string">'ipAddress'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">"/32},"</tt> \ </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">"IPV4_DST{ip="</tt> <tt class="py-op">+</tt> <tt class="py-name">bgpSpeakerIpAddress</tt> <tt class="py-op">+</tt> <tt class="py-string">"/32},"</tt> \ </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">"IP_PROTO{protocol=6}, ETH_TYPE{ethType=800}, \</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"><tt class="py-string"> TCP_DST{tcpPort=179}"</tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> <tt class="py-name">selector</tt> <tt class="py-op">=</tt> <tt class="py-name">selectorStr</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">" "</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"["</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt>\ </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"> <tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"]"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt> <tt class="py-op">)</tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> <tt id="link-84" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-84', 'intent', 'link-37');">intent</a></tt> <tt class="py-op">=</tt> <tt class="py-name">bgpPeerAttachmentPoint</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> \ </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">bgpSpeakerAttachmentPoint</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">selector</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> <tt id="link-85" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-85', 'intents', 'link-39');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-86" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-86', 'intent', 'link-37');">intent</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> <tt class="py-name">selectorStr</tt> <tt class="py-op">=</tt> <tt class="py-string">"IPV4_SRC{ip="</tt> <tt class="py-op">+</tt> <tt class="py-name">peer</tt><tt class="py-op">[</tt> <tt class="py-string">'ipAddress'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">"/32},"</tt> \ </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">"IPV4_DST{ip="</tt> <tt class="py-op">+</tt> <tt class="py-name">bgpSpeakerIpAddress</tt> <tt class="py-op">+</tt> <tt class="py-string">"/32},"</tt> \ </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">"IP_PROTO{protocol=6}, ETH_TYPE{ethType=800}, \</tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"><tt class="py-string"> TCP_SRC{tcpPort=179}"</tt> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-name">selector</tt> <tt class="py-op">=</tt> <tt class="py-name">selectorStr</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">" "</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"["</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt>\ </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> <tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"]"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt> <tt class="py-op">)</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> <tt id="link-87" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-87', 'intent', 'link-37');">intent</a></tt> <tt class="py-op">=</tt> <tt class="py-name">bgpPeerAttachmentPoint</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> \ </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">bgpSpeakerAttachmentPoint</tt> <tt class="py-op">+</tt> <tt class="py-string">"/"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">selector</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> <tt id="link-88" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-88', 'intents', 'link-39');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-89" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-89', 'intent', 'link-37');">intent</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt id="link-90" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-90', 'intents', 'link-39');">intents</a></tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> </tt>
-<a name="QuaggaCliDriver.addRoutes"></a><div id="QuaggaCliDriver.addRoutes-def"><a name="L368"></a><tt class="py-lineno">368</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.addRoutes-toggle" onclick="return toggle('QuaggaCliDriver.addRoutes');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#addRoutes">addRoutes</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">routes</tt><tt class="py-op">,</tt> <tt class="py-param">routeRate</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.addRoutes-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.addRoutes-expanded"><a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-91', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"I am in add_routes method!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt class="py-name">routesAdded</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-92', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "config-router" )</tt> </tt>
-<a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"config-router"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-93', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Probably not in config-router mode!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-94', 'disconnect', 'link-26');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-95', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Start to add routes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"> <tt class="py-name">chunk_size</tt> <tt class="py-op">=</tt> <tt class="py-number">20</tt> </tt>
-<a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-96" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.routes" class="py-name" href="#" onclick="return doclink('link-96', 'routes', 'link-30');">routes</a></tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-name">chunk_size</tt><tt class="py-op">:</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"> <tt class="py-name">num_iter</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">int</tt><tt class="py-op">)</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-97" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.routes" class="py-name" href="#" onclick="return doclink('link-97', 'routes', 'link-30');">routes</a></tt><tt class="py-op">)</tt> <tt class="py-op">/</tt> <tt class="py-name">chunk_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"> <tt class="py-name">num_iter</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt><tt class="py-op">;</tt> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt class="py-name">total</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">n</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">num_iter</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> <tt class="py-name">routeCmd</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-98" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.routes" class="py-name" href="#" onclick="return doclink('link-98', 'routes', 'link-30');">routes</a></tt> <tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-op">(</tt><tt class="py-name">n</tt> <tt class="py-op">*</tt> <tt class="py-name">chunk_size</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">>=</tt> <tt class="py-name">chunk_size</tt><tt class="py-op">:</tt> </tt>
-<a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">n</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">*</tt> <tt class="py-name">chunk_size</tt> </tt>
-<a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-99" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.routes" class="py-name" href="#" onclick="return doclink('link-99', 'routes', 'link-30');">routes</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">*</tt> <tt class="py-name">chunk_size</tt><tt class="py-op">,</tt> <tt class="py-name">m</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L396"></a><tt class="py-lineno">396</tt> <tt class="py-line"> <tt class="py-name">routeCmd</tt> <tt class="py-op">=</tt> <tt class="py-name">routeCmd</tt> <tt class="py-op">+</tt> <tt class="py-string">"network "</tt> <tt class="py-op">+</tt> <tt id="link-100" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.routes" class="py-name" href="#" onclick="return doclink('link-100', 'routes', 'link-30');">routes</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> </tt>
-<a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"> <tt class="py-name">total</tt> <tt class="py-op">=</tt> <tt class="py-name">total</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-101', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">routeCmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-102', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">routeCmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"bgpd"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-103', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to add route"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-104', 'disconnect', 'link-26');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"> <tt class="py-comment"># waitTimer = 1.00 / routeRate</tt> </tt>
-<a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-105', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Total routes so far "</tt> <tt class="py-op">+</tt> <tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">)</tt> <tt class="py-op">(</tt><tt class="py-name">total</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" wait for 0 sec"</tt><tt class="py-op">)</tt> </tt>
-<a name="L409"></a><tt class="py-lineno">409</tt> <tt class="py-line"> <tt class="py-comment">#time.sleep( 1 )</tt> </tt>
-<a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">routesAdded</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-106" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.routes" class="py-name" href="#" onclick="return doclink('link-106', 'routes', 'link-30');">routes</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-107', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Finished adding routes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L413"></a><tt class="py-lineno">413</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L414"></a><tt class="py-lineno">414</tt> <tt class="py-line"> </tt>
-<a name="QuaggaCliDriver.deleteRoutes"></a><div id="QuaggaCliDriver.deleteRoutes-def"><a name="L415"></a><tt class="py-lineno">415</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.deleteRoutes-toggle" onclick="return toggle('QuaggaCliDriver.deleteRoutes');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#deleteRoutes">deleteRoutes</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">routes</tt><tt class="py-op">,</tt> <tt class="py-param">routeRate</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.deleteRoutes-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.deleteRoutes-expanded"><a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-108', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"I am in delete_routes method!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"> </tt>
-<a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"> <tt class="py-name">routesAdded</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-109', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "config-router" )</tt> </tt>
-<a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"config-router"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L423"></a><tt class="py-lineno">423</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-110', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Probably not in config-router mode!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-111', 'disconnect', 'link-26');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-112', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Start to delete routes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-113" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.routes" class="py-name" href="#" onclick="return doclink('link-113', 'routes', 'link-30');">routes</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"> <tt class="py-name">routeCmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"no network "</tt> <tt class="py-op">+</tt> <tt id="link-114" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.routes" class="py-name" href="#" onclick="return doclink('link-114', 'routes', 'link-30');">routes</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> </tt>
-<a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L431"></a><tt class="py-lineno">431</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-115" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-115', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">routeCmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"bgpd"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L433"></a><tt class="py-lineno">433</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L434"></a><tt class="py-lineno">434</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-116', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to delete route"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-117', 'disconnect', 'link-26');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L436"></a><tt class="py-lineno">436</tt> <tt class="py-line"> <tt class="py-comment"># waitTimer = 1.00 / routeRate</tt> </tt>
-<a name="L437"></a><tt class="py-lineno">437</tt> <tt class="py-line"> <tt class="py-comment"># time.sleep( waitTimer )</tt> </tt>
-<a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">routesAdded</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-118" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.routes" class="py-name" href="#" onclick="return doclink('link-118', 'routes', 'link-30');">routes</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L439"></a><tt class="py-lineno">439</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-119', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Finished deleting routes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L440"></a><tt class="py-lineno">440</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"> </tt>
-<a name="QuaggaCliDriver.pingTest"></a><div id="QuaggaCliDriver.pingTest-def"><a name="L443"></a><tt class="py-lineno">443</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.pingTest-toggle" onclick="return toggle('QuaggaCliDriver.pingTest');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#pingTest">pingTest</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ip_address</tt><tt class="py-op">,</tt> <tt class="py-param">pingTestFile</tt><tt class="py-op">,</tt> <tt class="py-param">pingTestResultFile</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.pingTest-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.pingTest-expanded"><a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-120" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-120', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Start the ping test on host:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L445"></a><tt class="py-lineno">445</tt> <tt class="py-line"> </tt>
-<a name="L446"></a><tt class="py-lineno">446</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L447"></a><tt class="py-lineno">447</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-121" class="py-name"><a title="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver" class="py-name" href="#" onclick="return doclink('link-121', 'QuaggaCliDriver', 'link-6');">QuaggaCliDriver</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-122', 'connect', 'link-7');">connect</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L448"></a><tt class="py-lineno">448</tt> <tt class="py-line"> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L449"></a><tt class="py-lineno">449</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L450"></a><tt class="py-lineno">450</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-123', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"connect parameters:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">";"</tt> </tt>
-<a name="L451"></a><tt class="py-lineno">451</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">";"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> <tt class="py-op">)</tt> </tt>
-<a name="L452"></a><tt class="py-lineno">452</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">";"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L453"></a><tt class="py-lineno">453</tt> <tt class="py-line"> </tt>
-<a name="L454"></a><tt class="py-lineno">454</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L455"></a><tt class="py-lineno">455</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "" )</tt> </tt>
-<a name="L456"></a><tt class="py-lineno">456</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "\$" )</tt> </tt>
-<a name="L457"></a><tt class="py-lineno">457</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-124" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-124', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"I in host "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L458"></a><tt class="py-lineno">458</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-125', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">pingTestFile</tt> <tt class="py-op">+</tt> <tt class="py-string">" > "</tt> <tt class="py-op">+</tt> <tt class="py-name">pingTestResultFile</tt> <tt class="py-op">+</tt> <tt class="py-string">" &"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L459"></a><tt class="py-lineno">459</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-126', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L460"></a><tt class="py-lineno">460</tt> <tt class="py-line"> <tt class="py-name">pingTestFile</tt> <tt class="py-op">+</tt> </tt>
-<a name="L461"></a><tt class="py-lineno">461</tt> <tt class="py-line"> <tt class="py-string">" > "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L462"></a><tt class="py-lineno">462</tt> <tt class="py-line"> <tt class="py-name">pingTestResultFile</tt> <tt class="py-op">+</tt> </tt>
-<a name="L463"></a><tt class="py-lineno">463</tt> <tt class="py-line"> <tt class="py-string">" &"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L464"></a><tt class="py-lineno">464</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L465"></a><tt class="py-lineno">465</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L466"></a><tt class="py-lineno">466</tt> <tt class="py-line"> </tt>
-<a name="L467"></a><tt class="py-lineno">467</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L468"></a><tt class="py-lineno">468</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L469"></a><tt class="py-lineno">469</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-127', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"NO HANDLE"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L470"></a><tt class="py-lineno">470</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L471"></a><tt class="py-lineno">471</tt> <tt class="py-line"> </tt>
-<a name="L472"></a><tt class="py-lineno">472</tt> <tt class="py-line"> </tt>
-<a name="L473"></a><tt class="py-lineno">473</tt> <tt class="py-line"> <tt class="py-comment"># Please use the generateRoutes plus addRoutes instead of this one!</tt> </tt>
-<a name="QuaggaCliDriver.addRoute"></a><div id="QuaggaCliDriver.addRoute-def"><a name="L474"></a><tt class="py-lineno">474</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.addRoute-toggle" onclick="return toggle('QuaggaCliDriver.addRoute');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#addRoute">addRoute</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">net</tt><tt class="py-op">,</tt> <tt class="py-param">numRoutes</tt><tt class="py-op">,</tt> <tt class="py-param">routeRate</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.addRoute-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.addRoute-expanded"><a name="L475"></a><tt class="py-lineno">475</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L476"></a><tt class="py-lineno">476</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-128', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L477"></a><tt class="py-lineno">477</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"config-router"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L478"></a><tt class="py-lineno">478</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L479"></a><tt class="py-lineno">479</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-129', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Probably not in config-router mode!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L480"></a><tt class="py-lineno">480</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-130" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-130', 'disconnect', 'link-26');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L481"></a><tt class="py-lineno">481</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-131', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Adding Routes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L482"></a><tt class="py-lineno">482</tt> <tt class="py-line"> <tt class="py-name">j</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L483"></a><tt class="py-lineno">483</tt> <tt class="py-line"> <tt class="py-name">k</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L484"></a><tt class="py-lineno">484</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">numRoutes</tt> <tt class="py-op">></tt> <tt class="py-number">255</tt><tt class="py-op">:</tt> </tt>
-<a name="L485"></a><tt class="py-lineno">485</tt> <tt class="py-line"> <tt class="py-name">numRoutes</tt> <tt class="py-op">=</tt> <tt class="py-name">numRoutes</tt> <tt class="py-op">-</tt> <tt class="py-number">255</tt> </tt>
-<a name="L486"></a><tt class="py-lineno">486</tt> <tt class="py-line"> <tt class="py-name">j</tt> <tt class="py-op">=</tt> <tt class="py-name">j</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L487"></a><tt class="py-lineno">487</tt> <tt class="py-line"> <tt class="py-name">k</tt> <tt class="py-op">=</tt> <tt class="py-name">numRoutes</tt> <tt class="py-op">%</tt> <tt class="py-number">254</tt> </tt>
-<a name="L488"></a><tt class="py-lineno">488</tt> <tt class="py-line"> <tt class="py-name">routesAdded</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L489"></a><tt class="py-lineno">489</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">numRoutes</tt> <tt class="py-op">></tt> <tt class="py-number">255</tt><tt class="py-op">:</tt> </tt>
-<a name="L490"></a><tt class="py-lineno">490</tt> <tt class="py-line"> <tt class="py-name">numRoutes</tt> <tt class="py-op">=</tt> <tt class="py-number">255</tt> </tt>
-<a name="L491"></a><tt class="py-lineno">491</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">m</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">j</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L492"></a><tt class="py-lineno">492</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">n</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">numRoutes</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L493"></a><tt class="py-lineno">493</tt> <tt class="py-line"> <tt class="py-name">network</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-132" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-132', 'net', 'link-31');">net</a></tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">m</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">)</tt> \ </tt>
-<a name="L494"></a><tt class="py-lineno">494</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">".0/24"</tt> </tt>
-<a name="L495"></a><tt class="py-lineno">495</tt> <tt class="py-line"> <tt class="py-name">routeCmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"network "</tt> <tt class="py-op">+</tt> <tt class="py-name">network</tt> </tt>
-<a name="L496"></a><tt class="py-lineno">496</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L497"></a><tt class="py-lineno">497</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-133', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">routeCmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L498"></a><tt class="py-lineno">498</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"bgpd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L499"></a><tt class="py-lineno">499</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L500"></a><tt class="py-lineno">500</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-134" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-134', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"failed to add route"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L501"></a><tt class="py-lineno">501</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-135', 'disconnect', 'link-26');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L502"></a><tt class="py-lineno">502</tt> <tt class="py-line"> <tt class="py-name">waitTimer</tt> <tt class="py-op">=</tt> <tt class="py-number">1.00</tt> <tt class="py-op">/</tt> <tt class="py-name">routeRate</tt> </tt>
-<a name="L503"></a><tt class="py-lineno">503</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">waitTimer</tt> <tt class="py-op">)</tt> </tt>
-<a name="L504"></a><tt class="py-lineno">504</tt> <tt class="py-line"> <tt class="py-name">routesAdded</tt> <tt class="py-op">=</tt> <tt class="py-name">routesAdded</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L505"></a><tt class="py-lineno">505</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">d</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">j</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">j</tt> <tt class="py-op">+</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L506"></a><tt class="py-lineno">506</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">e</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">k</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L507"></a><tt class="py-lineno">507</tt> <tt class="py-line"> <tt class="py-name">network</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-136" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-136', 'net', 'link-31');">net</a></tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">d</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> \ </tt>
-<a name="L508"></a><tt class="py-lineno">508</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">".0/24"</tt> </tt>
-<a name="L509"></a><tt class="py-lineno">509</tt> <tt class="py-line"> <tt class="py-name">routeCmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"network "</tt> <tt class="py-op">+</tt> <tt class="py-name">network</tt> </tt>
-<a name="L510"></a><tt class="py-lineno">510</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L511"></a><tt class="py-lineno">511</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-137', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">routeCmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L512"></a><tt class="py-lineno">512</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"bgpd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L513"></a><tt class="py-lineno">513</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L514"></a><tt class="py-lineno">514</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-138', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"failed to add route"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L515"></a><tt class="py-lineno">515</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-139" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-139', 'disconnect', 'link-26');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L516"></a><tt class="py-lineno">516</tt> <tt class="py-line"> <tt class="py-name">waitTimer</tt> <tt class="py-op">=</tt> <tt class="py-number">1.00</tt> <tt class="py-op">/</tt> <tt class="py-name">routeRate</tt> </tt>
-<a name="L517"></a><tt class="py-lineno">517</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">waitTimer</tt> <tt class="py-op">)</tt> </tt>
-<a name="L518"></a><tt class="py-lineno">518</tt> <tt class="py-line"> <tt class="py-name">routesAdded</tt> <tt class="py-op">=</tt> <tt class="py-name">routesAdded</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L519"></a><tt class="py-lineno">519</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">routesAdded</tt> <tt class="py-op">==</tt> <tt class="py-name">numRoutes</tt><tt class="py-op">:</tt> </tt>
-<a name="L520"></a><tt class="py-lineno">520</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L521"></a><tt class="py-lineno">521</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L522"></a><tt class="py-lineno">522</tt> <tt class="py-line"> </tt>
-<a name="L523"></a><tt class="py-lineno">523</tt> <tt class="py-line"> <tt class="py-comment"># Please use deleteRoutes method instead of this one!</tt> </tt>
-<a name="QuaggaCliDriver.delRoute"></a><div id="QuaggaCliDriver.delRoute-def"><a name="L524"></a><tt class="py-lineno">524</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.delRoute-toggle" onclick="return toggle('QuaggaCliDriver.delRoute');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#delRoute">delRoute</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">net</tt><tt class="py-op">,</tt> <tt class="py-param">numRoutes</tt><tt class="py-op">,</tt> <tt class="py-param">routeRate</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.delRoute-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.delRoute-expanded"><a name="L525"></a><tt class="py-lineno">525</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L526"></a><tt class="py-lineno">526</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-140" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-140', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L527"></a><tt class="py-lineno">527</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"config-router"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L528"></a><tt class="py-lineno">528</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L529"></a><tt class="py-lineno">529</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-141" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-141', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Probably not in config-router mode!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L530"></a><tt class="py-lineno">530</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-142', 'disconnect', 'link-26');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L531"></a><tt class="py-lineno">531</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-143', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Deleting Routes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L532"></a><tt class="py-lineno">532</tt> <tt class="py-line"> <tt class="py-name">j</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L533"></a><tt class="py-lineno">533</tt> <tt class="py-line"> <tt class="py-name">k</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L534"></a><tt class="py-lineno">534</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">numRoutes</tt> <tt class="py-op">></tt> <tt class="py-number">255</tt><tt class="py-op">:</tt> </tt>
-<a name="L535"></a><tt class="py-lineno">535</tt> <tt class="py-line"> <tt class="py-name">numRoutes</tt> <tt class="py-op">=</tt> <tt class="py-name">numRoutes</tt> <tt class="py-op">-</tt> <tt class="py-number">255</tt> </tt>
-<a name="L536"></a><tt class="py-lineno">536</tt> <tt class="py-line"> <tt class="py-name">j</tt> <tt class="py-op">=</tt> <tt class="py-name">j</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L537"></a><tt class="py-lineno">537</tt> <tt class="py-line"> <tt class="py-name">k</tt> <tt class="py-op">=</tt> <tt class="py-name">numRoutes</tt> <tt class="py-op">%</tt> <tt class="py-number">254</tt> </tt>
-<a name="L538"></a><tt class="py-lineno">538</tt> <tt class="py-line"> <tt class="py-name">routesDeleted</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L539"></a><tt class="py-lineno">539</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">numRoutes</tt> <tt class="py-op">></tt> <tt class="py-number">255</tt><tt class="py-op">:</tt> </tt>
-<a name="L540"></a><tt class="py-lineno">540</tt> <tt class="py-line"> <tt class="py-name">numRoutes</tt> <tt class="py-op">=</tt> <tt class="py-number">255</tt> </tt>
-<a name="L541"></a><tt class="py-lineno">541</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">m</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">j</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L542"></a><tt class="py-lineno">542</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">n</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">numRoutes</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L543"></a><tt class="py-lineno">543</tt> <tt class="py-line"> <tt class="py-name">network</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-144" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-144', 'net', 'link-31');">net</a></tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">m</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">)</tt> \ </tt>
-<a name="L544"></a><tt class="py-lineno">544</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">".0/24"</tt> </tt>
-<a name="L545"></a><tt class="py-lineno">545</tt> <tt class="py-line"> <tt class="py-name">routeCmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"no network "</tt> <tt class="py-op">+</tt> <tt class="py-name">network</tt> </tt>
-<a name="L546"></a><tt class="py-lineno">546</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L547"></a><tt class="py-lineno">547</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-145" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-145', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">routeCmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L548"></a><tt class="py-lineno">548</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"bgpd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L549"></a><tt class="py-lineno">549</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L550"></a><tt class="py-lineno">550</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-146" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-146', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to delete route"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L551"></a><tt class="py-lineno">551</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-147', 'disconnect', 'link-26');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L552"></a><tt class="py-lineno">552</tt> <tt class="py-line"> <tt class="py-name">waitTimer</tt> <tt class="py-op">=</tt> <tt class="py-number">1.00</tt> <tt class="py-op">/</tt> <tt class="py-name">routeRate</tt> </tt>
-<a name="L553"></a><tt class="py-lineno">553</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">waitTimer</tt> <tt class="py-op">)</tt> </tt>
-<a name="L554"></a><tt class="py-lineno">554</tt> <tt class="py-line"> <tt class="py-name">routesDeleted</tt> <tt class="py-op">=</tt> <tt class="py-name">routesDeleted</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L555"></a><tt class="py-lineno">555</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">d</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">j</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">j</tt> <tt class="py-op">+</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L556"></a><tt class="py-lineno">556</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">e</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">k</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L557"></a><tt class="py-lineno">557</tt> <tt class="py-line"> <tt class="py-name">network</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-148" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-148', 'net', 'link-31');">net</a></tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">d</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> \ </tt>
-<a name="L558"></a><tt class="py-lineno">558</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">".0/24"</tt> </tt>
-<a name="L559"></a><tt class="py-lineno">559</tt> <tt class="py-line"> <tt class="py-name">routeCmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"no network "</tt> <tt class="py-op">+</tt> <tt class="py-name">network</tt> </tt>
-<a name="L560"></a><tt class="py-lineno">560</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L561"></a><tt class="py-lineno">561</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-149" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-149', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">routeCmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L562"></a><tt class="py-lineno">562</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"bgpd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L563"></a><tt class="py-lineno">563</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L564"></a><tt class="py-lineno">564</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-150" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-150', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to delete route"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L565"></a><tt class="py-lineno">565</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-151" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-151', 'disconnect', 'link-26');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L566"></a><tt class="py-lineno">566</tt> <tt class="py-line"> <tt class="py-name">waitTimer</tt> <tt class="py-op">=</tt> <tt class="py-number">1.00</tt> <tt class="py-op">/</tt> <tt class="py-name">routeRate</tt> </tt>
-<a name="L567"></a><tt class="py-lineno">567</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">waitTimer</tt> <tt class="py-op">)</tt> </tt>
-<a name="L568"></a><tt class="py-lineno">568</tt> <tt class="py-line"> <tt class="py-name">routesDeleted</tt> <tt class="py-op">=</tt> <tt class="py-name">routesDeleted</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L569"></a><tt class="py-lineno">569</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">routesDeleted</tt> <tt class="py-op">==</tt> <tt class="py-name">numRoutes</tt><tt class="py-op">:</tt> </tt>
-<a name="L570"></a><tt class="py-lineno">570</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L571"></a><tt class="py-lineno">571</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L572"></a><tt class="py-lineno">572</tt> <tt class="py-line"> </tt>
-<a name="QuaggaCliDriver.checkRoutes"></a><div id="QuaggaCliDriver.checkRoutes-def"><a name="L573"></a><tt class="py-lineno">573</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.checkRoutes-toggle" onclick="return toggle('QuaggaCliDriver.checkRoutes');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#checkRoutes">checkRoutes</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">brand</tt><tt class="py-op">,</tt> <tt class="py-param">ip</tt><tt class="py-op">,</tt> <tt class="py-param">user</tt><tt class="py-op">,</tt> <tt class="py-param">pw</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.checkRoutes-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.checkRoutes-expanded"><a name="L574"></a><tt class="py-lineno">574</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">pronto</tt><tt class="py-op">(</tt> <tt class="py-param">ip</tt><tt class="py-op">,</tt> <tt class="py-param">user</tt><tt class="py-op">,</tt> <tt class="py-param">passwd</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L575"></a><tt class="py-lineno">575</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Connecting to Pronto switch"</tt> </tt>
-<a name="L576"></a><tt class="py-lineno">576</tt> <tt class="py-line"> <tt class="py-name">child</tt> <tt class="py-op">=</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">spawn</tt><tt class="py-op">(</tt> <tt class="py-string">"telnet "</tt> <tt class="py-op">+</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> </tt>
-<a name="L577"></a><tt class="py-lineno">577</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">child</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"login:"</tt><tt class="py-op">,</tt> <tt class="py-string">"CLI#"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L578"></a><tt class="py-lineno">578</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L579"></a><tt class="py-lineno">579</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"user_name and password required. Passing login info."</tt> </tt>
-<a name="L580"></a><tt class="py-lineno">580</tt> <tt class="py-line"> <tt class="py-name">child</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-152', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">user</tt> <tt class="py-op">)</tt> </tt>
-<a name="L581"></a><tt class="py-lineno">581</tt> <tt class="py-line"> <tt class="py-name">child</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"Password:"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L582"></a><tt class="py-lineno">582</tt> <tt class="py-line"> <tt class="py-name">child</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-153', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">passwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L583"></a><tt class="py-lineno">583</tt> <tt class="py-line"> <tt class="py-name">child</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"CLI#"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L584"></a><tt class="py-lineno">584</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Logged in, getting flowtable."</tt> </tt>
-<a name="L585"></a><tt class="py-lineno">585</tt> <tt class="py-line"> <tt class="py-name">child</tt><tt class="py-op">.</tt><tt id="link-154" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-154', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"flowtable brief"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L586"></a><tt class="py-lineno">586</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">9</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L587"></a><tt class="py-lineno">587</tt> <tt class="py-line"> <tt class="py-name">t2</tt> <tt class="py-op">=</tt> <tt class="py-number">9</tt> <tt class="py-op">-</tt> <tt class="py-name">t</tt> </tt>
-<a name="L588"></a><tt class="py-lineno">588</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"\r"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">t2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L589"></a><tt class="py-lineno">589</tt> <tt class="py-line"> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">stdout</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt> <tt class="py-string">"\033[F"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L590"></a><tt class="py-lineno">590</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L591"></a><tt class="py-lineno">591</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Scanning flowtable"</tt> </tt>
-<a name="L592"></a><tt class="py-lineno">592</tt> <tt class="py-line"> <tt class="py-name">child</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"Flow table show"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L593"></a><tt class="py-lineno">593</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L594"></a><tt class="py-lineno">594</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L595"></a><tt class="py-lineno">595</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">child</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">'17\d\.\d{1,3}\.\d{1,3}\.\d{1,3}'</tt><tt class="py-op">,</tt> </tt>
-<a name="L596"></a><tt class="py-lineno">596</tt> <tt class="py-line"> <tt class="py-string">'CLI#'</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L597"></a><tt class="py-lineno">597</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L598"></a><tt class="py-lineno">598</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-name">count</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L599"></a><tt class="py-lineno">599</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L600"></a><tt class="py-lineno">600</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Pronto flows: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\nDone\n"</tt> </tt>
-<a name="L601"></a><tt class="py-lineno">601</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L602"></a><tt class="py-lineno">602</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L603"></a><tt class="py-lineno">603</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-</div><a name="L604"></a><tt class="py-lineno">604</tt> <tt class="py-line"> </tt>
-<a name="L605"></a><tt class="py-lineno">605</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">cisco</tt><tt class="py-op">(</tt> <tt class="py-param">ip</tt><tt class="py-op">,</tt> <tt class="py-param">user</tt><tt class="py-op">,</tt> <tt class="py-param">passwd</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L606"></a><tt class="py-lineno">606</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Establishing Cisco switch connection"</tt> </tt>
-<a name="L607"></a><tt class="py-lineno">607</tt> <tt class="py-line"> <tt class="py-name">child</tt> <tt class="py-op">=</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">spawn</tt><tt class="py-op">(</tt> <tt class="py-string">"ssh "</tt> <tt class="py-op">+</tt> <tt class="py-name">user</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> </tt>
-<a name="L608"></a><tt class="py-lineno">608</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">child</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"Password:"</tt><tt class="py-op">,</tt> <tt class="py-string">"CLI#"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L609"></a><tt class="py-lineno">609</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L610"></a><tt class="py-lineno">610</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Password required. Passing now."</tt> </tt>
-<a name="L611"></a><tt class="py-lineno">611</tt> <tt class="py-line"> <tt class="py-name">child</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-155', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">passwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L612"></a><tt class="py-lineno">612</tt> <tt class="py-line"> <tt class="py-name">child</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"#"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L613"></a><tt class="py-lineno">613</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Logged in. Retrieving flow table then counting flows."</tt> </tt>
-<a name="L614"></a><tt class="py-lineno">614</tt> <tt class="py-line"> <tt class="py-name">child</tt><tt class="py-op">.</tt><tt id="link-156" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-156', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"show openflow switch all flows all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L615"></a><tt class="py-lineno">615</tt> <tt class="py-line"> <tt class="py-name">child</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"Logical Openflow Switch"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L616"></a><tt class="py-lineno">616</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Flow table retrieved. Counting flows"</tt> </tt>
-<a name="L617"></a><tt class="py-lineno">617</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L618"></a><tt class="py-lineno">618</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L619"></a><tt class="py-lineno">619</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">child</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"nw_src=17"</tt><tt class="py-op">,</tt> <tt class="py-string">"#"</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L620"></a><tt class="py-lineno">620</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L621"></a><tt class="py-lineno">621</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-name">count</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L622"></a><tt class="py-lineno">622</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L623"></a><tt class="py-lineno">623</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Cisco flows: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\nDone\n"</tt> </tt>
-<a name="L624"></a><tt class="py-lineno">624</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L625"></a><tt class="py-lineno">625</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L626"></a><tt class="py-lineno">626</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L627"></a><tt class="py-lineno">627</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">brand</tt> <tt class="py-op">==</tt> <tt class="py-string">"pronto"</tt> <tt class="py-keyword">or</tt> <tt class="py-name">brand</tt> <tt class="py-op">==</tt> <tt class="py-string">"PRONTO"</tt><tt class="py-op">:</tt> </tt>
-<a name="L628"></a><tt class="py-lineno">628</tt> <tt class="py-line"> <tt class="py-name">pronto</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt><tt class="py-op">,</tt> <tt class="py-name">user</tt><tt class="py-op">,</tt> <tt class="py-name">passwd</tt> <tt class="py-op">)</tt> </tt>
-</div></div><a name="L629"></a><tt class="py-lineno">629</tt> <tt class="py-line"> <tt class="py-comment"># elif brand == "cisco" or brand == "CISCO":</tt> </tt>
-<a name="L630"></a><tt class="py-lineno">630</tt> <tt class="py-line"> <tt class="py-comment"># cisco( ip,user,passwd )</tt> </tt>
-<a name="L631"></a><tt class="py-lineno">631</tt> <tt class="py-line"> </tt>
-<a name="QuaggaCliDriver.disable_bgp_peer"></a><div id="QuaggaCliDriver.disable_bgp_peer-def"><a name="L632"></a><tt class="py-lineno">632</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.disable_bgp_peer-toggle" onclick="return toggle('QuaggaCliDriver.disable_bgp_peer');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#disable_bgp_peer">disable_bgp_peer</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">peer</tt><tt class="py-op">,</tt> <tt class="py-param">peer_as</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.disable_bgp_peer-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.disable_bgp_peer-expanded"><a name="L633"></a><tt class="py-lineno">633</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-157', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"I am in disconnect_peer_session method!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L634"></a><tt class="py-lineno">634</tt> <tt class="py-line"> </tt>
-<a name="L635"></a><tt class="py-lineno">635</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L636"></a><tt class="py-lineno">636</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-158" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-158', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L637"></a><tt class="py-lineno">637</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "config-router" )</tt> </tt>
-<a name="L638"></a><tt class="py-lineno">638</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"config-router"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L639"></a><tt class="py-lineno">639</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L640"></a><tt class="py-lineno">640</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-159" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-159', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Probably not in config-router mode!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L641"></a><tt class="py-lineno">641</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-160" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-160', 'disconnect', 'link-26');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L642"></a><tt class="py-lineno">642</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-161" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-161', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Start to disable peer"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L643"></a><tt class="py-lineno">643</tt> <tt class="py-line"> </tt>
-<a name="L644"></a><tt class="py-lineno">644</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"no neighbor "</tt> <tt class="py-op">+</tt> <tt class="py-name">peer</tt> <tt class="py-op">+</tt> <tt class="py-string">" remote-as "</tt> <tt class="py-op">+</tt> <tt class="py-name">peer_as</tt> </tt>
-<a name="L645"></a><tt class="py-lineno">645</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L646"></a><tt class="py-lineno">646</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-162', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L647"></a><tt class="py-lineno">647</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"bgpd"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L648"></a><tt class="py-lineno">648</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L649"></a><tt class="py-lineno">649</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-163" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-163', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to disable peer"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L650"></a><tt class="py-lineno">650</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-164" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-164', 'disconnect', 'link-26');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L651"></a><tt class="py-lineno">651</tt> <tt class="py-line"> </tt>
-<a name="QuaggaCliDriver.enable_bgp_peer"></a><div id="QuaggaCliDriver.enable_bgp_peer-def"><a name="L652"></a><tt class="py-lineno">652</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.enable_bgp_peer-toggle" onclick="return toggle('QuaggaCliDriver.enable_bgp_peer');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#enable_bgp_peer">enable_bgp_peer</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">peer</tt><tt class="py-op">,</tt> <tt class="py-param">peer_as</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.enable_bgp_peer-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.enable_bgp_peer-expanded"><a name="L653"></a><tt class="py-lineno">653</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-165" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-165', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"I am in enable_bgp_peer method!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L654"></a><tt class="py-lineno">654</tt> <tt class="py-line"> </tt>
-<a name="L655"></a><tt class="py-lineno">655</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L656"></a><tt class="py-lineno">656</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-166" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-166', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L657"></a><tt class="py-lineno">657</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( "config-router" )</tt> </tt>
-<a name="L658"></a><tt class="py-lineno">658</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"config-router"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L659"></a><tt class="py-lineno">659</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L660"></a><tt class="py-lineno">660</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-167', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Probably not in config-router mode!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L661"></a><tt class="py-lineno">661</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-168', 'disconnect', 'link-26');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L662"></a><tt class="py-lineno">662</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-169" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-169', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Start to disable peer"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L663"></a><tt class="py-lineno">663</tt> <tt class="py-line"> </tt>
-<a name="L664"></a><tt class="py-lineno">664</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"neighbor "</tt> <tt class="py-op">+</tt> <tt class="py-name">peer</tt> <tt class="py-op">+</tt> <tt class="py-string">" remote-as "</tt> <tt class="py-op">+</tt> <tt class="py-name">peer_as</tt> </tt>
-<a name="L665"></a><tt class="py-lineno">665</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L666"></a><tt class="py-lineno">666</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-170" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-170', 'sendline', 'link-11');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L667"></a><tt class="py-lineno">667</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"bgpd"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L668"></a><tt class="py-lineno">668</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L669"></a><tt class="py-lineno">669</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-171" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-171', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to enable peer"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L670"></a><tt class="py-lineno">670</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-172" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-172', 'disconnect', 'link-26');">disconnect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L671"></a><tt class="py-lineno">671</tt> <tt class="py-line"> </tt>
-<a name="QuaggaCliDriver.disconnect"></a><div id="QuaggaCliDriver.disconnect-def"><a name="L672"></a><tt class="py-lineno">672</tt> <a class="py-toggle" href="#" id="QuaggaCliDriver.disconnect-toggle" onclick="return toggle('QuaggaCliDriver.disconnect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#disconnect">disconnect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="QuaggaCliDriver.disconnect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="QuaggaCliDriver.disconnect-expanded"><a name="L673"></a><tt class="py-lineno">673</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L674"></a><tt class="py-lineno">674</tt> <tt class="py-line"><tt class="py-docstring"> Called when Test is complete to disconnect the Quagga handle.</tt> </tt>
-<a name="L675"></a><tt class="py-lineno">675</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L676"></a><tt class="py-lineno">676</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L677"></a><tt class="py-lineno">677</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L678"></a><tt class="py-lineno">678</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L679"></a><tt class="py-lineno">679</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L680"></a><tt class="py-lineno">680</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-173', 'log', 'link-8');">log</a></tt><tt class="py-op">.</tt><tt id="link-174" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-174', 'error', 'link-174');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L681"></a><tt class="py-lineno">681</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L682"></a><tt class="py-lineno">682</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-</div></div><a name="L683"></a><tt class="py-lineno">683</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html
deleted file mode 100644
index 488311c..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html
+++ /dev/null
@@ -1,829 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.quaggaclidriver-module.html">Module quaggaclidriver</a> ::
- Class QuaggaCliDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class QuaggaCliDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_quaggaclid" name="class_hierarchy_for_quaggaclid">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html" title="QuaggaCliDriver" alt="" coords="5,6,123,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="147,6,239,31"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="component.Component" alt="" coords="264,6,421,31"/>
-</map>
- <img src="class_hierarchy_for_quaggaclid.gif" alt='' usemap="#class_hierarchy_for_quaggaclid" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Connection will establish to the remote host using ssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="connectQuagga"></a><span class="summary-sig-name">connectQuagga</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.connectQuagga">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="loginQuagga"></a><span class="summary-sig-name">loginQuagga</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ip_address</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.loginQuagga">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="enterConfig"></a><span class="summary-sig-name">enterConfig</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">asn</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.enterConfig">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="generatePrefixes"></a><span class="summary-sig-name">generatePrefixes</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">net</span>,
- <span class="summary-sig-arg">numRoutes</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.generatePrefixes">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="generateExpectedSingleRouteIntent"></a><span class="summary-sig-name">generateExpectedSingleRouteIntent</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">prefix</span>,
- <span class="summary-sig-arg">nextHop</span>,
- <span class="summary-sig-arg">nextHopMac</span>,
- <span class="summary-sig-arg">sdnipData</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.generateExpectedSingleRouteIntent">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="generateExpectedOnePeerRouteIntents"></a><span class="summary-sig-name">generateExpectedOnePeerRouteIntents</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">prefixes</span>,
- <span class="summary-sig-arg">nextHop</span>,
- <span class="summary-sig-arg">nextHopMac</span>,
- <span class="summary-sig-arg">sdnipJsonFilePath</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.generateExpectedOnePeerRouteIntents">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="generateExpectedRouteIntents"></a><span class="summary-sig-name">generateExpectedRouteIntents</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.generateExpectedRouteIntents">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="extractActualRoutesOneDotZero"></a><span class="summary-sig-name">extractActualRoutesOneDotZero</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">getRoutesResult</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.extractActualRoutesOneDotZero">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="extractActualRoutesMaster"></a><span class="summary-sig-name">extractActualRoutesMaster</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">getRoutesResult</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.extractActualRoutesMaster">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="extractActualRouteIntents"></a><span class="summary-sig-name">extractActualRouteIntents</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">getIntentsResult</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.extractActualRouteIntents">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="extractActualRouteIntentNum"></a><span class="summary-sig-name">extractActualRouteIntentNum</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">getIntentsResult</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.extractActualRouteIntentNum">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="extractActualBgpIntentNum"></a><span class="summary-sig-name">extractActualBgpIntentNum</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">getIntentsResult</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.extractActualBgpIntentNum">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="extractActualBgpIntents"></a><span class="summary-sig-name">extractActualBgpIntents</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">getIntentsResult</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.extractActualBgpIntents">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="generateExpectedBgpIntents"></a><span class="summary-sig-name">generateExpectedBgpIntents</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">sdnipJsonFilePath</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.generateExpectedBgpIntents">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="addRoutes"></a><span class="summary-sig-name">addRoutes</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">routes</span>,
- <span class="summary-sig-arg">routeRate</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.addRoutes">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="deleteRoutes"></a><span class="summary-sig-name">deleteRoutes</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">routes</span>,
- <span class="summary-sig-arg">routeRate</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.deleteRoutes">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="pingTest"></a><span class="summary-sig-name">pingTest</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">pingTestFile</span>,
- <span class="summary-sig-arg">pingTestResultFile</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.pingTest">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="addRoute"></a><span class="summary-sig-name">addRoute</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">net</span>,
- <span class="summary-sig-arg">numRoutes</span>,
- <span class="summary-sig-arg">routeRate</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.addRoute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="delRoute"></a><span class="summary-sig-name">delRoute</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">net</span>,
- <span class="summary-sig-arg">numRoutes</span>,
- <span class="summary-sig-arg">routeRate</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.delRoute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="checkRoutes"></a><span class="summary-sig-name">checkRoutes</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">brand</span>,
- <span class="summary-sig-arg">ip</span>,
- <span class="summary-sig-arg">user</span>,
- <span class="summary-sig-arg">pw</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.checkRoutes">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="disable_bgp_peer"></a><span class="summary-sig-name">disable_bgp_peer</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">peer</span>,
- <span class="summary-sig-arg">peer_as</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.disable_bgp_peer">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="enable_bgp_peer"></a><span class="summary-sig-name">enable_bgp_peer</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">peer</span>,
- <span class="summary-sig-arg">peer_as</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.enable_bgp_peer">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Called when Test is complete to disconnect the Quagga handle.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Connection will establish to the remote host using ssh. It will take
- user_name ,ip_address and password as arguments<br> and will return
- the handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="disconnect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">disconnect</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.quaggaclidriver-pysrc.html#QuaggaCliDriver.disconnect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Called when Test is complete to disconnect the Quagga handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.disconnect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotesys-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotesys-module.html
deleted file mode 100644
index d511786..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotesys-module.html
+++ /dev/null
@@ -1,143 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotesys</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Package remotesys
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotesys-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package remotesys</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.remotesys-pysrc.html">source code</a></span></p>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotesys-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotesys-pysrc.html
deleted file mode 100644
index ca3a95c..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotesys-pysrc.html
+++ /dev/null
@@ -1,125 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotesys</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Package remotesys
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotesys-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.remotesys-module.html">Package TestON.drivers.common.cli.remotesys</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotesysdriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotesysdriver-module.html
deleted file mode 100644
index c389997..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotesysdriver-module.html
+++ /dev/null
@@ -1,163 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotesysdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Module remotesysdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotesysdriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module remotesysdriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.remotesysdriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 26-Oct-2012
-
-author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- ( at your option ) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html" class="summary-name">RemoteSysDriver</a>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotesysdriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotesysdriver-pysrc.html
deleted file mode 100644
index 1645ef6..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotesysdriver-pysrc.html
+++ /dev/null
@@ -1,266 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotesysdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Module remotesysdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotesysdriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.remotesysdriver-module.html">Module TestON.drivers.common.cli.remotesysdriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 26-Oct-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-docstring"> ( at your option ) any later version.</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.drivers.common.clidriver=TestON.drivers.common.clidriver-module.html"><a title="TestON.drivers.common.clidriver" class="py-name" href="#" onclick="return doclink('link-2', 'clidriver', 'link-2');">clidriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Class TestON.bin.cli.CLI=TestON.bin.cli.CLI-class.html,Class TestON.drivers.common.clidriver.CLI=TestON.drivers.common.clidriver.CLI-class.html"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-3', 'CLI', 'link-3');">CLI</a></tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> </tt>
-<a name="RemoteSysDriver"></a><div id="RemoteSysDriver-def"><a name="L25"></a><tt class="py-lineno">25</tt> <a class="py-toggle" href="#" id="RemoteSysDriver-toggle" onclick="return toggle('RemoteSysDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html">RemoteSysDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">CLI</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteSysDriver-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="RemoteSysDriver-expanded"><a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> <tt class="py-comment"># The common functions for emulator included in emulatordriver</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> </tt>
-<a name="RemoteSysDriver.__init__"></a><div id="RemoteSysDriver.__init__-def"><a name="L28"></a><tt class="py-lineno">28</tt> <a class="py-toggle" href="#" id="RemoteSysDriver.__init__-toggle" onclick="return toggle('RemoteSysDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteSysDriver.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="RemoteSysDriver.__init__-expanded"><a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-4" class="py-name"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-4', 'CLI', 'link-3');">CLI</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-5', '__init__', 'link-5');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> </tt>
-<a name="RemoteSysDriver.connect"></a><div id="RemoteSysDriver.connect-def"><a name="L31"></a><tt class="py-lineno">31</tt> <a class="py-toggle" href="#" id="RemoteSysDriver.connect-toggle" onclick="return toggle('RemoteSysDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteSysDriver.connect-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="RemoteSysDriver.connect-expanded"><a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt id="link-6" class="py-name" targets="Class TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html"><a title="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver" class="py-name" href="#" onclick="return doclink('link-6', 'RemoteSysDriver', 'link-6');">RemoteSysDriver</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-7', 'connect', 'link-7');">connect</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt><tt class="py-op">,</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-string">"""</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"><tt class="py-string"> if self.handle:</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"><tt class="py-string"> self.execute( cmd= "\n",prompt= "\$|>|#",timeout= 10 )</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"><tt class="py-string"> self.execute( cmd= "ssh -l paxterra 10.128.4.1",prompt= "paxterra@10.128.4.1's password:",timeout= 10 )</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"><tt class="py-string"> self.execute( cmd= "\n",prompt= "paxterra@10.128.4.1's password:",timeout= 10 )</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"><tt class="py-string"> self.execute( cmd="0nLab_gu3st",prompt="\$",timeout=10 )</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"><tt class="py-string"> self.execute( cmd="cd TestON/bin/",prompt="\$",timeout=10 )</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"><tt class="py-string"> self.execute( cmd="./cli.py run Assert example 1",prompt="\$",timeout=10 )</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"><tt class="py-string"> self.execute( cmd= "\n",prompt= "$",timeout= 10 )</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"><tt class="py-string"> #self.execute( cmd="help",prompt=">",timeout=10 )</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"><tt class="py-string"> #self.execute( cmd="~.",prompt= ".*",timeout= 10 )</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"><tt class="py-string"> return main.TRUE</tt> </tt>
-<a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"><tt class="py-string"> """</tt> </tt>
-</div></div><a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html
deleted file mode 100644
index 2f3c5e4..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html
+++ /dev/null
@@ -1,501 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.remotesysdriver-module.html">Module remotesysdriver</a> ::
- Class RemoteSysDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class RemoteSysDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.remotesysdriver-pysrc.html#RemoteSysDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_remotesysd" name="class_hierarchy_for_remotesysd">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html" title="RemoteSysDriver" alt="" coords="5,6,131,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="155,6,247,31"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="component.Component" alt="" coords="272,6,429,31"/>
-</map>
- <img src="class_hierarchy_for_remotesysd.gif" alt='' usemap="#class_hierarchy_for_remotesysd" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotesysdriver-pysrc.html#RemoteSysDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Connection will establish to the remote host using ssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotesysdriver-pysrc.html#RemoteSysDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== INSTANCE VARIABLES ==================== -->
-<a name="section-InstanceVariables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceVariables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#handle" class="summary-name">handle</a><br />
- if self.handle:
- self.execute( cmd= "
-",prompt= "\$|>|#",timeout= 10 )
- self.execute( cmd= "ssh -l paxterra 10.128.4.1",prompt= "paxterra@10.128.4.1's password:",timeout= 10 )
- self.execute( cmd= "
-",prompt= "paxterra@10.128.4.1's password:",timeout= 10 )
- self.execute( cmd="0nLab_gu3st",prompt="\$",timeout=10 )
- self.execute( cmd="cd TestON/bin/",prompt="\$",timeout=10 )
- self.execute( cmd="./cli.py run Assert example 1",prompt="\$",timeout=10 )
- self.execute( cmd= "
-",prompt= "$",timeout= 10 )
- #self.execute( cmd="help",prompt=">",timeout=10 )
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.remotesysdriver-pysrc.html#RemoteSysDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.remotesysdriver-pysrc.html#RemoteSysDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Connection will establish to the remote host using ssh. It will take
- user_name ,ip_address and password as arguments<br> and will return
- the handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== INSTANCE VARIABLE DETAILS ==================== -->
-<a name="section-InstanceVariableDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Variable Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceVariableDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="handle"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">handle</h3>
- <pre class="literalblock">
-
- if self.handle:
- self.execute( cmd= "
-",prompt= "\$|>|#",timeout= 10 )
- self.execute( cmd= "ssh -l paxterra 10.128.4.1",prompt= "paxterra@10.128.4.1's password:",timeout= 10 )
- self.execute( cmd= "
-",prompt= "paxterra@10.128.4.1's password:",timeout= 10 )
- self.execute( cmd="0nLab_gu3st",prompt="\$",timeout=10 )
- self.execute( cmd="cd TestON/bin/",prompt="\$",timeout=10 )
- self.execute( cmd="./cli.py run Assert example 1",prompt="\$",timeout=10 )
- self.execute( cmd= "
-",prompt= "$",timeout= 10 )
- #self.execute( cmd="help",prompt=">",timeout=10 )
-
- #self.execute( cmd="~.",prompt= ".*",timeout= 10 )
- return main.TRUE
-
-
-</pre>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed-module.html
deleted file mode 100644
index 39bf6a6..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed-module.html
+++ /dev/null
@@ -1,170 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbed</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Package remotetestbed
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbed-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package remotetestbed</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html">TestON.drivers.common.cli.remotetestbed.floodlightclidriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html">TestON.drivers.common.cli.remotetestbed.necswitchdriver</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html">TestON.drivers.common.cli.remotetestbed.remotepoxdriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html">TestON.drivers.common.cli.remotetestbed.remotevmdriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed-pysrc.html
deleted file mode 100644
index aa01c4f..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed-pysrc.html
+++ /dev/null
@@ -1,125 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbed</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Package remotetestbed
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbed-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.remotetestbed-module.html">Package TestON.drivers.common.cli.remotetestbed</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html
deleted file mode 100644
index 027da62..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html
+++ /dev/null
@@ -1,170 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbed.floodlightclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.remotetestbed-module.html">Package remotetestbed</a> ::
- Module floodlightclidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module floodlightclidriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 12-Feb-2013
-
-author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )
-
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- ( at your option ) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-
-FloodLightCliDriver is the basic driver which will handle the Mininet functions
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html" class="summary-name">FloodLightCliDriver</a><br />
- FloodLightCliDriver is the basic driver which will handle the Mininet
- functions
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.floodlightclidriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.floodlightclidriver-pysrc.html
deleted file mode 100644
index a6775d2..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.floodlightclidriver-pysrc.html
+++ /dev/null
@@ -1,274 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbed.floodlightclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.remotetestbed-module.html">Package remotetestbed</a> ::
- Module floodlightclidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html">Module TestON.drivers.common.cli.remotetestbed.floodlightclidriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 12-Feb-2013</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-docstring"> ( at your option ) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"><tt class="py-docstring">FloodLightCliDriver is the basic driver which will handle the Mininet functions</tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.bin.cli=TestON.bin.cli-module.html,Package TestON.drivers.common.cli=TestON.drivers.common.cli-module.html"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-2', 'cli', 'link-2');">cli</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module TestON.drivers.common.cli.remotetestbeddriver=TestON.drivers.common.cli.remotetestbeddriver-module.html"><a title="TestON.drivers.common.cli.remotetestbeddriver" class="py-name" href="#" onclick="return doclink('link-3', 'remotetestbeddriver', 'link-3');">remotetestbeddriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html"><a title="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver" class="py-name" href="#" onclick="return doclink('link-4', 'RemoteTestBedDriver', 'link-4');">RemoteTestBedDriver</a></tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> </tt>
-<a name="FloodLightCliDriver"></a><div id="FloodLightCliDriver-def"><a name="L26"></a><tt class="py-lineno">26</tt> <a class="py-toggle" href="#" id="FloodLightCliDriver-toggle" onclick="return toggle('FloodLightCliDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html">FloodLightCliDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">RemoteTestBedDriver</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FloodLightCliDriver-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="FloodLightCliDriver-expanded"><a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"><tt class="py-docstring"> FloodLightCliDriver is the basic driver which will handle the Mininet functions</tt> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="FloodLightCliDriver.__init__"></a><div id="FloodLightCliDriver.__init__-def"><a name="L31"></a><tt class="py-lineno">31</tt> <a class="py-toggle" href="#" id="FloodLightCliDriver.__init__-toggle" onclick="return toggle('FloodLightCliDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FloodLightCliDriver.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="FloodLightCliDriver.__init__-expanded"><a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver" class="py-name" href="#" onclick="return doclink('link-5', 'RemoteTestBedDriver', 'link-4');">RemoteTestBedDriver</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-6', '__init__', 'link-6');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> </tt>
-<a name="FloodLightCliDriver.connect"></a><div id="FloodLightCliDriver.connect-def"><a name="L34"></a><tt class="py-lineno">34</tt> <a class="py-toggle" href="#" id="FloodLightCliDriver.connect-toggle" onclick="return toggle('FloodLightCliDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FloodLightCliDriver.connect-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="FloodLightCliDriver.connect-expanded"><a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt id="link-7" class="py-name" targets="Class TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html"><a title="TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver" class="py-name" href="#" onclick="return doclink('link-7', 'FloodLightCliDriver', 'link-7');">FloodLightCliDriver</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-8', 'connect', 'link-8');">connect</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt><tt class="py-op">,</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Connected "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.execute()=TestON.bin.generatedriver.GenerateDriver-class.html#execute,Method TestON.drivers.common.clidriver.CLI.execute()=TestON.drivers.common.clidriver.CLI-class.html#execute"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-10', 'execute', 'link-10');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"\r"</tt><tt class="py-op">,</tt> <tt id="link-11" class="py-name" targets="Variable TestON.bin.cli.CLI.prompt=TestON.bin.cli.CLI-class.html#prompt"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-11', 'prompt', 'link-11');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-12', 'execute', 'link-10');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"cd /home/openflow/floodlight/"</tt><tt class="py-op">,</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt id="link-13" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-13', 'prompt', 'link-11');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"floodlight\$"</tt><tt class="py-op">,</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-14', 'execute', 'link-10');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"java -jar target/floodlight.jar &"</tt><tt class="py-op">,</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt id="link-15" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-15', 'prompt', 'link-11');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"\$"</tt><tt class="py-op">,</tt> </tt>
-<a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-16', 'execute', 'link-10');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"\r"</tt><tt class="py-op">,</tt> <tt id="link-17" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-17', 'prompt', 'link-11');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L59"></a><tt class="py-lineno">59</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-<a name="L60"></a><tt class="py-lineno">60</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L61"></a><tt class="py-lineno">61</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div></div><a name="L62"></a><tt class="py-lineno">62</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html
deleted file mode 100644
index 404c98f..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html
+++ /dev/null
@@ -1,420 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.remotetestbed-module.html">Package remotetestbed</a> ::
- <a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html">Module floodlightclidriver</a> ::
- Class FloodLightCliDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class FloodLightCliDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-pysrc.html#FloodLightCliDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_floodlight" name="class_hierarchy_for_floodlight">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html" title="FloodLightCliDriver" alt="" coords="5,6,139,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html" title="remotetestbeddriver.RemoteTestBedDriver" alt="" coords="163,6,433,31"/>
-<area shape="rect" id="node3" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="458,6,549,31"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="component.Component" alt="" coords="575,6,732,31"/>
-</map>
- <img src="class_hierarchy_for_floodlight.gif" alt='' usemap="#class_hierarchy_for_floodlight" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<p>FloodLightCliDriver is the basic driver which will handle the Mininet
- functions</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-pysrc.html#FloodLightCliDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Connection will establish to the remote host using ssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-pysrc.html#FloodLightCliDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-pysrc.html#FloodLightCliDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-pysrc.html#FloodLightCliDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Connection will establish to the remote host using ssh. It will take
- user_name ,ip_address and password as arguments<br> and will return
- the handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html
deleted file mode 100644
index a0201ab..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html
+++ /dev/null
@@ -1,169 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbed.necswitchdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.remotetestbed-module.html">Package remotetestbed</a> ::
- Module necswitchdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module necswitchdriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html" class="summary-name">NEC</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html
deleted file mode 100644
index e9beb71..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html
+++ /dev/null
@@ -1,936 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbed.necswitchdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.remotetestbed-module.html">Package remotetestbed</a> ::
- Module necswitchdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html">Module TestON.drivers.common.cli.remotetestbed.necswitchdriver</a></h1>
-<pre class="py-src">
-<a name="NEC"></a><div id="NEC-def"><a name="L1"></a><tt class="py-lineno"> 1</tt> <a class="py-toggle" href="#" id="NEC-toggle" onclick="return toggle('NEC');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a><tt class="py-op">:</tt> </tt>
-</div><div id="NEC-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="NEC-expanded"><a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"> </tt>
-<a name="NEC.__init__"></a><div id="NEC.__init__-def"><a name="L3"></a><tt class="py-lineno"> 3</tt> <a class="py-toggle" href="#" id="NEC.__init__-toggle" onclick="return toggle('NEC.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.__init__-expanded"><a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Variable TestON.bin.cli.CLI.prompt=TestON.bin.cli.CLI-class.html#prompt"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-0', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-string">'(.*)'</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-number">60</tt> </tt>
-</div><a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"> </tt>
-<a name="NEC.show"></a><div id="NEC.show-def"><a name="L7"></a><tt class="py-lineno"> 7</tt> <a class="py-toggle" href="#" id="NEC.show-toggle" onclick="return toggle('NEC.show');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show">show</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show-expanded"><a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[' access-filter ', ' accounting ', ' acknowledgments ', ' auto-config ', ' axrp ', ' cfm ', ' channel-group ', ' clock ', ' config-lock-status ', ' cpu ', ' dhcp ', ' dot1x ', ' dumpfile ', ' efmoam ', ' environment ', ' file ', ' flash ', ' gsrp ', ' history ', ' igmp-snooping ', ' interfaces ', ' ip ', ' ip-dual ', ' ipv6-dhcp ', ' license ', ' lldp ', ' logging ', ' loop-detection ', ' mac-address-table ', ' mc ', ' memory ', ' mld-snooping ', ' netconf ', ' netstat ', ' ntp ', ' oadp ', ' openflow ', ' port ', ' power ', ' processes ', ' qos ', ' qos-flow ', ' sessions ', ' sflow ', ' spanning-tree ', ' ssh ', ' system ', ' tcpdump ', ' tech-support ', ' track ', ' version ', ' vlan ', ' vrrpstatus ', ' whoami ']"</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"> <tt id="link-1" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-1', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-2', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.execute()=TestON.bin.generatedriver.GenerateDriver-class.html#execute,Method TestON.drivers.common.clidriver.CLI.execute()=TestON.drivers.common.clidriver.CLI-class.html#execute"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-3', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show "</tt> <tt class="py-op">+</tt> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> <tt id="link-4" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-4', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-5" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-5', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_ip"></a><div id="NEC.show_ip-def"><a name="L17"></a><tt class="py-lineno"> 17</tt> <a class="py-toggle" href="#" id="NEC.show_ip-toggle" onclick="return toggle('NEC.show_ip');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_ip">show_ip</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_ip-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_ip-expanded"><a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> <tt id="link-6" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-6', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-7', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-8', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show ip "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt id="link-9" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-9', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-10" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-10', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_mc"></a><div id="NEC.show_mc-def"><a name="L31"></a><tt class="py-lineno"> 31</tt> <a class="py-toggle" href="#" id="NEC.show_mc-toggle" onclick="return toggle('NEC.show_mc');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_mc">show_mc</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_mc-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_mc-expanded"><a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt id="link-11" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-11', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-12', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-13', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show mc "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt id="link-14" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-14', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-15" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-15', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_cfm"></a><div id="NEC.show_cfm-def"><a name="L45"></a><tt class="py-lineno"> 45</tt> <a class="py-toggle" href="#" id="NEC.show_cfm-toggle" onclick="return toggle('NEC.show_cfm');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_cfm">show_cfm</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_cfm-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_cfm-expanded"><a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt id="link-16" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-16', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-17', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-18', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show cfm "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt id="link-19" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-19', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-20" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-20', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_ntp"></a><div id="NEC.show_ntp-def"><a name="L59"></a><tt class="py-lineno"> 59</tt> <a class="py-toggle" href="#" id="NEC.show_ntp-toggle" onclick="return toggle('NEC.show_ntp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_ntp">show_ntp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_ntp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_ntp-expanded"><a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt id="link-21" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-21', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-22', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-23', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show ntp "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt id="link-24" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-24', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-25" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-25', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_ssh"></a><div id="NEC.show_ssh-def"><a name="L73"></a><tt class="py-lineno"> 73</tt> <a class="py-toggle" href="#" id="NEC.show_ssh-toggle" onclick="return toggle('NEC.show_ssh');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_ssh">show_ssh</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_ssh-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_ssh-expanded"><a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt id="link-26" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-26', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-27', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-28', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show ssh "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt id="link-29" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-29', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-30" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-30', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_qos"></a><div id="NEC.show_qos-def"><a name="L87"></a><tt class="py-lineno"> 87</tt> <a class="py-toggle" href="#" id="NEC.show_qos-toggle" onclick="return toggle('NEC.show_qos');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_qos">show_qos</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_qos-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_qos-expanded"><a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt id="link-31" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-31', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-32', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-33', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show qos "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt id="link-34" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-34', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-35" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-35', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_cpu"></a><div id="NEC.show_cpu-def"><a name="L101"></a><tt class="py-lineno">101</tt> <a class="py-toggle" href="#" id="NEC.show_cpu-toggle" onclick="return toggle('NEC.show_cpu');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_cpu">show_cpu</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_cpu-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_cpu-expanded"><a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt id="link-36" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-36', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-37', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-38', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show cpu "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt id="link-39" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-39', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-40" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-40', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_vlan"></a><div id="NEC.show_vlan-def"><a name="L115"></a><tt class="py-lineno">115</tt> <a class="py-toggle" href="#" id="NEC.show_vlan-toggle" onclick="return toggle('NEC.show_vlan');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_vlan">show_vlan</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_vlan-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_vlan-expanded"><a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt id="link-41" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-41', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-42', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-43', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show vlan "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt id="link-44" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-44', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-45" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-45', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_lldp"></a><div id="NEC.show_lldp-def"><a name="L129"></a><tt class="py-lineno">129</tt> <a class="py-toggle" href="#" id="NEC.show_lldp-toggle" onclick="return toggle('NEC.show_lldp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_lldp">show_lldp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_lldp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_lldp-expanded"><a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt id="link-46" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-46', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-47', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-48', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show lldp "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt id="link-49" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-49', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-50" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-50', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_dhcp"></a><div id="NEC.show_dhcp-def"><a name="L143"></a><tt class="py-lineno">143</tt> <a class="py-toggle" href="#" id="NEC.show_dhcp-toggle" onclick="return toggle('NEC.show_dhcp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_dhcp">show_dhcp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_dhcp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_dhcp-expanded"><a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt id="link-51" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-51', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-52', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-53', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show dhcp "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt id="link-54" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-54', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-55" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-55', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_axrp"></a><div id="NEC.show_axrp-def"><a name="L157"></a><tt class="py-lineno">157</tt> <a class="py-toggle" href="#" id="NEC.show_axrp-toggle" onclick="return toggle('NEC.show_axrp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_axrp">show_axrp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_axrp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_axrp-expanded"><a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt id="link-56" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-56', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-57', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-58', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show axrp "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt id="link-59" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-59', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-60" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-60', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_oadp"></a><div id="NEC.show_oadp-def"><a name="L171"></a><tt class="py-lineno">171</tt> <a class="py-toggle" href="#" id="NEC.show_oadp-toggle" onclick="return toggle('NEC.show_oadp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_oadp">show_oadp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_oadp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_oadp-expanded"><a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt id="link-61" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-61', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-62', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-63', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show oadp "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt id="link-64" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-64', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-65" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-65', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_gsrp"></a><div id="NEC.show_gsrp-def"><a name="L185"></a><tt class="py-lineno">185</tt> <a class="py-toggle" href="#" id="NEC.show_gsrp-toggle" onclick="return toggle('NEC.show_gsrp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_gsrp">show_gsrp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_gsrp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_gsrp-expanded"><a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt id="link-66" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-66', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-67', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-68', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show gsrp "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt id="link-69" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-69', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-70" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-70', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_port"></a><div id="NEC.show_port-def"><a name="L199"></a><tt class="py-lineno">199</tt> <a class="py-toggle" href="#" id="NEC.show_port-toggle" onclick="return toggle('NEC.show_port');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_port">show_port</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_port-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_port-expanded"><a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt id="link-71" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-71', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-72', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-73', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show port "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt id="link-74" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-74', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-75" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-75', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_file"></a><div id="NEC.show_file-def"><a name="L213"></a><tt class="py-lineno">213</tt> <a class="py-toggle" href="#" id="NEC.show_file-toggle" onclick="return toggle('NEC.show_file');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_file">show_file</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_file-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_file-expanded"><a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt id="link-76" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-76', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-77', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-78', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show file "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt id="link-79" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-79', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-80" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-80', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_power"></a><div id="NEC.show_power-def"><a name="L227"></a><tt class="py-lineno">227</tt> <a class="py-toggle" href="#" id="NEC.show_power-toggle" onclick="return toggle('NEC.show_power');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_power">show_power</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_power-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_power-expanded"><a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt id="link-81" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-81', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-82', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-83', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show power "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt id="link-84" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-84', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-85" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-85', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_clock"></a><div id="NEC.show_clock-def"><a name="L241"></a><tt class="py-lineno">241</tt> <a class="py-toggle" href="#" id="NEC.show_clock-toggle" onclick="return toggle('NEC.show_clock');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_clock">show_clock</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_clock-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_clock-expanded"><a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt id="link-86" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-86', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-87', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-88', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show clock "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt id="link-89" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-89', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-90" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-90', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_dot1x"></a><div id="NEC.show_dot1x-def"><a name="L255"></a><tt class="py-lineno">255</tt> <a class="py-toggle" href="#" id="NEC.show_dot1x-toggle" onclick="return toggle('NEC.show_dot1x');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_dot1x">show_dot1x</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_dot1x-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_dot1x-expanded"><a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt id="link-91" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-91', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-92', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-93', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show dot1x "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt id="link-94" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-94', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-95" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-95', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_sflow"></a><div id="NEC.show_sflow-def"><a name="L269"></a><tt class="py-lineno">269</tt> <a class="py-toggle" href="#" id="NEC.show_sflow-toggle" onclick="return toggle('NEC.show_sflow');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_sflow">show_sflow</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_sflow-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_sflow-expanded"><a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt id="link-96" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-96', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-97', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-98', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show sflow "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt id="link-99" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-99', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-100" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-100', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_track"></a><div id="NEC.show_track-def"><a name="L283"></a><tt class="py-lineno">283</tt> <a class="py-toggle" href="#" id="NEC.show_track-toggle" onclick="return toggle('NEC.show_track');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_track">show_track</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_track-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_track-expanded"><a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt id="link-101" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-101', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-102', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-103', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show track "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt id="link-104" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-104', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-105" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-105', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_flash"></a><div id="NEC.show_flash-def"><a name="L297"></a><tt class="py-lineno">297</tt> <a class="py-toggle" href="#" id="NEC.show_flash-toggle" onclick="return toggle('NEC.show_flash');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_flash">show_flash</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_flash-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_flash-expanded"><a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt id="link-106" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-106', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-107', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-108', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show flash "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt id="link-109" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-109', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-110" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-110', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_system"></a><div id="NEC.show_system-def"><a name="L311"></a><tt class="py-lineno">311</tt> <a class="py-toggle" href="#" id="NEC.show_system-toggle" onclick="return toggle('NEC.show_system');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_system">show_system</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_system-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_system-expanded"><a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt id="link-111" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-111', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-112', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-113', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show system "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt id="link-114" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-114', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-115" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-115', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_whoami"></a><div id="NEC.show_whoami-def"><a name="L325"></a><tt class="py-lineno">325</tt> <a class="py-toggle" href="#" id="NEC.show_whoami-toggle" onclick="return toggle('NEC.show_whoami');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_whoami">show_whoami</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_whoami-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_whoami-expanded"><a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> <tt id="link-116" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-116', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-117', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-118', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show whoami "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt id="link-119" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-119', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-120" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-120', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_efmoam"></a><div id="NEC.show_efmoam-def"><a name="L339"></a><tt class="py-lineno">339</tt> <a class="py-toggle" href="#" id="NEC.show_efmoam-toggle" onclick="return toggle('NEC.show_efmoam');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_efmoam">show_efmoam</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_efmoam-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_efmoam-expanded"><a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt id="link-121" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-121', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-122', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-123', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show efmoam "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"> <tt id="link-124" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-124', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-125" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-125', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_memory"></a><div id="NEC.show_memory-def"><a name="L353"></a><tt class="py-lineno">353</tt> <a class="py-toggle" href="#" id="NEC.show_memory-toggle" onclick="return toggle('NEC.show_memory');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_memory">show_memory</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_memory-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_memory-expanded"><a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> <tt id="link-126" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-126', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-127', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-128', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show memory "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"> <tt id="link-129" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-129', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-130" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-130', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_tcpdump"></a><div id="NEC.show_tcpdump-def"><a name="L367"></a><tt class="py-lineno">367</tt> <a class="py-toggle" href="#" id="NEC.show_tcpdump-toggle" onclick="return toggle('NEC.show_tcpdump');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_tcpdump">show_tcpdump</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_tcpdump-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_tcpdump-expanded"><a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"> <tt id="link-131" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-131', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-132', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-133', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show tcpdump "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt id="link-134" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-134', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-135" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-135', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_history"></a><div id="NEC.show_history-def"><a name="L381"></a><tt class="py-lineno">381</tt> <a class="py-toggle" href="#" id="NEC.show_history-toggle" onclick="return toggle('NEC.show_history');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_history">show_history</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_history-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_history-expanded"><a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"> <tt id="link-136" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-136', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-137', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-138', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show history "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> <tt id="link-139" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-139', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-140" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-140', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_logging"></a><div id="NEC.show_logging-def"><a name="L395"></a><tt class="py-lineno">395</tt> <a class="py-toggle" href="#" id="NEC.show_logging-toggle" onclick="return toggle('NEC.show_logging');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_logging">show_logging</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_logging-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_logging-expanded"><a name="L396"></a><tt class="py-lineno">396</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"> <tt id="link-141" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-141', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-142', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-143', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show logging "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"> <tt id="link-144" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-144', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-145" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-145', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_license"></a><div id="NEC.show_license-def"><a name="L409"></a><tt class="py-lineno">409</tt> <a class="py-toggle" href="#" id="NEC.show_license-toggle" onclick="return toggle('NEC.show_license');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_license">show_license</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_license-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_license-expanded"><a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L413"></a><tt class="py-lineno">413</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L414"></a><tt class="py-lineno">414</tt> <tt class="py-line"> <tt id="link-146" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-146', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-147', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-148" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-148', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show license "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"> <tt id="link-149" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-149', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-150" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-150', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_netstat"></a><div id="NEC.show_netstat-def"><a name="L423"></a><tt class="py-lineno">423</tt> <a class="py-toggle" href="#" id="NEC.show_netstat-toggle" onclick="return toggle('NEC.show_netstat');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_netstat">show_netstat</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_netstat-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_netstat-expanded"><a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"> <tt id="link-151" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-151', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-152', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-153', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L431"></a><tt class="py-lineno">431</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show netstat "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L433"></a><tt class="py-lineno">433</tt> <tt class="py-line"> <tt id="link-154" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-154', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-155" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-155', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L434"></a><tt class="py-lineno">434</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L436"></a><tt class="py-lineno">436</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_version"></a><div id="NEC.show_version-def"><a name="L437"></a><tt class="py-lineno">437</tt> <a class="py-toggle" href="#" id="NEC.show_version-toggle" onclick="return toggle('NEC.show_version');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_version">show_version</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_version-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_version-expanded"><a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L439"></a><tt class="py-lineno">439</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L440"></a><tt class="py-lineno">440</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"> <tt id="link-156" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-156', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-157', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L443"></a><tt class="py-lineno">443</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-158" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-158', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L445"></a><tt class="py-lineno">445</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show version "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L446"></a><tt class="py-lineno">446</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L447"></a><tt class="py-lineno">447</tt> <tt class="py-line"> <tt id="link-159" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-159', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-160" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-160', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L448"></a><tt class="py-lineno">448</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L449"></a><tt class="py-lineno">449</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L450"></a><tt class="py-lineno">450</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_netconf"></a><div id="NEC.show_netconf-def"><a name="L451"></a><tt class="py-lineno">451</tt> <a class="py-toggle" href="#" id="NEC.show_netconf-toggle" onclick="return toggle('NEC.show_netconf');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_netconf">show_netconf</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_netconf-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_netconf-expanded"><a name="L452"></a><tt class="py-lineno">452</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L453"></a><tt class="py-lineno">453</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L454"></a><tt class="py-lineno">454</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L455"></a><tt class="py-lineno">455</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L456"></a><tt class="py-lineno">456</tt> <tt class="py-line"> <tt id="link-161" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-161', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-162', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L457"></a><tt class="py-lineno">457</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L458"></a><tt class="py-lineno">458</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-163" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-163', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L459"></a><tt class="py-lineno">459</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show netconf "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L460"></a><tt class="py-lineno">460</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L461"></a><tt class="py-lineno">461</tt> <tt class="py-line"> <tt id="link-164" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-164', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-165" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-165', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L462"></a><tt class="py-lineno">462</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L463"></a><tt class="py-lineno">463</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L464"></a><tt class="py-lineno">464</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_ipdual"></a><div id="NEC.show_ipdual-def"><a name="L465"></a><tt class="py-lineno">465</tt> <a class="py-toggle" href="#" id="NEC.show_ipdual-toggle" onclick="return toggle('NEC.show_ipdual');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_ipdual">show_ipdual</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_ipdual-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_ipdual-expanded"><a name="L466"></a><tt class="py-lineno">466</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L467"></a><tt class="py-lineno">467</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L468"></a><tt class="py-lineno">468</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L469"></a><tt class="py-lineno">469</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L470"></a><tt class="py-lineno">470</tt> <tt class="py-line"> <tt id="link-166" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-166', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-167', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L471"></a><tt class="py-lineno">471</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L472"></a><tt class="py-lineno">472</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-168', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L473"></a><tt class="py-lineno">473</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show ip-dual "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L474"></a><tt class="py-lineno">474</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L475"></a><tt class="py-lineno">475</tt> <tt class="py-line"> <tt id="link-169" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-169', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-170" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-170', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L476"></a><tt class="py-lineno">476</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L477"></a><tt class="py-lineno">477</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L478"></a><tt class="py-lineno">478</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_sessions"></a><div id="NEC.show_sessions-def"><a name="L479"></a><tt class="py-lineno">479</tt> <a class="py-toggle" href="#" id="NEC.show_sessions-toggle" onclick="return toggle('NEC.show_sessions');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_sessions">show_sessions</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_sessions-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_sessions-expanded"><a name="L480"></a><tt class="py-lineno">480</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L481"></a><tt class="py-lineno">481</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L482"></a><tt class="py-lineno">482</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L483"></a><tt class="py-lineno">483</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L484"></a><tt class="py-lineno">484</tt> <tt class="py-line"> <tt id="link-171" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-171', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-172" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-172', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L485"></a><tt class="py-lineno">485</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L486"></a><tt class="py-lineno">486</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-173', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L487"></a><tt class="py-lineno">487</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show sessions "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L488"></a><tt class="py-lineno">488</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L489"></a><tt class="py-lineno">489</tt> <tt class="py-line"> <tt id="link-174" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-174', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-175" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-175', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L490"></a><tt class="py-lineno">490</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L491"></a><tt class="py-lineno">491</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L492"></a><tt class="py-lineno">492</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_qosflow"></a><div id="NEC.show_qosflow-def"><a name="L493"></a><tt class="py-lineno">493</tt> <a class="py-toggle" href="#" id="NEC.show_qosflow-toggle" onclick="return toggle('NEC.show_qosflow');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_qosflow">show_qosflow</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_qosflow-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_qosflow-expanded"><a name="L494"></a><tt class="py-lineno">494</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L495"></a><tt class="py-lineno">495</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L496"></a><tt class="py-lineno">496</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L497"></a><tt class="py-lineno">497</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L498"></a><tt class="py-lineno">498</tt> <tt class="py-line"> <tt id="link-176" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-176', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-177" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-177', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L499"></a><tt class="py-lineno">499</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L500"></a><tt class="py-lineno">500</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-178" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-178', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L501"></a><tt class="py-lineno">501</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show qos-flow "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L502"></a><tt class="py-lineno">502</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L503"></a><tt class="py-lineno">503</tt> <tt class="py-line"> <tt id="link-179" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-179', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-180" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-180', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L504"></a><tt class="py-lineno">504</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L505"></a><tt class="py-lineno">505</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L506"></a><tt class="py-lineno">506</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_openflow"></a><div id="NEC.show_openflow-def"><a name="L507"></a><tt class="py-lineno">507</tt> <a class="py-toggle" href="#" id="NEC.show_openflow-toggle" onclick="return toggle('NEC.show_openflow');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_openflow">show_openflow</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_openflow-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_openflow-expanded"><a name="L508"></a><tt class="py-lineno">508</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L509"></a><tt class="py-lineno">509</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L510"></a><tt class="py-lineno">510</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L511"></a><tt class="py-lineno">511</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L512"></a><tt class="py-lineno">512</tt> <tt class="py-line"> <tt id="link-181" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-181', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-182" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-182', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L513"></a><tt class="py-lineno">513</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L514"></a><tt class="py-lineno">514</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-183" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-183', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L515"></a><tt class="py-lineno">515</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show openflow "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L516"></a><tt class="py-lineno">516</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L517"></a><tt class="py-lineno">517</tt> <tt class="py-line"> <tt id="link-184" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-184', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-185" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-185', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L518"></a><tt class="py-lineno">518</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L519"></a><tt class="py-lineno">519</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L520"></a><tt class="py-lineno">520</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_dumpfile"></a><div id="NEC.show_dumpfile-def"><a name="L521"></a><tt class="py-lineno">521</tt> <a class="py-toggle" href="#" id="NEC.show_dumpfile-toggle" onclick="return toggle('NEC.show_dumpfile');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_dumpfile">show_dumpfile</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_dumpfile-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_dumpfile-expanded"><a name="L522"></a><tt class="py-lineno">522</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L523"></a><tt class="py-lineno">523</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L524"></a><tt class="py-lineno">524</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L525"></a><tt class="py-lineno">525</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L526"></a><tt class="py-lineno">526</tt> <tt class="py-line"> <tt id="link-186" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-186', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-187" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-187', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L527"></a><tt class="py-lineno">527</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L528"></a><tt class="py-lineno">528</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-188" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-188', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L529"></a><tt class="py-lineno">529</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show dumpfile "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L530"></a><tt class="py-lineno">530</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L531"></a><tt class="py-lineno">531</tt> <tt class="py-line"> <tt id="link-189" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-189', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-190" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-190', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L532"></a><tt class="py-lineno">532</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L533"></a><tt class="py-lineno">533</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L534"></a><tt class="py-lineno">534</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_ipv6dhcp"></a><div id="NEC.show_ipv6dhcp-def"><a name="L535"></a><tt class="py-lineno">535</tt> <a class="py-toggle" href="#" id="NEC.show_ipv6dhcp-toggle" onclick="return toggle('NEC.show_ipv6dhcp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_ipv6dhcp">show_ipv6dhcp</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_ipv6dhcp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_ipv6dhcp-expanded"><a name="L536"></a><tt class="py-lineno">536</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L537"></a><tt class="py-lineno">537</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L538"></a><tt class="py-lineno">538</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L539"></a><tt class="py-lineno">539</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L540"></a><tt class="py-lineno">540</tt> <tt class="py-line"> <tt id="link-191" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-191', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-192" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-192', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L541"></a><tt class="py-lineno">541</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L542"></a><tt class="py-lineno">542</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-193" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-193', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L543"></a><tt class="py-lineno">543</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show ipv6-dhcp "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L544"></a><tt class="py-lineno">544</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L545"></a><tt class="py-lineno">545</tt> <tt class="py-line"> <tt id="link-194" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-194', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-195" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-195', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L546"></a><tt class="py-lineno">546</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L547"></a><tt class="py-lineno">547</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L548"></a><tt class="py-lineno">548</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_processes"></a><div id="NEC.show_processes-def"><a name="L549"></a><tt class="py-lineno">549</tt> <a class="py-toggle" href="#" id="NEC.show_processes-toggle" onclick="return toggle('NEC.show_processes');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_processes">show_processes</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_processes-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_processes-expanded"><a name="L550"></a><tt class="py-lineno">550</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L551"></a><tt class="py-lineno">551</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L552"></a><tt class="py-lineno">552</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L553"></a><tt class="py-lineno">553</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L554"></a><tt class="py-lineno">554</tt> <tt class="py-line"> <tt id="link-196" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-196', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-197" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-197', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L555"></a><tt class="py-lineno">555</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L556"></a><tt class="py-lineno">556</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-198" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-198', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L557"></a><tt class="py-lineno">557</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show processes "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L558"></a><tt class="py-lineno">558</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L559"></a><tt class="py-lineno">559</tt> <tt class="py-line"> <tt id="link-199" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-199', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-200" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-200', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L560"></a><tt class="py-lineno">560</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L561"></a><tt class="py-lineno">561</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L562"></a><tt class="py-lineno">562</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_vrrpstatus"></a><div id="NEC.show_vrrpstatus-def"><a name="L563"></a><tt class="py-lineno">563</tt> <a class="py-toggle" href="#" id="NEC.show_vrrpstatus-toggle" onclick="return toggle('NEC.show_vrrpstatus');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_vrrpstatus">show_vrrpstatus</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_vrrpstatus-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_vrrpstatus-expanded"><a name="L564"></a><tt class="py-lineno">564</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L565"></a><tt class="py-lineno">565</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L566"></a><tt class="py-lineno">566</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L567"></a><tt class="py-lineno">567</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L568"></a><tt class="py-lineno">568</tt> <tt class="py-line"> <tt id="link-201" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-201', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-202" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-202', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L569"></a><tt class="py-lineno">569</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L570"></a><tt class="py-lineno">570</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-203" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-203', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L571"></a><tt class="py-lineno">571</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show vrrpstatus "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L572"></a><tt class="py-lineno">572</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L573"></a><tt class="py-lineno">573</tt> <tt class="py-line"> <tt id="link-204" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-204', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-205" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-205', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L574"></a><tt class="py-lineno">574</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L575"></a><tt class="py-lineno">575</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L576"></a><tt class="py-lineno">576</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_interfaces"></a><div id="NEC.show_interfaces-def"><a name="L577"></a><tt class="py-lineno">577</tt> <a class="py-toggle" href="#" id="NEC.show_interfaces-toggle" onclick="return toggle('NEC.show_interfaces');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_interfaces">show_interfaces</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_interfaces-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_interfaces-expanded"><a name="L578"></a><tt class="py-lineno">578</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L579"></a><tt class="py-lineno">579</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L580"></a><tt class="py-lineno">580</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L581"></a><tt class="py-lineno">581</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L582"></a><tt class="py-lineno">582</tt> <tt class="py-line"> <tt id="link-206" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-206', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-207" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-207', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L583"></a><tt class="py-lineno">583</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L584"></a><tt class="py-lineno">584</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-208" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-208', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L585"></a><tt class="py-lineno">585</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show interfaces "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L586"></a><tt class="py-lineno">586</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L587"></a><tt class="py-lineno">587</tt> <tt class="py-line"> <tt id="link-209" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-209', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-210" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-210', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L588"></a><tt class="py-lineno">588</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L589"></a><tt class="py-lineno">589</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L590"></a><tt class="py-lineno">590</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_environment"></a><div id="NEC.show_environment-def"><a name="L591"></a><tt class="py-lineno">591</tt> <a class="py-toggle" href="#" id="NEC.show_environment-toggle" onclick="return toggle('NEC.show_environment');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_environment">show_environment</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_environment-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_environment-expanded"><a name="L592"></a><tt class="py-lineno">592</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L593"></a><tt class="py-lineno">593</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L594"></a><tt class="py-lineno">594</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L595"></a><tt class="py-lineno">595</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L596"></a><tt class="py-lineno">596</tt> <tt class="py-line"> <tt id="link-211" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-211', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-212" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-212', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L597"></a><tt class="py-lineno">597</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L598"></a><tt class="py-lineno">598</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-213" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-213', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L599"></a><tt class="py-lineno">599</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show environment "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L600"></a><tt class="py-lineno">600</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L601"></a><tt class="py-lineno">601</tt> <tt class="py-line"> <tt id="link-214" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-214', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-215" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-215', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L602"></a><tt class="py-lineno">602</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L603"></a><tt class="py-lineno">603</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L604"></a><tt class="py-lineno">604</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_autoconfig"></a><div id="NEC.show_autoconfig-def"><a name="L605"></a><tt class="py-lineno">605</tt> <a class="py-toggle" href="#" id="NEC.show_autoconfig-toggle" onclick="return toggle('NEC.show_autoconfig');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_autoconfig">show_autoconfig</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_autoconfig-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_autoconfig-expanded"><a name="L606"></a><tt class="py-lineno">606</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L607"></a><tt class="py-lineno">607</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L608"></a><tt class="py-lineno">608</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L609"></a><tt class="py-lineno">609</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L610"></a><tt class="py-lineno">610</tt> <tt class="py-line"> <tt id="link-216" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-216', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-217" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-217', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L611"></a><tt class="py-lineno">611</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L612"></a><tt class="py-lineno">612</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-218" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-218', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L613"></a><tt class="py-lineno">613</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show auto-config "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L614"></a><tt class="py-lineno">614</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L615"></a><tt class="py-lineno">615</tt> <tt class="py-line"> <tt id="link-219" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-219', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-220" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-220', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L616"></a><tt class="py-lineno">616</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L617"></a><tt class="py-lineno">617</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L618"></a><tt class="py-lineno">618</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_techsupport"></a><div id="NEC.show_techsupport-def"><a name="L619"></a><tt class="py-lineno">619</tt> <a class="py-toggle" href="#" id="NEC.show_techsupport-toggle" onclick="return toggle('NEC.show_techsupport');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_techsupport">show_techsupport</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_techsupport-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_techsupport-expanded"><a name="L620"></a><tt class="py-lineno">620</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L621"></a><tt class="py-lineno">621</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L622"></a><tt class="py-lineno">622</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L623"></a><tt class="py-lineno">623</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L624"></a><tt class="py-lineno">624</tt> <tt class="py-line"> <tt id="link-221" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-221', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-222" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-222', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L625"></a><tt class="py-lineno">625</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L626"></a><tt class="py-lineno">626</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-223" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-223', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L627"></a><tt class="py-lineno">627</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show tech-support "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L628"></a><tt class="py-lineno">628</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L629"></a><tt class="py-lineno">629</tt> <tt class="py-line"> <tt id="link-224" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-224', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-225" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-225', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L630"></a><tt class="py-lineno">630</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L631"></a><tt class="py-lineno">631</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L632"></a><tt class="py-lineno">632</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_mldsnooping"></a><div id="NEC.show_mldsnooping-def"><a name="L633"></a><tt class="py-lineno">633</tt> <a class="py-toggle" href="#" id="NEC.show_mldsnooping-toggle" onclick="return toggle('NEC.show_mldsnooping');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_mldsnooping">show_mldsnooping</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_mldsnooping-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_mldsnooping-expanded"><a name="L634"></a><tt class="py-lineno">634</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L635"></a><tt class="py-lineno">635</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L636"></a><tt class="py-lineno">636</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L637"></a><tt class="py-lineno">637</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L638"></a><tt class="py-lineno">638</tt> <tt class="py-line"> <tt id="link-226" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-226', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-227" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-227', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L639"></a><tt class="py-lineno">639</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L640"></a><tt class="py-lineno">640</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-228" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-228', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L641"></a><tt class="py-lineno">641</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show mld-snooping "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L642"></a><tt class="py-lineno">642</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L643"></a><tt class="py-lineno">643</tt> <tt class="py-line"> <tt id="link-229" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-229', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-230" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-230', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L644"></a><tt class="py-lineno">644</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L645"></a><tt class="py-lineno">645</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L646"></a><tt class="py-lineno">646</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_igmpsnooping"></a><div id="NEC.show_igmpsnooping-def"><a name="L647"></a><tt class="py-lineno">647</tt> <a class="py-toggle" href="#" id="NEC.show_igmpsnooping-toggle" onclick="return toggle('NEC.show_igmpsnooping');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_igmpsnooping">show_igmpsnooping</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_igmpsnooping-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_igmpsnooping-expanded"><a name="L648"></a><tt class="py-lineno">648</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L649"></a><tt class="py-lineno">649</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L650"></a><tt class="py-lineno">650</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L651"></a><tt class="py-lineno">651</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L652"></a><tt class="py-lineno">652</tt> <tt class="py-line"> <tt id="link-231" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-231', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-232" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-232', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L653"></a><tt class="py-lineno">653</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L654"></a><tt class="py-lineno">654</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-233" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-233', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L655"></a><tt class="py-lineno">655</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show igmp-snooping "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L656"></a><tt class="py-lineno">656</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L657"></a><tt class="py-lineno">657</tt> <tt class="py-line"> <tt id="link-234" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-234', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-235" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-235', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L658"></a><tt class="py-lineno">658</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L659"></a><tt class="py-lineno">659</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L660"></a><tt class="py-lineno">660</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_channelgroup"></a><div id="NEC.show_channelgroup-def"><a name="L661"></a><tt class="py-lineno">661</tt> <a class="py-toggle" href="#" id="NEC.show_channelgroup-toggle" onclick="return toggle('NEC.show_channelgroup');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_channelgroup">show_channelgroup</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_channelgroup-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_channelgroup-expanded"><a name="L662"></a><tt class="py-lineno">662</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L663"></a><tt class="py-lineno">663</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L664"></a><tt class="py-lineno">664</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L665"></a><tt class="py-lineno">665</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L666"></a><tt class="py-lineno">666</tt> <tt class="py-line"> <tt id="link-236" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-236', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-237" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-237', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L667"></a><tt class="py-lineno">667</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L668"></a><tt class="py-lineno">668</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-238" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-238', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L669"></a><tt class="py-lineno">669</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show channel-group "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L670"></a><tt class="py-lineno">670</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L671"></a><tt class="py-lineno">671</tt> <tt class="py-line"> <tt id="link-239" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-239', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-240" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-240', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L672"></a><tt class="py-lineno">672</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L673"></a><tt class="py-lineno">673</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L674"></a><tt class="py-lineno">674</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_spanningtree"></a><div id="NEC.show_spanningtree-def"><a name="L675"></a><tt class="py-lineno">675</tt> <a class="py-toggle" href="#" id="NEC.show_spanningtree-toggle" onclick="return toggle('NEC.show_spanningtree');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_spanningtree">show_spanningtree</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_spanningtree-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_spanningtree-expanded"><a name="L676"></a><tt class="py-lineno">676</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L677"></a><tt class="py-lineno">677</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L678"></a><tt class="py-lineno">678</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L679"></a><tt class="py-lineno">679</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L680"></a><tt class="py-lineno">680</tt> <tt class="py-line"> <tt id="link-241" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-241', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-242" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-242', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L681"></a><tt class="py-lineno">681</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L682"></a><tt class="py-lineno">682</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-243" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-243', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L683"></a><tt class="py-lineno">683</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show spanning-tree "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L684"></a><tt class="py-lineno">684</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L685"></a><tt class="py-lineno">685</tt> <tt class="py-line"> <tt id="link-244" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-244', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-245" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-245', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L686"></a><tt class="py-lineno">686</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L687"></a><tt class="py-lineno">687</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L688"></a><tt class="py-lineno">688</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_loopdetection"></a><div id="NEC.show_loopdetection-def"><a name="L689"></a><tt class="py-lineno">689</tt> <a class="py-toggle" href="#" id="NEC.show_loopdetection-toggle" onclick="return toggle('NEC.show_loopdetection');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_loopdetection">show_loopdetection</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_loopdetection-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_loopdetection-expanded"><a name="L690"></a><tt class="py-lineno">690</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L691"></a><tt class="py-lineno">691</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L692"></a><tt class="py-lineno">692</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L693"></a><tt class="py-lineno">693</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L694"></a><tt class="py-lineno">694</tt> <tt class="py-line"> <tt id="link-246" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-246', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-247" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-247', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L695"></a><tt class="py-lineno">695</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L696"></a><tt class="py-lineno">696</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-248" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-248', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L697"></a><tt class="py-lineno">697</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show loop-detection "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L698"></a><tt class="py-lineno">698</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L699"></a><tt class="py-lineno">699</tt> <tt class="py-line"> <tt id="link-249" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-249', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-250" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-250', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L700"></a><tt class="py-lineno">700</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L701"></a><tt class="py-lineno">701</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L702"></a><tt class="py-lineno">702</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_acknowledgments"></a><div id="NEC.show_acknowledgments-def"><a name="L703"></a><tt class="py-lineno">703</tt> <a class="py-toggle" href="#" id="NEC.show_acknowledgments-toggle" onclick="return toggle('NEC.show_acknowledgments');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_acknowledgments">show_acknowledgments</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_acknowledgments-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_acknowledgments-expanded"><a name="L704"></a><tt class="py-lineno">704</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[' interface ']"</tt> </tt>
-<a name="L705"></a><tt class="py-lineno">705</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L706"></a><tt class="py-lineno">706</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L707"></a><tt class="py-lineno">707</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L708"></a><tt class="py-lineno">708</tt> <tt class="py-line"> <tt id="link-251" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-251', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-252" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-252', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L709"></a><tt class="py-lineno">709</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L710"></a><tt class="py-lineno">710</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-253" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-253', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L711"></a><tt class="py-lineno">711</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show acknowledgments "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L712"></a><tt class="py-lineno">712</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L713"></a><tt class="py-lineno">713</tt> <tt class="py-line"> <tt id="link-254" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-254', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-255" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-255', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L714"></a><tt class="py-lineno">714</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L715"></a><tt class="py-lineno">715</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L716"></a><tt class="py-lineno">716</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_macaddresstable"></a><div id="NEC.show_macaddresstable-def"><a name="L717"></a><tt class="py-lineno">717</tt> <a class="py-toggle" href="#" id="NEC.show_macaddresstable-toggle" onclick="return toggle('NEC.show_macaddresstable');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_macaddresstable">show_macaddresstable</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_macaddresstable-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_macaddresstable-expanded"><a name="L718"></a><tt class="py-lineno">718</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L719"></a><tt class="py-lineno">719</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L720"></a><tt class="py-lineno">720</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L721"></a><tt class="py-lineno">721</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L722"></a><tt class="py-lineno">722</tt> <tt class="py-line"> <tt id="link-256" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-256', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-257" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-257', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L723"></a><tt class="py-lineno">723</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L724"></a><tt class="py-lineno">724</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-258" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-258', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L725"></a><tt class="py-lineno">725</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show mac-address-table "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L726"></a><tt class="py-lineno">726</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L727"></a><tt class="py-lineno">727</tt> <tt class="py-line"> <tt id="link-259" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-259', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-260" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-260', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L728"></a><tt class="py-lineno">728</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L729"></a><tt class="py-lineno">729</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L730"></a><tt class="py-lineno">730</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_configlockstatus"></a><div id="NEC.show_configlockstatus-def"><a name="L731"></a><tt class="py-lineno">731</tt> <a class="py-toggle" href="#" id="NEC.show_configlockstatus-toggle" onclick="return toggle('NEC.show_configlockstatus');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_configlockstatus">show_configlockstatus</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_configlockstatus-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_configlockstatus-expanded"><a name="L732"></a><tt class="py-lineno">732</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L733"></a><tt class="py-lineno">733</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L734"></a><tt class="py-lineno">734</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L735"></a><tt class="py-lineno">735</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L736"></a><tt class="py-lineno">736</tt> <tt class="py-line"> <tt id="link-261" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-261', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-262" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-262', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L737"></a><tt class="py-lineno">737</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L738"></a><tt class="py-lineno">738</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-263" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-263', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L739"></a><tt class="py-lineno">739</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show config-lock-status "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L740"></a><tt class="py-lineno">740</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L741"></a><tt class="py-lineno">741</tt> <tt class="py-line"> <tt id="link-264" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-264', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-265" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-265', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L742"></a><tt class="py-lineno">742</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L743"></a><tt class="py-lineno">743</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L744"></a><tt class="py-lineno">744</tt> <tt class="py-line"> </tt>
-<a name="NEC.show_acknowledgments_interface"></a><div id="NEC.show_acknowledgments_interface-def"><a name="L745"></a><tt class="py-lineno">745</tt> <a class="py-toggle" href="#" id="NEC.show_acknowledgments_interface-toggle" onclick="return toggle('NEC.show_acknowledgments_interface');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_acknowledgments_interface">show_acknowledgments_interface</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">options</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">def_args</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NEC.show_acknowledgments_interface-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="NEC.show_acknowledgments_interface-expanded"><a name="L746"></a><tt class="py-lineno">746</tt> <tt class="py-line"> <tt class="py-docstring">"Possible Options :[]"</tt> </tt>
-<a name="L747"></a><tt class="py-lineno">747</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L748"></a><tt class="py-lineno">748</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">option</tt> <tt class="py-keyword">in</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
-<a name="L749"></a><tt class="py-lineno">749</tt> <tt class="py-line"> <tt class="py-name">arguments</tt> <tt class="py-op">=</tt> <tt class="py-name">arguments</tt> <tt class="py-op">+</tt> <tt class="py-name">option</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L750"></a><tt class="py-lineno">750</tt> <tt class="py-line"> <tt id="link-266" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-266', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'prompt'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-267" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-267', 'prompt', 'link-0');">prompt</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L751"></a><tt class="py-lineno">751</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">def_args</tt><tt class="py-op">.</tt><tt class="py-name">setdefault</tt><tt class="py-op">(</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L752"></a><tt class="py-lineno">752</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-268" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-268', 'execute', 'link-3');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L753"></a><tt class="py-lineno">753</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"show acknowledgments interface "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L754"></a><tt class="py-lineno">754</tt> <tt class="py-line"> <tt class="py-name">arguments</tt><tt class="py-op">,</tt> </tt>
-<a name="L755"></a><tt class="py-lineno">755</tt> <tt class="py-line"> <tt id="link-269" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-269', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">=</tt><tt id="link-270" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-270', 'prompt', 'link-0');">prompt</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L756"></a><tt class="py-lineno">756</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L757"></a><tt class="py-lineno">757</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div></div><a name="L758"></a><tt class="py-lineno">758</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html
deleted file mode 100644
index d2294e9..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html
+++ /dev/null
@@ -1,1191 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.remotetestbed-module.html">Package remotetestbed</a> ::
- <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html">Module necswitchdriver</a> ::
- Class NEC
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class NEC</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show"></a><span class="summary-sig-name">show</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[' access-filter ', ' accounting ', '
- acknowledgments ', ' auto-config ', ' axrp ', ' cfm ', '
- channel-group ', ' clock ', ' config-lock-status ', ' cpu ', '
- dhcp ', ' dot1x ', ' dumpfile ', ' efmoam ', ' environment
- ', ' file ', ' flash ', ' gsrp ', ' history ', '
- igmp-snooping ', ' interfaces ', ' ip ', ' ip-dual ', '
- ipv6-dhcp ', ' license ', ' lldp ', ' logging ', '
- loop-detection ', ' mac-address-table ', ' mc ', ' memory ', '
- mld-snooping ', ' netconf ', ' netstat ', ' ntp ', ' oadp ',
- ' openflow ', ' port ', ' power ', ' processes ', ' qos ',
- ' qos-flow ', ' sessions ', ' sflow ', ' spanning-tree ', '
- ssh ', ' system ', ' tcpdump ', ' tech-support ', ' track ',
- ' version ', ' vlan ', ' vrrpstatus ', ' whoami ']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_ip"></a><span class="summary-sig-name">show_ip</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_ip">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_mc"></a><span class="summary-sig-name">show_mc</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_mc">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_cfm"></a><span class="summary-sig-name">show_cfm</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_cfm">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_ntp"></a><span class="summary-sig-name">show_ntp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_ntp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_ssh"></a><span class="summary-sig-name">show_ssh</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_ssh">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_qos"></a><span class="summary-sig-name">show_qos</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_qos">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_cpu"></a><span class="summary-sig-name">show_cpu</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_cpu">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_vlan"></a><span class="summary-sig-name">show_vlan</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_vlan">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_lldp"></a><span class="summary-sig-name">show_lldp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_lldp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_dhcp"></a><span class="summary-sig-name">show_dhcp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_dhcp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_axrp"></a><span class="summary-sig-name">show_axrp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_axrp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_oadp"></a><span class="summary-sig-name">show_oadp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_oadp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_gsrp"></a><span class="summary-sig-name">show_gsrp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_gsrp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_port"></a><span class="summary-sig-name">show_port</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_port">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_file"></a><span class="summary-sig-name">show_file</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_file">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_power"></a><span class="summary-sig-name">show_power</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_power">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_clock"></a><span class="summary-sig-name">show_clock</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_clock">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_dot1x"></a><span class="summary-sig-name">show_dot1x</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_dot1x">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_sflow"></a><span class="summary-sig-name">show_sflow</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_sflow">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_track"></a><span class="summary-sig-name">show_track</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_track">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_flash"></a><span class="summary-sig-name">show_flash</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_flash">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_system"></a><span class="summary-sig-name">show_system</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_system">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_whoami"></a><span class="summary-sig-name">show_whoami</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_whoami">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_efmoam"></a><span class="summary-sig-name">show_efmoam</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_efmoam">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_memory"></a><span class="summary-sig-name">show_memory</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_memory">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_tcpdump"></a><span class="summary-sig-name">show_tcpdump</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_tcpdump">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_history"></a><span class="summary-sig-name">show_history</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_history">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_logging"></a><span class="summary-sig-name">show_logging</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_logging">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_license"></a><span class="summary-sig-name">show_license</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_license">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_netstat"></a><span class="summary-sig-name">show_netstat</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_netstat">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_version"></a><span class="summary-sig-name">show_version</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_version">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_netconf"></a><span class="summary-sig-name">show_netconf</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_netconf">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_ipdual"></a><span class="summary-sig-name">show_ipdual</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_ipdual">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_sessions"></a><span class="summary-sig-name">show_sessions</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_sessions">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_qosflow"></a><span class="summary-sig-name">show_qosflow</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_qosflow">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_openflow"></a><span class="summary-sig-name">show_openflow</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_openflow">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_dumpfile"></a><span class="summary-sig-name">show_dumpfile</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_dumpfile">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_ipv6dhcp"></a><span class="summary-sig-name">show_ipv6dhcp</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_ipv6dhcp">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_processes"></a><span class="summary-sig-name">show_processes</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_processes">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_vrrpstatus"></a><span class="summary-sig-name">show_vrrpstatus</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_vrrpstatus">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_interfaces"></a><span class="summary-sig-name">show_interfaces</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_interfaces">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_environment"></a><span class="summary-sig-name">show_environment</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_environment">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_autoconfig"></a><span class="summary-sig-name">show_autoconfig</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_autoconfig">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_techsupport"></a><span class="summary-sig-name">show_techsupport</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_techsupport">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_mldsnooping"></a><span class="summary-sig-name">show_mldsnooping</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_mldsnooping">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_igmpsnooping"></a><span class="summary-sig-name">show_igmpsnooping</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_igmpsnooping">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_channelgroup"></a><span class="summary-sig-name">show_channelgroup</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_channelgroup">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_spanningtree"></a><span class="summary-sig-name">show_spanningtree</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_spanningtree">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_loopdetection"></a><span class="summary-sig-name">show_loopdetection</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_loopdetection">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_acknowledgments"></a><span class="summary-sig-name">show_acknowledgments</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[' interface ']</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_acknowledgments">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_macaddresstable"></a><span class="summary-sig-name">show_macaddresstable</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_macaddresstable">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_configlockstatus"></a><span class="summary-sig-name">show_configlockstatus</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_configlockstatus">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show_acknowledgments_interface"></a><span class="summary-sig-name">show_acknowledgments_interface</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*options</span>,
- <span class="summary-sig-arg">**def_args</span>)</span><br />
- Possible Options :[]</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-pysrc.html#NEC.show_acknowledgments_interface">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html
deleted file mode 100644
index a430a53..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html
+++ /dev/null
@@ -1,170 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbed.remotepoxdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.remotetestbed-module.html">Package remotetestbed</a> ::
- Module remotepoxdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module remotepoxdriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 12-Feb-2013
-
-author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )
-
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- ( at your option ) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-
-RemoteVMDriver is the basic driver which will handle the Mininet functions
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html" class="summary-name">RemotePoxDriver</a><br />
- RemoteVMDriver is the basic driver which will handle the Mininet
- functions
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotepoxdriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotepoxdriver-pysrc.html
deleted file mode 100644
index dba1be1..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotepoxdriver-pysrc.html
+++ /dev/null
@@ -1,279 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbed.remotepoxdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.remotetestbed-module.html">Package remotetestbed</a> ::
- Module remotepoxdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html">Module TestON.drivers.common.cli.remotetestbed.remotepoxdriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 12-Feb-2013</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-docstring"> ( at your option ) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"><tt class="py-docstring">RemoteVMDriver is the basic driver which will handle the Mininet functions</tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.bin.cli=TestON.bin.cli-module.html,Package TestON.drivers.common.cli=TestON.drivers.common.cli-module.html"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-2', 'cli', 'link-2');">cli</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module TestON.drivers.common.cli.remotetestbeddriver=TestON.drivers.common.cli.remotetestbeddriver-module.html"><a title="TestON.drivers.common.cli.remotetestbeddriver" class="py-name" href="#" onclick="return doclink('link-3', 'remotetestbeddriver', 'link-3');">remotetestbeddriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html"><a title="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver" class="py-name" href="#" onclick="return doclink('link-4', 'RemoteTestBedDriver', 'link-4');">RemoteTestBedDriver</a></tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> </tt>
-<a name="RemotePoxDriver"></a><div id="RemotePoxDriver-def"><a name="L27"></a><tt class="py-lineno">27</tt> <a class="py-toggle" href="#" id="RemotePoxDriver-toggle" onclick="return toggle('RemotePoxDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html">RemotePoxDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">RemoteTestBedDriver</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemotePoxDriver-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="RemotePoxDriver-expanded"><a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"><tt class="py-docstring"> RemoteVMDriver is the basic driver which will handle the Mininet functions</tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="RemotePoxDriver.__init__"></a><div id="RemotePoxDriver.__init__-def"><a name="L32"></a><tt class="py-lineno">32</tt> <a class="py-toggle" href="#" id="RemotePoxDriver.__init__-toggle" onclick="return toggle('RemotePoxDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemotePoxDriver.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="RemotePoxDriver.__init__-expanded"><a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver" class="py-name" href="#" onclick="return doclink('link-5', 'RemoteTestBedDriver', 'link-4');">RemoteTestBedDriver</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-6', '__init__', 'link-6');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> </tt>
-<a name="RemotePoxDriver.connect"></a><div id="RemotePoxDriver.connect-def"><a name="L35"></a><tt class="py-lineno">35</tt> <a class="py-toggle" href="#" id="RemotePoxDriver.connect-toggle" onclick="return toggle('RemotePoxDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemotePoxDriver.connect-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="RemotePoxDriver.connect-expanded"><a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt id="link-7" class="py-name" targets="Class TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html"><a title="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver" class="py-name" href="#" onclick="return doclink('link-7', 'RemotePoxDriver', 'link-7');">RemotePoxDriver</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-8', 'connect', 'link-8');">connect</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt><tt class="py-op">,</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" connected successfully "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.execute()=TestON.bin.generatedriver.GenerateDriver-class.html#execute,Method TestON.drivers.common.clidriver.CLI.execute()=TestON.drivers.common.clidriver.CLI-class.html#execute"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-10', 'execute', 'link-10');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"cd "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'pox_lib_location'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt id="link-11" class="py-name" targets="Variable TestON.bin.cli.CLI.prompt=TestON.bin.cli.CLI-class.html#prompt"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-11', 'prompt', 'link-11');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"/pox\$"</tt><tt class="py-op">,</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-12', 'execute', 'link-10');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">'./pox.py samples.of_tutorial'</tt><tt class="py-op">,</tt> </tt>
-<a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"> <tt id="link-13" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-13', 'prompt', 'link-11');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"DEBUG:"</tt><tt class="py-op">,</tt> </tt>
-<a name="L59"></a><tt class="py-lineno">59</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L60"></a><tt class="py-lineno">60</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-<a name="L61"></a><tt class="py-lineno">61</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L62"></a><tt class="py-lineno">62</tt> <tt class="py-line"> </tt>
-<a name="RemotePoxDriver.disconnect"></a><div id="RemotePoxDriver.disconnect-def"><a name="L63"></a><tt class="py-lineno">63</tt> <a class="py-toggle" href="#" id="RemotePoxDriver.disconnect-toggle" onclick="return toggle('RemotePoxDriver.disconnect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#disconnect">disconnect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">handle</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemotePoxDriver.disconnect-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="RemotePoxDriver.disconnect-expanded"><a name="L64"></a><tt class="py-lineno">64</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L65"></a><tt class="py-lineno">65</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-14', 'execute', 'link-10');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"exit()"</tt><tt class="py-op">,</tt> <tt id="link-15" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-15', 'prompt', 'link-11');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"/pox\$"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno">66</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L67"></a><tt class="py-lineno">67</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-16', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-17" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-17', 'error', 'link-17');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Connection failed to the host"</tt> <tt class="py-op">)</tt> </tt>
-</div></div><a name="L68"></a><tt class="py-lineno">68</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html
deleted file mode 100644
index c55e2ab..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html
+++ /dev/null
@@ -1,443 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.remotetestbed-module.html">Package remotetestbed</a> ::
- <a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html">Module remotepoxdriver</a> ::
- Class RemotePoxDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class RemotePoxDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-pysrc.html#RemotePoxDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_remotepoxd" name="class_hierarchy_for_remotepoxd">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html" title="RemotePoxDriver" alt="" coords="5,6,131,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html" title="remotetestbeddriver.RemoteTestBedDriver" alt="" coords="155,6,425,31"/>
-<area shape="rect" id="node3" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="450,6,541,31"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="component.Component" alt="" coords="567,6,724,31"/>
-</map>
- <img src="class_hierarchy_for_remotepoxd.gif" alt='' usemap="#class_hierarchy_for_remotepoxd" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<p>RemoteVMDriver is the basic driver which will handle the Mininet
- functions</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-pysrc.html#RemotePoxDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Connection will establish to the remote host using ssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-pysrc.html#RemotePoxDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-pysrc.html#RemotePoxDriver.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-pysrc.html#RemotePoxDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-pysrc.html#RemotePoxDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Connection will establish to the remote host using ssh. It will take
- user_name ,ip_address and password as arguments<br> and will return
- the handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="disconnect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">disconnect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">handle</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-pysrc.html#RemotePoxDriver.disconnect">source code</a></span>
- </td>
- </tr></table>
-
-
- <dl class="fields">
- <dt>Overrides:
- component.Component.disconnect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html
deleted file mode 100644
index 27544e1..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html
+++ /dev/null
@@ -1,170 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbed.remotevmdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.remotetestbed-module.html">Package remotetestbed</a> ::
- Module remotevmdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module remotevmdriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 12-Feb-2013
-
-author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )
-
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- ( at your option ) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-
-RemoteVMDriver is the basic driver which will handle the Mininet functions
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html" class="summary-name">RemoteVMDriver</a><br />
- RemoteVMDriver is the basic driver which will handle the Mininet
- functions
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotevmdriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotevmdriver-pysrc.html
deleted file mode 100644
index e882e1e..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotevmdriver-pysrc.html
+++ /dev/null
@@ -1,329 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbed.remotevmdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.remotetestbed-module.html">Package remotetestbed</a> ::
- Module remotevmdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html">Module TestON.drivers.common.cli.remotetestbed.remotevmdriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 12-Feb-2013</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"> ( at your option ) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">RemoteVMDriver is the basic driver which will handle the Mininet functions</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">pexpect</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.bin.cli=TestON.bin.cli-module.html,Package TestON.drivers.common.cli=TestON.drivers.common.cli-module.html"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-2', 'cli', 'link-2');">cli</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module TestON.drivers.common.cli.remotetestbeddriver=TestON.drivers.common.cli.remotetestbeddriver-module.html"><a title="TestON.drivers.common.cli.remotetestbeddriver" class="py-name" href="#" onclick="return doclink('link-3', 'remotetestbeddriver', 'link-3');">remotetestbeddriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html"><a title="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver" class="py-name" href="#" onclick="return doclink('link-4', 'RemoteTestBedDriver', 'link-4');">RemoteTestBedDriver</a></tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="RemoteVMDriver"></a><div id="RemoteVMDriver-def"><a name="L29"></a><tt class="py-lineno"> 29</tt> <a class="py-toggle" href="#" id="RemoteVMDriver-toggle" onclick="return toggle('RemoteVMDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html">RemoteVMDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">RemoteTestBedDriver</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteVMDriver-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="RemoteVMDriver-expanded"><a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring"> RemoteVMDriver is the basic driver which will handle the Mininet functions</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="RemoteVMDriver.__init__"></a><div id="RemoteVMDriver.__init__-def"><a name="L34"></a><tt class="py-lineno"> 34</tt> <a class="py-toggle" href="#" id="RemoteVMDriver.__init__-toggle" onclick="return toggle('RemoteVMDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteVMDriver.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteVMDriver.__init__-expanded"><a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver" class="py-name" href="#" onclick="return doclink('link-5', 'RemoteTestBedDriver', 'link-4');">RemoteTestBedDriver</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-6', '__init__', 'link-6');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> </tt>
-<a name="RemoteVMDriver.connect"></a><div id="RemoteVMDriver.connect-def"><a name="L37"></a><tt class="py-lineno"> 37</tt> <a class="py-toggle" href="#" id="RemoteVMDriver.connect-toggle" onclick="return toggle('RemoteVMDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteVMDriver.connect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteVMDriver.connect-expanded"><a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt id="link-7" class="py-name" targets="Class TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html"><a title="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver" class="py-name" href="#" onclick="return doclink('link-7', 'RemoteVMDriver', 'link-7');">RemoteVMDriver</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-8', 'connect', 'link-8');">connect</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt><tt class="py-op">,</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" connected successfully "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> </tt>
-<a name="RemoteVMDriver.SSH"></a><div id="RemoteVMDriver.SSH-def"><a name="L55"></a><tt class="py-lineno"> 55</tt> <a class="py-toggle" href="#" id="RemoteVMDriver.SSH-toggle" onclick="return toggle('RemoteVMDriver.SSH');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#SSH">SSH</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteVMDriver.SSH-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RemoteVMDriver.SSH-expanded"><a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-string">"""</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"><tt class="py-string"> Connection will establish to the remote host using ssh.</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"><tt class="py-string"> It will take user_name ,ip_address and password as arguments<br></tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"><tt class="py-string"> and will return the handle.</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"><tt class="py-string"> """</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">ssh_newkey</tt> <tt class="py-op">=</tt> <tt class="py-string">'Are you sure you want to continue connecting'</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">refused</tt> <tt class="py-op">=</tt> <tt class="py-string">"ssh: connect to host "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> <tt class="py-string">" port 22: Connection refused"</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt><tt class="py-op">:</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-10', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-string">'ssh -p '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> <tt class="py-op">+</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-string">' '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-string">'@'</tt> <tt class="py-op">+</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-11', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-string">'ssh '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-string">'@'</tt> <tt class="py-op">+</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-12', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"\r"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-name">ssh_newkey</tt><tt class="py-op">,</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-string">'password:'</tt><tt class="py-op">,</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">,</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">refused</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-13', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ssh key confirmation received, send yes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-14', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">'yes'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-name">ssh_newkey</tt><tt class="py-op">,</tt> <tt class="py-string">'password:'</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-15', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ssh connection asked for password, gave password"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-16', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">'>|#|$'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-17', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-18', 'error', 'link-18');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Connection timeout"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> <tt class="py-comment"># timeout</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-19', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-20', 'error', 'link-18');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-string">"No route to the Host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-21', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-22', 'error', 'link-18');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-string">"ssh: connect to host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-string">" port 22: Connection refused"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-23', 'sendline', 'link-10');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"\r"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div></div><a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html
deleted file mode 100644
index 023dfca..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html
+++ /dev/null
@@ -1,437 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.remotetestbed-module.html">Package remotetestbed</a> ::
- <a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html">Module remotevmdriver</a> ::
- Class RemoteVMDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class RemoteVMDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-pysrc.html#RemoteVMDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_remotevmdr" name="class_hierarchy_for_remotevmdr">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html" title="RemoteVMDriver" alt="" coords="5,6,128,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html" title="remotetestbeddriver.RemoteTestBedDriver" alt="" coords="153,6,423,31"/>
-<area shape="rect" id="node3" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="447,6,539,31"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="component.Component" alt="" coords="564,6,721,31"/>
-</map>
- <img src="class_hierarchy_for_remotevmdr.gif" alt='' usemap="#class_hierarchy_for_remotevmdr" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<p>RemoteVMDriver is the basic driver which will handle the Mininet
- functions</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-pysrc.html#RemoteVMDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Connection will establish to the remote host using ssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-pysrc.html#RemoteVMDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="SSH"></a><span class="summary-sig-name">SSH</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-pysrc.html#RemoteVMDriver.SSH">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-pysrc.html#RemoteVMDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-pysrc.html#RemoteVMDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Connection will establish to the remote host using ssh. It will take
- user_name ,ip_address and password as arguments<br> and will return
- the handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbeddriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbeddriver-module.html
deleted file mode 100644
index 4dceb95..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbeddriver-module.html
+++ /dev/null
@@ -1,163 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbeddriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Module remotetestbeddriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbeddriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module remotetestbeddriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbeddriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 26-Oct-2012
-
-author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- ( at your option ) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html" class="summary-name">RemoteTestBedDriver</a>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbeddriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbeddriver-pysrc.html
deleted file mode 100644
index 21a75c5..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbeddriver-pysrc.html
+++ /dev/null
@@ -1,286 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbeddriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Module remotetestbeddriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbeddriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.remotetestbeddriver-module.html">Module TestON.drivers.common.cli.remotetestbeddriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 26-Oct-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-docstring"> ( at your option ) any later version.</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.drivers.common.clidriver=TestON.drivers.common.clidriver-module.html"><a title="TestON.drivers.common.clidriver" class="py-name" href="#" onclick="return doclink('link-2', 'clidriver', 'link-2');">clidriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Class TestON.bin.cli.CLI=TestON.bin.cli.CLI-class.html,Class TestON.drivers.common.clidriver.CLI=TestON.drivers.common.clidriver.CLI-class.html"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-3', 'CLI', 'link-3');">CLI</a></tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> </tt>
-<a name="RemoteTestBedDriver"></a><div id="RemoteTestBedDriver-def"><a name="L25"></a><tt class="py-lineno">25</tt> <a class="py-toggle" href="#" id="RemoteTestBedDriver-toggle" onclick="return toggle('RemoteTestBedDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html">RemoteTestBedDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">CLI</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteTestBedDriver-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="RemoteTestBedDriver-expanded"><a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> <tt class="py-comment"># The common functions for emulator included in RemoteTestBedDriver</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> </tt>
-<a name="RemoteTestBedDriver.__init__"></a><div id="RemoteTestBedDriver.__init__-def"><a name="L28"></a><tt class="py-lineno">28</tt> <a class="py-toggle" href="#" id="RemoteTestBedDriver.__init__-toggle" onclick="return toggle('RemoteTestBedDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteTestBedDriver.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="RemoteTestBedDriver.__init__-expanded"><a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-4" class="py-name"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-4', 'CLI', 'link-3');">CLI</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-5', '__init__', 'link-5');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> </tt>
-<a name="RemoteTestBedDriver.connect"></a><div id="RemoteTestBedDriver.connect-def"><a name="L31"></a><tt class="py-lineno">31</tt> <a class="py-toggle" href="#" id="RemoteTestBedDriver.connect-toggle" onclick="return toggle('RemoteTestBedDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RemoteTestBedDriver.connect-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="RemoteTestBedDriver.connect-expanded"><a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-string">'vm_'</tt> <tt class="py-op">+</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> <tt class="py-name">remote_user_name</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'remote_user_name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-name">remote_ip_address</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'remote_ip_address'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-name">remote_port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'remote_port'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-name">remote_pwd</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'remote_pwd'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt id="link-6" class="py-name" targets="Class TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html"><a title="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver" class="py-name" href="#" onclick="return doclink('link-6', 'RemoteTestBedDriver', 'link-6');">RemoteTestBedDriver</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-7', 'connect', 'link-7');">connect</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">remote_user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-name">remote_ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">remote_port</tt><tt class="py-op">,</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">remote_pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.execute()=TestON.bin.generatedriver.GenerateDriver-class.html#execute,Method TestON.drivers.common.clidriver.CLI.execute()=TestON.drivers.common.clidriver.CLI-class.html#execute"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-8', 'execute', 'link-8');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"\n"</tt><tt class="py-op">,</tt> <tt id="link-9" class="py-name" targets="Variable TestON.bin.cli.CLI.prompt=TestON.bin.cli.CLI-class.html#prompt"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-9', 'prompt', 'link-9');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"\$|>|#"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-10', 'execute', 'link-8');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"SET CYGWIN=notty"</tt><tt class="py-op">,</tt> <tt id="link-11" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-11', 'prompt', 'link-9');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"\$|>|#"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-12', 'execute', 'link-8');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"\n"</tt><tt class="py-op">,</tt> <tt id="link-13" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-13', 'prompt', 'link-9');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"\$|>|#"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-14', 'log', 'link-14');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-string">"ssh "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">vm_user_name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> <tt class="py-string">'@'</tt> <tt class="py-op">+</tt> </tt>
-<a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">vm_ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L59"></a><tt class="py-lineno">59</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-15', 'execute', 'link-8');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L60"></a><tt class="py-lineno">60</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"ssh "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L61"></a><tt class="py-lineno">61</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">vm_user_name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L62"></a><tt class="py-lineno">62</tt> <tt class="py-line"> <tt class="py-string">'@'</tt> <tt class="py-op">+</tt> </tt>
-<a name="L63"></a><tt class="py-lineno">63</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">vm_ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L64"></a><tt class="py-lineno">64</tt> <tt class="py-line"> <tt id="link-16" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-16', 'prompt', 'link-9');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"(.*)"</tt><tt class="py-op">,</tt> </tt>
-<a name="L65"></a><tt class="py-lineno">65</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno">66</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-17', 'execute', 'link-8');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-string">"\n"</tt><tt class="py-op">,</tt> <tt id="link-18" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-18', 'prompt', 'link-9');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"assword:"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno">67</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-19', 'execute', 'link-8');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">vm_pwd</tt><tt class="py-op">,</tt> <tt id="link-20" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-20', 'prompt', 'link-9');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"\$"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L68"></a><tt class="py-lineno">68</tt> <tt class="py-line"> </tt>
-<a name="L69"></a><tt class="py-lineno">69</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-<a name="L70"></a><tt class="py-lineno">70</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L71"></a><tt class="py-lineno">71</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div></div><a name="L72"></a><tt class="py-lineno">72</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html
deleted file mode 100644
index ec9236a..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html
+++ /dev/null
@@ -1,415 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.remotetestbeddriver-module.html">Module remotetestbeddriver</a> ::
- Class RemoteTestBedDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class RemoteTestBedDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbeddriver-pysrc.html#RemoteTestBedDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_remotetest" name="class_hierarchy_for_remotetest">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html" title="RemoteTestBedDriver" alt="" coords="5,6,157,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="182,6,273,31"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="component.Component" alt="" coords="299,6,456,31"/>
-</map>
- <img src="class_hierarchy_for_remotetest.gif" alt='' usemap="#class_hierarchy_for_remotetest" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbeddriver-pysrc.html#RemoteTestBedDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Connection will establish to the remote host using ssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.remotetestbeddriver-pysrc.html#RemoteTestBedDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbeddriver-pysrc.html#RemoteTestBedDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.remotetestbeddriver-pysrc.html#RemoteTestBedDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Connection will establish to the remote host using ssh. It will take
- user_name ,ip_address and password as arguments<br> and will return
- the handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.tool-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.tool-module.html
deleted file mode 100644
index cfbc7b6..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.tool-module.html
+++ /dev/null
@@ -1,167 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.tool</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Package tool
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.tool-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package tool</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.tool-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-module.html">TestON.drivers.common.cli.tool.dpctlclidriver</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.tool-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.tool-pysrc.html
deleted file mode 100644
index 5dc7e38..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.tool-pysrc.html
+++ /dev/null
@@ -1,125 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.tool</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Package tool
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.tool-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.tool-module.html">Package TestON.drivers.common.cli.tool</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.tool.dpctlclidriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.tool.dpctlclidriver-module.html
deleted file mode 100644
index 1ffdcfb..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.tool.dpctlclidriver-module.html
+++ /dev/null
@@ -1,171 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.tool.dpctlclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.tool-module.html">Package tool</a> ::
- Module dpctlclidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.tool.dpctlclidriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module dpctlclidriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 26-Nov-2012
-
-author:: Raghav Kashyap( raghavkashyap@paxterrasolutions.com )
-
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- ( at your option ) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-
-
-DPCTL driver class provides the basic functions of DPCTL controller
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html" class="summary-name">DpctlCliDriver</a><br />
- DpctlCliDriver driver class provides the basic functions of DPCTL
- controller
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html
deleted file mode 100644
index 2d83805..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html
+++ /dev/null
@@ -1,534 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.tool.dpctlclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.tool-module.html">Package tool</a> ::
- Module dpctlclidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.tool.dpctlclidriver-module.html">Module TestON.drivers.common.cli.tool.dpctlclidriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 26-Nov-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">author:: Raghav Kashyap( raghavkashyap@paxterrasolutions.com )</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"> ( at your option ) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">DPCTL driver class provides the basic functions of DPCTL controller</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.bin.cli=TestON.bin.cli-module.html,Package TestON.drivers.common.cli=TestON.drivers.common.cli-module.html"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-2', 'cli', 'link-2');">cli</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module TestON.drivers.common.cli.toolsdriver=TestON.drivers.common.cli.toolsdriver-module.html"><a title="TestON.drivers.common.cli.toolsdriver" class="py-name" href="#" onclick="return doclink('link-3', 'toolsdriver', 'link-3');">toolsdriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class TestON.drivers.common.cli.toolsdriver.Tools=TestON.drivers.common.cli.toolsdriver.Tools-class.html"><a title="TestON.drivers.common.cli.toolsdriver.Tools" class="py-name" href="#" onclick="return doclink('link-4', 'Tools', 'link-4');">Tools</a></tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="DpctlCliDriver"></a><div id="DpctlCliDriver-def"><a name="L29"></a><tt class="py-lineno"> 29</tt> <a class="py-toggle" href="#" id="DpctlCliDriver-toggle" onclick="return toggle('DpctlCliDriver');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html">DpctlCliDriver</a><tt class="py-op">(</tt> <tt class="py-base-class">Tools</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DpctlCliDriver-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="DpctlCliDriver-expanded"><a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring"> DpctlCliDriver driver class provides the basic functions of DPCTL controller</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="DpctlCliDriver.__init__"></a><div id="DpctlCliDriver.__init__-def"><a name="L34"></a><tt class="py-lineno"> 34</tt> <a class="py-toggle" href="#" id="DpctlCliDriver.__init__-toggle" onclick="return toggle('DpctlCliDriver.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DpctlCliDriver.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DpctlCliDriver.__init__-expanded"><a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-5" class="py-name" targets="Class TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html"><a title="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver" class="py-name" href="#" onclick="return doclink('link-5', 'DpctlCliDriver', 'link-5');">DpctlCliDriver</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-6', '__init__', 'link-6');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">wrapped</tt> <tt class="py-op">=</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">modules</tt><tt class="py-op">[</tt> <tt class="py-name">__name__</tt> <tt class="py-op">]</tt> </tt>
-</div><a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="DpctlCliDriver.connect"></a><div id="DpctlCliDriver.connect-def"><a name="L39"></a><tt class="py-lineno"> 39</tt> <a class="py-toggle" href="#" id="DpctlCliDriver.connect-toggle" onclick="return toggle('DpctlCliDriver.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DpctlCliDriver.connect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DpctlCliDriver.connect-expanded"><a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">[</tt> <tt class="py-string">'name'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt id="link-7" class="py-name"><a title="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver" class="py-name" href="#" onclick="return doclink('link-7', 'DpctlCliDriver', 'link-5');">DpctlCliDriver</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-8', 'connect', 'link-8');">connect</a></tt><tt class="py-op">(</tt> <tt class="py-name">user_name</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">pwd</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">:</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Connected to the host"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-10', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-11', 'error', 'link-11');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-string">"Connection failed to the host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> </tt>
-<a name="DpctlCliDriver.addFlow"></a><div id="DpctlCliDriver.addFlow-def"><a name="L62"></a><tt class="py-lineno"> 62</tt> <a class="py-toggle" href="#" id="DpctlCliDriver.addFlow-toggle" onclick="return toggle('DpctlCliDriver.addFlow');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#addFlow">addFlow</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">flowParameters</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DpctlCliDriver.addFlow-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DpctlCliDriver.addFlow-expanded"><a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"><tt class="py-docstring"> addFlow create a new flow entry into flow table using "dpctl"</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.parse_args()=TestON.core.openspeak.OpenSpeak-class.html#parse_args"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-12', 'parse_args', 'link-12');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-string">"TCPIP"</tt><tt class="py-op">,</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-string">"TCPPORT"</tt><tt class="py-op">,</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-string">"INPORT"</tt><tt class="py-op">,</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-string">"ACTION"</tt><tt class="py-op">,</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-string">"TIMEOUT"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-op">**</tt><tt class="py-name">flowParameters</tt> <tt class="py-op">)</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"dpctl add-flow tcp:"</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">tcpIP</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"127.0.0.1"</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">tcpPort</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"6634"</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">timeOut</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TIMEOUT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TIMEOUT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-number">120</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-name">cmd</tt> <tt class="py-op">+</tt> <tt class="py-name">tcpIP</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">tcpPort</tt> <tt class="py-op">+</tt> <tt class="py-string">" in_port="</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"INPORT"</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">",idle_timeout="</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TIMEOUT"</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">",actions="</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"ACTION"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.execute()=TestON.bin.generatedriver.GenerateDriver-class.html#execute,Method TestON.drivers.common.clidriver.CLI.execute()=TestON.drivers.common.clidriver.CLI-class.html#execute"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-13', 'execute', 'link-13');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">cmd</tt><tt class="py-op">,</tt> <tt id="link-14" class="py-name" targets="Variable TestON.bin.cli.CLI.prompt=TestON.bin.cli.CLI-class.html#prompt"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-14', 'prompt', 'link-14');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"\~\$"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_matches</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-string">"openflow"</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">response</tt><tt class="py-op">,</tt> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Flow Added Successfully"</tt><tt class="py-op">,</tt> <tt id="link-15" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-15', 'onfail', 'link-15');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Adding Flow Failed!!!"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> </tt>
-<a name="DpctlCliDriver.showFlow"></a><div id="DpctlCliDriver.showFlow-def"><a name="L88"></a><tt class="py-lineno"> 88</tt> <a class="py-toggle" href="#" id="DpctlCliDriver.showFlow-toggle" onclick="return toggle('DpctlCliDriver.showFlow');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#showFlow">showFlow</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">flowParameters</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DpctlCliDriver.showFlow-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DpctlCliDriver.showFlow-expanded"><a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"><tt class="py-docstring"> showFlow dumps the flow entries of flow table using "dpctl"</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-16', 'parse_args', 'link-12');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt><tt class="py-op">,</tt> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">flowParameters</tt> <tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">tcpIP</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"127.0.0.1"</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">tcpPort</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"6634"</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"dpctl show tcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpIP</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpPort</tt> <tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-17', 'execute', 'link-13');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt id="link-18" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-18', 'prompt', 'link-14');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"get_config_reply"</tt><tt class="py-op">,</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">240</tt> <tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_matches</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-string">'features_reply'</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">response</tt><tt class="py-op">,</tt> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Show flow executed"</tt><tt class="py-op">,</tt> <tt id="link-19" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-19', 'onfail', 'link-15');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Show flow execution Failed"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> </tt>
-<a name="DpctlCliDriver.dumpFlow"></a><div id="DpctlCliDriver.dumpFlow-def"><a name="L108"></a><tt class="py-lineno">108</tt> <a class="py-toggle" href="#" id="DpctlCliDriver.dumpFlow-toggle" onclick="return toggle('DpctlCliDriver.dumpFlow');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#dumpFlow">dumpFlow</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">flowParameters</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DpctlCliDriver.dumpFlow-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DpctlCliDriver.dumpFlow-expanded"><a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"><tt class="py-docstring"> dumpFlow gives installed flow information</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-20', 'parse_args', 'link-12');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt><tt class="py-op">,</tt> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">flowParameters</tt> <tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">tcpIP</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"127.0.0.1"</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">tcpPort</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"6634"</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"dpctl dump-flows tcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpIP</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpPort</tt> <tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-21', 'execute', 'link-13');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> <tt id="link-22" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-22', 'prompt', 'link-14');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"type="</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">240</tt> <tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_matches</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-string">'stats_reply'</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">response</tt><tt class="py-op">,</tt> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Dump flow executed"</tt><tt class="py-op">,</tt> <tt id="link-23" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-23', 'onfail', 'link-15');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Dump flow execution Failed"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> </tt>
-<a name="DpctlCliDriver.dumpTables"></a><div id="DpctlCliDriver.dumpTables-def"><a name="L125"></a><tt class="py-lineno">125</tt> <a class="py-toggle" href="#" id="DpctlCliDriver.dumpTables-toggle" onclick="return toggle('DpctlCliDriver.dumpTables');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#dumpTables">dumpTables</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">flowParameters</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DpctlCliDriver.dumpTables-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DpctlCliDriver.dumpTables-expanded"><a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"><tt class="py-docstring"> dumpTables gives statistics for each of the flow tables used by datapath switch.</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-24', 'parse_args', 'link-12');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt><tt class="py-op">,</tt> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">flowParameters</tt> <tt class="py-op">)</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">tcpIP</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"127.0.0.1"</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">tcpPort</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"6634"</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"dpctl dump-tables tcp:"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpIP</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpPort</tt> <tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-25', 'execute', 'link-13');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> <tt id="link-26" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-26', 'prompt', 'link-14');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"matched"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">240</tt> <tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_matches</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-string">'lookup=3'</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">response</tt><tt class="py-op">,</tt> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Dump Tables executed"</tt><tt class="py-op">,</tt> <tt id="link-27" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-27', 'onfail', 'link-15');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Dump Tables execution Failed"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> </tt>
-<a name="DpctlCliDriver.dumpPorts"></a><div id="DpctlCliDriver.dumpPorts-def"><a name="L143"></a><tt class="py-lineno">143</tt> <a class="py-toggle" href="#" id="DpctlCliDriver.dumpPorts-toggle" onclick="return toggle('DpctlCliDriver.dumpPorts');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#dumpPorts">dumpPorts</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">flowParameters</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DpctlCliDriver.dumpPorts-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DpctlCliDriver.dumpPorts-expanded"><a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"><tt class="py-docstring"> dumpPorts gives ports information</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-28', 'parse_args', 'link-12');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt><tt class="py-op">,</tt> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">flowParameters</tt> <tt class="py-op">)</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-name">tcpIP</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"127.0.0.1"</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">tcpPort</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"6634"</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"dpctl dump-ports tcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpIP</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpPort</tt> <tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-29', 'execute', 'link-13');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> <tt id="link-30" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-30', 'prompt', 'link-14');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"rx pkts"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">240</tt> <tt class="py-op">)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_matches</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-string">'ports'</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">response</tt><tt class="py-op">,</tt> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Dump Ports executed"</tt><tt class="py-op">,</tt> <tt id="link-31" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-31', 'onfail', 'link-15');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Dump Ports execution Failed"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> </tt>
-<a name="DpctlCliDriver.dumpAggregate"></a><div id="DpctlCliDriver.dumpAggregate-def"><a name="L160"></a><tt class="py-lineno">160</tt> <a class="py-toggle" href="#" id="DpctlCliDriver.dumpAggregate-toggle" onclick="return toggle('DpctlCliDriver.dumpAggregate');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#dumpAggregate">dumpAggregate</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">flowParameters</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DpctlCliDriver.dumpAggregate-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DpctlCliDriver.dumpAggregate-expanded"><a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"><tt class="py-docstring"> dumpAggregate gives installed flow information.ggregate statistics for flows in datapath WITCH's tables that match flows.</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"><tt class="py-docstring"> If flows is omitted, the statistics are aggregated across all flows in the datapath's flow tables</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-32', 'parse_args', 'link-12');">parse_args</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt><tt class="py-op">,</tt> <tt class="py-string">"TCPPORT"</tt><tt class="py-op">,</tt> <tt class="py-string">"FLOW"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">flowParameters</tt> <tt class="py-op">)</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-name">tcpIP</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"127.0.0.1"</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">tcpPort</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"6634"</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-name">flow</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"FLOW"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"FLOW"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">""</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"dpctl dump-aggregate tcp:"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpIP</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpPort</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">flow</tt> <tt class="py-op">)</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-33', 'execute', 'link-13');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt id="link-34" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-34', 'prompt', 'link-14');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"flow_count="</tt><tt class="py-op">,</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">240</tt> <tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_matches</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-string">'stats_reply'</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">response</tt><tt class="py-op">,</tt> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Dump Aggregate executed"</tt><tt class="py-op">,</tt> <tt id="link-35" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-35', 'onfail', 'link-15');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Dump Aggregate execution Failed"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> </tt>
-<a name="DpctlCliDriver.delFlow"></a><div id="DpctlCliDriver.delFlow-def"><a name="L184"></a><tt class="py-lineno">184</tt> <a class="py-toggle" href="#" id="DpctlCliDriver.delFlow-toggle" onclick="return toggle('DpctlCliDriver.delFlow');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#delFlow">delFlow</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">flowParameters</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DpctlCliDriver.delFlow-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DpctlCliDriver.delFlow-expanded"><a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"><tt class="py-docstring"> delFlow Deletes entries from the datapath switch's tables that match flow</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-36', 'parse_args', 'link-12');">parse_args</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt><tt class="py-op">,</tt> <tt class="py-string">"TCPPORT"</tt><tt class="py-op">,</tt> <tt class="py-string">"FLOW"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">flowParameters</tt> <tt class="py-op">)</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">tcpIP</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"127.0.0.1"</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-name">tcpPort</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"6634"</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">flow</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"FLOW"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"FLOW"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">""</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"dpctl del-flows tcp:"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpIP</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpPort</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">flow</tt> <tt class="py-op">)</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-37', 'execute', 'link-13');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt id="link-38" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-38', 'prompt', 'link-14');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"ETH-Tutorial"</tt><tt class="py-op">,</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">240</tt> <tt class="py-op">)</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_matches</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-string">'@'</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">response</tt><tt class="py-op">,</tt> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Delete flow executed"</tt><tt class="py-op">,</tt> <tt id="link-39" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-39', 'onfail', 'link-15');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Delete flow execution Failed"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> </tt>
-<a name="DpctlCliDriver.show"></a><div id="DpctlCliDriver.show-def"><a name="L207"></a><tt class="py-lineno">207</tt> <a class="py-toggle" href="#" id="DpctlCliDriver.show-toggle" onclick="return toggle('DpctlCliDriver.show');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#show">show</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">flowParameters</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DpctlCliDriver.show-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DpctlCliDriver.show-expanded"><a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"><tt class="py-docstring"> show gives information on datapath switch including information on its flow tables and ports.</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-40', 'parse_args', 'link-12');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt><tt class="py-op">,</tt> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">flowParameters</tt> <tt class="py-op">)</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">tcpIP</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"127.0.0.1"</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-name">tcpPort</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"6634"</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"dpctl show tcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpIP</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpPort</tt> <tt class="py-op">)</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-41', 'execute', 'link-13');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt id="link-42" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-42', 'prompt', 'link-14');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"miss_send_len="</tt><tt class="py-op">,</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">240</tt> <tt class="py-op">)</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_matches</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-string">'get_config_reply'</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">response</tt><tt class="py-op">,</tt> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"show command executed"</tt><tt class="py-op">,</tt> <tt id="link-43" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-43', 'onfail', 'link-15');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"show command execution Failed"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> </tt>
-<a name="DpctlCliDriver.showStatus"></a><div id="DpctlCliDriver.showStatus-def"><a name="L227"></a><tt class="py-lineno">227</tt> <a class="py-toggle" href="#" id="DpctlCliDriver.showStatus-toggle" onclick="return toggle('DpctlCliDriver.showStatus');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#showStatus">showStatus</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">flowParameters</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DpctlCliDriver.showStatus-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DpctlCliDriver.showStatus-expanded"><a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"><tt class="py-docstring"> showStatus gives a series of key-value pairs that report the status of switch.</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"><tt class="py-docstring"> If key is specified, only the key-value pairs whose key names begin with key are printed.</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-44', 'parse_args', 'link-12');">parse_args</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt><tt class="py-op">,</tt> <tt class="py-string">"TCPPORT"</tt><tt class="py-op">,</tt> <tt class="py-string">"KEY"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">flowParameters</tt> <tt class="py-op">)</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-name">tcpIP</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"127.0.0.1"</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-name">tcpPort</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"6634"</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"KEY"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"KEY"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">""</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"dpctl status tcp:"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpIP</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpPort</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">key</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-45', 'execute', 'link-13');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> <tt id="link-46" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-46', 'prompt', 'link-14');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"(.*)"</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">240</tt> <tt class="py-op">)</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_matches</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-string">'(.*)'</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">response</tt><tt class="py-op">,</tt> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"show command executed"</tt><tt class="py-op">,</tt> <tt id="link-47" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-47', 'onfail', 'link-15');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"show command execution Failed"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> </tt>
-<a name="DpctlCliDriver.desc_set"></a><div id="DpctlCliDriver.desc_set-def"><a name="L248"></a><tt class="py-lineno">248</tt> <a class="py-toggle" href="#" id="DpctlCliDriver.desc_set-toggle" onclick="return toggle('DpctlCliDriver.desc_set');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#desc_set">desc_set</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">flowParameters</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DpctlCliDriver.desc_set-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DpctlCliDriver.desc_set-expanded"><a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"><tt class="py-docstring"> desc_set Sets the switch description ( as returned in ofp_desc_stats ) to string ( max length is DESC_STR_LEN )</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-48', 'parse_args', 'link-12');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-string">"TCPIP"</tt><tt class="py-op">,</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-string">"TCPPORT"</tt><tt class="py-op">,</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-string">"STRING"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-op">**</tt><tt class="py-name">flowParameters</tt> <tt class="py-op">)</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-name">tcpIP</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"127.0.0.1"</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">tcpPort</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"6634"</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-name">string</tt> <tt class="py-op">=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"STRING"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-string">"STRING"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">" DESC_STR_LEN"</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"dpctl desc tcp:"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpIP</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpPort</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">string</tt> <tt class="py-op">)</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-49', 'execute', 'link-13');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt id="link-50" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-50', 'prompt', 'link-14');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"ETH-Tutorial"</tt><tt class="py-op">,</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">240</tt> <tt class="py-op">)</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_matches</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-string">'@'</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">response</tt><tt class="py-op">,</tt> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"desc command executed"</tt><tt class="py-op">,</tt> <tt id="link-51" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-51', 'onfail', 'link-15');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"desc command execution Failed"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div><a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> </tt>
-<a name="DpctlCliDriver.dumpDesc"></a><div id="DpctlCliDriver.dumpDesc-def"><a name="L276"></a><tt class="py-lineno">276</tt> <a class="py-toggle" href="#" id="DpctlCliDriver.dumpDesc-toggle" onclick="return toggle('DpctlCliDriver.dumpDesc');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#dumpDesc">dumpDesc</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">flowParameters</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DpctlCliDriver.dumpDesc-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DpctlCliDriver.dumpDesc-expanded"><a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"><tt class="py-docstring"> dumpDesc Sets the switch description ( as returned in ofp_desc_stats ) to string ( max length is DESC_STR_LEN )</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-52', 'parse_args', 'link-12');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-string">"TCPIP"</tt><tt class="py-op">,</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-string">"TCPPORT"</tt><tt class="py-op">,</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-string">"STRING"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-op">**</tt><tt class="py-name">flowParameters</tt> <tt class="py-op">)</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-name">tcpIP</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPIP"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"127.0.0.1"</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-name">tcpPort</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-string">"TCPPORT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> <tt class="py-keyword">else</tt> <tt class="py-string">"6634"</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-name">command</tt> <tt class="py-op">=</tt> <tt class="py-string">"dpctl dump-desc tcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpIP</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">tcpPort</tt> <tt class="py-op">)</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-53', 'execute', 'link-13');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt id="link-54" class="py-name"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-54', 'prompt', 'link-14');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"Serial Num:"</tt><tt class="py-op">,</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">240</tt> <tt class="py-op">)</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_matches</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-string">'stats_reply'</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">response</tt><tt class="py-op">,</tt> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"desc command executed"</tt><tt class="py-op">,</tt> <tt id="link-55" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-55', 'onfail', 'link-15');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"desc command execution Failed"</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-</div></div><a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"><tt class="py-keyword">if</tt> <tt class="py-name">__name__</tt> <tt class="py-op">!=</tt> <tt class="py-string">"__main__"</tt><tt class="py-op">:</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">modules</tt><tt class="py-op">[</tt> <tt class="py-name">__name__</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-56" class="py-name"><a title="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver" class="py-name" href="#" onclick="return doclink('link-56', 'DpctlCliDriver', 'link-5');">DpctlCliDriver</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html
deleted file mode 100644
index cd188f1..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html
+++ /dev/null
@@ -1,671 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.tool-module.html">Package tool</a> ::
- <a href="TestON.drivers.common.cli.tool.dpctlclidriver-module.html">Module dpctlclidriver</a> ::
- Class DpctlCliDriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class DpctlCliDriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_dpctlclidr" name="class_hierarchy_for_dpctlclidr">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html" title="DpctlCliDriver" alt="" coords="5,6,109,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.cli.toolsdriver.Tools-class.html" title="toolsdriver.Tools" alt="" coords="134,6,252,31"/>
-<area shape="rect" id="node3" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="277,6,368,31"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="component.Component" alt="" coords="393,6,551,31"/>
-</map>
- <img src="class_hierarchy_for_dpctlclidr.gif" alt='' usemap="#class_hierarchy_for_dpctlclidr" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<p>DpctlCliDriver driver class provides the basic functions of DPCTL
- controller</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Connection will establish to the remote host using ssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="addFlow"></a><span class="summary-sig-name">addFlow</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**flowParameters</span>)</span><br />
- addFlow create a new flow entry into flow table using
- "dpctl"</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.addFlow">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="showFlow"></a><span class="summary-sig-name">showFlow</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**flowParameters</span>)</span><br />
- showFlow dumps the flow entries of flow table using "dpctl"</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.showFlow">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="dumpFlow"></a><span class="summary-sig-name">dumpFlow</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**flowParameters</span>)</span><br />
- dumpFlow gives installed flow information</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.dumpFlow">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="dumpTables"></a><span class="summary-sig-name">dumpTables</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**flowParameters</span>)</span><br />
- dumpTables gives statistics for each of the flow tables used by
- datapath switch.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.dumpTables">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="dumpPorts"></a><span class="summary-sig-name">dumpPorts</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**flowParameters</span>)</span><br />
- dumpPorts gives ports information</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.dumpPorts">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#dumpAggregate" class="summary-sig-name">dumpAggregate</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**flowParameters</span>)</span><br />
- dumpAggregate gives installed flow information.ggregate statistics
- for flows in datapath WITCH's tables that match flows.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.dumpAggregate">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="delFlow"></a><span class="summary-sig-name">delFlow</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**flowParameters</span>)</span><br />
- delFlow Deletes entries from the datapath switch's tables that match
- flow</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.delFlow">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="show"></a><span class="summary-sig-name">show</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**flowParameters</span>)</span><br />
- show gives information on datapath switch including information on
- its flow tables and ports.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.show">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#showStatus" class="summary-sig-name">showStatus</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**flowParameters</span>)</span><br />
- showStatus gives a series of key-value pairs that report the status
- of switch.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.showStatus">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="desc_set"></a><span class="summary-sig-name">desc_set</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**flowParameters</span>)</span><br />
- desc_set Sets the switch description ( as returned in ofp_desc_stats
- ) to string ( max length is DESC_STR_LEN )</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.desc_set">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="dumpDesc"></a><span class="summary-sig-name">dumpDesc</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**flowParameters</span>)</span><br />
- dumpDesc Sets the switch description ( as returned in ofp_desc_stats
- ) to string ( max length is DESC_STR_LEN )</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.dumpDesc">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Connection will establish to the remote host using ssh. It will take
- user_name ,ip_address and password as arguments<br> and will return
- the handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="dumpAggregate"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">dumpAggregate</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**flowParameters</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.dumpAggregate">source code</a></span>
- </td>
- </tr></table>
-
- <p>dumpAggregate gives installed flow information.ggregate statistics
- for flows in datapath WITCH's tables that match flows. If flows is
- omitted, the statistics are aggregated across all flows in the datapath's
- flow tables</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="showStatus"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">showStatus</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**flowParameters</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-pysrc.html#DpctlCliDriver.showStatus">source code</a></span>
- </td>
- </tr></table>
-
- <p>showStatus gives a series of key-value pairs that report the status of
- switch. If key is specified, only the key-value pairs whose key names
- begin with key are printed.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.toolsdriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.toolsdriver-module.html
deleted file mode 100644
index ca9a9d5..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.toolsdriver-module.html
+++ /dev/null
@@ -1,163 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.toolsdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Module toolsdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.toolsdriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module toolsdriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.toolsdriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 26-Nov-2012
-
-author:: Raghav Kashyap( raghavkashyap@paxterrasolutions.com )
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- ( at your option ) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.cli.toolsdriver.Tools-class.html" class="summary-name">Tools</a>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.toolsdriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.toolsdriver-pysrc.html
deleted file mode 100644
index 57039f5..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.toolsdriver-pysrc.html
+++ /dev/null
@@ -1,219 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.toolsdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- Module toolsdriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.toolsdriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.cli.toolsdriver-module.html">Module TestON.drivers.common.cli.toolsdriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 26-Nov-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">author:: Raghav Kashyap( raghavkashyap@paxterrasolutions.com )</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-docstring"> ( at your option ) any later version.</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package TestON.drivers.common=TestON.drivers.common-module.html"><a title="TestON.drivers.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module TestON.drivers.common.clidriver=TestON.drivers.common.clidriver-module.html"><a title="TestON.drivers.common.clidriver" class="py-name" href="#" onclick="return doclink('link-2', 'clidriver', 'link-2');">clidriver</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Class TestON.bin.cli.CLI=TestON.bin.cli.CLI-class.html,Class TestON.drivers.common.clidriver.CLI=TestON.drivers.common.clidriver.CLI-class.html"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-3', 'CLI', 'link-3');">CLI</a></tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> </tt>
-<a name="Tools"></a><div id="Tools-def"><a name="L25"></a><tt class="py-lineno">25</tt> <a class="py-toggle" href="#" id="Tools-toggle" onclick="return toggle('Tools');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.cli.toolsdriver.Tools-class.html">Tools</a><tt class="py-op">(</tt> <tt class="py-base-class">CLI</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Tools-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="Tools-expanded"><a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> <tt class="py-comment"># The common functions for Tools included in toolsdriver</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> </tt>
-<a name="Tools.__init__"></a><div id="Tools.__init__-def"><a name="L28"></a><tt class="py-lineno">28</tt> <a class="py-toggle" href="#" id="Tools.__init__-toggle" onclick="return toggle('Tools.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Tools.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="Tools.__init__-expanded"><a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-4" class="py-name"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-4', 'CLI', 'link-3');">CLI</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-5', '__init__', 'link-5');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.toolsdriver.Tools-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.toolsdriver.Tools-class.html
deleted file mode 100644
index 6a30269..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.cli.toolsdriver.Tools-class.html
+++ /dev/null
@@ -1,391 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.cli.toolsdriver.Tools</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.cli-module.html">Package cli</a> ::
- <a href="TestON.drivers.common.cli.toolsdriver-module.html">Module toolsdriver</a> ::
- Class Tools
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.cli.toolsdriver.Tools-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Tools</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.cli.toolsdriver-pysrc.html#Tools">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_tools" name="class_hierarchy_for_tools">
-<area shape="rect" id="node1" href="TestON.drivers.common.cli.toolsdriver.Tools-class.html" title="Tools" alt="" coords="5,6,59,31"/>
-<area shape="rect" id="node2" href="TestON.drivers.common.clidriver.CLI-class.html" title="clidriver.CLI" alt="" coords="83,6,175,31"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="component.Component" alt="" coords="200,6,357,31"/>
-</map>
- <img src="class_hierarchy_for_tools.gif" alt='' usemap="#class_hierarchy_for_tools" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.cli.toolsdriver-pysrc.html#Tools.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span>
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.
- <em>(Inherited from <a href="TestON.drivers.common.clidriver.CLI-class.html">TestON.drivers.common.clidriver.CLI</a>)</em></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.cli.toolsdriver-pysrc.html#Tools.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.clidriver-module.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.clidriver-module.html
deleted file mode 100644
index 9a8edbf..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.clidriver-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.clidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- Module clidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.clidriver-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module clidriver</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 24-Oct-2012
-
-author:s: Anil Kumar ( anilkumar.s@paxterrasolutions.com ),
- Raghav Kashyap( raghavkashyap@paxterrasolutions.com )
-
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- ( at your option ) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.drivers.common.clidriver.CLI-class.html" class="summary-name">CLI</a><br />
- This will define common functions for CLI included.
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.clidriver-pysrc.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.clidriver-pysrc.html
deleted file mode 100644
index c52c04f..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.clidriver-pysrc.html
+++ /dev/null
@@ -1,534 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.clidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- Module clidriver
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.clidriver-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.drivers.common.clidriver-module.html">Module TestON.drivers.common.clidriver</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 24-Oct-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">author:s: Anil Kumar ( anilkumar.s@paxterrasolutions.com ),</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"> Raghav Kashyap( raghavkashyap@paxterrasolutions.com )</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring"> ( at your option ) any later version.</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">pexpect</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package TestON.drivers=TestON.drivers-module.html"><a title="TestON.drivers" class="py-name" href="#" onclick="return doclink('link-0', 'drivers', 'link-0');">drivers</a></tt><tt class="py-op">.</tt><tt class="py-name">component</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Component</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> </tt>
-<a name="CLI"></a><div id="CLI-def"><a name="L31"></a><tt class="py-lineno"> 31</tt> <a class="py-toggle" href="#" id="CLI-toggle" onclick="return toggle('CLI');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.drivers.common.clidriver.CLI-class.html">CLI</a><tt class="py-op">(</tt> <tt class="py-base-class">Component</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="CLI-expanded"><a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-docstring"> This will define common functions for CLI included.</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="CLI.__init__"></a><div id="CLI.__init__-def"><a name="L36"></a><tt class="py-lineno"> 36</tt> <a class="py-toggle" href="#" id="CLI.__init__-toggle" onclick="return toggle('CLI.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.clidriver.CLI-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.__init__-expanded"><a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt class="py-name">Component</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-1', '__init__', 'link-1');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="CLI.connect"></a><div id="CLI.connect-def"><a name="L39"></a><tt class="py-lineno"> 39</tt> <a class="py-toggle" href="#" id="CLI.connect-toggle" onclick="return toggle('CLI.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.clidriver.CLI-class.html#connect">connect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">connectargs</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.connect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.connect-expanded"><a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring"> Connection will establish to the remote host using ssh.</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring"> It will take user_name ,ip_address and password as arguments<br></tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-docstring"> and will return the handle.</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">connectargs</tt><tt class="py-op">:</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">vars</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">connectargs</tt><tt class="py-op">[</tt> <tt class="py-name">key</tt> <tt class="py-op">]</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">connect_result</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-2" class="py-name" targets="Class TestON.bin.cli.CLI=TestON.bin.cli.CLI-class.html,Class TestON.drivers.common.clidriver.CLI=TestON.drivers.common.clidriver.CLI-class.html"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-2', 'CLI', 'link-2');">CLI</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.connect()=TestON.bin.generatedriver.GenerateDriver-class.html#connect,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect,Method TestON.drivers.common.apidriver.API.connect()=TestON.drivers.common.apidriver.API-class.html#connect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.connect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect,Method TestON.drivers.common.clidriver.CLI.connect()=TestON.drivers.common.clidriver.CLI-class.html#connect"><a title="TestON.bin.generatedriver.GenerateDriver.connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect
-TestON.drivers.common.apidriver.API.connect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect
-TestON.drivers.common.clidriver.CLI.connect" class="py-name" href="#" onclick="return doclink('link-3', 'connect', 'link-3');">connect</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">ssh_newkey</tt> <tt class="py-op">=</tt> <tt class="py-string">'Are you sure you want to continue connecting'</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">refused</tt> <tt class="py-op">=</tt> <tt class="py-string">"ssh: connect to host "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> <tt class="py-string">" port 22: Connection refused"</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt><tt class="py-op">:</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">spawn</tt><tt class="py-op">(</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-string">'ssh -p '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">port</tt> <tt class="py-op">+</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-string">' '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-string">'@'</tt> <tt class="py-op">+</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">env</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"TERM"</tt><tt class="py-op">:</tt> <tt class="py-string">"xterm-mono"</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">maxread</tt><tt class="py-op">=</tt><tt class="py-number">50000</tt> <tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">spawn</tt><tt class="py-op">(</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-string">'ssh -X '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-string">'@'</tt> <tt class="py-op">+</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">env</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"TERM"</tt><tt class="py-op">:</tt> <tt class="py-string">"xterm-mono"</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">maxread</tt><tt class="py-op">=</tt><tt class="py-number">1000000</tt><tt class="py-op">,</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">logfile</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">logfile_handler</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">5</tt><tt class="py-op">:</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">ssh_newkey</tt><tt class="py-op">,</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-string">'password:|Password:'</tt><tt class="py-op">,</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">,</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">refused</tt><tt class="py-op">,</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-string">'teston>'</tt><tt class="py-op">,</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-string">'>|#|\$'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> <tt class="py-comment"># Accept key, then expect either a password prompt or access</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-4', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ssh key confirmation received, send yes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-5', 'sendline', 'link-5');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">'yes'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-number">5</tt> <tt class="py-comment"># Run the loop again</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> <tt class="py-comment"># Password required</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt><tt class="py-op">:</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-6', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-string">"ssh connection asked for password, gave password"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-7', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Server asked for password, but none was "</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-string">"given in the .topo file. Trying "</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-string">"no password."</tt><tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-8', 'sendline', 'link-5');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">j</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-string">'>|#|\$'</tt><tt class="py-op">,</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-string">'password:|Password:'</tt><tt class="py-op">,</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">j</tt> <tt class="py-op">!=</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-10', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Incorrect Password"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-11', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-12', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Connection timeout"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> <tt class="py-comment"># timeout</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-13', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-14', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-string">"No route to the Host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-15', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-16', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-string">"ssh: connect to host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-string">" port 22: Connection refused"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">6</tt><tt class="py-op">:</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-17', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Password not required logged in"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-18', 'sendline', 'link-5');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">'>|#|\$'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-</div><a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> </tt>
-<a name="CLI.disconnect"></a><div id="CLI.disconnect-def"><a name="L131"></a><tt class="py-lineno">131</tt> <a class="py-toggle" href="#" id="CLI.disconnect-toggle" onclick="return toggle('CLI.disconnect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.clidriver.CLI-class.html#disconnect">disconnect</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.disconnect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.disconnect-expanded"><a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-19" class="py-name"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-19', 'CLI', 'link-2');">CLI</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.disconnect()=TestON.bin.generatedriver.GenerateDriver-class.html#disconnect,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#disconnect,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#disconnect,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#disconnect,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#disconnect,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#disconnect,Method TestON.drivers.common.clidriver.CLI.disconnect()=TestON.drivers.common.clidriver.CLI-class.html#disconnect"><a title="TestON.bin.generatedriver.GenerateDriver.disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect
-TestON.drivers.common.clidriver.CLI.disconnect" class="py-name" href="#" onclick="return doclink('link-20', 'disconnect', 'link-20');">disconnect</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-</div><a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-comment"># self.execute( cmd="exit",timeout=120,prompt="(.*)" )</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> </tt>
-<a name="CLI.execute"></a><div id="CLI.execute-def"><a name="L136"></a><tt class="py-lineno">136</tt> <a class="py-toggle" href="#" id="CLI.execute-toggle" onclick="return toggle('CLI.execute');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.clidriver.CLI-class.html#execute">execute</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">execparams</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.execute-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.execute-expanded"><a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"><tt class="py-docstring"> It facilitates the command line execution of a given command. It has arguments as :</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"><tt class="py-docstring"> cmd => represents command to be executed,</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"><tt class="py-docstring"> prompt => represents expect command prompt or output,</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"><tt class="py-docstring"> timeout => timeout for command execution,</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"><tt class="py-docstring"> more => to provide a key press if it is on.</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"><tt class="py-docstring"> It will return output of command exection.</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">super</tt><tt class="py-op">(</tt> <tt id="link-21" class="py-name"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-21', 'CLI', 'link-2');">CLI</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Method TestON.bin.generatedriver.GenerateDriver.execute()=TestON.bin.generatedriver.GenerateDriver-class.html#execute,Method TestON.drivers.common.clidriver.CLI.execute()=TestON.drivers.common.clidriver.CLI-class.html#execute"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-22', 'execute', 'link-22');">execute</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">defaultPrompt</tt> <tt class="py-op">=</tt> <tt class="py-string">'.*[$>\#]'</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method TestON.core.openspeak.OpenSpeak.parse_args()=TestON.core.openspeak.OpenSpeak-class.html#parse_args"><a title="TestON.core.openspeak.OpenSpeak.parse_args" class="py-name" href="#" onclick="return doclink('link-23', 'parse_args', 'link-23');">parse_args</a></tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-string">"CMD"</tt><tt class="py-op">,</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-string">"TIMEOUT"</tt><tt class="py-op">,</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-string">"PROMPT"</tt><tt class="py-op">,</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-string">"MORE"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-op">**</tt><tt class="py-name">execparams</tt> <tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">expectPrompt</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"PROMPT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"PROMPT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">else</tt> <tt class="py-name">defaultPrompt</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">timeoutVar</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TIMEOUT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"TIMEOUT"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">else</tt> <tt class="py-number">10</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"CMD"</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"CMD"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-number">0</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"MORE"</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"MORE"</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-string">" "</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-24', 'sendline', 'link-5');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lastCommand</tt> <tt class="py-op">=</tt> <tt class="py-name">cmd</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">expectPrompt</tt><tt class="py-op">,</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-string">"--More--"</tt><tt class="py-op">,</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-string">'Command not found.'</tt><tt class="py-op">,</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">,</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-string">"^:$"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeoutVar</tt> <tt class="py-op">)</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">index</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">after</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-25', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-string">"Executed :"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" \t\t Expected Prompt '"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">expectPrompt</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"' Found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">index</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#send"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-26', 'send', 'link-26');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"MORE"</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-27', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-string">"Found More screen to go , Sending a key to proceed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-name">indexMore</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">"--More--"</tt><tt class="py-op">,</tt> <tt class="py-name">expectPrompt</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeoutVar</tt> <tt class="py-op">)</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">indexMore</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-28', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-string">"Found anoother More screen to go , Sending a key to proceed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send" class="py-name" href="#" onclick="return doclink('link-29', 'send', 'link-26');">send</a></tt><tt class="py-op">(</tt> <tt class="py-name">args</tt><tt class="py-op">[</tt> <tt class="py-string">"MORE"</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">indexMore</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">"--More--"</tt><tt class="py-op">,</tt> <tt class="py-name">expectPrompt</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeoutVar</tt> <tt class="py-op">)</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">index</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-30', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-31', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Command not found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">index</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-32', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-33', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Expected Prompt not found , Time Out!!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-34', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-35', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">expectPrompt</tt> <tt class="py-op">)</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">"Expected Prompt not found , Time Out!!"</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">index</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.send( args[ "MORE" ] )</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">sendcontrol</tt><tt class="py-op">(</tt> <tt class="py-string">"D"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-36', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-string">"Found More screen to go , Sending a key to proceed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-name">indexMore</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">"^:$"</tt><tt class="py-op">,</tt> <tt class="py-name">expectPrompt</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeoutVar</tt> <tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">indexMore</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-37', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-string">"Found another More screen to go , Sending a key to proceed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">sendcontrol</tt><tt class="py-op">(</tt> <tt class="py-string">"D"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-name">indexMore</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">"^:$"</tt><tt class="py-op">,</tt> <tt class="py-name">expectPrompt</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">timeoutVar</tt> <tt class="py-op">)</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">last_response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name" targets="Method TestON.drivers.common.clidriver.CLI.remove_contol_chars()=TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars"><a title="TestON.drivers.common.clidriver.CLI.remove_contol_chars" class="py-name" href="#" onclick="return doclink('link-38', 'remove_contol_chars', 'link-38');">remove_contol_chars</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> <tt class="py-op">)</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">LASTRSP</tt> </tt>
-</div><a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> </tt>
-<a name="CLI.remove_contol_chars"></a><div id="CLI.remove_contol_chars-def"><a name="L222"></a><tt class="py-lineno">222</tt> <a class="py-toggle" href="#" id="CLI.remove_contol_chars-toggle" onclick="return toggle('CLI.remove_contol_chars');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars">remove_contol_chars</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.remove_contol_chars-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.remove_contol_chars-expanded"><a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-comment"># RE_XML_ILLEGAL = '([\u0000-\u0008\u000b-\u000c\u000e-\u001f\ufffe-\uffff])|([%s-%s][^%s-%s])|([^%s-%s][%s-%s])|([%s-%s]$)|(^[%s-%s])'%( unichr( 0xd800 ),unichr( 0xdbff ),unichr( 0xdc00 ),unichr( 0xdfff ),unichr( 0xd800 ),unichr( 0xdbff ),unichr( 0xdc00 ),unichr( 0xdfff ),unichr( 0xd800 ),unichr( 0xdbff ),unichr( 0xdc00 ),unichr( 0xdfff ) )</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-comment"># response = re.sub( RE_XML_ILLEGAL, "\n", response )</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">r"[\x01-\x1F\x7F]"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-comment"># response = re.sub( r"\[\d+\;1H", "\n", response )</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">r"\[\d+\;\d+H"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">response</tt> </tt>
-</div><a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> </tt>
-<a name="CLI.runAsSudoUser"></a><div id="CLI.runAsSudoUser-def"><a name="L230"></a><tt class="py-lineno">230</tt> <a class="py-toggle" href="#" id="CLI.runAsSudoUser-toggle" onclick="return toggle('CLI.runAsSudoUser');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser">runAsSudoUser</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">handle</tt><tt class="py-op">,</tt> <tt class="py-param">pwd</tt><tt class="py-op">,</tt> <tt class="py-param">default</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.runAsSudoUser-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.runAsSudoUser-expanded"><a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-string">".ssword:*"</tt><tt class="py-op">,</tt> <tt id="link-39" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-39', 'default', 'link-39');">default</a></tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-40', 'sendline', 'link-5');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-41', 'sendline', 'link-5');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"\r"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt id="link-42" class="py-name"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-42', 'default', 'link-39');">default</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-43', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-44', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Unable to run as Sudo user"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">handle</tt> </tt>
-</div><a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> </tt>
-<a name="CLI.onfail"></a><div id="CLI.onfail-def"><a name="L245"></a><tt class="py-lineno">245</tt> <a class="py-toggle" href="#" id="CLI.onfail-toggle" onclick="return toggle('CLI.onfail');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.clidriver.CLI-class.html#onfail">onfail</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.onfail-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.onfail-expanded"><a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">'onfail'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-name">commandList</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">componentDictionary</tt><tt class="py-op">[</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'onfail'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt> <tt class="py-op">)</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">command</tt> <tt class="py-keyword">in</tt> <tt class="py-name">commandList</tt><tt class="py-op">:</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.bin.generatedriver.GenerateDriver.execute
-TestON.drivers.common.clidriver.CLI.execute" class="py-name" href="#" onclick="return doclink('link-45', 'execute', 'link-22');">execute</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-name">cmd</tt><tt class="py-op">=</tt><tt class="py-name">command</tt><tt class="py-op">,</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt id="link-46" class="py-name" targets="Variable TestON.bin.cli.CLI.prompt=TestON.bin.cli.CLI-class.html#prompt"><a title="TestON.bin.cli.CLI.prompt" class="py-name" href="#" onclick="return doclink('link-46', 'prompt', 'link-46');">prompt</a></tt><tt class="py-op">=</tt><tt class="py-string">"(.*)"</tt><tt class="py-op">,</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> </tt>
-<a name="CLI.secureCopy"></a><div id="CLI.secureCopy-def"><a name="L255"></a><tt class="py-lineno">255</tt> <a class="py-toggle" href="#" id="CLI.secureCopy-toggle" onclick="return toggle('CLI.secureCopy');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy">secureCopy</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">user_name</tt><tt class="py-op">,</tt> <tt class="py-param">ip_address</tt><tt class="py-op">,</tt> <tt class="py-param">filepath</tt><tt class="py-op">,</tt> <tt class="py-param">pwd</tt><tt class="py-op">,</tt> <tt class="py-param">dst_path</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CLI.secureCopy-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="CLI.secureCopy-expanded"><a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-comment"># scp openflow@192.168.56.101:/home/openflow/sample</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-comment"># /home/paxterra/Desktop/</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"><tt class="py-docstring"> Connection will establish to the remote host using ssh.</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"><tt class="py-docstring"> It will take user_name ,ip_address and password as arguments<br></tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"><tt class="py-docstring"> and will return the handle.</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-name">ssh_newkey</tt> <tt class="py-op">=</tt> <tt class="py-string">'Are you sure you want to continue connecting'</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-name">refused</tt> <tt class="py-op">=</tt> <tt class="py-string">"ssh: connect to host "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> <tt class="py-string">" port 22: Connection refused"</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">'scp '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">user_name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">'@'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">':'</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">filepath</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">dst_path</tt> <tt class="py-op">)</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-47', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Sending: "</tt> <tt class="py-op">+</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">spawn</tt><tt class="py-op">(</tt> <tt class="py-name">cmd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-name">ssh_newkey</tt><tt class="py-op">,</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-string">'password:'</tt><tt class="py-op">,</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt><tt class="py-op">,</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">TIMEOUT</tt><tt class="py-op">,</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-name">refused</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-number">120</tt> <tt class="py-op">)</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-48', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ssh key confirmation received, send yes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-49', 'sendline', 'link-5');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">'yes'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-op">[</tt> <tt class="py-name">ssh_newkey</tt><tt class="py-op">,</tt> <tt class="py-string">'password:'</tt><tt class="py-op">,</tt> <tt class="py-name">pexpect</tt><tt class="py-op">.</tt><tt class="py-name">EOF</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-50', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ssh connection asked for password, gave password"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-51', 'sendline', 'link-5');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-name">pwd</tt> <tt class="py-op">)</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-comment"># self.handle.expect( user_name )</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-52', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-53', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Connection timeout"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> <tt class="py-comment"># timeout</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-54', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-55', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-string">"No route to the Host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-name">user_name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-56', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-57', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-string">"ssh: connect to host "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-string">" port 22: Connection refused"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-58', 'sendline', 'link-5');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> </tt>
-</div></div><a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.drivers.common.clidriver.CLI-class.html b/TestON/Documentation/TestON_Document/TestON.drivers.common.clidriver.CLI-class.html
deleted file mode 100644
index 7cd1f12..0000000
--- a/TestON/Documentation/TestON_Document/TestON.drivers.common.clidriver.CLI-class.html
+++ /dev/null
@@ -1,484 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.drivers.common.clidriver.CLI</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.drivers-module.html">Package drivers</a> ::
- <a href="TestON.drivers.common-module.html">Package common</a> ::
- <a href="TestON.drivers.common.clidriver-module.html">Module clidriver</a> ::
- Class CLI
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.drivers.common.clidriver.CLI-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class CLI</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_cli_2" name="class_hierarchy_for_cli_2">
-<area shape="rect" id="node1" href="TestON.drivers.common.clidriver.CLI-class.html" title="CLI" alt="" coords="5,6,48,31"/>
-<area shape="rect" id="node2" href="javascript:void(0);" title="component.Component" alt="" coords="72,6,229,31"/>
-</map>
- <img src="class_hierarchy_for_cli_2.gif" alt='' usemap="#class_hierarchy_for_cli_2" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<p>This will define common functions for CLI included.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see help(type(x)) for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**connectargs</span>)</span><br />
- Connection will establish to the remote host using ssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.connect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#disconnect" class="summary-sig-name">disconnect</a>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.disconnect">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">**execparams</span>)</span><br />
- It facilitates the command line execution of a given command.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="remove_contol_chars"></a><span class="summary-sig-name">remove_contol_chars</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">response</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.remove_contol_chars">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="runAsSudoUser"></a><span class="summary-sig-name">runAsSudoUser</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">default</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.runAsSudoUser">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="onfail"></a><span class="summary-sig-name">onfail</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.onfail">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy" class="summary-sig-name">secureCopy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">user_name</span>,
- <span class="summary-sig-arg">ip_address</span>,
- <span class="summary-sig-arg">filepath</span>,
- <span class="summary-sig-arg">pwd</span>,
- <span class="summary-sig-arg">dst_path</span>)</span><br />
- Connection will establish to the remote host using ssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>component.Component</code></b>:
- <code>__getattr__</code>,
- <code>cleanup</code>,
- <code>close_log_handles</code>,
- <code>config</code>,
- <code>experimentRun</code>,
- <code>get_version</code>,
- <code>log</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see help(type(x)) for signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**connectargs</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.connect">source code</a></span>
- </td>
- </tr></table>
-
- <p>Connection will establish to the remote host using ssh. It will take
- user_name ,ip_address and password as arguments<br> and will return
- the handle.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.connect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="disconnect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">disconnect</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.disconnect">source code</a></span>
- </td>
- </tr></table>
-
-
- <dl class="fields">
- <dt>Overrides:
- component.Component.disconnect
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="execute"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">execute</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">**execparams</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.execute">source code</a></span>
- </td>
- </tr></table>
-
- <p>It facilitates the command line execution of a given command. It has
- arguments as : cmd => represents command to be executed, prompt =>
- represents expect command prompt or output, timeout => timeout for
- command execution, more => to provide a key press if it is on.</p>
- <p>It will return output of command exection.</p>
- <dl class="fields">
- <dt>Overrides:
- component.Component.execute
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="secureCopy"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">secureCopy</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">user_name</span>,
- <span class="sig-arg">ip_address</span>,
- <span class="sig-arg">filepath</span>,
- <span class="sig-arg">pwd</span>,
- <span class="sig-arg">dst_path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.drivers.common.clidriver-pysrc.html#CLI.secureCopy">source code</a></span>
- </td>
- </tr></table>
-
- <p>Connection will establish to the remote host using ssh. It will take
- user_name ,ip_address and password as arguments<br> and will return
- the handle.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples-module.html b/TestON/Documentation/TestON_Document/TestON.examples-module.html
deleted file mode 100644
index 20ca846..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples-module.html
+++ /dev/null
@@ -1,191 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- Package examples
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package examples</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.examples-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.examples.Assert-module.html">TestON.examples.Assert</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.Assert.Assert-module.html">TestON.examples.Assert.Assert</a></strong>: <em class="summary">TestON is free software: you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples.CaseParams-module.html">TestON.examples.CaseParams</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.CaseParams.CaseParams-module.html">TestON.examples.CaseParams.CaseParams</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples.ExperimentTest-module.html">TestON.examples.ExperimentTest</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.ExperimentTest.ExperimentTest-module.html">TestON.examples.ExperimentTest.ExperimentTest</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples.StepParams-module.html">TestON.examples.StepParams</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.StepParams.StepParams-module.html">TestON.examples.StepParams.StepParams</a></strong>: <em class="summary">Created on 28-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples.Topology-module.html">TestON.examples.Topology</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.Topology.Topology-module.html">TestON.examples.Topology.Topology</a></strong>: <em class="summary">Created on 28-Nov-2012</em> </li>
- </ul>
- </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples-pysrc.html b/TestON/Documentation/TestON_Document/TestON.examples-pysrc.html
deleted file mode 100644
index 6cd8e68..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples-pysrc.html
+++ /dev/null
@@ -1,122 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- Package examples
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.examples-module.html">Package TestON.examples</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.Assert-module.html b/TestON/Documentation/TestON_Document/TestON.examples.Assert-module.html
deleted file mode 100644
index 3608c94..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.Assert-module.html
+++ /dev/null
@@ -1,168 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.Assert</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- Package Assert
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.Assert-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package Assert</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.examples.Assert-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.examples.Assert.Assert-module.html">TestON.examples.Assert.Assert</a></strong>: <em class="summary">TestON is free software: you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.</em> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.Assert-pysrc.html b/TestON/Documentation/TestON_Document/TestON.examples.Assert-pysrc.html
deleted file mode 100644
index 6c6ca2e..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.Assert-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.Assert</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- Package Assert
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.Assert-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.examples.Assert-module.html">Package TestON.examples.Assert</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.Assert.Assert-module.html b/TestON/Documentation/TestON_Document/TestON.examples.Assert.Assert-module.html
deleted file mode 100644
index 44acb61..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.Assert.Assert-module.html
+++ /dev/null
@@ -1,178 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.Assert.Assert</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- <a href="TestON.examples.Assert-module.html">Package Assert</a> ::
- Module Assert
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.Assert.Assert-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module Assert</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.examples.Assert.Assert-pysrc.html">source code</a></span></p>
-<p>TestON is free software: you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by the
- Free Software Foundation, either version 2 of the License, or (at your
- option) any later version.</p>
- <p>TestON is distributed in the hope that it will be useful, but WITHOUT
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
- more details.</p>
- <p>You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.examples.Assert.Assert.Assert-class.html" class="summary-name">Assert</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.Assert.Assert-pysrc.html b/TestON/Documentation/TestON_Document/TestON.examples.Assert.Assert-pysrc.html
deleted file mode 100644
index f3a2edf..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.Assert.Assert-pysrc.html
+++ /dev/null
@@ -1,173 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.Assert.Assert</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- <a href="TestON.examples.Assert-module.html">Package Assert</a> ::
- Module Assert
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.Assert.Assert-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.examples.Assert.Assert-module.html">Module TestON.examples.Assert.Assert</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"> (at your option) any later version.</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="Assert"></a><div id="Assert-def"><a name="L18"></a><tt class="py-lineno">18</tt> <a class="py-toggle" href="#" id="Assert-toggle" onclick="return toggle('Assert');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.examples.Assert.Assert.Assert-class.html">Assert</a> <tt class="py-op">:</tt> </tt>
-</div><div id="Assert-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="Assert-expanded"><a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"> </tt>
-<a name="Assert.__init__"></a><div id="Assert.__init__-def"><a name="L20"></a><tt class="py-lineno">20</tt> <a class="py-toggle" href="#" id="Assert.__init__-toggle" onclick="return toggle('Assert.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.examples.Assert.Assert.Assert-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="Assert.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="Assert.__init__-expanded"><a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> </tt>
-<a name="Assert.CASE1"></a><div id="Assert.CASE1-def"><a name="L23"></a><tt class="py-lineno">23</tt> <a class="py-toggle" href="#" id="Assert.CASE1-toggle" onclick="return toggle('Assert.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.examples.Assert.Assert.Assert-class.html#CASE1">CASE1</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">main</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
-</div><div id="Assert.CASE1-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="Assert.CASE1-expanded"><a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-1', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt><tt class="py-string">"Using assert to verify the result"</tt><tt class="py-op">)</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-2', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Using assert_equal to verify the result is equivalent or not"</tt><tt class="py-op">)</tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"> <tt class="py-name">expect</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> <tt class="py-name">actual</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-3', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Method TestON.core.teston.TestON.response_parser()=TestON.core.teston.TestON-class.html#response_parser"><a title="TestON.core.teston.TestON.response_parser" class="py-name" href="#" onclick="return doclink('link-4', 'response_parser', 'link-4');">response_parser</a></tt><tt class="py-op">(</tt><tt class="py-string">'<real></real><imag>2</imag><__complex__>true</__complex__>'</tt><tt class="py-op">,</tt> <tt class="py-string">"json"</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt><tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">expect</tt><tt class="py-op">,</tt><tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">actual</tt><tt class="py-op">,</tt><tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"expect is equal to actual"</tt><tt class="py-op">,</tt><tt id="link-5" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-5', 'onfail', 'link-5');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"expect is not equal to actual"</tt><tt class="py-op">)</tt> </tt>
-<a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-6', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Using assert_matches to verify the result matches or not"</tt><tt class="py-op">)</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> <tt class="py-name">expect</tt> <tt class="py-op">=</tt> <tt class="py-string">"Res(.*)"</tt> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> <tt class="py-name">actual</tt> <tt class="py-op">=</tt> <tt class="py-string">"Result"</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_matches</tt><tt class="py-op">(</tt><tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">expect</tt><tt class="py-op">,</tt><tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">actual</tt><tt class="py-op">,</tt><tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"expect is macthes to actual"</tt><tt class="py-op">,</tt><tt id="link-7" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-7', 'onfail', 'link-5');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"expect is not matches to actual"</tt><tt class="py-op">)</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-8', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Using assert_greater to verify the result greater or not"</tt><tt class="py-op">)</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-name">expect</tt> <tt class="py-op">=</tt> <tt class="py-number">10</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-name">actual</tt> <tt class="py-op">=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_greater</tt><tt class="py-op">(</tt><tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">actual</tt><tt class="py-op">,</tt><tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">expect</tt><tt class="py-op">,</tt><tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"expect is greater than the actual"</tt><tt class="py-op">,</tt><tt id="link-9" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-9', 'onfail', 'link-5');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"expect is not greater than the actual"</tt><tt class="py-op">)</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-10', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Using assert_lesser to verify the result lesser or not"</tt><tt class="py-op">)</tt> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-name">expect</tt> <tt class="py-op">=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-name">actual</tt> <tt class="py-op">=</tt> <tt class="py-number">10</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_lesser</tt><tt class="py-op">(</tt><tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">actual</tt><tt class="py-op">,</tt><tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">expect</tt><tt class="py-op">,</tt><tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"expect is lesser than the actual"</tt><tt class="py-op">,</tt><tt id="link-11" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-11', 'onfail', 'link-5');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"expect is not lesser than the actual"</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.Assert.Assert.Assert-class.html b/TestON/Documentation/TestON_Document/TestON.examples.Assert.Assert.Assert-class.html
deleted file mode 100644
index da00f2d..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.Assert.Assert.Assert-class.html
+++ /dev/null
@@ -1,168 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.Assert.Assert.Assert</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- <a href="TestON.examples.Assert-module.html">Package Assert</a> ::
- <a href="TestON.examples.Assert.Assert-module.html">Module Assert</a> ::
- Class Assert
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.Assert.Assert.Assert-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Assert</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.examples.Assert.Assert-pysrc.html#Assert">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.examples.Assert.Assert-pysrc.html#Assert.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1"></a><span class="summary-sig-name">CASE1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.examples.Assert.Assert-pysrc.html#Assert.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.CaseParams-module.html b/TestON/Documentation/TestON_Document/TestON.examples.CaseParams-module.html
deleted file mode 100644
index 93108c9..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.CaseParams-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.CaseParams</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- Package CaseParams
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.CaseParams-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package CaseParams</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.examples.CaseParams-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.examples.CaseParams.CaseParams-module.html">TestON.examples.CaseParams.CaseParams</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.CaseParams-pysrc.html b/TestON/Documentation/TestON_Document/TestON.examples.CaseParams-pysrc.html
deleted file mode 100644
index b74e62f..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.CaseParams-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.CaseParams</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- Package CaseParams
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.CaseParams-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.examples.CaseParams-module.html">Package TestON.examples.CaseParams</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.CaseParams.CaseParams-module.html b/TestON/Documentation/TestON_Document/TestON.examples.CaseParams.CaseParams-module.html
deleted file mode 100644
index c850761..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.CaseParams.CaseParams-module.html
+++ /dev/null
@@ -1,187 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.CaseParams.CaseParams</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- <a href="TestON.examples.CaseParams-module.html">Package CaseParams</a> ::
- Module CaseParams
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.CaseParams.CaseParams-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module CaseParams</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.examples.CaseParams.CaseParams-pysrc.html">source code</a></span></p>
-<p>Created on 26-Nov-2012</p>
-
-<hr />
-<div class="fields"> <p><strong>Author:</strong>
- Anil Kumar (anilkumar.s@paxterrasolutions.com)
- <p>TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published
- by the Free Software Foundation, either version 2 of the License,
- or (at your option) any later version.</p>
- <p>TestON is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.</p>
- <p>You should have received a copy of the GNU General Public
- License along with TestON. If not, see
- <http://www.gnu.org/licenses/>.</p>
- </p>
-</div><!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.examples.CaseParams.CaseParams.CaseParams-class.html" class="summary-name">CaseParams</a><br />
- This example shows the usage of the CASE level parameters, in params file the
-[[CASE]]
- 'destination' = 'h2'
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.CaseParams.CaseParams-pysrc.html b/TestON/Documentation/TestON_Document/TestON.examples.CaseParams.CaseParams-pysrc.html
deleted file mode 100644
index 40ad03a..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.CaseParams.CaseParams-pysrc.html
+++ /dev/null
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.CaseParams.CaseParams</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- <a href="TestON.examples.CaseParams-module.html">Package CaseParams</a> ::
- Module CaseParams
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.CaseParams.CaseParams-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.examples.CaseParams.CaseParams-module.html">Module TestON.examples.CaseParams.CaseParams</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 26-Nov-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">@author: Anil Kumar (anilkumar.s@paxterrasolutions.com)</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-docstring"> (at your option) any later version.</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="CaseParams"></a><div id="CaseParams-def"><a name="L21"></a><tt class="py-lineno">21</tt> <a class="py-toggle" href="#" id="CaseParams-toggle" onclick="return toggle('CaseParams');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.examples.CaseParams.CaseParams.CaseParams-class.html">CaseParams</a><tt class="py-op">:</tt> </tt>
-</div><div id="CaseParams-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="CaseParams-expanded"><a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"><tt class="py-docstring"> This example shows the usage of the CASE level parameters, in params file the</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"><tt class="py-docstring"> [[CASE]]</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"><tt class="py-docstring"> 'destination' = 'h2'</tt> </tt>
-<a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"><tt class="py-docstring"> We can get this CASE level parameter like :</tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"><tt class="py-docstring"> main.params['CASE1']['destination']</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"><tt class="py-docstring"> cd ~/bin/</tt> </tt>
-<a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"><tt class="py-docstring"> ofautomation>run CaseParams example 1</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"><tt class="py-docstring"> will execute this example.</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> </tt>
-<a name="CaseParams.__init__"></a><div id="CaseParams.__init__-def"><a name="L36"></a><tt class="py-lineno">36</tt> <a class="py-toggle" href="#" id="CaseParams.__init__-toggle" onclick="return toggle('CaseParams.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CaseParams.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="CaseParams.__init__-expanded"><a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-</div><a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> </tt>
-<a name="CaseParams.CASE1"></a><div id="CaseParams.CASE1-def"><a name="L39"></a><tt class="py-lineno">39</tt> <a class="py-toggle" href="#" id="CaseParams.CASE1-toggle" onclick="return toggle('CaseParams.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.examples.CaseParams.CaseParams.CaseParams-class.html#CASE1">CASE1</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">main</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CaseParams.CASE1-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="CaseParams.CASE1-expanded"><a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"><tt class="py-docstring"> This test case will showcase usage of CASE level parameters to specify the host as h2</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-1', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt><tt class="py-string">"Using CASE level parameters to specify the host as h2"</tt><tt class="py-op">)</tt> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-2', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Host IP Checking using checkIP"</tt><tt class="py-op">)</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.checkIP()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#checkIP"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.checkIP" class="py-name" href="#" onclick="return doclink('link-3', 'checkIP', 'link-3');">checkIP</a></tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'CASE1'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'destination'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-4', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Verifying the result"</tt><tt class="py-op">)</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt><tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt><tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">result</tt><tt class="py-op">,</tt><tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Host h2 IP address configured"</tt><tt class="py-op">,</tt><tt id="link-5" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-5', 'onfail', 'link-5');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Host h2 IP address didn't configured"</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> </tt>
-<a name="CaseParams.CASE2"></a><div id="CaseParams.CASE2-def"><a name="L50"></a><tt class="py-lineno">50</tt> <a class="py-toggle" href="#" id="CaseParams.CASE2-toggle" onclick="return toggle('CaseParams.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.examples.CaseParams.CaseParams.CaseParams-class.html#CASE2">CASE2</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">main</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CaseParams.CASE2-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="CaseParams.CASE2-expanded"><a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"><tt class="py-docstring"> This test case will showcase usage of CASE level parameters to specify the host as h3</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-6', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt><tt class="py-string">"Using CASE level parameters to specify the host as h3"</tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-7', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Host IP Checking using checkIP"</tt><tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.checkIP" class="py-name" href="#" onclick="return doclink('link-8', 'checkIP', 'link-3');">checkIP</a></tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'CASE2'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'destination'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-9', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Verifying the result"</tt><tt class="py-op">)</tt> </tt>
-<a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt><tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt><tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">result</tt><tt class="py-op">,</tt><tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Host h3 IP address configured"</tt><tt class="py-op">,</tt><tt id="link-10" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-10', 'onfail', 'link-5');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Host h3 IP address didn't configured"</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L59"></a><tt class="py-lineno">59</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.CaseParams.CaseParams.CaseParams-class.html b/TestON/Documentation/TestON_Document/TestON.examples.CaseParams.CaseParams.CaseParams-class.html
deleted file mode 100644
index 6f06da7..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.CaseParams.CaseParams.CaseParams-class.html
+++ /dev/null
@@ -1,205 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.CaseParams.CaseParams.CaseParams</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- <a href="TestON.examples.CaseParams-module.html">Package CaseParams</a> ::
- <a href="TestON.examples.CaseParams.CaseParams-module.html">Module CaseParams</a> ::
- Class CaseParams
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.CaseParams.CaseParams.CaseParams-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class CaseParams</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.examples.CaseParams.CaseParams-pysrc.html#CaseParams">source code</a></span></p>
-<pre class="literalblock">
-
-This example shows the usage of the CASE level parameters, in params file the
-[[CASE]]
- 'destination' = 'h2'
-
-We can get this CASE level parameter like :
-main.params['CASE1']['destination']
-
-
-cd ~/bin/
-ofautomation>run CaseParams example 1
- will execute this example.
-
-</pre>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.examples.CaseParams.CaseParams-pysrc.html#CaseParams.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1"></a><span class="summary-sig-name">CASE1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- This test case will showcase usage of CASE level parameters to
- specify the host as h2</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.examples.CaseParams.CaseParams-pysrc.html#CaseParams.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE2"></a><span class="summary-sig-name">CASE2</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- This test case will showcase usage of CASE level parameters to
- specify the host as h3</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.examples.CaseParams.CaseParams-pysrc.html#CaseParams.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.ExperimentTest-module.html b/TestON/Documentation/TestON_Document/TestON.examples.ExperimentTest-module.html
deleted file mode 100644
index 2a532ed..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.ExperimentTest-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.ExperimentTest</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- Package ExperimentTest
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.ExperimentTest-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package ExperimentTest</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.examples.ExperimentTest-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.examples.ExperimentTest.ExperimentTest-module.html">TestON.examples.ExperimentTest.ExperimentTest</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.ExperimentTest-pysrc.html b/TestON/Documentation/TestON_Document/TestON.examples.ExperimentTest-pysrc.html
deleted file mode 100644
index 7bf4a44..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.ExperimentTest-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.ExperimentTest</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- Package ExperimentTest
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.ExperimentTest-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.examples.ExperimentTest-module.html">Package TestON.examples.ExperimentTest</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.ExperimentTest.ExperimentTest-module.html b/TestON/Documentation/TestON_Document/TestON.examples.ExperimentTest.ExperimentTest-module.html
deleted file mode 100644
index 5d44e87..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.ExperimentTest.ExperimentTest-module.html
+++ /dev/null
@@ -1,195 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.ExperimentTest.ExperimentTest</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- <a href="TestON.examples.ExperimentTest-module.html">Package ExperimentTest</a> ::
- Module ExperimentTest
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.ExperimentTest.ExperimentTest-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module ExperimentTest</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.examples.ExperimentTest.ExperimentTest-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Created on 26-Nov-2012
-
-@author: Raghav Kashyap(raghavkashyap@paxterrasolutions.com)
-
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-Testing of the Experimental Mode
-
-ofautomation>run ExperimentTest example 1
- will execute this example.
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html" class="summary-name">ExperimentTest</a><br />
- Testing of the Experimental Mode
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.ExperimentTest.ExperimentTest-pysrc.html b/TestON/Documentation/TestON_Document/TestON.examples.ExperimentTest.ExperimentTest-pysrc.html
deleted file mode 100644
index d3b48fd..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.ExperimentTest.ExperimentTest-pysrc.html
+++ /dev/null
@@ -1,188 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.ExperimentTest.ExperimentTest</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- <a href="TestON.examples.ExperimentTest-module.html">Package ExperimentTest</a> ::
- Module ExperimentTest
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.ExperimentTest.ExperimentTest-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.examples.ExperimentTest.ExperimentTest-module.html">Module TestON.examples.ExperimentTest.ExperimentTest</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 26-Nov-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">@author: Raghav Kashyap(raghavkashyap@paxterrasolutions.com)</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-docstring"> (at your option) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"><tt class="py-docstring">Testing of the Experimental Mode</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"><tt class="py-docstring">ofautomation>run ExperimentTest example 1</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"><tt class="py-docstring"> will execute this example.</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="ExperimentTest"></a><div id="ExperimentTest-def"><a name="L26"></a><tt class="py-lineno">26</tt> <a class="py-toggle" href="#" id="ExperimentTest-toggle" onclick="return toggle('ExperimentTest');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html">ExperimentTest</a><tt class="py-op">:</tt> </tt>
-</div><div id="ExperimentTest-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="ExperimentTest-expanded"><a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"><tt class="py-docstring"> Testing of the Experimental Mode</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"> </tt>
-<a name="ExperimentTest.__init__"></a><div id="ExperimentTest.__init__-def"><a name="L32"></a><tt class="py-lineno">32</tt> <a class="py-toggle" href="#" id="ExperimentTest.__init__-toggle" onclick="return toggle('ExperimentTest.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ExperimentTest.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="ExperimentTest.__init__-expanded"><a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-</div><a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> </tt>
-<a name="ExperimentTest.CASE1"></a><div id="ExperimentTest.CASE1-def"><a name="L35"></a><tt class="py-lineno">35</tt> <a class="py-toggle" href="#" id="ExperimentTest.CASE1-toggle" onclick="return toggle('ExperimentTest.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#CASE1">CASE1</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">main</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ExperimentTest.CASE1-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="ExperimentTest.CASE1-expanded"><a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"><tt class="py-docstring"> Testing the configuration of the host by using checkIP functionof Mininet driver</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">EXPERIMENTAL_MODE</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-1', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt><tt class="py-string">"Testing the configuration of the host"</tt><tt class="py-op">)</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-2', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Host IP Checking using checkIP"</tt><tt class="py-op">)</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.checkIP()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#checkIP"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.checkIP" class="py-name" href="#" onclick="return doclink('link-3', 'checkIP', 'link-3');">checkIP</a></tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'CASE1'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'destination'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-4', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Verifying the result"</tt><tt class="py-op">)</tt> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt><tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt><tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">result</tt><tt class="py-op">,</tt><tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Host h2 IP address configured"</tt><tt class="py-op">,</tt><tt id="link-5" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-5', 'onfail', 'link-5');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Host h2 IP address didn't configured"</tt><tt class="py-op">)</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-6', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Calling Non Existing API for Experimental Mode"</tt><tt class="py-op">)</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-name">testReturn</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">POX2</tt><tt class="py-op">.</tt><tt class="py-name">verify_flow</tt><tt class="py-op">(</tt><tt class="py-name">returns</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">)</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt><tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt><tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">testReturn</tt><tt class="py-op">,</tt><tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Host h2 IP address configured"</tt><tt class="py-op">,</tt><tt id="link-7" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-7', 'onfail', 'link-5');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Host h2 IP address didn't configured"</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> </tt>
-<a name="ExperimentTest.CASE2"></a><div id="ExperimentTest.CASE2-def"><a name="L49"></a><tt class="py-lineno">49</tt> <a class="py-toggle" href="#" id="ExperimentTest.CASE2-toggle" onclick="return toggle('ExperimentTest.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#CASE2">CASE2</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">main</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ExperimentTest.CASE2-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="ExperimentTest.CASE2-expanded"><a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"><tt class="py-docstring"> Testing of the reachability of the hosts by using pingall of Mininet driver</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">EXPERIMENTAL_MODE</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-8', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt><tt class="py-string">"Testing Reachabilty of all the hosts"</tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-9', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Checking Hosts reachability by using pingall"</tt><tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingall"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-10', 'pingall', 'link-10');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-11', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Verifying the result"</tt><tt class="py-op">)</tt> </tt>
-<a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt><tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt><tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">result</tt><tt class="py-op">,</tt><tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"All hosts are reacchable"</tt><tt class="py-op">,</tt><tt id="link-12" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-12', 'onfail', 'link-5');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Hosts are not reachable"</tt><tt class="py-op">)</tt> </tt>
-<a name="L59"></a><tt class="py-lineno">59</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-13', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Calling Non Existing API for Experimental Mode"</tt><tt class="py-op">)</tt> </tt>
-<a name="L60"></a><tt class="py-lineno">60</tt> <tt class="py-line"> <tt class="py-name">testReturn</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">verify_flow</tt><tt class="py-op">(</tt><tt class="py-name">returns</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">)</tt> </tt>
-<a name="L61"></a><tt class="py-lineno">61</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt><tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt><tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">testReturn</tt><tt class="py-op">,</tt><tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Host h2 IP address configured"</tt><tt class="py-op">,</tt><tt id="link-14" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-14', 'onfail', 'link-5');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Host h2 IP address didn't configured"</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L62"></a><tt class="py-lineno">62</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html b/TestON/Documentation/TestON_Document/TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html
deleted file mode 100644
index 372ddd3..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html
+++ /dev/null
@@ -1,191 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- <a href="TestON.examples.ExperimentTest-module.html">Package ExperimentTest</a> ::
- <a href="TestON.examples.ExperimentTest.ExperimentTest-module.html">Module ExperimentTest</a> ::
- Class ExperimentTest
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ExperimentTest</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.examples.ExperimentTest.ExperimentTest-pysrc.html#ExperimentTest">source code</a></span></p>
-<p>Testing of the Experimental Mode</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.examples.ExperimentTest.ExperimentTest-pysrc.html#ExperimentTest.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1"></a><span class="summary-sig-name">CASE1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Testing the configuration of the host by using checkIP functionof
- Mininet driver</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.examples.ExperimentTest.ExperimentTest-pysrc.html#ExperimentTest.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE2"></a><span class="summary-sig-name">CASE2</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Testing of the reachability of the hosts by using pingall of Mininet
- driver</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.examples.ExperimentTest.ExperimentTest-pysrc.html#ExperimentTest.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.StepParams-module.html b/TestON/Documentation/TestON_Document/TestON.examples.StepParams-module.html
deleted file mode 100644
index a5f9064..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.StepParams-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.StepParams</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- Package StepParams
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.StepParams-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package StepParams</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.examples.StepParams-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.examples.StepParams.StepParams-module.html">TestON.examples.StepParams.StepParams</a></strong>: <em class="summary">Created on 28-Nov-2012</em> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.StepParams-pysrc.html b/TestON/Documentation/TestON_Document/TestON.examples.StepParams-pysrc.html
deleted file mode 100644
index 658a00a..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.StepParams-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.StepParams</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- Package StepParams
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.StepParams-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.examples.StepParams-module.html">Package TestON.examples.StepParams</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.StepParams.StepParams-module.html b/TestON/Documentation/TestON_Document/TestON.examples.StepParams.StepParams-module.html
deleted file mode 100644
index d188322..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.StepParams.StepParams-module.html
+++ /dev/null
@@ -1,188 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.StepParams.StepParams</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- <a href="TestON.examples.StepParams-module.html">Package StepParams</a> ::
- Module StepParams
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.StepParams.StepParams-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module StepParams</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.examples.StepParams.StepParams-pysrc.html">source code</a></span></p>
-<p>Created on 28-Nov-2012</p>
-
-<hr />
-<div class="fields"> <p><strong>Author:</strong>
- Anil Kumar (anilkumar.s@paxterrasolutions.com)
- <p>TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published
- by the Free Software Foundation, either version 2 of the License,
- or (at your option) any later version.</p>
- <p>TestON is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.</p>
- <p>You should have received a copy of the GNU General Public
- License along with TestON. If not, see
- <http://www.gnu.org/licenses/>.</p>
- </p>
-</div><!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.examples.StepParams.StepParams.StepParams-class.html" class="summary-name">StepParams</a><br />
- This example shows the usage of the STEP level parameters, in params file the
-[[CASE1]]
-[[[STEP1]]]
- 'host' = 'h2'
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.StepParams.StepParams-pysrc.html b/TestON/Documentation/TestON_Document/TestON.examples.StepParams.StepParams-pysrc.html
deleted file mode 100644
index e1c3aa5..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.StepParams.StepParams-pysrc.html
+++ /dev/null
@@ -1,181 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.StepParams.StepParams</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- <a href="TestON.examples.StepParams-module.html">Package StepParams</a> ::
- Module StepParams
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.StepParams.StepParams-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.examples.StepParams.StepParams-module.html">Module TestON.examples.StepParams.StepParams</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 28-Nov-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">@author: Anil Kumar (anilkumar.s@paxterrasolutions.com)</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-docstring"> (at your option) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="StepParams"></a><div id="StepParams-def"><a name="L21"></a><tt class="py-lineno">21</tt> <a class="py-toggle" href="#" id="StepParams-toggle" onclick="return toggle('StepParams');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.examples.StepParams.StepParams.StepParams-class.html">StepParams</a><tt class="py-op">:</tt> </tt>
-</div><div id="StepParams-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="StepParams-expanded"><a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"><tt class="py-docstring"> This example shows the usage of the STEP level parameters, in params file the</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"><tt class="py-docstring"> [[CASE1]]</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"><tt class="py-docstring"> [[[STEP1]]]</tt> </tt>
-<a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"><tt class="py-docstring"> 'host' = 'h2'</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"><tt class="py-docstring"> We can get this STEP level parameter like :</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"><tt class="py-docstring"> main.params['CASE1']['STEP1']['host']</tt> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"><tt class="py-docstring"> ofautomation>run StepParams example 1</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="StepParams.__init__"></a><div id="StepParams.__init__-def"><a name="L34"></a><tt class="py-lineno">34</tt> <a class="py-toggle" href="#" id="StepParams.__init__-toggle" onclick="return toggle('StepParams.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.examples.StepParams.StepParams.StepParams-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="StepParams.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="StepParams.__init__-expanded"><a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-</div><a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> </tt>
-<a name="StepParams.CASE1"></a><div id="StepParams.CASE1-def"><a name="L37"></a><tt class="py-lineno">37</tt> <a class="py-toggle" href="#" id="StepParams.CASE1-toggle" onclick="return toggle('StepParams.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.examples.StepParams.StepParams.StepParams-class.html#CASE1">CASE1</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">main</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="StepParams.CASE1-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="StepParams.CASE1-expanded"><a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"><tt class="py-docstring"> This example will showcase the usage of STEP level parameters to specify the host as h2</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-1', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt><tt class="py-string">"Using STEP level parameters to specify the host as h2"</tt><tt class="py-op">)</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-2', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Host IP Checking using checkIP"</tt><tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.checkIP()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#checkIP"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.checkIP" class="py-name" href="#" onclick="return doclink('link-3', 'checkIP', 'link-3');">checkIP</a></tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'CASE1'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'STEP1'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'host'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-4', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Verifying the result"</tt><tt class="py-op">)</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt><tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt><tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">result</tt><tt class="py-op">,</tt><tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Host h2 IP address configured"</tt><tt class="py-op">,</tt><tt id="link-5" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-5', 'onfail', 'link-5');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Host h2 IP address didn't configured"</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> </tt>
-<a name="StepParams.CASE2"></a><div id="StepParams.CASE2-def"><a name="L48"></a><tt class="py-lineno">48</tt> <a class="py-toggle" href="#" id="StepParams.CASE2-toggle" onclick="return toggle('StepParams.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.examples.StepParams.StepParams.StepParams-class.html#CASE2">CASE2</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">main</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="StepParams.CASE2-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="StepParams.CASE2-expanded"><a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"><tt class="py-docstring"> This example will showcase the usage of STEP level parameters to specify the host as h3</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-6', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt><tt class="py-string">"Using STEP level parameters to specify the host as h3"</tt><tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-7', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Host IP Checking using checkIP"</tt><tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.checkIP" class="py-name" href="#" onclick="return doclink('link-8', 'checkIP', 'link-3');">checkIP</a></tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'CASE2'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'STEP1'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'host'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-9', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Verifying the result"</tt><tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt><tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt><tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">result</tt><tt class="py-op">,</tt><tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Host h3 IP address configured"</tt><tt class="py-op">,</tt><tt id="link-10" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-10', 'onfail', 'link-5');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Host h3 IP address didn't configured"</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.StepParams.StepParams.StepParams-class.html b/TestON/Documentation/TestON_Document/TestON.examples.StepParams.StepParams.StepParams-class.html
deleted file mode 100644
index 0b421c1..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.StepParams.StepParams.StepParams-class.html
+++ /dev/null
@@ -1,204 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.StepParams.StepParams.StepParams</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- <a href="TestON.examples.StepParams-module.html">Package StepParams</a> ::
- <a href="TestON.examples.StepParams.StepParams-module.html">Module StepParams</a> ::
- Class StepParams
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.StepParams.StepParams.StepParams-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class StepParams</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.examples.StepParams.StepParams-pysrc.html#StepParams">source code</a></span></p>
-<pre class="literalblock">
-
-This example shows the usage of the STEP level parameters, in params file the
-[[CASE1]]
-[[[STEP1]]]
- 'host' = 'h2'
-
-We can get this STEP level parameter like :
-main.params['CASE1']['STEP1']['host']
-
-
-ofautomation>run StepParams example 1
-
-</pre>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.examples.StepParams.StepParams-pysrc.html#StepParams.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1"></a><span class="summary-sig-name">CASE1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- This example will showcase the usage of STEP level parameters to
- specify the host as h2</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.examples.StepParams.StepParams-pysrc.html#StepParams.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE2"></a><span class="summary-sig-name">CASE2</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- This example will showcase the usage of STEP level parameters to
- specify the host as h3</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.examples.StepParams.StepParams-pysrc.html#StepParams.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.Topology-module.html b/TestON/Documentation/TestON_Document/TestON.examples.Topology-module.html
deleted file mode 100644
index 17aff35..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.Topology-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.Topology</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- Package Topology
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.Topology-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package Topology</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.examples.Topology-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.examples.Topology.Topology-module.html">TestON.examples.Topology.Topology</a></strong>: <em class="summary">Created on 28-Nov-2012</em> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.Topology-pysrc.html b/TestON/Documentation/TestON_Document/TestON.examples.Topology-pysrc.html
deleted file mode 100644
index dd468ca..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.Topology-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.Topology</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- Package Topology
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.Topology-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.examples.Topology-module.html">Package TestON.examples.Topology</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.Topology.Topology-module.html b/TestON/Documentation/TestON_Document/TestON.examples.Topology.Topology-module.html
deleted file mode 100644
index 599a67c..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.Topology.Topology-module.html
+++ /dev/null
@@ -1,185 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.Topology.Topology</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- <a href="TestON.examples.Topology-module.html">Package Topology</a> ::
- Module Topology
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.Topology.Topology-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module Topology</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.examples.Topology.Topology-pysrc.html">source code</a></span></p>
-<p>Created on 28-Nov-2012</p>
-
-<hr />
-<div class="fields"> <p><strong>Author:</strong>
- Anil Kumar (anilkumar.s@paxterrasolutions.com)
- <p>TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published
- by the Free Software Foundation, either version 2 of the License,
- or (at your option) any later version.</p>
- <p>TestON is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.</p>
- <p>You should have received a copy of the GNU General Public
- License along with TestON. If not, see
- <http://www.gnu.org/licenses/>.</p>
- </p>
-</div><!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.examples.Topology.Topology.Topology-class.html" class="summary-name">Topology</a><br />
- This example shows, how we can use the topology file:
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.Topology.Topology-pysrc.html b/TestON/Documentation/TestON_Document/TestON.examples.Topology.Topology-pysrc.html
deleted file mode 100644
index 04bfa40..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.Topology.Topology-pysrc.html
+++ /dev/null
@@ -1,178 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.Topology.Topology</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- <a href="TestON.examples.Topology-module.html">Package Topology</a> ::
- Module Topology
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.Topology.Topology-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.examples.Topology.Topology-module.html">Module TestON.examples.Topology.Topology</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring">Created on 28-Nov-2012</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">@author: Anil Kumar (anilkumar.s@paxterrasolutions.com)</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring"> TestON is free software: you can redistribute it and/or modify</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring"> it under the terms of the GNU General Public License as published by</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-docstring"> the Free Software Foundation, either version 2 of the License, or</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-docstring"> (at your option) any later version.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-docstring"> TestON is distributed in the hope that it will be useful,</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-docstring"> but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-docstring"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-docstring"> GNU General Public License for more details.</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-docstring"> You should have received a copy of the GNU General Public License</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring"> along with TestON. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring">'''</tt> </tt>
-<a name="Topology"></a><div id="Topology-def"><a name="L21"></a><tt class="py-lineno">21</tt> <a class="py-toggle" href="#" id="Topology-toggle" onclick="return toggle('Topology');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.examples.Topology.Topology.Topology-class.html">Topology</a><tt class="py-op">:</tt> </tt>
-</div><div id="Topology-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="Topology-expanded"><a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"><tt class="py-docstring"> This example shows, how we can use the topology file:</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"><tt class="py-docstring"> In topo file we can specify the component like below:</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"><tt class="py-docstring"> [TOPOLOGY]</tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"><tt class="py-docstring"> [[COMPONENT]]</tt> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"><tt class="py-docstring"> [[["Mininet1"]]]</tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"><tt class="py-docstring"> The usage of this component in the test script like below:</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"><tt class="py-docstring"> main.Mininet1.checkIP(main.params['CASE1']['destination'])</tt> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"><tt class="py-docstring"> Here we are using the Mininet1 which of type Mininet</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"><tt class="py-docstring"> ofautomation>run Topology example 1</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"><tt class="py-docstring"> will execute this example.</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="Topology.__init__"></a><div id="Topology.__init__-def"><a name="L43"></a><tt class="py-lineno">43</tt> <a class="py-toggle" href="#" id="Topology.__init__-toggle" onclick="return toggle('Topology.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.examples.Topology.Topology.Topology-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Topology.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="Topology.__init__-expanded"><a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-</div><a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> </tt>
-<a name="Topology.CASE1"></a><div id="Topology.CASE1-def"><a name="L46"></a><tt class="py-lineno">46</tt> <a class="py-toggle" href="#" id="Topology.CASE1-toggle" onclick="return toggle('Topology.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.examples.Topology.Topology.Topology-class.html#CASE1">CASE1</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt><tt class="py-param">main</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Topology.CASE1-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="Topology.CASE1-expanded"><a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"><tt class="py-docstring"> This will showcase the usage of Topology</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-1', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt><tt class="py-string">"Usage of Topology"</tt><tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-2', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Mininet1 specified in Topology , using the Mininet1 to check host ip"</tt><tt class="py-op">)</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.checkIP()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#checkIP"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.checkIP" class="py-name" href="#" onclick="return doclink('link-3', 'checkIP', 'link-3');">checkIP</a></tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'CASE1'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'destination'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-4', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Verifying the result"</tt><tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt><tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt><tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">result</tt><tt class="py-op">,</tt><tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Host h2 IP address configured"</tt><tt class="py-op">,</tt><tt id="link-5" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-5', 'onfail', 'link-5');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Host h2 IP address didn't configured"</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.examples.Topology.Topology.Topology-class.html b/TestON/Documentation/TestON_Document/TestON.examples.Topology.Topology.Topology-class.html
deleted file mode 100644
index fc10217..0000000
--- a/TestON/Documentation/TestON_Document/TestON.examples.Topology.Topology.Topology-class.html
+++ /dev/null
@@ -1,193 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.examples.Topology.Topology.Topology</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.examples-module.html">Package examples</a> ::
- <a href="TestON.examples.Topology-module.html">Package Topology</a> ::
- <a href="TestON.examples.Topology.Topology-module.html">Module Topology</a> ::
- Class Topology
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.examples.Topology.Topology.Topology-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Topology</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.examples.Topology.Topology-pysrc.html#Topology">source code</a></span></p>
-<pre class="literalblock">
-
-
-This example shows, how we can use the topology file:
-
-In topo file we can specify the component like below:
-[TOPOLOGY]
-
- [[COMPONENT]]
- [[["Mininet1"]]]
-
-The usage of this component in the test script like below:
-
-main.Mininet1.checkIP(main.params['CASE1']['destination'])
-
-Here we are using the Mininet1 which of type Mininet
-
-
-
-ofautomation>run Topology example 1
- will execute this example.
-
-</pre>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.examples.Topology.Topology-pysrc.html#Topology.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1"></a><span class="summary-sig-name">CASE1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- This will showcase the usage of Topology</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.examples.Topology.Topology-pysrc.html#Topology.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.lib-module.html b/TestON/Documentation/TestON_Document/TestON.lib-module.html
deleted file mode 100644
index 5fc5b22..0000000
--- a/TestON/Documentation/TestON_Document/TestON.lib-module.html
+++ /dev/null
@@ -1,140 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.lib</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- Package lib
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.lib-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package lib</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.lib-pysrc.html">source code</a></span></p>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.lib-pysrc.html b/TestON/Documentation/TestON_Document/TestON.lib-pysrc.html
deleted file mode 100644
index 23dfffc..0000000
--- a/TestON/Documentation/TestON_Document/TestON.lib-pysrc.html
+++ /dev/null
@@ -1,122 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.lib</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- Package lib
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.lib-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.lib-module.html">Package TestON.lib</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests-module.html b/TestON/Documentation/TestON_Document/TestON.tests-module.html
deleted file mode 100644
index 973e469..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests-module.html
+++ /dev/null
@@ -1,266 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- Package tests
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package tests</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.CHOtest-module.html">TestON.tests.CHOtest</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.CHOtest.CHOtest-module.html">TestON.tests.CHOtest.CHOtest</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.FUNCintent-module.html">TestON.tests.FUNCintent</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.FUNCintent.FUNCintent-module.html">TestON.tests.FUNCintent.FUNCintent</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart-module.html">TestON.tests.HAclusterRestart</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-module.html">TestON.tests.HAclusterRestart.HAclusterRestart</a></strong>: <em class="summary">Description: This test is to determine if ONOS can handle
- all of it's nodes restarting</em> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.dependencies-module.html">TestON.tests.HAclusterRestart.dependencies</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html">TestON.tests.HAclusterRestart.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html">TestON.tests.HAclusterRestart.dependencies.obelisk</a></strong> </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart-module.html">TestON.tests.HAminorityRestart</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-module.html">TestON.tests.HAminorityRestart.HAminorityRestart</a></strong>: <em class="summary">Description: This test is to determine if ONOS can handle
- a minority of it's nodes restarting</em> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.dependencies-module.html">TestON.tests.HAminorityRestart.dependencies</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html">TestON.tests.HAminorityRestart.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html">TestON.tests.HAminorityRestart.dependencies.obelisk</a></strong> </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity-module.html">TestON.tests.HAsanity</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.HAsanity-module.html">TestON.tests.HAsanity.HAsanity</a></strong>: <em class="summary">Description: This test is to determine if the HA test setup is
- working correctly.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.dependencies-module.html">TestON.tests.HAsanity.dependencies</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.dependencies.Counters-module.html">TestON.tests.HAsanity.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.dependencies.obelisk-module.html">TestON.tests.HAsanity.dependencies.obelisk</a></strong> </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart-module.html">TestON.tests.HAsingleInstanceRestart</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html">TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart</a></strong>: <em class="summary">Description: This test is to determine if a single
- instance ONOS 'cluster' can handle a restart</em> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html">TestON.tests.HAsingleInstanceRestart.dependencies</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.obelisk</a></strong> </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SAMPscaleTopo-module.html">TestON.tests.SAMPscaleTopo</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html">TestON.tests.SAMPscaleTopo.SAMPscaleTopo</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SAMPstartTemplate-module.html">TestON.tests.SAMPstartTemplate</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html">TestON.tests.SAMPstartTemplate.SAMPstartTemplate</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFcbench-module.html">TestON.tests.SCPFcbench</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFcbench.SCPFcbench-module.html">TestON.tests.SCPFcbench.SCPFcbench</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFflowTp1g-module.html">TestON.tests.SCPFflowTp1g</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html">TestON.tests.SCPFflowTp1g.SCPFflowTp1g</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentEventTp-module.html">TestON.tests.SCPFintentEventTp</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html">TestON.tests.SCPFintentEventTp.SCPFintentEventTp</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentInstallWithdrawLat-module.html">TestON.tests.SCPFintentInstallWithdrawLat</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html">TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentRerouteLat-module.html">TestON.tests.SCPFintentRerouteLat</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html">TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFportLat-module.html">TestON.tests.SCPFportLat</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFportLat.SCPFportLat-module.html">TestON.tests.SCPFportLat.SCPFportLat</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFswitchLat-module.html">TestON.tests.SCPFswitchLat</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html">TestON.tests.SCPFswitchLat.SCPFswitchLat</a></strong> </li>
- </ul>
- </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests-pysrc.html
deleted file mode 100644
index ca2cd9e..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests-pysrc.html
+++ /dev/null
@@ -1,122 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- Package tests
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests-module.html">Package TestON.tests</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.CHOtest-module.html b/TestON/Documentation/TestON_Document/TestON.tests.CHOtest-module.html
deleted file mode 100644
index 6f0fa11..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.CHOtest-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.CHOtest</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package CHOtest
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.CHOtest-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package CHOtest</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.CHOtest-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.CHOtest.CHOtest-module.html">TestON.tests.CHOtest.CHOtest</a></strong> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.CHOtest-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.CHOtest-pysrc.html
deleted file mode 100644
index a2af978..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.CHOtest-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.CHOtest</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package CHOtest
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.CHOtest-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.CHOtest-module.html">Package TestON.tests.CHOtest</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.CHOtest.CHOtest-module.html b/TestON/Documentation/TestON_Document/TestON.tests.CHOtest.CHOtest-module.html
deleted file mode 100644
index cacdd27..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.CHOtest.CHOtest-module.html
+++ /dev/null
@@ -1,166 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.CHOtest.CHOtest</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.CHOtest-module.html">Package CHOtest</a> ::
- Module CHOtest
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.CHOtest.CHOtest-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module CHOtest</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html" class="summary-name">CHOtest</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.tests.CHOtest'"><code class="variable-quote">'</code><code class="variable-string">TestON.tests.CHOtest</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.CHOtest.CHOtest-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.CHOtest.CHOtest-pysrc.html
deleted file mode 100644
index 0128d5c..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.CHOtest.CHOtest-pysrc.html
+++ /dev/null
@@ -1,2649 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.CHOtest.CHOtest</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.CHOtest-module.html">Package CHOtest</a> ::
- Module CHOtest
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.CHOtest.CHOtest-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.CHOtest.CHOtest-module.html">Module TestON.tests.CHOtest.CHOtest</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">itertools</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> </tt>
-<a name="CHOtest"></a><div id="CHOtest-def"><a name="L9"></a><tt class="py-lineno"> 9</tt> <a class="py-toggle" href="#" id="CHOtest-toggle" onclick="return toggle('CHOtest');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="CHOtest-expanded"><a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.__init__"></a><div id="CHOtest.__init__-def"><a name="L11"></a><tt class="py-lineno"> 11</tt> <a class="py-toggle" href="#" id="CHOtest.__init__-toggle" onclick="return toggle('CHOtest.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.__init__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.__init__-expanded"><a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE1"></a><div id="CHOtest.CASE1-def"><a name="L14"></a><tt class="py-lineno"> 14</tt> <a class="py-toggle" href="#" id="CHOtest.CASE1-toggle" onclick="return toggle('CHOtest.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE1">CASE1</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE1-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE1-expanded"><a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring"> Startup sequence:</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring"> apply cell <name></tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring"> git pull</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring"> mvn clean install</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring"> onos-package</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring"> onos-verify-cell</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring"> onos-uninstall</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring"> onos-install</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-docstring"> onos-start-cli</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">intentState</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt> <tt class="py-op">=</tt> <tt class="py-number">300</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'numCtrl'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-name">git_pull</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'autoPull'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">git_branch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'branch'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">karafTimeout</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'CTRL'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'karafCliTimeout'</tt><tt class="py-op">]</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">newTopo</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">'ONOScli'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-1', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Set up test environment"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-2', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Set up test environment"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-3', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"_______________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-4', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Apply Cell environment for ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onoscell</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onoscell</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">cell_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell,Method TestON.drivers.common.cli.onosdriver.OnosDriver.setCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell" class="py-name" href="#" onclick="return doclink('link-5', 'setCell', 'link-5');">setCell</a></tt><tt class="py-op">(</tt> <tt class="py-name">cellName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">cell_result</tt><tt class="py-op">,</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Test step PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt id="link-6" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-6', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Test step FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-7', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-8', 'error', 'link-8');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Please provide onoscell option at TestON CLI to run CHO tests"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-10', 'error', 'link-8');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Example: ~/TestON/bin/cli.py run OnosCHO onoscell <cellName>"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">clean</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-11', 'exit', 'link-11');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-12', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Git checkout and pull "</tt> <tt class="py-op">+</tt> <tt class="py-name">git_branch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">git_pull</tt> <tt class="py-op">==</tt> <tt class="py-string">'on'</tt><tt class="py-op">:</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">checkout_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitCheckout"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout" class="py-name" href="#" onclick="return doclink('link-13', 'gitCheckout', 'link-13');">gitCheckout</a></tt><tt class="py-op">(</tt> <tt class="py-name">git_branch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">pull_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-14', 'gitPull', 'link-14');">gitPull</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">cp_result</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">checkout_result</tt> <tt class="py-keyword">and</tt> <tt class="py-name">pull_result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">checkout_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">pull_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-15', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Skipped git checkout and pull"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">cp_result</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">checkout_result</tt> <tt class="py-keyword">and</tt> <tt class="py-name">pull_result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">cp_result</tt><tt class="py-op">,</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Test step PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt id="link-16" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-16', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Test step FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-17', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"mvn clean & install"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">git_pull</tt> <tt class="py-op">==</tt> <tt class="py-string">'on'</tt><tt class="py-op">:</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">mvn_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cleanInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall" class="py-name" href="#" onclick="return doclink('link-18', 'cleanInstall', 'link-18');">cleanInstall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">mvn_result</tt><tt class="py-op">,</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Test step PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt id="link-19" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-19', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Test step FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">mvn_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-20', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Skipped mvn clean install as git pull is disabled in params file"</tt><tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion,Method TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion
-TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion" class="py-name" href="#" onclick="return doclink('link-21', 'getVersion', 'link-21');">getVersion</a></tt><tt class="py-op">(</tt> <tt class="py-name">report</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-22', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Create ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">packageResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage" class="py-name" href="#" onclick="return doclink('link-23', 'onosPackage', 'link-23');">onosPackage</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">packageResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Test step PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt id="link-24" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-24', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Test step FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-25', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Uninstall ONOS package on all Nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">uninstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-26', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Uninstalling package on ONOS Node IP: "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onosIPs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">u_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall" class="py-name" href="#" onclick="return doclink('link-27', 'onosUninstall', 'link-27');">onosUninstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onosIPs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">u_result</tt><tt class="py-op">,</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Test step PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt id="link-28" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-28', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Test step FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">uninstallResult</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">uninstallResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">u_result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> </tt>
-<a name="L100"></a><tt class="py-lineno"> 100</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-29', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install ONOS package on all Nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno"> 101</tt> <tt class="py-line"> <tt class="py-name">installResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L102"></a><tt class="py-lineno"> 102</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L103"></a><tt class="py-lineno"> 103</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-30', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intsalling package on ONOS Node IP: "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onosIPs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno"> 104</tt> <tt class="py-line"> <tt class="py-name">i_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall" class="py-name" href="#" onclick="return doclink('link-31', 'onosInstall', 'link-31');">onosInstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onosIPs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno"> 105</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">i_result</tt><tt class="py-op">,</tt> </tt>
-<a name="L106"></a><tt class="py-lineno"> 106</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Test step PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L107"></a><tt class="py-lineno"> 107</tt> <tt class="py-line"> <tt id="link-32" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-32', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Test step FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno"> 108</tt> <tt class="py-line"> <tt class="py-name">installResult</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">installResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i_result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno"> 109</tt> <tt class="py-line"> </tt>
-<a name="L110"></a><tt class="py-lineno"> 110</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-33', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify ONOS nodes UP status"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno"> 111</tt> <tt class="py-line"> <tt class="py-name">statusResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L112"></a><tt class="py-lineno"> 112</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L113"></a><tt class="py-lineno"> 113</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-34', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS Node "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onosIPs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" status:"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno"> 114</tt> <tt class="py-line"> <tt class="py-name">onos_status</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosStatus()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStatus"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosStatus" class="py-name" href="#" onclick="return doclink('link-35', 'onosStatus', 'link-35');">onosStatus</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onosIPs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno"> 115</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">onos_status</tt><tt class="py-op">,</tt> </tt>
-<a name="L116"></a><tt class="py-lineno"> 116</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Test step PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L117"></a><tt class="py-lineno"> 117</tt> <tt class="py-line"> <tt id="link-36" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-36', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Test step FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno"> 118</tt> <tt class="py-line"> <tt class="py-name">statusResult</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">statusResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">onos_status</tt> <tt class="py-op">)</tt> </tt>
-<a name="L119"></a><tt class="py-lineno"> 119</tt> <tt class="py-line"> </tt>
-<a name="L120"></a><tt class="py-lineno"> 120</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-37', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start ONOS CLI on all nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno"> 121</tt> <tt class="py-line"> <tt class="py-name">cliResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L122"></a><tt class="py-lineno"> 122</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-38', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-39', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">" Start ONOS cli using thread "</tt><tt class="py-op">)</tt> </tt>
-<a name="L123"></a><tt class="py-lineno"> 123</tt> <tt class="py-line"> <tt class="py-name">startCliResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L124"></a><tt class="py-lineno"> 124</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L125"></a><tt class="py-lineno"> 125</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L126"></a><tt class="py-lineno"> 126</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L127"></a><tt class="py-lineno"> 127</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name" targets="Module TestON.core.Thread=TestON.core.Thread-module.html,Class TestON.core.Thread.Thread=TestON.core.Thread.Thread-class.html"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-40', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#startOnosCli"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli" class="py-name" href="#" onclick="return doclink('link-41', 'startOnosCli', 'link-41');">startOnosCli</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L128"></a><tt class="py-lineno"> 128</tt> <tt class="py-line"> <tt class="py-name">threadID</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L129"></a><tt class="py-lineno"> 129</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"startOnosCli"</tt><tt class="py-op">,</tt> </tt>
-<a name="L130"></a><tt class="py-lineno"> 130</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onosIPs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">karafTimeout</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L131"></a><tt class="py-lineno"> 131</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno"> 132</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno"> 133</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L134"></a><tt class="py-lineno"> 134</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L135"></a><tt class="py-lineno"> 135</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno"> 136</tt> <tt class="py-line"> <tt class="py-name">startCliResult</tt> <tt class="py-op">=</tt> <tt class="py-name">startCliResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L137"></a><tt class="py-lineno"> 137</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L138"></a><tt class="py-lineno"> 138</tt> <tt class="py-line"> </tt>
-<a name="L139"></a><tt class="py-lineno"> 139</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">startCliResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L140"></a><tt class="py-lineno"> 140</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-42', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS CLI did not start up properly"</tt><tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno"> 141</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name" targets="Method TestON.core.teston.TestON.cleanup()=TestON.core.teston.TestON-class.html#cleanup"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-43', 'cleanup', 'link-43');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L142"></a><tt class="py-lineno"> 142</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-44', 'exit', 'link-11');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno"> 143</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L144"></a><tt class="py-lineno"> 144</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-45', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Successful CLI startup"</tt><tt class="py-op">)</tt> </tt>
-<a name="L145"></a><tt class="py-lineno"> 145</tt> <tt class="py-line"> <tt class="py-name">startCliResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L146"></a><tt class="py-lineno"> 146</tt> <tt class="py-line"> <tt class="py-name">case1Result</tt> <tt class="py-op">=</tt> <tt class="py-name">installResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">uninstallResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">statusResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">startCliResult</tt> </tt>
-<a name="L147"></a><tt class="py-lineno"> 147</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">30</tt><tt class="py-op">)</tt> </tt>
-<a name="L148"></a><tt class="py-lineno"> 148</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-46', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for connecting to CLI: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L149"></a><tt class="py-lineno"> 149</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case1Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L150"></a><tt class="py-lineno"> 150</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set up test environment PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L151"></a><tt class="py-lineno"> 151</tt> <tt class="py-line"> <tt id="link-47" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-47', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set up test environment FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L152"></a><tt class="py-lineno"> 152</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE20"></a><div id="CHOtest.CASE20-def"><a name="L153"></a><tt class="py-lineno"> 153</tt> <a class="py-toggle" href="#" id="CHOtest.CASE20-toggle" onclick="return toggle('CHOtest.CASE20');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE20">CASE20</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE20-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE20-expanded"><a name="L154"></a><tt class="py-lineno"> 154</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L155"></a><tt class="py-lineno"> 155</tt> <tt class="py-line"><tt class="py-docstring"> This test script Loads a new Topology (Att) on CHO setup and balances all switches</tt> </tt>
-<a name="L156"></a><tt class="py-lineno"> 156</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L157"></a><tt class="py-lineno"> 157</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L158"></a><tt class="py-lineno"> 158</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L159"></a><tt class="py-lineno"> 159</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">copy</tt> </tt>
-<a name="L160"></a><tt class="py-lineno"> 160</tt> <tt class="py-line"> </tt>
-<a name="L161"></a><tt class="py-lineno"> 161</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TOPO1'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'numSwitches'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L162"></a><tt class="py-lineno"> 162</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNlinks</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TOPO1'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'numLinks'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno"> 163</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNhosts</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TOPO1'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'numHosts'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno"> 164</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt> <tt class="py-op">=</tt> <tt class="py-number">300</tt> </tt>
-<a name="L165"></a><tt class="py-lineno"> 165</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-48', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L166"></a><tt class="py-lineno"> 166</tt> <tt class="py-line"> <tt class="py-string">"Load Att topology and Balance all Mininet switches across controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L167"></a><tt class="py-lineno"> 167</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-49', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L168"></a><tt class="py-lineno"> 168</tt> <tt class="py-line"> <tt class="py-string">"________________________________________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L169"></a><tt class="py-lineno"> 169</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-50', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L170"></a><tt class="py-lineno"> 170</tt> <tt class="py-line"> <tt class="py-string">"Assign and Balance all Mininet switches across controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L171"></a><tt class="py-lineno"> 171</tt> <tt class="py-line"> </tt>
-<a name="L172"></a><tt class="py-lineno"> 172</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-51', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Stop any previous Mininet network topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L173"></a><tt class="py-lineno"> 173</tt> <tt class="py-line"> <tt class="py-name">cliResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L174"></a><tt class="py-lineno"> 174</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">newTopo</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TOPO3'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'topo'</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L175"></a><tt class="py-lineno"> 175</tt> <tt class="py-line"> <tt class="py-name">stopStatus</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet" class="py-name" href="#" onclick="return doclink('link-52', 'stopNet', 'link-52');">stopNet</a></tt><tt class="py-op">(</tt> <tt class="py-name">fileName</tt> <tt class="py-op">=</tt> <tt class="py-string">"topoSpine"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L176"></a><tt class="py-lineno"> 176</tt> <tt class="py-line"> </tt>
-<a name="L177"></a><tt class="py-lineno"> 177</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-53', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start Mininet with Att topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L178"></a><tt class="py-lineno"> 178</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">newTopo</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TOPO1'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'topo'</tt><tt class="py-op">]</tt> </tt>
-<a name="L179"></a><tt class="py-lineno"> 179</tt> <tt class="py-line"> <tt class="py-name">startStatus</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet" class="py-name" href="#" onclick="return doclink('link-54', 'startNet', 'link-54');">startNet</a></tt><tt class="py-op">(</tt><tt class="py-name">topoFile</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">newTopo</tt><tt class="py-op">)</tt> </tt>
-<a name="L180"></a><tt class="py-lineno"> 180</tt> <tt class="py-line"> </tt>
-<a name="L181"></a><tt class="py-lineno"> 181</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-55', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assign switches to controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L182"></a><tt class="py-lineno"> 182</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># 1 to ( num of switches +1 )</tt> </tt>
-<a name="L183"></a><tt class="py-lineno"> 183</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignSwController"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController" class="py-name" href="#" onclick="return doclink('link-56', 'assignSwController', 'link-56');">assignSwController</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L184"></a><tt class="py-lineno"> 184</tt> <tt class="py-line"> <tt class="py-name">sw</tt><tt class="py-op">=</tt><tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L185"></a><tt class="py-lineno"> 185</tt> <tt class="py-line"> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onosIPs</tt> <tt class="py-op">)</tt> </tt>
-<a name="L186"></a><tt class="py-lineno"> 186</tt> <tt class="py-line"> </tt>
-<a name="L187"></a><tt class="py-lineno"> 187</tt> <tt class="py-line"> <tt class="py-name">switch_mastership</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L188"></a><tt class="py-lineno"> 188</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L189"></a><tt class="py-lineno"> 189</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwController()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwController"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwController" class="py-name" href="#" onclick="return doclink('link-57', 'getSwController', 'link-57');">getSwController</a></tt><tt class="py-op">(</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L190"></a><tt class="py-lineno"> 190</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt> <tt class="py-string">"Response is "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno"> 191</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"tcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onosIPs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L192"></a><tt class="py-lineno"> 192</tt> <tt class="py-line"> <tt class="py-name">switch_mastership</tt> <tt class="py-op">=</tt> <tt class="py-name">switch_mastership</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L193"></a><tt class="py-lineno"> 193</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L194"></a><tt class="py-lineno"> 194</tt> <tt class="py-line"> <tt class="py-name">switch_mastership</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L195"></a><tt class="py-lineno"> 195</tt> <tt class="py-line"> </tt>
-<a name="L196"></a><tt class="py-lineno"> 196</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">switch_mastership</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L197"></a><tt class="py-lineno"> 197</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-58', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Controller assignment successfull"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L198"></a><tt class="py-lineno"> 198</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L199"></a><tt class="py-lineno"> 199</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-59', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Controller assignment failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L200"></a><tt class="py-lineno"> 200</tt> <tt class="py-line"> </tt>
-<a name="L201"></a><tt class="py-lineno"> 201</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">30</tt><tt class="py-op">)</tt> <tt class="py-comment"># waiting here to make sure topology converges across all nodes</tt> </tt>
-<a name="L202"></a><tt class="py-lineno"> 202</tt> <tt class="py-line"> </tt>
-<a name="L203"></a><tt class="py-lineno"> 203</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-60', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Balance devices across controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L204"></a><tt class="py-lineno"> 204</tt> <tt class="py-line"> <tt class="py-name">balanceResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.balanceMasters()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#balanceMasters"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.balanceMasters" class="py-name" href="#" onclick="return doclink('link-61', 'balanceMasters', 'link-61');">balanceMasters</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno"> 205</tt> <tt class="py-line"> <tt class="py-comment"># giving some breathing time for ONOS to complete re-balance</tt> </tt>
-<a name="L206"></a><tt class="py-lineno"> 206</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L207"></a><tt class="py-lineno"> 207</tt> <tt class="py-line"> </tt>
-<a name="L208"></a><tt class="py-lineno"> 208</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#topology,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topology"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-62', 'topology', 'link-62');">topology</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno"> 209</tt> <tt class="py-line"> <tt class="py-name">topology_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.getTopology()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getTopology"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.getTopology" class="py-name" href="#" onclick="return doclink('link-63', 'getTopology', 'link-63');">getTopology</a></tt><tt class="py-op">(</tt> <tt class="py-name">topology_output</tt> <tt class="py-op">)</tt> </tt>
-<a name="L210"></a><tt class="py-lineno"> 210</tt> <tt class="py-line"> <tt class="py-name">case2Result</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">switch_mastership</tt> <tt class="py-keyword">and</tt> <tt class="py-name">startStatus</tt> <tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno"> 211</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L212"></a><tt class="py-lineno"> 212</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L213"></a><tt class="py-lineno"> 213</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case2Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L214"></a><tt class="py-lineno"> 214</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Starting new Att topology test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L215"></a><tt class="py-lineno"> 215</tt> <tt class="py-line"> <tt id="link-64" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-64', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Starting new Att topology test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L216"></a><tt class="py-lineno"> 216</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE21"></a><div id="CHOtest.CASE21-def"><a name="L217"></a><tt class="py-lineno"> 217</tt> <a class="py-toggle" href="#" id="CHOtest.CASE21-toggle" onclick="return toggle('CHOtest.CASE21');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE21">CASE21</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE21-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE21-expanded"><a name="L218"></a><tt class="py-lineno"> 218</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L219"></a><tt class="py-lineno"> 219</tt> <tt class="py-line"><tt class="py-docstring"> This test script Loads a new Topology (Chordal) on CHO setup and balances all switches</tt> </tt>
-<a name="L220"></a><tt class="py-lineno"> 220</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L221"></a><tt class="py-lineno"> 221</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L222"></a><tt class="py-lineno"> 222</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L223"></a><tt class="py-lineno"> 223</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">copy</tt> </tt>
-<a name="L224"></a><tt class="py-lineno"> 224</tt> <tt class="py-line"> </tt>
-<a name="L225"></a><tt class="py-lineno"> 225</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">newTopo</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TOPO2'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'topo'</tt><tt class="py-op">]</tt> </tt>
-<a name="L226"></a><tt class="py-lineno"> 226</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TOPO2'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'numSwitches'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L227"></a><tt class="py-lineno"> 227</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNlinks</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TOPO2'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'numLinks'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L228"></a><tt class="py-lineno"> 228</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNhosts</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TOPO2'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'numHosts'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L229"></a><tt class="py-lineno"> 229</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt> <tt class="py-op">=</tt> <tt class="py-number">300</tt> </tt>
-<a name="L230"></a><tt class="py-lineno"> 230</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-65', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L231"></a><tt class="py-lineno"> 231</tt> <tt class="py-line"> <tt class="py-string">"Load Chordal topology and Balance all Mininet switches across controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L232"></a><tt class="py-lineno"> 232</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-66', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L233"></a><tt class="py-lineno"> 233</tt> <tt class="py-line"> <tt class="py-string">"________________________________________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L234"></a><tt class="py-lineno"> 234</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-67', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L235"></a><tt class="py-lineno"> 235</tt> <tt class="py-line"> <tt class="py-string">"Assign and Balance all Mininet switches across controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L236"></a><tt class="py-lineno"> 236</tt> <tt class="py-line"> </tt>
-<a name="L237"></a><tt class="py-lineno"> 237</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-68', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Stop any previous Mininet network topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L238"></a><tt class="py-lineno"> 238</tt> <tt class="py-line"> <tt class="py-name">stopStatus</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-69" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet" class="py-name" href="#" onclick="return doclink('link-69', 'stopNet', 'link-52');">stopNet</a></tt><tt class="py-op">(</tt><tt class="py-name">fileName</tt> <tt class="py-op">=</tt> <tt class="py-string">"topoAtt"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L239"></a><tt class="py-lineno"> 239</tt> <tt class="py-line"> </tt>
-<a name="L240"></a><tt class="py-lineno"> 240</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-70', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start Mininet with Chordal topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L241"></a><tt class="py-lineno"> 241</tt> <tt class="py-line"> <tt class="py-name">startStatus</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet" class="py-name" href="#" onclick="return doclink('link-71', 'startNet', 'link-54');">startNet</a></tt><tt class="py-op">(</tt><tt class="py-name">topoFile</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">newTopo</tt><tt class="py-op">)</tt> </tt>
-<a name="L242"></a><tt class="py-lineno"> 242</tt> <tt class="py-line"> </tt>
-<a name="L243"></a><tt class="py-lineno"> 243</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-72', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assign switches to controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L244"></a><tt class="py-lineno"> 244</tt> <tt class="py-line"> </tt>
-<a name="L245"></a><tt class="py-lineno"> 245</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># 1 to ( num of switches +1 )</tt> </tt>
-<a name="L246"></a><tt class="py-lineno"> 246</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController" class="py-name" href="#" onclick="return doclink('link-73', 'assignSwController', 'link-56');">assignSwController</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L247"></a><tt class="py-lineno"> 247</tt> <tt class="py-line"> <tt class="py-name">sw</tt><tt class="py-op">=</tt><tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L248"></a><tt class="py-lineno"> 248</tt> <tt class="py-line"> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onosIPs</tt> <tt class="py-op">)</tt> </tt>
-<a name="L249"></a><tt class="py-lineno"> 249</tt> <tt class="py-line"> </tt>
-<a name="L250"></a><tt class="py-lineno"> 250</tt> <tt class="py-line"> <tt class="py-name">switch_mastership</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L251"></a><tt class="py-lineno"> 251</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L252"></a><tt class="py-lineno"> 252</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwController" class="py-name" href="#" onclick="return doclink('link-74', 'getSwController', 'link-57');">getSwController</a></tt><tt class="py-op">(</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L253"></a><tt class="py-lineno"> 253</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt> <tt class="py-string">"Response is "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L254"></a><tt class="py-lineno"> 254</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"tcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onosIPs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L255"></a><tt class="py-lineno"> 255</tt> <tt class="py-line"> <tt class="py-name">switch_mastership</tt> <tt class="py-op">=</tt> <tt class="py-name">switch_mastership</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L256"></a><tt class="py-lineno"> 256</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L257"></a><tt class="py-lineno"> 257</tt> <tt class="py-line"> <tt class="py-name">switch_mastership</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L258"></a><tt class="py-lineno"> 258</tt> <tt class="py-line"> </tt>
-<a name="L259"></a><tt class="py-lineno"> 259</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">switch_mastership</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L260"></a><tt class="py-lineno"> 260</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-75', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Controller assignment successfull"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno"> 261</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L262"></a><tt class="py-lineno"> 262</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-76', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Controller assignment failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L263"></a><tt class="py-lineno"> 263</tt> <tt class="py-line"> </tt>
-<a name="L264"></a><tt class="py-lineno"> 264</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-77', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Balance devices across controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L265"></a><tt class="py-lineno"> 265</tt> <tt class="py-line"> <tt class="py-name">balanceResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.balanceMasters" class="py-name" href="#" onclick="return doclink('link-78', 'balanceMasters', 'link-61');">balanceMasters</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L266"></a><tt class="py-lineno"> 266</tt> <tt class="py-line"> <tt class="py-comment"># giving some breathing time for ONOS to complete re-balance</tt> </tt>
-<a name="L267"></a><tt class="py-lineno"> 267</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L268"></a><tt class="py-lineno"> 268</tt> <tt class="py-line"> </tt>
-<a name="L269"></a><tt class="py-lineno"> 269</tt> <tt class="py-line"> <tt class="py-name">case21Result</tt> <tt class="py-op">=</tt> <tt class="py-name">switch_mastership</tt> </tt>
-<a name="L270"></a><tt class="py-lineno"> 270</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">30</tt><tt class="py-op">)</tt> </tt>
-<a name="L271"></a><tt class="py-lineno"> 271</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L272"></a><tt class="py-lineno"> 272</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L273"></a><tt class="py-lineno"> 273</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case21Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L274"></a><tt class="py-lineno"> 274</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Starting new Chordal topology test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L275"></a><tt class="py-lineno"> 275</tt> <tt class="py-line"> <tt id="link-79" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-79', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Starting new Chordal topology test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L276"></a><tt class="py-lineno"> 276</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE22"></a><div id="CHOtest.CASE22-def"><a name="L277"></a><tt class="py-lineno"> 277</tt> <a class="py-toggle" href="#" id="CHOtest.CASE22-toggle" onclick="return toggle('CHOtest.CASE22');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE22">CASE22</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE22-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE22-expanded"><a name="L278"></a><tt class="py-lineno"> 278</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L279"></a><tt class="py-lineno"> 279</tt> <tt class="py-line"><tt class="py-docstring"> This test script Loads a new Topology (Spine) on CHO setup and balances all switches</tt> </tt>
-<a name="L280"></a><tt class="py-lineno"> 280</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L281"></a><tt class="py-lineno"> 281</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L282"></a><tt class="py-lineno"> 282</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L283"></a><tt class="py-lineno"> 283</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">copy</tt> </tt>
-<a name="L284"></a><tt class="py-lineno"> 284</tt> <tt class="py-line"> </tt>
-<a name="L285"></a><tt class="py-lineno"> 285</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">newTopo</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TOPO3'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'topo'</tt><tt class="py-op">]</tt> </tt>
-<a name="L286"></a><tt class="py-lineno"> 286</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TOPO3'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'numSwitches'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L287"></a><tt class="py-lineno"> 287</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNlinks</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TOPO3'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'numLinks'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L288"></a><tt class="py-lineno"> 288</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNhosts</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TOPO3'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'numHosts'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L289"></a><tt class="py-lineno"> 289</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt> <tt class="py-op">=</tt> <tt class="py-number">600</tt> </tt>
-<a name="L290"></a><tt class="py-lineno"> 290</tt> <tt class="py-line"> </tt>
-<a name="L291"></a><tt class="py-lineno"> 291</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-80', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L292"></a><tt class="py-lineno"> 292</tt> <tt class="py-line"> <tt class="py-string">"Load Spine and Leaf topology and Balance all Mininet switches across controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L293"></a><tt class="py-lineno"> 293</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-81', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L294"></a><tt class="py-lineno"> 294</tt> <tt class="py-line"> <tt class="py-string">"________________________________________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L295"></a><tt class="py-lineno"> 295</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-82', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L296"></a><tt class="py-lineno"> 296</tt> <tt class="py-line"> <tt class="py-string">"Assign and Balance all Mininet switches across controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L297"></a><tt class="py-lineno"> 297</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-83', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Stop any previous Mininet network topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L298"></a><tt class="py-lineno"> 298</tt> <tt class="py-line"> <tt class="py-name">stopStatus</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet" class="py-name" href="#" onclick="return doclink('link-84', 'stopNet', 'link-52');">stopNet</a></tt><tt class="py-op">(</tt><tt class="py-name">fileName</tt> <tt class="py-op">=</tt> <tt class="py-string">"topoChordal"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L299"></a><tt class="py-lineno"> 299</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-85', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start Mininet with Spine topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L300"></a><tt class="py-lineno"> 300</tt> <tt class="py-line"> <tt class="py-name">startStatus</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet" class="py-name" href="#" onclick="return doclink('link-86', 'startNet', 'link-54');">startNet</a></tt><tt class="py-op">(</tt><tt class="py-name">topoFile</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">newTopo</tt><tt class="py-op">)</tt> </tt>
-<a name="L301"></a><tt class="py-lineno"> 301</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">60</tt><tt class="py-op">)</tt> </tt>
-<a name="L302"></a><tt class="py-lineno"> 302</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-87', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assign switches to controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L303"></a><tt class="py-lineno"> 303</tt> <tt class="py-line"> </tt>
-<a name="L304"></a><tt class="py-lineno"> 304</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># 1 to ( num of switches +1 )</tt> </tt>
-<a name="L305"></a><tt class="py-lineno"> 305</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController" class="py-name" href="#" onclick="return doclink('link-88', 'assignSwController', 'link-56');">assignSwController</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L306"></a><tt class="py-lineno"> 306</tt> <tt class="py-line"> <tt class="py-name">sw</tt><tt class="py-op">=</tt><tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L307"></a><tt class="py-lineno"> 307</tt> <tt class="py-line"> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onosIPs</tt> <tt class="py-op">)</tt> </tt>
-<a name="L308"></a><tt class="py-lineno"> 308</tt> <tt class="py-line"> </tt>
-<a name="L309"></a><tt class="py-lineno"> 309</tt> <tt class="py-line"> <tt class="py-name">switch_mastership</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L310"></a><tt class="py-lineno"> 310</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L311"></a><tt class="py-lineno"> 311</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwController" class="py-name" href="#" onclick="return doclink('link-89', 'getSwController', 'link-57');">getSwController</a></tt><tt class="py-op">(</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L312"></a><tt class="py-lineno"> 312</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt> <tt class="py-string">"Response is "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L313"></a><tt class="py-lineno"> 313</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"tcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">onosIPs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L314"></a><tt class="py-lineno"> 314</tt> <tt class="py-line"> <tt class="py-name">switch_mastership</tt> <tt class="py-op">=</tt> <tt class="py-name">switch_mastership</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L315"></a><tt class="py-lineno"> 315</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L316"></a><tt class="py-lineno"> 316</tt> <tt class="py-line"> <tt class="py-name">switch_mastership</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L317"></a><tt class="py-lineno"> 317</tt> <tt class="py-line"> </tt>
-<a name="L318"></a><tt class="py-lineno"> 318</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">switch_mastership</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L319"></a><tt class="py-lineno"> 319</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-90', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Controller assignment successfull"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L320"></a><tt class="py-lineno"> 320</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L321"></a><tt class="py-lineno"> 321</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-91', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Controller assignment failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L322"></a><tt class="py-lineno"> 322</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L323"></a><tt class="py-lineno"> 323</tt> <tt class="py-line"> </tt>
-<a name="L324"></a><tt class="py-lineno"> 324</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-92', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Balance devices across controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L325"></a><tt class="py-lineno"> 325</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L326"></a><tt class="py-lineno"> 326</tt> <tt class="py-line"> <tt class="py-name">balanceResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.balanceMasters" class="py-name" href="#" onclick="return doclink('link-93', 'balanceMasters', 'link-61');">balanceMasters</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L327"></a><tt class="py-lineno"> 327</tt> <tt class="py-line"> <tt class="py-comment"># giving some breathing time for ONOS to complete re-balance</tt> </tt>
-<a name="L328"></a><tt class="py-lineno"> 328</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L329"></a><tt class="py-lineno"> 329</tt> <tt class="py-line"> </tt>
-<a name="L330"></a><tt class="py-lineno"> 330</tt> <tt class="py-line"> <tt class="py-name">case22Result</tt> <tt class="py-op">=</tt> <tt class="py-name">switch_mastership</tt> </tt>
-<a name="L331"></a><tt class="py-lineno"> 331</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">60</tt><tt class="py-op">)</tt> </tt>
-<a name="L332"></a><tt class="py-lineno"> 332</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L333"></a><tt class="py-lineno"> 333</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L334"></a><tt class="py-lineno"> 334</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case22Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L335"></a><tt class="py-lineno"> 335</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Starting new Spine topology test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L336"></a><tt class="py-lineno"> 336</tt> <tt class="py-line"> <tt id="link-94" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-94', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Starting new Spine topology test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L337"></a><tt class="py-lineno"> 337</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE3"></a><div id="CHOtest.CASE3-def"><a name="L338"></a><tt class="py-lineno"> 338</tt> <a class="py-toggle" href="#" id="CHOtest.CASE3-toggle" onclick="return toggle('CHOtest.CASE3');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE3">CASE3</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE3-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE3-expanded"><a name="L339"></a><tt class="py-lineno"> 339</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L340"></a><tt class="py-lineno"> 340</tt> <tt class="py-line"><tt class="py-docstring"> This Test case will be extended to collect and store more data related</tt> </tt>
-<a name="L341"></a><tt class="py-lineno"> 341</tt> <tt class="py-line"><tt class="py-docstring"> ONOS state.</tt> </tt>
-<a name="L342"></a><tt class="py-lineno"> 342</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L343"></a><tt class="py-lineno"> 343</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L344"></a><tt class="py-lineno"> 344</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">copy</tt> </tt>
-<a name="L345"></a><tt class="py-lineno"> 345</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceDPIDs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L346"></a><tt class="py-lineno"> 346</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostMACs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L347"></a><tt class="py-lineno"> 347</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceLinks</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L348"></a><tt class="py-lineno"> 348</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceActiveLinksCount</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L349"></a><tt class="py-lineno"> 349</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">devicePortsEnabledCount</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L350"></a><tt class="py-lineno"> 350</tt> <tt class="py-line"> </tt>
-<a name="L351"></a><tt class="py-lineno"> 351</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-95', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L352"></a><tt class="py-lineno"> 352</tt> <tt class="py-line"> <tt class="py-string">"Collect and Store topology details from ONOS before running any Tests"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L353"></a><tt class="py-lineno"> 353</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-96', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L354"></a><tt class="py-lineno"> 354</tt> <tt class="py-line"> <tt class="py-string">"____________________________________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L355"></a><tt class="py-lineno"> 355</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-97', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Collect and Store Topology Details from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L356"></a><tt class="py-lineno"> 356</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-98', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Collect and store current number of switches and links"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L357"></a><tt class="py-lineno"> 357</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-99', 'topology', 'link-62');">topology</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L358"></a><tt class="py-lineno"> 358</tt> <tt class="py-line"> <tt class="py-name">topology_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.getTopology" class="py-name" href="#" onclick="return doclink('link-100', 'getTopology', 'link-63');">getTopology</a></tt><tt class="py-op">(</tt> <tt class="py-name">topology_output</tt> <tt class="py-op">)</tt> </tt>
-<a name="L359"></a><tt class="py-lineno"> 359</tt> <tt class="py-line"> <tt class="py-name">numOnosDevices</tt> <tt class="py-op">=</tt> <tt class="py-name">topology_result</tt><tt class="py-op">[</tt> <tt class="py-string">'devices'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L360"></a><tt class="py-lineno"> 360</tt> <tt class="py-line"> <tt class="py-name">numOnosLinks</tt> <tt class="py-op">=</tt> <tt class="py-name">topology_result</tt><tt class="py-op">[</tt> <tt class="py-string">'links'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L361"></a><tt class="py-lineno"> 361</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L362"></a><tt class="py-lineno"> 362</tt> <tt class="py-line"> </tt>
-<a name="L363"></a><tt class="py-lineno"> 363</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">==</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numOnosDevices</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNlinks</tt> <tt class="py-op">==</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numOnosLinks</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L364"></a><tt class="py-lineno"> 364</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-101', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Store Device DPIDs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L365"></a><tt class="py-lineno"> 365</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L366"></a><tt class="py-lineno"> 366</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceDPIDs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"of:00000000000000"</tt> <tt class="py-op">+</tt> <tt class="py-name">format</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-string">'02x'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L367"></a><tt class="py-lineno"> 367</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Device DPIDs in Store: \n"</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceDPIDs</tt> <tt class="py-op">)</tt> </tt>
-<a name="L368"></a><tt class="py-lineno"> 368</tt> <tt class="py-line"> </tt>
-<a name="L369"></a><tt class="py-lineno"> 369</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-102', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Store Host MACs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L370"></a><tt class="py-lineno"> 370</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNhosts</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L371"></a><tt class="py-lineno"> 371</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostMACs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"00:00:00:00:00:"</tt> <tt class="py-op">+</tt> <tt class="py-name">format</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-string">'02x'</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/-1"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L372"></a><tt class="py-lineno"> 372</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Host MACs in Store: \n"</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostMACs</tt> <tt class="py-op">)</tt> </tt>
-<a name="L373"></a><tt class="py-lineno"> 373</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L374"></a><tt class="py-lineno"> 374</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Creating dictionary of DPID and HostMacs"</tt> </tt>
-<a name="L375"></a><tt class="py-lineno"> 375</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostMACs</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L376"></a><tt class="py-lineno"> 376</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt><tt class="py-op">[</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceDPIDs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostMACs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">'/'</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L377"></a><tt class="py-lineno"> 377</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt> </tt>
-<a name="L378"></a><tt class="py-lineno"> 378</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-103', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Collect and store all Devices Links"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L379"></a><tt class="py-lineno"> 379</tt> <tt class="py-line"> <tt class="py-name">linksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#links,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#links"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-104', 'links', 'link-104');">links</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt> </tt>
-<a name="L380"></a><tt class="py-lineno"> 380</tt> <tt class="py-line"> <tt class="py-name">ansi_escape</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">compile</tt><tt class="py-op">(</tt> <tt class="py-string">r'\x1b[^m]*m'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L381"></a><tt class="py-lineno"> 381</tt> <tt class="py-line"> <tt class="py-name">linksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">ansi_escape</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">''</tt><tt class="py-op">,</tt> <tt class="py-name">linksResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L382"></a><tt class="py-lineno"> 382</tt> <tt class="py-line"> <tt class="py-name">linksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">linksResult</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">" links"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> <tt class="py-string">"\r\r"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L383"></a><tt class="py-lineno"> 383</tt> <tt class="py-line"> <tt class="py-name">linksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">linksResult</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L384"></a><tt class="py-lineno"> 384</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceLinks</tt> <tt class="py-op">=</tt> <tt class="py-name">copy</tt><tt class="py-op">.</tt><tt class="py-name">copy</tt><tt class="py-op">(</tt> <tt class="py-name">linksResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L385"></a><tt class="py-lineno"> 385</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Device Links Stored: \n"</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceLinks</tt> <tt class="py-op">)</tt> </tt>
-<a name="L386"></a><tt class="py-lineno"> 386</tt> <tt class="py-line"> <tt class="py-comment"># this will be asserted to check with the params provided count of</tt> </tt>
-<a name="L387"></a><tt class="py-lineno"> 387</tt> <tt class="py-line"> <tt class="py-comment"># links</tt> </tt>
-<a name="L388"></a><tt class="py-lineno"> 388</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Length of Links Store"</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceLinks</tt> <tt class="py-op">)</tt> </tt>
-<a name="L389"></a><tt class="py-lineno"> 389</tt> <tt class="py-line"> </tt>
-<a name="L390"></a><tt class="py-lineno"> 390</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-105', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Collect and store each Device ports enabled Count"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L391"></a><tt class="py-lineno"> 391</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L392"></a><tt class="py-lineno"> 392</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L393"></a><tt class="py-lineno"> 393</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L394"></a><tt class="py-lineno"> 394</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-106" class="py-name" targets="Module TestON.bin.cli=TestON.bin.cli-module.html,Package TestON.drivers.common.cli=TestON.drivers.common.cli-module.html"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-106', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L395"></a><tt class="py-lineno"> 395</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L396"></a><tt class="py-lineno"> 396</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L397"></a><tt class="py-lineno"> 397</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">"of:00000000000000"</tt> <tt class="py-op">+</tt> <tt class="py-name">format</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt><tt class="py-string">'02x'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L398"></a><tt class="py-lineno"> 398</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-107', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt><tt class="py-name">target</tt> <tt class="py-op">=</tt> <tt id="link-108" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-108', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-109" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevicePortsEnabledCount()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getDevicePortsEnabledCount"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevicePortsEnabledCount" class="py-name" href="#" onclick="return doclink('link-109', 'getDevicePortsEnabledCount', 'link-109');">getDevicePortsEnabledCount</a></tt><tt class="py-op">,</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> <tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-string">"getDevicePortsEnabledCount"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">dpid</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L399"></a><tt class="py-lineno"> 399</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L400"></a><tt class="py-lineno"> 400</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L401"></a><tt class="py-lineno"> 401</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L402"></a><tt class="py-lineno"> 402</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L403"></a><tt class="py-lineno"> 403</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L404"></a><tt class="py-lineno"> 404</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L405"></a><tt class="py-lineno"> 405</tt> <tt class="py-line"> <tt class="py-name">portResult</tt> <tt class="py-op">=</tt> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L406"></a><tt class="py-lineno"> 406</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">devicePortsEnabledCount</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">portResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L407"></a><tt class="py-lineno"> 407</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Device Enabled Port Counts Stored: \n"</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">devicePortsEnabledCount</tt> <tt class="py-op">)</tt> </tt>
-<a name="L408"></a><tt class="py-lineno"> 408</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L409"></a><tt class="py-lineno"> 409</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-110', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for counting enabled ports of the switches: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L410"></a><tt class="py-lineno"> 410</tt> <tt class="py-line"> </tt>
-<a name="L411"></a><tt class="py-lineno"> 411</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-111', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Collect and store each Device active links Count"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L412"></a><tt class="py-lineno"> 412</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L413"></a><tt class="py-lineno"> 413</tt> <tt class="py-line"> </tt>
-<a name="L414"></a><tt class="py-lineno"> 414</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L415"></a><tt class="py-lineno"> 415</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L416"></a><tt class="py-lineno"> 416</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-112" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-112', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L417"></a><tt class="py-lineno"> 417</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L418"></a><tt class="py-lineno"> 418</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L419"></a><tt class="py-lineno"> 419</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">"of:00000000000000"</tt> <tt class="py-op">+</tt> <tt class="py-name">format</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt><tt class="py-string">'02x'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L420"></a><tt class="py-lineno"> 420</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-113', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt> <tt class="py-op">=</tt> <tt id="link-114" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-114', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-115" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDeviceLinksActiveCount()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getDeviceLinksActiveCount"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDeviceLinksActiveCount" class="py-name" href="#" onclick="return doclink('link-115', 'getDeviceLinksActiveCount', 'link-115');">getDeviceLinksActiveCount</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L421"></a><tt class="py-lineno"> 421</tt> <tt class="py-line"> <tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L422"></a><tt class="py-lineno"> 422</tt> <tt class="py-line"> <tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-string">"getDevicePortsEnabledCount"</tt><tt class="py-op">,</tt> </tt>
-<a name="L423"></a><tt class="py-lineno"> 423</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">dpid</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L424"></a><tt class="py-lineno"> 424</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L425"></a><tt class="py-lineno"> 425</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L426"></a><tt class="py-lineno"> 426</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L427"></a><tt class="py-lineno"> 427</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L428"></a><tt class="py-lineno"> 428</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L429"></a><tt class="py-lineno"> 429</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L430"></a><tt class="py-lineno"> 430</tt> <tt class="py-line"> <tt class="py-name">linkCountResult</tt> <tt class="py-op">=</tt> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L431"></a><tt class="py-lineno"> 431</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceActiveLinksCount</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">linkCountResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L432"></a><tt class="py-lineno"> 432</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Device Active Links Count Stored: \n"</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceActiveLinksCount</tt> <tt class="py-op">)</tt> </tt>
-<a name="L433"></a><tt class="py-lineno"> 433</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L434"></a><tt class="py-lineno"> 434</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-116', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for counting all enabled links of the switches: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L435"></a><tt class="py-lineno"> 435</tt> <tt class="py-line"> </tt>
-<a name="L436"></a><tt class="py-lineno"> 436</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L437"></a><tt class="py-lineno"> 437</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-117', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Devices (expected): %s, Links (expected): %s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L438"></a><tt class="py-lineno"> 438</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNlinks</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L439"></a><tt class="py-lineno"> 439</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-118', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Devices (actual): %s, Links (actual): %s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L440"></a><tt class="py-lineno"> 440</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">numOnosDevices</tt> <tt class="py-op">,</tt> <tt class="py-name">numOnosLinks</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L441"></a><tt class="py-lineno"> 441</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-119', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Topology does not match, exiting CHO test..."</tt><tt class="py-op">)</tt> </tt>
-<a name="L442"></a><tt class="py-lineno"> 442</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L443"></a><tt class="py-lineno"> 443</tt> <tt class="py-line"> <tt class="py-comment"># It's better exit here from running the test</tt> </tt>
-<a name="L444"></a><tt class="py-lineno"> 444</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-120" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-120', 'cleanup', 'link-43');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L445"></a><tt class="py-lineno"> 445</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-121" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-121', 'exit', 'link-11');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L446"></a><tt class="py-lineno"> 446</tt> <tt class="py-line"> </tt>
-<a name="L447"></a><tt class="py-lineno"> 447</tt> <tt class="py-line"> <tt class="py-comment"># just returning TRUE for now as this one just collects data</tt> </tt>
-<a name="L448"></a><tt class="py-lineno"> 448</tt> <tt class="py-line"> <tt class="py-name">case3Result</tt> <tt class="py-op">=</tt> <tt class="py-name">topoResult</tt> </tt>
-<a name="L449"></a><tt class="py-lineno"> 449</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case3Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L450"></a><tt class="py-lineno"> 450</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Saving ONOS topology data test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L451"></a><tt class="py-lineno"> 451</tt> <tt class="py-line"> <tt id="link-122" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-122', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Saving ONOS topology data test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L452"></a><tt class="py-lineno"> 452</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE40"></a><div id="CHOtest.CASE40-def"><a name="L453"></a><tt class="py-lineno"> 453</tt> <a class="py-toggle" href="#" id="CHOtest.CASE40-toggle" onclick="return toggle('CHOtest.CASE40');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE40">CASE40</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE40-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE40-expanded"><a name="L454"></a><tt class="py-lineno"> 454</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L455"></a><tt class="py-lineno"> 455</tt> <tt class="py-line"><tt class="py-docstring"> Verify Reactive forwarding (Att Topology)</tt> </tt>
-<a name="L456"></a><tt class="py-lineno"> 456</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L457"></a><tt class="py-lineno"> 457</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L458"></a><tt class="py-lineno"> 458</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">copy</tt> </tt>
-<a name="L459"></a><tt class="py-lineno"> 459</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L460"></a><tt class="py-lineno"> 460</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-123', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Reactive forwarding (Att Topology)"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L461"></a><tt class="py-lineno"> 461</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-124" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-124', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"______________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L462"></a><tt class="py-lineno"> 462</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-125', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Enable Reactive forwarding and Verify ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L463"></a><tt class="py-lineno"> 463</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-126', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Enable Reactive forwarding"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L464"></a><tt class="py-lineno"> 464</tt> <tt class="py-line"> <tt class="py-name">installResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L465"></a><tt class="py-lineno"> 465</tt> <tt class="py-line"> <tt class="py-comment"># Activate fwd app</tt> </tt>
-<a name="L466"></a><tt class="py-lineno"> 466</tt> <tt class="py-line"> <tt class="py-name">appResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#activateApp,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#activateApp"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-127', 'activateApp', 'link-127');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.fwd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L467"></a><tt class="py-lineno"> 467</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L468"></a><tt class="py-lineno"> 468</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L469"></a><tt class="py-lineno"> 469</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-128" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-128', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L470"></a><tt class="py-lineno"> 470</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-129', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-130" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-130', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-131" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appToIDCheck"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-131', 'appToIDCheck', 'link-131');">appToIDCheck</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L471"></a><tt class="py-lineno"> 471</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"appToIDCheck-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L472"></a><tt class="py-lineno"> 472</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L473"></a><tt class="py-lineno"> 473</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L474"></a><tt class="py-lineno"> 474</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L475"></a><tt class="py-lineno"> 475</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L476"></a><tt class="py-lineno"> 476</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L477"></a><tt class="py-lineno"> 477</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">appCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L478"></a><tt class="py-lineno"> 478</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L479"></a><tt class="py-lineno"> 479</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L480"></a><tt class="py-lineno"> 480</tt> <tt class="py-line"> <tt id="link-132" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-132', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L481"></a><tt class="py-lineno"> 481</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L482"></a><tt class="py-lineno"> 482</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-133', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-134" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#apps,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#apps"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-134', 'apps', 'link-134');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L483"></a><tt class="py-lineno"> 483</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-135', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-136" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appIDs"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-136', 'appIDs', 'link-136');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L484"></a><tt class="py-lineno"> 484</tt> <tt class="py-line"> </tt>
-<a name="L485"></a><tt class="py-lineno"> 485</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L486"></a><tt class="py-lineno"> 486</tt> <tt class="py-line"> </tt>
-<a name="L487"></a><tt class="py-lineno"> 487</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-137', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Pingall"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L488"></a><tt class="py-lineno"> 488</tt> <tt class="py-line"> <tt class="py-name">ping_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L489"></a><tt class="py-lineno"> 489</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L490"></a><tt class="py-lineno"> 490</tt> <tt class="py-line"> <tt class="py-name">ping_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingall"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-138', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L491"></a><tt class="py-lineno"> 491</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L492"></a><tt class="py-lineno"> 492</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L493"></a><tt class="py-lineno"> 493</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-139" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-139', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L494"></a><tt class="py-lineno"> 494</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L495"></a><tt class="py-lineno"> 495</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L496"></a><tt class="py-lineno"> 496</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L497"></a><tt class="py-lineno"> 497</tt> <tt class="py-line"> </tt>
-<a name="L498"></a><tt class="py-lineno"> 498</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ping_result</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L499"></a><tt class="py-lineno"> 499</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-140" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-140', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Pingall Test in Reactive mode successful"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L500"></a><tt class="py-lineno"> 500</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L501"></a><tt class="py-lineno"> 501</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-141" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-141', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Pingall Test in Reactive mode failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L502"></a><tt class="py-lineno"> 502</tt> <tt class="py-line"> </tt>
-<a name="L503"></a><tt class="py-lineno"> 503</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-142', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Disable Reactive forwarding"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L504"></a><tt class="py-lineno"> 504</tt> <tt class="py-line"> </tt>
-<a name="L505"></a><tt class="py-lineno"> 505</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-143', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Uninstall reactive forwarding app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L506"></a><tt class="py-lineno"> 506</tt> <tt class="py-line"> <tt class="py-name">appResults</tt> <tt class="py-op">=</tt> <tt class="py-name">appResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-144" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.deactivateApp()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#deactivateApp,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deactivateApp()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deactivateApp"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.deactivateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deactivateApp" class="py-name" href="#" onclick="return doclink('link-144', 'deactivateApp', 'link-144');">deactivateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.fwd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L507"></a><tt class="py-lineno"> 507</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L508"></a><tt class="py-lineno"> 508</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-145" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-145', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L509"></a><tt class="py-lineno"> 509</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-146" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-146', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-147" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-147', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-148" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-148', 'appToIDCheck', 'link-131');">appToIDCheck</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L510"></a><tt class="py-lineno"> 510</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"appToIDCheck-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L511"></a><tt class="py-lineno"> 511</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L512"></a><tt class="py-lineno"> 512</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L513"></a><tt class="py-lineno"> 513</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L514"></a><tt class="py-lineno"> 514</tt> <tt class="py-line"> </tt>
-<a name="L515"></a><tt class="py-lineno"> 515</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L516"></a><tt class="py-lineno"> 516</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L517"></a><tt class="py-lineno"> 517</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">appCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L518"></a><tt class="py-lineno"> 518</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L519"></a><tt class="py-lineno"> 519</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L520"></a><tt class="py-lineno"> 520</tt> <tt class="py-line"> <tt id="link-149" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-149', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L521"></a><tt class="py-lineno"> 521</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L522"></a><tt class="py-lineno"> 522</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-150" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-150', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-151" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-151', 'apps', 'link-134');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L523"></a><tt class="py-lineno"> 523</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-152', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-153', 'appIDs', 'link-136');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L524"></a><tt class="py-lineno"> 524</tt> <tt class="py-line"> </tt>
-<a name="L525"></a><tt class="py-lineno"> 525</tt> <tt class="py-line"> <tt class="py-comment"># Waiting for reative flows to be cleared.</tt> </tt>
-<a name="L526"></a><tt class="py-lineno"> 526</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">30</tt> <tt class="py-op">)</tt> </tt>
-<a name="L527"></a><tt class="py-lineno"> 527</tt> <tt class="py-line"> <tt class="py-name">case40Result</tt> <tt class="py-op">=</tt> <tt class="py-name">installResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">uninstallResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ping_result</tt> </tt>
-<a name="L528"></a><tt class="py-lineno"> 528</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case40Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L529"></a><tt class="py-lineno"> 529</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Reactive Mode Pingall test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L530"></a><tt class="py-lineno"> 530</tt> <tt class="py-line"> <tt id="link-154" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-154', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Reactive Mode Pingall test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L531"></a><tt class="py-lineno"> 531</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE41"></a><div id="CHOtest.CASE41-def"><a name="L532"></a><tt class="py-lineno"> 532</tt> <a class="py-toggle" href="#" id="CHOtest.CASE41-toggle" onclick="return toggle('CHOtest.CASE41');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE41">CASE41</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE41-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE41-expanded"><a name="L533"></a><tt class="py-lineno"> 533</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L534"></a><tt class="py-lineno"> 534</tt> <tt class="py-line"><tt class="py-docstring"> Verify Reactive forwarding (Chordal Topology)</tt> </tt>
-<a name="L535"></a><tt class="py-lineno"> 535</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L536"></a><tt class="py-lineno"> 536</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L537"></a><tt class="py-lineno"> 537</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">copy</tt> </tt>
-<a name="L538"></a><tt class="py-lineno"> 538</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L539"></a><tt class="py-lineno"> 539</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-155', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Reactive forwarding (Chordal Topology)"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L540"></a><tt class="py-lineno"> 540</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-156" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-156', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"______________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L541"></a><tt class="py-lineno"> 541</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-157', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Enable Reactive forwarding and Verify ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L542"></a><tt class="py-lineno"> 542</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-158" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-158', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Enable Reactive forwarding"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L543"></a><tt class="py-lineno"> 543</tt> <tt class="py-line"> <tt class="py-name">installResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L544"></a><tt class="py-lineno"> 544</tt> <tt class="py-line"> <tt class="py-comment"># Activate fwd app</tt> </tt>
-<a name="L545"></a><tt class="py-lineno"> 545</tt> <tt class="py-line"> <tt class="py-name">appResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-159" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-159', 'activateApp', 'link-127');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.fwd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L546"></a><tt class="py-lineno"> 546</tt> <tt class="py-line"> </tt>
-<a name="L547"></a><tt class="py-lineno"> 547</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L548"></a><tt class="py-lineno"> 548</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L549"></a><tt class="py-lineno"> 549</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-160" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-160', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L550"></a><tt class="py-lineno"> 550</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-161" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-161', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-162" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-162', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-163" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-163', 'appToIDCheck', 'link-131');">appToIDCheck</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L551"></a><tt class="py-lineno"> 551</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"appToIDCheck-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L552"></a><tt class="py-lineno"> 552</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L553"></a><tt class="py-lineno"> 553</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L554"></a><tt class="py-lineno"> 554</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L555"></a><tt class="py-lineno"> 555</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L556"></a><tt class="py-lineno"> 556</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L557"></a><tt class="py-lineno"> 557</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">appCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L558"></a><tt class="py-lineno"> 558</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L559"></a><tt class="py-lineno"> 559</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L560"></a><tt class="py-lineno"> 560</tt> <tt class="py-line"> <tt id="link-164" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-164', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L561"></a><tt class="py-lineno"> 561</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L562"></a><tt class="py-lineno"> 562</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-165" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-165', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-166" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-166', 'apps', 'link-134');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L563"></a><tt class="py-lineno"> 563</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-167', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-168', 'appIDs', 'link-136');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L564"></a><tt class="py-lineno"> 564</tt> <tt class="py-line"> </tt>
-<a name="L565"></a><tt class="py-lineno"> 565</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L566"></a><tt class="py-lineno"> 566</tt> <tt class="py-line"> </tt>
-<a name="L567"></a><tt class="py-lineno"> 567</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-169" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-169', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Pingall"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L568"></a><tt class="py-lineno"> 568</tt> <tt class="py-line"> <tt class="py-name">ping_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L569"></a><tt class="py-lineno"> 569</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L570"></a><tt class="py-lineno"> 570</tt> <tt class="py-line"> <tt class="py-name">ping_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-170" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-170', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L571"></a><tt class="py-lineno"> 571</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L572"></a><tt class="py-lineno"> 572</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L573"></a><tt class="py-lineno"> 573</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-171" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-171', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L574"></a><tt class="py-lineno"> 574</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L575"></a><tt class="py-lineno"> 575</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L576"></a><tt class="py-lineno"> 576</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L577"></a><tt class="py-lineno"> 577</tt> <tt class="py-line"> </tt>
-<a name="L578"></a><tt class="py-lineno"> 578</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ping_result</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L579"></a><tt class="py-lineno"> 579</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-172" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-172', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Pingall Test in Reactive mode successful"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L580"></a><tt class="py-lineno"> 580</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L581"></a><tt class="py-lineno"> 581</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-173', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Pingall Test in Reactive mode failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L582"></a><tt class="py-lineno"> 582</tt> <tt class="py-line"> </tt>
-<a name="L583"></a><tt class="py-lineno"> 583</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-174" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-174', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Disable Reactive forwarding"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L584"></a><tt class="py-lineno"> 584</tt> <tt class="py-line"> </tt>
-<a name="L585"></a><tt class="py-lineno"> 585</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-175" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-175', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Uninstall reactive forwarding app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L586"></a><tt class="py-lineno"> 586</tt> <tt class="py-line"> <tt class="py-name">appResults</tt> <tt class="py-op">=</tt> <tt class="py-name">appResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-176" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.deactivateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deactivateApp" class="py-name" href="#" onclick="return doclink('link-176', 'deactivateApp', 'link-144');">deactivateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.fwd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L587"></a><tt class="py-lineno"> 587</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L588"></a><tt class="py-lineno"> 588</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-177" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-177', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L589"></a><tt class="py-lineno"> 589</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-178" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-178', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-179" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-179', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-180" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-180', 'appToIDCheck', 'link-131');">appToIDCheck</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L590"></a><tt class="py-lineno"> 590</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"appToIDCheck-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L591"></a><tt class="py-lineno"> 591</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L592"></a><tt class="py-lineno"> 592</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L593"></a><tt class="py-lineno"> 593</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L594"></a><tt class="py-lineno"> 594</tt> <tt class="py-line"> </tt>
-<a name="L595"></a><tt class="py-lineno"> 595</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L596"></a><tt class="py-lineno"> 596</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L597"></a><tt class="py-lineno"> 597</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">appCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L598"></a><tt class="py-lineno"> 598</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L599"></a><tt class="py-lineno"> 599</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L600"></a><tt class="py-lineno"> 600</tt> <tt class="py-line"> <tt id="link-181" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-181', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L601"></a><tt class="py-lineno"> 601</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L602"></a><tt class="py-lineno"> 602</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-182" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-182', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-183" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-183', 'apps', 'link-134');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L603"></a><tt class="py-lineno"> 603</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-184" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-184', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-185" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-185', 'appIDs', 'link-136');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L604"></a><tt class="py-lineno"> 604</tt> <tt class="py-line"> </tt>
-<a name="L605"></a><tt class="py-lineno"> 605</tt> <tt class="py-line"> <tt class="py-comment"># Waiting for reative flows to be cleared.</tt> </tt>
-<a name="L606"></a><tt class="py-lineno"> 606</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">30</tt> <tt class="py-op">)</tt> </tt>
-<a name="L607"></a><tt class="py-lineno"> 607</tt> <tt class="py-line"> <tt class="py-name">case41Result</tt> <tt class="py-op">=</tt> <tt class="py-name">installResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">uninstallResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ping_result</tt> </tt>
-<a name="L608"></a><tt class="py-lineno"> 608</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case41Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L609"></a><tt class="py-lineno"> 609</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Reactive Mode Pingall test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L610"></a><tt class="py-lineno"> 610</tt> <tt class="py-line"> <tt id="link-186" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-186', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Reactive Mode Pingall test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L611"></a><tt class="py-lineno"> 611</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE42"></a><div id="CHOtest.CASE42-def"><a name="L612"></a><tt class="py-lineno"> 612</tt> <a class="py-toggle" href="#" id="CHOtest.CASE42-toggle" onclick="return toggle('CHOtest.CASE42');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE42">CASE42</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE42-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE42-expanded"><a name="L613"></a><tt class="py-lineno"> 613</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L614"></a><tt class="py-lineno"> 614</tt> <tt class="py-line"><tt class="py-docstring"> Verify Reactive forwarding (Spine Topology)</tt> </tt>
-<a name="L615"></a><tt class="py-lineno"> 615</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L616"></a><tt class="py-lineno"> 616</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L617"></a><tt class="py-lineno"> 617</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">copy</tt> </tt>
-<a name="L618"></a><tt class="py-lineno"> 618</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L619"></a><tt class="py-lineno"> 619</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-187" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-187', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Reactive forwarding (Spine Topology)"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L620"></a><tt class="py-lineno"> 620</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-188" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-188', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"______________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L621"></a><tt class="py-lineno"> 621</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-189" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-189', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Enable Reactive forwarding and Verify ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L622"></a><tt class="py-lineno"> 622</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-190" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-190', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Enable Reactive forwarding"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L623"></a><tt class="py-lineno"> 623</tt> <tt class="py-line"> <tt class="py-name">installResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L624"></a><tt class="py-lineno"> 624</tt> <tt class="py-line"> <tt class="py-comment"># Activate fwd app</tt> </tt>
-<a name="L625"></a><tt class="py-lineno"> 625</tt> <tt class="py-line"> <tt class="py-name">appResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-191" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-191', 'activateApp', 'link-127');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.fwd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L626"></a><tt class="py-lineno"> 626</tt> <tt class="py-line"> </tt>
-<a name="L627"></a><tt class="py-lineno"> 627</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L628"></a><tt class="py-lineno"> 628</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L629"></a><tt class="py-lineno"> 629</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-192" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-192', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L630"></a><tt class="py-lineno"> 630</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-193" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-193', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-194" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-194', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-195" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-195', 'appToIDCheck', 'link-131');">appToIDCheck</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L631"></a><tt class="py-lineno"> 631</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"appToIDCheck-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L632"></a><tt class="py-lineno"> 632</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L633"></a><tt class="py-lineno"> 633</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L634"></a><tt class="py-lineno"> 634</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L635"></a><tt class="py-lineno"> 635</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L636"></a><tt class="py-lineno"> 636</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L637"></a><tt class="py-lineno"> 637</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">appCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L638"></a><tt class="py-lineno"> 638</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L639"></a><tt class="py-lineno"> 639</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L640"></a><tt class="py-lineno"> 640</tt> <tt class="py-line"> <tt id="link-196" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-196', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L641"></a><tt class="py-lineno"> 641</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L642"></a><tt class="py-lineno"> 642</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-197" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-197', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-198" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-198', 'apps', 'link-134');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L643"></a><tt class="py-lineno"> 643</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-199" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-199', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-200" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-200', 'appIDs', 'link-136');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L644"></a><tt class="py-lineno"> 644</tt> <tt class="py-line"> </tt>
-<a name="L645"></a><tt class="py-lineno"> 645</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L646"></a><tt class="py-lineno"> 646</tt> <tt class="py-line"> </tt>
-<a name="L647"></a><tt class="py-lineno"> 647</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-201" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-201', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Pingall"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L648"></a><tt class="py-lineno"> 648</tt> <tt class="py-line"> <tt class="py-name">ping_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L649"></a><tt class="py-lineno"> 649</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L650"></a><tt class="py-lineno"> 650</tt> <tt class="py-line"> <tt class="py-name">ping_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-202" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-202', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L651"></a><tt class="py-lineno"> 651</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L652"></a><tt class="py-lineno"> 652</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L653"></a><tt class="py-lineno"> 653</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-203" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-203', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L654"></a><tt class="py-lineno"> 654</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L655"></a><tt class="py-lineno"> 655</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L656"></a><tt class="py-lineno"> 656</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L657"></a><tt class="py-lineno"> 657</tt> <tt class="py-line"> </tt>
-<a name="L658"></a><tt class="py-lineno"> 658</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ping_result</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L659"></a><tt class="py-lineno"> 659</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-204" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-204', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Pingall Test in Reactive mode successful"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L660"></a><tt class="py-lineno"> 660</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L661"></a><tt class="py-lineno"> 661</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-205" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-205', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Pingall Test in Reactive mode failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L662"></a><tt class="py-lineno"> 662</tt> <tt class="py-line"> </tt>
-<a name="L663"></a><tt class="py-lineno"> 663</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-206" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-206', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Disable Reactive forwarding"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L664"></a><tt class="py-lineno"> 664</tt> <tt class="py-line"> </tt>
-<a name="L665"></a><tt class="py-lineno"> 665</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-207" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-207', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Uninstall reactive forwarding app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L666"></a><tt class="py-lineno"> 666</tt> <tt class="py-line"> <tt class="py-name">appResults</tt> <tt class="py-op">=</tt> <tt class="py-name">appResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-208" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.deactivateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deactivateApp" class="py-name" href="#" onclick="return doclink('link-208', 'deactivateApp', 'link-144');">deactivateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.fwd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L667"></a><tt class="py-lineno"> 667</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L668"></a><tt class="py-lineno"> 668</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-209" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-209', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L669"></a><tt class="py-lineno"> 669</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-210" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-210', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-211" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-211', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-212" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-212', 'appToIDCheck', 'link-131');">appToIDCheck</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L670"></a><tt class="py-lineno"> 670</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"appToIDCheck-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L671"></a><tt class="py-lineno"> 671</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L672"></a><tt class="py-lineno"> 672</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L673"></a><tt class="py-lineno"> 673</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L674"></a><tt class="py-lineno"> 674</tt> <tt class="py-line"> </tt>
-<a name="L675"></a><tt class="py-lineno"> 675</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L676"></a><tt class="py-lineno"> 676</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L677"></a><tt class="py-lineno"> 677</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">appCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L678"></a><tt class="py-lineno"> 678</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L679"></a><tt class="py-lineno"> 679</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L680"></a><tt class="py-lineno"> 680</tt> <tt class="py-line"> <tt id="link-213" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-213', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L681"></a><tt class="py-lineno"> 681</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L682"></a><tt class="py-lineno"> 682</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-214" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-214', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-215" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-215', 'apps', 'link-134');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L683"></a><tt class="py-lineno"> 683</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-216" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-216', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-217" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-217', 'appIDs', 'link-136');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L684"></a><tt class="py-lineno"> 684</tt> <tt class="py-line"> </tt>
-<a name="L685"></a><tt class="py-lineno"> 685</tt> <tt class="py-line"> <tt class="py-comment"># Waiting for reative flows to be cleared.</tt> </tt>
-<a name="L686"></a><tt class="py-lineno"> 686</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">30</tt> <tt class="py-op">)</tt> </tt>
-<a name="L687"></a><tt class="py-lineno"> 687</tt> <tt class="py-line"> <tt class="py-name">case42Result</tt> <tt class="py-op">=</tt> <tt class="py-name">installResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">uninstallResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ping_result</tt> </tt>
-<a name="L688"></a><tt class="py-lineno"> 688</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case42Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L689"></a><tt class="py-lineno"> 689</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Reactive Mode Pingall test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L690"></a><tt class="py-lineno"> 690</tt> <tt class="py-line"> <tt id="link-218" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-218', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Reactive Mode Pingall test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L691"></a><tt class="py-lineno"> 691</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE5"></a><div id="CHOtest.CASE5-def"><a name="L692"></a><tt class="py-lineno"> 692</tt> <a class="py-toggle" href="#" id="CHOtest.CASE5-toggle" onclick="return toggle('CHOtest.CASE5');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE5">CASE5</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE5-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE5-expanded"><a name="L693"></a><tt class="py-lineno"> 693</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L694"></a><tt class="py-lineno"> 694</tt> <tt class="py-line"><tt class="py-docstring"> Compare current ONOS topology with reference data</tt> </tt>
-<a name="L695"></a><tt class="py-lineno"> 695</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L696"></a><tt class="py-lineno"> 696</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L697"></a><tt class="py-lineno"> 697</tt> <tt class="py-line"> </tt>
-<a name="L698"></a><tt class="py-lineno"> 698</tt> <tt class="py-line"> <tt class="py-name">devicesDPIDTemp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L699"></a><tt class="py-lineno"> 699</tt> <tt class="py-line"> <tt class="py-name">hostMACsTemp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L700"></a><tt class="py-lineno"> 700</tt> <tt class="py-line"> <tt class="py-name">deviceLinksTemp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L701"></a><tt class="py-lineno"> 701</tt> <tt class="py-line"> <tt class="py-name">deviceActiveLinksCountTemp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L702"></a><tt class="py-lineno"> 702</tt> <tt class="py-line"> <tt class="py-name">devicePortsEnabledCountTemp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L703"></a><tt class="py-lineno"> 703</tt> <tt class="py-line"> </tt>
-<a name="L704"></a><tt class="py-lineno"> 704</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-219" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-219', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L705"></a><tt class="py-lineno"> 705</tt> <tt class="py-line"> <tt class="py-string">"Compare ONOS topology with reference data in Stores"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L706"></a><tt class="py-lineno"> 706</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-220" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-220', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"__________________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L707"></a><tt class="py-lineno"> 707</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-221" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-221', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Compare ONOS topology with reference data"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L708"></a><tt class="py-lineno"> 708</tt> <tt class="py-line"> </tt>
-<a name="L709"></a><tt class="py-lineno"> 709</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-222" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-222', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Compare current Device ports enabled with reference"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L710"></a><tt class="py-lineno"> 710</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L711"></a><tt class="py-lineno"> 711</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L712"></a><tt class="py-lineno"> 712</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L713"></a><tt class="py-lineno"> 713</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-223" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-223', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L714"></a><tt class="py-lineno"> 714</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L715"></a><tt class="py-lineno"> 715</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L716"></a><tt class="py-lineno"> 716</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">"of:00000000000000"</tt> <tt class="py-op">+</tt> <tt class="py-name">format</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt><tt class="py-string">'02x'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L717"></a><tt class="py-lineno"> 717</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-224" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-224', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt><tt class="py-name">target</tt> <tt class="py-op">=</tt> <tt id="link-225" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-225', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-226" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevicePortsEnabledCount" class="py-name" href="#" onclick="return doclink('link-226', 'getDevicePortsEnabledCount', 'link-109');">getDevicePortsEnabledCount</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L718"></a><tt class="py-lineno"> 718</tt> <tt class="py-line"> <tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L719"></a><tt class="py-lineno"> 719</tt> <tt class="py-line"> <tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-string">"getDevicePortsEnabledCount"</tt><tt class="py-op">,</tt> </tt>
-<a name="L720"></a><tt class="py-lineno"> 720</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">dpid</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L721"></a><tt class="py-lineno"> 721</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L722"></a><tt class="py-lineno"> 722</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L723"></a><tt class="py-lineno"> 723</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L724"></a><tt class="py-lineno"> 724</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L725"></a><tt class="py-lineno"> 725</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L726"></a><tt class="py-lineno"> 726</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L727"></a><tt class="py-lineno"> 727</tt> <tt class="py-line"> <tt class="py-name">portResult</tt> <tt class="py-op">=</tt> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L728"></a><tt class="py-lineno"> 728</tt> <tt class="py-line"> <tt class="py-comment">#portTemp = re.split( r'\t+', portResult )</tt> </tt>
-<a name="L729"></a><tt class="py-lineno"> 729</tt> <tt class="py-line"> <tt class="py-comment">#portCount = portTemp[ 1 ].replace( "\r\r\n\x1b[32m", "" )</tt> </tt>
-<a name="L730"></a><tt class="py-lineno"> 730</tt> <tt class="py-line"> <tt class="py-name">devicePortsEnabledCountTemp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">portResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L731"></a><tt class="py-lineno"> 731</tt> <tt class="py-line"> </tt>
-<a name="L732"></a><tt class="py-lineno"> 732</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L733"></a><tt class="py-lineno"> 733</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-227" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-227', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for counting enabled ports of the switches: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L734"></a><tt class="py-lineno"> 734</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-228" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-228', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt> <tt class="py-op">(</tt> </tt>
-<a name="L735"></a><tt class="py-lineno"> 735</tt> <tt class="py-line"> <tt class="py-string">"Device Enabled ports EXPECTED: %s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L736"></a><tt class="py-lineno"> 736</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">devicePortsEnabledCount</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L737"></a><tt class="py-lineno"> 737</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-229" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-229', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt> <tt class="py-op">(</tt> </tt>
-<a name="L738"></a><tt class="py-lineno"> 738</tt> <tt class="py-line"> <tt class="py-string">"Device Enabled ports ACTUAL: %s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L739"></a><tt class="py-lineno"> 739</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">devicePortsEnabledCountTemp</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L740"></a><tt class="py-lineno"> 740</tt> <tt class="py-line"> </tt>
-<a name="L741"></a><tt class="py-lineno"> 741</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt> <tt class="py-name">cmp</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">devicePortsEnabledCount</tt><tt class="py-op">,</tt> </tt>
-<a name="L742"></a><tt class="py-lineno"> 742</tt> <tt class="py-line"> <tt class="py-name">devicePortsEnabledCountTemp</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L743"></a><tt class="py-lineno"> 743</tt> <tt class="py-line"> <tt class="py-name">stepResult1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L744"></a><tt class="py-lineno"> 744</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L745"></a><tt class="py-lineno"> 745</tt> <tt class="py-line"> <tt class="py-name">stepResult1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L746"></a><tt class="py-lineno"> 746</tt> <tt class="py-line"> </tt>
-<a name="L747"></a><tt class="py-lineno"> 747</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-230" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-230', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Compare Device active links with reference"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L748"></a><tt class="py-lineno"> 748</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L749"></a><tt class="py-lineno"> 749</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L750"></a><tt class="py-lineno"> 750</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L751"></a><tt class="py-lineno"> 751</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-231" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-231', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L752"></a><tt class="py-lineno"> 752</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L753"></a><tt class="py-lineno"> 753</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L754"></a><tt class="py-lineno"> 754</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">"of:00000000000000"</tt> <tt class="py-op">+</tt> <tt class="py-name">format</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt><tt class="py-string">'02x'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L755"></a><tt class="py-lineno"> 755</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-232" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-232', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt><tt class="py-name">target</tt> <tt class="py-op">=</tt> <tt id="link-233" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-233', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-234" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDeviceLinksActiveCount" class="py-name" href="#" onclick="return doclink('link-234', 'getDeviceLinksActiveCount', 'link-115');">getDeviceLinksActiveCount</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L756"></a><tt class="py-lineno"> 756</tt> <tt class="py-line"> <tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L757"></a><tt class="py-lineno"> 757</tt> <tt class="py-line"> <tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-string">"getDeviceLinksActiveCount"</tt><tt class="py-op">,</tt> </tt>
-<a name="L758"></a><tt class="py-lineno"> 758</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">dpid</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L759"></a><tt class="py-lineno"> 759</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L760"></a><tt class="py-lineno"> 760</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L761"></a><tt class="py-lineno"> 761</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L762"></a><tt class="py-lineno"> 762</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L763"></a><tt class="py-lineno"> 763</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L764"></a><tt class="py-lineno"> 764</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L765"></a><tt class="py-lineno"> 765</tt> <tt class="py-line"> <tt class="py-name">linkCountResult</tt> <tt class="py-op">=</tt> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L766"></a><tt class="py-lineno"> 766</tt> <tt class="py-line"> <tt class="py-comment">#linkCountTemp = re.split( r'\t+', linkCountResult )</tt> </tt>
-<a name="L767"></a><tt class="py-lineno"> 767</tt> <tt class="py-line"> <tt class="py-comment">#linkCount = linkCountTemp[ 1 ].replace( "\r\r\n\x1b[32m", "" )</tt> </tt>
-<a name="L768"></a><tt class="py-lineno"> 768</tt> <tt class="py-line"> <tt class="py-name">deviceActiveLinksCountTemp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">linkCountResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L769"></a><tt class="py-lineno"> 769</tt> <tt class="py-line"> </tt>
-<a name="L770"></a><tt class="py-lineno"> 770</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L771"></a><tt class="py-lineno"> 771</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-235" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-235', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for counting all enabled links of the switches: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L772"></a><tt class="py-lineno"> 772</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-236" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-236', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt> <tt class="py-op">(</tt> </tt>
-<a name="L773"></a><tt class="py-lineno"> 773</tt> <tt class="py-line"> <tt class="py-string">"Device Active links EXPECTED: %s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L774"></a><tt class="py-lineno"> 774</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceActiveLinksCount</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L775"></a><tt class="py-lineno"> 775</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-237" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-237', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt> <tt class="py-op">(</tt> </tt>
-<a name="L776"></a><tt class="py-lineno"> 776</tt> <tt class="py-line"> <tt class="py-string">"Device Active links ACTUAL: %s"</tt> <tt class="py-op">%</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">deviceActiveLinksCountTemp</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L777"></a><tt class="py-lineno"> 777</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt> <tt class="py-name">cmp</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceActiveLinksCount</tt><tt class="py-op">,</tt> <tt class="py-name">deviceActiveLinksCountTemp</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L778"></a><tt class="py-lineno"> 778</tt> <tt class="py-line"> <tt class="py-name">stepResult2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L779"></a><tt class="py-lineno"> 779</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L780"></a><tt class="py-lineno"> 780</tt> <tt class="py-line"> <tt class="py-name">stepResult2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L781"></a><tt class="py-lineno"> 781</tt> <tt class="py-line"> </tt>
-<a name="L782"></a><tt class="py-lineno"> 782</tt> <tt class="py-line"> <tt class="py-string">"""</tt> </tt>
-<a name="L783"></a><tt class="py-lineno"> 783</tt> <tt class="py-line"><tt class="py-string"> place holder for comparing devices, hosts, paths and intents if required.</tt> </tt>
-<a name="L784"></a><tt class="py-lineno"> 784</tt> <tt class="py-line"><tt class="py-string"> Links and ports data would be incorrect with out devices anyways.</tt> </tt>
-<a name="L785"></a><tt class="py-lineno"> 785</tt> <tt class="py-line"><tt class="py-string"> """</tt> </tt>
-<a name="L786"></a><tt class="py-lineno"> 786</tt> <tt class="py-line"> <tt class="py-name">case5Result</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">stepResult1</tt> <tt class="py-keyword">and</tt> <tt class="py-name">stepResult2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L787"></a><tt class="py-lineno"> 787</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case5Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L788"></a><tt class="py-lineno"> 788</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Compare Topology test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L789"></a><tt class="py-lineno"> 789</tt> <tt class="py-line"> <tt id="link-238" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-238', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Compare Topology test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L790"></a><tt class="py-lineno"> 790</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE60"></a><div id="CHOtest.CASE60-def"><a name="L791"></a><tt class="py-lineno"> 791</tt> <a class="py-toggle" href="#" id="CHOtest.CASE60-toggle" onclick="return toggle('CHOtest.CASE60');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE60">CASE60</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE60-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE60-expanded"><a name="L792"></a><tt class="py-lineno"> 792</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L793"></a><tt class="py-lineno"> 793</tt> <tt class="py-line"><tt class="py-docstring"> Install 300 host intents and verify ping all (Att Topology)</tt> </tt>
-<a name="L794"></a><tt class="py-lineno"> 794</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L795"></a><tt class="py-lineno"> 795</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-239" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-239', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Add 300 host intents and verify pingall (Att Topology)"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L796"></a><tt class="py-lineno"> 796</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-240" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-240', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"_______________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L797"></a><tt class="py-lineno"> 797</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">itertools</tt> </tt>
-<a name="L798"></a><tt class="py-lineno"> 798</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L799"></a><tt class="py-lineno"> 799</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-241" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-241', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install 300 host intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L800"></a><tt class="py-lineno"> 800</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-242" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-242', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add host Intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L801"></a><tt class="py-lineno"> 801</tt> <tt class="py-line"> <tt class="py-name">intentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L802"></a><tt class="py-lineno"> 802</tt> <tt class="py-line"> <tt class="py-name">hostCombos</tt> <tt class="py-op">=</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt> <tt class="py-name">itertools</tt><tt class="py-op">.</tt><tt class="py-name">combinations</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostMACs</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L803"></a><tt class="py-lineno"> 803</tt> <tt class="py-line"> </tt>
-<a name="L804"></a><tt class="py-lineno"> 804</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L805"></a><tt class="py-lineno"> 805</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L806"></a><tt class="py-lineno"> 806</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">hostCombos</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L807"></a><tt class="py-lineno"> 807</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L808"></a><tt class="py-lineno"> 808</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-243" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-243', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L809"></a><tt class="py-lineno"> 809</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">hostCombos</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L810"></a><tt class="py-lineno"> 810</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L811"></a><tt class="py-lineno"> 811</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-244" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-244', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-245" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-245', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-246" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addHostIntent()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addHostIntent,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addHostIntent()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addHostIntent"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addHostIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addHostIntent" class="py-name" href="#" onclick="return doclink('link-246', 'addHostIntent', 'link-246');">addHostIntent</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L812"></a><tt class="py-lineno"> 812</tt> <tt class="py-line"> <tt class="py-name">threadID</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L813"></a><tt class="py-lineno"> 813</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"addHostIntent"</tt><tt class="py-op">,</tt> </tt>
-<a name="L814"></a><tt class="py-lineno"> 814</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">hostCombos</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">hostCombos</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L815"></a><tt class="py-lineno"> 815</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L816"></a><tt class="py-lineno"> 816</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L817"></a><tt class="py-lineno"> 817</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L818"></a><tt class="py-lineno"> 818</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L819"></a><tt class="py-lineno"> 819</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L820"></a><tt class="py-lineno"> 820</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L821"></a><tt class="py-lineno"> 821</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L822"></a><tt class="py-lineno"> 822</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L823"></a><tt class="py-lineno"> 823</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-247" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-247', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for adding host intents: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L824"></a><tt class="py-lineno"> 824</tt> <tt class="py-line"> </tt>
-<a name="L825"></a><tt class="py-lineno"> 825</tt> <tt class="py-line"> <tt class="py-name">intentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L826"></a><tt class="py-lineno"> 826</tt> <tt class="py-line"> <tt class="py-name">intentsJson</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-248" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intents,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intents"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-248', 'intents', 'link-248');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L827"></a><tt class="py-lineno"> 827</tt> <tt class="py-line"> <tt class="py-name">getIntentStateResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-249" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getIntentState()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getIntentState,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getIntentState()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getIntentState"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getIntentState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getIntentState" class="py-name" href="#" onclick="return doclink('link-249', 'getIntentState', 'link-249');">getIntentState</a></tt><tt class="py-op">(</tt><tt class="py-name">intentsId</tt> <tt class="py-op">=</tt> <tt class="py-name">intentIdList</tt><tt class="py-op">,</tt> </tt>
-<a name="L828"></a><tt class="py-lineno"> 828</tt> <tt class="py-line"> <tt class="py-name">intentsJson</tt> <tt class="py-op">=</tt> <tt class="py-name">intentsJson</tt><tt class="py-op">)</tt> </tt>
-<a name="L829"></a><tt class="py-lineno"> 829</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"len of intent ID"</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">intentIdList</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L830"></a><tt class="py-lineno"> 830</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"len of intent state results"</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">getIntentStateResult</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L831"></a><tt class="py-lineno"> 831</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">getIntentStateResult</tt> </tt>
-<a name="L832"></a><tt class="py-lineno"> 832</tt> <tt class="py-line"> <tt class="py-comment"># Takes awhile for all the onos to get the intents</tt> </tt>
-<a name="L833"></a><tt class="py-lineno"> 833</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">30</tt> <tt class="py-op">)</tt> </tt>
-<a name="L834"></a><tt class="py-lineno"> 834</tt> <tt class="py-line"> <tt class="py-string">"""intentState = main.TRUE</tt> </tt>
-<a name="L835"></a><tt class="py-lineno"> 835</tt> <tt class="py-line"><tt class="py-string"> for i in getIntentStateResult:</tt> </tt>
-<a name="L836"></a><tt class="py-lineno"> 836</tt> <tt class="py-line"><tt class="py-string"> if getIntentStateResult.get( 'state' ) != 'INSTALLED':</tt> </tt>
-<a name="L837"></a><tt class="py-lineno"> 837</tt> <tt class="py-line"><tt class="py-string"> """</tt> </tt>
-<a name="L838"></a><tt class="py-lineno"> 838</tt> <tt class="py-line"> </tt>
-<a name="L839"></a><tt class="py-lineno"> 839</tt> <tt class="py-line"> </tt>
-<a name="L840"></a><tt class="py-lineno"> 840</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-250" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-250', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L841"></a><tt class="py-lineno"> 841</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L842"></a><tt class="py-lineno"> 842</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L843"></a><tt class="py-lineno"> 843</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-251" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-251', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L844"></a><tt class="py-lineno"> 844</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L845"></a><tt class="py-lineno"> 845</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L846"></a><tt class="py-lineno"> 846</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-252" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-252', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L847"></a><tt class="py-lineno"> 847</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L848"></a><tt class="py-lineno"> 848</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L849"></a><tt class="py-lineno"> 849</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L850"></a><tt class="py-lineno"> 850</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L851"></a><tt class="py-lineno"> 851</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L852"></a><tt class="py-lineno"> 852</tt> <tt class="py-line"> <tt id="link-253" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-253', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L853"></a><tt class="py-lineno"> 853</tt> <tt class="py-line"> </tt>
-<a name="L854"></a><tt class="py-lineno"> 854</tt> <tt class="py-line"> <tt class="py-name">case60Result</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">intentResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">pingResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L855"></a><tt class="py-lineno"> 855</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L856"></a><tt class="py-lineno"> 856</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L857"></a><tt class="py-lineno"> 857</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case60Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L858"></a><tt class="py-lineno"> 858</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Install 300 Host Intents and Ping All test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L859"></a><tt class="py-lineno"> 859</tt> <tt class="py-line"> <tt id="link-254" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-254', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Install 300 Host Intents and Ping All test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L860"></a><tt class="py-lineno"> 860</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE61"></a><div id="CHOtest.CASE61-def"><a name="L861"></a><tt class="py-lineno"> 861</tt> <a class="py-toggle" href="#" id="CHOtest.CASE61-toggle" onclick="return toggle('CHOtest.CASE61');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE61">CASE61</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE61-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE61-expanded"><a name="L862"></a><tt class="py-lineno"> 862</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L863"></a><tt class="py-lineno"> 863</tt> <tt class="py-line"><tt class="py-docstring"> Install 600 host intents and verify ping all for Chordal Topology</tt> </tt>
-<a name="L864"></a><tt class="py-lineno"> 864</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L865"></a><tt class="py-lineno"> 865</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-255" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-255', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Add 600 host intents and verify pingall (Chordal Topo)"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L866"></a><tt class="py-lineno"> 866</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-256" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-256', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"_______________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L867"></a><tt class="py-lineno"> 867</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">itertools</tt> </tt>
-<a name="L868"></a><tt class="py-lineno"> 868</tt> <tt class="py-line"> </tt>
-<a name="L869"></a><tt class="py-lineno"> 869</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-257" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-257', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install 600 host intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L870"></a><tt class="py-lineno"> 870</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-258" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-258', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add host Intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L871"></a><tt class="py-lineno"> 871</tt> <tt class="py-line"> <tt class="py-name">intentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L872"></a><tt class="py-lineno"> 872</tt> <tt class="py-line"> <tt class="py-name">hostCombos</tt> <tt class="py-op">=</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt> <tt class="py-name">itertools</tt><tt class="py-op">.</tt><tt class="py-name">combinations</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostMACs</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L873"></a><tt class="py-lineno"> 873</tt> <tt class="py-line"> </tt>
-<a name="L874"></a><tt class="py-lineno"> 874</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L875"></a><tt class="py-lineno"> 875</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L876"></a><tt class="py-lineno"> 876</tt> <tt class="py-line"> </tt>
-<a name="L877"></a><tt class="py-lineno"> 877</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">hostCombos</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L878"></a><tt class="py-lineno"> 878</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L879"></a><tt class="py-lineno"> 879</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-259" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-259', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L880"></a><tt class="py-lineno"> 880</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">hostCombos</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L881"></a><tt class="py-lineno"> 881</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L882"></a><tt class="py-lineno"> 882</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-260" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-260', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-261" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-261', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-262" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addHostIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addHostIntent" class="py-name" href="#" onclick="return doclink('link-262', 'addHostIntent', 'link-246');">addHostIntent</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L883"></a><tt class="py-lineno"> 883</tt> <tt class="py-line"> <tt class="py-name">threadID</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L884"></a><tt class="py-lineno"> 884</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"addHostIntent"</tt><tt class="py-op">,</tt> </tt>
-<a name="L885"></a><tt class="py-lineno"> 885</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">hostCombos</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">hostCombos</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L886"></a><tt class="py-lineno"> 886</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L887"></a><tt class="py-lineno"> 887</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L888"></a><tt class="py-lineno"> 888</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L889"></a><tt class="py-lineno"> 889</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L890"></a><tt class="py-lineno"> 890</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L891"></a><tt class="py-lineno"> 891</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L892"></a><tt class="py-lineno"> 892</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L893"></a><tt class="py-lineno"> 893</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L894"></a><tt class="py-lineno"> 894</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-263" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-263', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for adding host intents: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L895"></a><tt class="py-lineno"> 895</tt> <tt class="py-line"> <tt class="py-name">intentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L896"></a><tt class="py-lineno"> 896</tt> <tt class="py-line"> <tt class="py-name">intentsJson</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-264" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-264', 'intents', 'link-248');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L897"></a><tt class="py-lineno"> 897</tt> <tt class="py-line"> <tt class="py-name">getIntentStateResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-265" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getIntentState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getIntentState" class="py-name" href="#" onclick="return doclink('link-265', 'getIntentState', 'link-249');">getIntentState</a></tt><tt class="py-op">(</tt><tt class="py-name">intentsId</tt> <tt class="py-op">=</tt> <tt class="py-name">intentIdList</tt><tt class="py-op">,</tt> </tt>
-<a name="L898"></a><tt class="py-lineno"> 898</tt> <tt class="py-line"> <tt class="py-name">intentsJson</tt> <tt class="py-op">=</tt> <tt class="py-name">intentsJson</tt><tt class="py-op">)</tt> </tt>
-<a name="L899"></a><tt class="py-lineno"> 899</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">getIntentStateResult</tt> </tt>
-<a name="L900"></a><tt class="py-lineno"> 900</tt> <tt class="py-line"> </tt>
-<a name="L901"></a><tt class="py-lineno"> 901</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-266" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-266', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L902"></a><tt class="py-lineno"> 902</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L903"></a><tt class="py-lineno"> 903</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L904"></a><tt class="py-lineno"> 904</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-267" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-267', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L905"></a><tt class="py-lineno"> 905</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L906"></a><tt class="py-lineno"> 906</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L907"></a><tt class="py-lineno"> 907</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-268" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-268', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L908"></a><tt class="py-lineno"> 908</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L909"></a><tt class="py-lineno"> 909</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L910"></a><tt class="py-lineno"> 910</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L911"></a><tt class="py-lineno"> 911</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L912"></a><tt class="py-lineno"> 912</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L913"></a><tt class="py-lineno"> 913</tt> <tt class="py-line"> <tt id="link-269" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-269', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L914"></a><tt class="py-lineno"> 914</tt> <tt class="py-line"> </tt>
-<a name="L915"></a><tt class="py-lineno"> 915</tt> <tt class="py-line"> <tt class="py-name">case14Result</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">intentResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">pingResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L916"></a><tt class="py-lineno"> 916</tt> <tt class="py-line"> </tt>
-<a name="L917"></a><tt class="py-lineno"> 917</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L918"></a><tt class="py-lineno"> 918</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L919"></a><tt class="py-lineno"> 919</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case14Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L920"></a><tt class="py-lineno"> 920</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Install 300 Host Intents and Ping All test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L921"></a><tt class="py-lineno"> 921</tt> <tt class="py-line"> <tt id="link-270" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-270', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Install 300 Host Intents and Ping All test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L922"></a><tt class="py-lineno"> 922</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE62"></a><div id="CHOtest.CASE62-def"><a name="L923"></a><tt class="py-lineno"> 923</tt> <a class="py-toggle" href="#" id="CHOtest.CASE62-toggle" onclick="return toggle('CHOtest.CASE62');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE62">CASE62</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE62-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE62-expanded"><a name="L924"></a><tt class="py-lineno"> 924</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L925"></a><tt class="py-lineno"> 925</tt> <tt class="py-line"><tt class="py-docstring"> Install 2278 host intents and verify ping all for Spine Topology</tt> </tt>
-<a name="L926"></a><tt class="py-lineno"> 926</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L927"></a><tt class="py-lineno"> 927</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-271" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-271', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Add 2278 host intents and verify pingall (Spine Topo)"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L928"></a><tt class="py-lineno"> 928</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-272" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-272', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"_______________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L929"></a><tt class="py-lineno"> 929</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">itertools</tt> </tt>
-<a name="L930"></a><tt class="py-lineno"> 930</tt> <tt class="py-line"> </tt>
-<a name="L931"></a><tt class="py-lineno"> 931</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-273" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-273', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install 2278 host intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L932"></a><tt class="py-lineno"> 932</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-274" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-274', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add host Intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L933"></a><tt class="py-lineno"> 933</tt> <tt class="py-line"> <tt class="py-name">intentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L934"></a><tt class="py-lineno"> 934</tt> <tt class="py-line"> <tt class="py-name">hostCombos</tt> <tt class="py-op">=</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt> <tt class="py-name">itertools</tt><tt class="py-op">.</tt><tt class="py-name">combinations</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostMACs</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L935"></a><tt class="py-lineno"> 935</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt> <tt class="py-op">=</tt> <tt class="py-number">300</tt> </tt>
-<a name="L936"></a><tt class="py-lineno"> 936</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L937"></a><tt class="py-lineno"> 937</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L938"></a><tt class="py-lineno"> 938</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">hostCombos</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L939"></a><tt class="py-lineno"> 939</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L940"></a><tt class="py-lineno"> 940</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-275" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-275', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L941"></a><tt class="py-lineno"> 941</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">hostCombos</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L942"></a><tt class="py-lineno"> 942</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L943"></a><tt class="py-lineno"> 943</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-276" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-276', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-277" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-277', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-278" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addHostIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addHostIntent" class="py-name" href="#" onclick="return doclink('link-278', 'addHostIntent', 'link-246');">addHostIntent</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L944"></a><tt class="py-lineno"> 944</tt> <tt class="py-line"> <tt class="py-name">threadID</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L945"></a><tt class="py-lineno"> 945</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"addHostIntent"</tt><tt class="py-op">,</tt> </tt>
-<a name="L946"></a><tt class="py-lineno"> 946</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">hostCombos</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">hostCombos</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L947"></a><tt class="py-lineno"> 947</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L948"></a><tt class="py-lineno"> 948</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L949"></a><tt class="py-lineno"> 949</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L950"></a><tt class="py-lineno"> 950</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L951"></a><tt class="py-lineno"> 951</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L952"></a><tt class="py-lineno"> 952</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L953"></a><tt class="py-lineno"> 953</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L954"></a><tt class="py-lineno"> 954</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L955"></a><tt class="py-lineno"> 955</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-279" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-279', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for adding host intents: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L956"></a><tt class="py-lineno"> 956</tt> <tt class="py-line"> <tt class="py-name">intentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L957"></a><tt class="py-lineno"> 957</tt> <tt class="py-line"> <tt class="py-name">intentsJson</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-280" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-280', 'intents', 'link-248');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L958"></a><tt class="py-lineno"> 958</tt> <tt class="py-line"> <tt class="py-name">getIntentStateResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-281" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getIntentState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getIntentState" class="py-name" href="#" onclick="return doclink('link-281', 'getIntentState', 'link-249');">getIntentState</a></tt><tt class="py-op">(</tt><tt class="py-name">intentsId</tt> <tt class="py-op">=</tt> <tt class="py-name">intentIdList</tt><tt class="py-op">,</tt> </tt>
-<a name="L959"></a><tt class="py-lineno"> 959</tt> <tt class="py-line"> <tt class="py-name">intentsJson</tt> <tt class="py-op">=</tt> <tt class="py-name">intentsJson</tt><tt class="py-op">)</tt> </tt>
-<a name="L960"></a><tt class="py-lineno"> 960</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">getIntentStateResult</tt> </tt>
-<a name="L961"></a><tt class="py-lineno"> 961</tt> <tt class="py-line"> </tt>
-<a name="L962"></a><tt class="py-lineno"> 962</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-282" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-282', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L963"></a><tt class="py-lineno"> 963</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L964"></a><tt class="py-lineno"> 964</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L965"></a><tt class="py-lineno"> 965</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-283" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-283', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L966"></a><tt class="py-lineno"> 966</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L967"></a><tt class="py-lineno"> 967</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L968"></a><tt class="py-lineno"> 968</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-284" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-284', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L969"></a><tt class="py-lineno"> 969</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L970"></a><tt class="py-lineno"> 970</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L971"></a><tt class="py-lineno"> 971</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L972"></a><tt class="py-lineno"> 972</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L973"></a><tt class="py-lineno"> 973</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L974"></a><tt class="py-lineno"> 974</tt> <tt class="py-line"> <tt id="link-285" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-285', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L975"></a><tt class="py-lineno"> 975</tt> <tt class="py-line"> </tt>
-<a name="L976"></a><tt class="py-lineno"> 976</tt> <tt class="py-line"> <tt class="py-name">case15Result</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">intentResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">pingResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L977"></a><tt class="py-lineno"> 977</tt> <tt class="py-line"> </tt>
-<a name="L978"></a><tt class="py-lineno"> 978</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L979"></a><tt class="py-lineno"> 979</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L980"></a><tt class="py-lineno"> 980</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case15Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L981"></a><tt class="py-lineno"> 981</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Install 2278 Host Intents and Ping All test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L982"></a><tt class="py-lineno"> 982</tt> <tt class="py-line"> <tt id="link-286" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-286', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Install 2278 Host Intents and Ping All test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L983"></a><tt class="py-lineno"> 983</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE70"></a><div id="CHOtest.CASE70-def"><a name="L984"></a><tt class="py-lineno"> 984</tt> <a class="py-toggle" href="#" id="CHOtest.CASE70-toggle" onclick="return toggle('CHOtest.CASE70');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE70">CASE70</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE70-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE70-expanded"><a name="L985"></a><tt class="py-lineno"> 985</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L986"></a><tt class="py-lineno"> 986</tt> <tt class="py-line"><tt class="py-docstring"> Randomly bring some core links down and verify ping all ( Host Intents-Att Topo)</tt> </tt>
-<a name="L987"></a><tt class="py-lineno"> 987</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L988"></a><tt class="py-lineno"> 988</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">random</tt> </tt>
-<a name="L989"></a><tt class="py-lineno"> 989</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink1</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L990"></a><tt class="py-lineno"> 990</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink2</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L991"></a><tt class="py-lineno"> 991</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink3</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L992"></a><tt class="py-lineno"> 992</tt> <tt class="py-line"> <tt class="py-name">link1End1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS3a'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L993"></a><tt class="py-lineno"> 993</tt> <tt class="py-line"> <tt class="py-name">link1End2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS3b'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt> <tt class="py-op">)</tt> </tt>
-<a name="L994"></a><tt class="py-lineno"> 994</tt> <tt class="py-line"> <tt class="py-name">link2End1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS14a'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L995"></a><tt class="py-lineno"> 995</tt> <tt class="py-line"> <tt class="py-name">link2End2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS14b'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt> <tt class="py-op">)</tt> </tt>
-<a name="L996"></a><tt class="py-lineno"> 996</tt> <tt class="py-line"> <tt class="py-name">link3End1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS18a'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L997"></a><tt class="py-lineno"> 997</tt> <tt class="py-line"> <tt class="py-name">link3End2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS18b'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt> <tt class="py-op">)</tt> </tt>
-<a name="L998"></a><tt class="py-lineno"> 998</tt> <tt class="py-line"> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'toggleLinks'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L999"></a><tt class="py-lineno"> 999</tt> <tt class="py-line"> <tt class="py-name">link_sleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1000"></a><tt class="py-lineno">1000</tt> <tt class="py-line"> </tt>
-<a name="L1001"></a><tt class="py-lineno">1001</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-287" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-287', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Randomly bring some core links down and verify ping all (Host Intents-Att Topo)"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1002"></a><tt class="py-lineno">1002</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-288" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-288', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"___________________________________________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1003"></a><tt class="py-lineno">1003</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-289" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-289', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Host intents - Randomly bring some core links down and verify ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1004"></a><tt class="py-lineno">1004</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-290" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-290', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify number of Switch links to toggle on each Core Switch are between 1 - 5"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1005"></a><tt class="py-lineno">1005</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> </tt>
-<a name="L1006"></a><tt class="py-lineno">1006</tt> <tt class="py-line"> <tt class="py-number">0</tt> <tt class="py-keyword">or</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1007"></a><tt class="py-lineno">1007</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-291" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-291', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Please check your PARAMS file. Valid range for number of switch links to toggle is between 1 to 5"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1008"></a><tt class="py-lineno">1008</tt> <tt class="py-line"> <tt class="py-comment">#main.cleanup()</tt> </tt>
-<a name="L1009"></a><tt class="py-lineno">1009</tt> <tt class="py-line"> <tt class="py-comment">#main.exit()</tt> </tt>
-<a name="L1010"></a><tt class="py-lineno">1010</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1011"></a><tt class="py-lineno">1011</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-292" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-292', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"User provided Core switch links range to toggle is correct, proceeding to run the test"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1012"></a><tt class="py-lineno">1012</tt> <tt class="py-line"> </tt>
-<a name="L1013"></a><tt class="py-lineno">1013</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-293" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-293', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cut links on Core devices using user provided range"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1014"></a><tt class="py-lineno">1014</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink1</tt> <tt class="py-op">=</tt> <tt class="py-name">random</tt><tt class="py-op">.</tt><tt class="py-name">sample</tt><tt class="py-op">(</tt> <tt class="py-name">link1End2</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1015"></a><tt class="py-lineno">1015</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink2</tt> <tt class="py-op">=</tt> <tt class="py-name">random</tt><tt class="py-op">.</tt><tt class="py-name">sample</tt><tt class="py-op">(</tt> <tt class="py-name">link2End2</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1016"></a><tt class="py-lineno">1016</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink3</tt> <tt class="py-op">=</tt> <tt class="py-name">random</tt><tt class="py-op">.</tt><tt class="py-name">sample</tt><tt class="py-op">(</tt> <tt class="py-name">link3End2</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1017"></a><tt class="py-lineno">1017</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1018"></a><tt class="py-lineno">1018</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-294" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#link"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-294', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1019"></a><tt class="py-lineno">1019</tt> <tt class="py-line"> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">link1End1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1020"></a><tt class="py-lineno">1020</tt> <tt class="py-line"> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink1</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1021"></a><tt class="py-lineno">1021</tt> <tt class="py-line"> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"down"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1022"></a><tt class="py-lineno">1022</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1023"></a><tt class="py-lineno">1023</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-295" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-295', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1024"></a><tt class="py-lineno">1024</tt> <tt class="py-line"> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">link2End1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1025"></a><tt class="py-lineno">1025</tt> <tt class="py-line"> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink2</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1026"></a><tt class="py-lineno">1026</tt> <tt class="py-line"> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"down"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1027"></a><tt class="py-lineno">1027</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1028"></a><tt class="py-lineno">1028</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-296" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-296', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1029"></a><tt class="py-lineno">1029</tt> <tt class="py-line"> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">link3End1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1030"></a><tt class="py-lineno">1030</tt> <tt class="py-line"> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink3</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1031"></a><tt class="py-lineno">1031</tt> <tt class="py-line"> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"down"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1032"></a><tt class="py-lineno">1032</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1033"></a><tt class="py-lineno">1033</tt> <tt class="py-line"> </tt>
-<a name="L1034"></a><tt class="py-lineno">1034</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-297" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-297', 'topology', 'link-62');">topology</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1035"></a><tt class="py-lineno">1035</tt> <tt class="py-line"> <tt class="py-name">linkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-298" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkStatus()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkStatus,Method TestON.drivers.common.cli.onosdriver.OnosDriver.checkStatus()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#checkStatus"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkStatus
-TestON.drivers.common.cli.onosdriver.OnosDriver.checkStatus" class="py-name" href="#" onclick="return doclink('link-298', 'checkStatus', 'link-298');">checkStatus</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1036"></a><tt class="py-lineno">1036</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L1037"></a><tt class="py-lineno">1037</tt> <tt class="py-line"> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNlinks</tt> <tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">)</tt> <tt class="py-op">*</tt> <tt class="py-number">6</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1038"></a><tt class="py-lineno">1038</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1039"></a><tt class="py-lineno">1039</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1040"></a><tt class="py-lineno">1040</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linkDown</tt><tt class="py-op">,</tt> </tt>
-<a name="L1041"></a><tt class="py-lineno">1041</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link Down discovered properly"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1042"></a><tt class="py-lineno">1042</tt> <tt class="py-line"> <tt id="link-299" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-299', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Link down was not discovered in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1043"></a><tt class="py-lineno">1043</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1044"></a><tt class="py-lineno">1044</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1045"></a><tt class="py-lineno">1045</tt> <tt class="py-line"> </tt>
-<a name="L1046"></a><tt class="py-lineno">1046</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-300" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-300', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1047"></a><tt class="py-lineno">1047</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1048"></a><tt class="py-lineno">1048</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1049"></a><tt class="py-lineno">1049</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-301" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-301', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1050"></a><tt class="py-lineno">1050</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1051"></a><tt class="py-lineno">1051</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1052"></a><tt class="py-lineno">1052</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-302" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-302', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1053"></a><tt class="py-lineno">1053</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1054"></a><tt class="py-lineno">1054</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1055"></a><tt class="py-lineno">1055</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1056"></a><tt class="py-lineno">1056</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResultLinkDown</tt><tt class="py-op">,</tt> </tt>
-<a name="L1057"></a><tt class="py-lineno">1057</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1058"></a><tt class="py-lineno">1058</tt> <tt class="py-line"> <tt id="link-303" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-303', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1059"></a><tt class="py-lineno">1059</tt> <tt class="py-line"> </tt>
-<a name="L1060"></a><tt class="py-lineno">1060</tt> <tt class="py-line"> <tt class="py-name">caseResult70</tt> <tt class="py-op">=</tt> <tt class="py-name">linkDown</tt> <tt class="py-keyword">and</tt> <tt class="py-name">pingResultLinkDown</tt> </tt>
-<a name="L1061"></a><tt class="py-lineno">1061</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">caseResult70</tt><tt class="py-op">,</tt> </tt>
-<a name="L1062"></a><tt class="py-lineno">1062</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Random Link cut Test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1063"></a><tt class="py-lineno">1063</tt> <tt class="py-line"> <tt id="link-304" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-304', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Random Link cut Test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1064"></a><tt class="py-lineno">1064</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE80"></a><div id="CHOtest.CASE80-def"><a name="L1065"></a><tt class="py-lineno">1065</tt> <a class="py-toggle" href="#" id="CHOtest.CASE80-toggle" onclick="return toggle('CHOtest.CASE80');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE80">CASE80</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE80-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE80-expanded"><a name="L1066"></a><tt class="py-lineno">1066</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1067"></a><tt class="py-lineno">1067</tt> <tt class="py-line"><tt class="py-docstring"> Bring the core links up that are down and verify ping all ( Host Intents-Att Topo )</tt> </tt>
-<a name="L1068"></a><tt class="py-lineno">1068</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1069"></a><tt class="py-lineno">1069</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">random</tt> </tt>
-<a name="L1070"></a><tt class="py-lineno">1070</tt> <tt class="py-line"> <tt class="py-name">link1End1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS3a'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1071"></a><tt class="py-lineno">1071</tt> <tt class="py-line"> <tt class="py-name">link2End1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS14a'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1072"></a><tt class="py-lineno">1072</tt> <tt class="py-line"> <tt class="py-name">link3End1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS18a'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1073"></a><tt class="py-lineno">1073</tt> <tt class="py-line"> <tt class="py-name">link_sleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1074"></a><tt class="py-lineno">1074</tt> <tt class="py-line"> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'toggleLinks'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1075"></a><tt class="py-lineno">1075</tt> <tt class="py-line"> </tt>
-<a name="L1076"></a><tt class="py-lineno">1076</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-305" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-305', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1077"></a><tt class="py-lineno">1077</tt> <tt class="py-line"> <tt class="py-string">"Bring the core links up that are down and verify ping all (Host Intents-Att Topo"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1078"></a><tt class="py-lineno">1078</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-306" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-306', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1079"></a><tt class="py-lineno">1079</tt> <tt class="py-line"> <tt class="py-string">"__________________________________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1080"></a><tt class="py-lineno">1080</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-307" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-307', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1081"></a><tt class="py-lineno">1081</tt> <tt class="py-line"> <tt class="py-string">"Host intents - Bring the core links up that are down and verify ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1082"></a><tt class="py-lineno">1082</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-308" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-308', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Bring randomly cut links on Core devices up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1083"></a><tt class="py-lineno">1083</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1084"></a><tt class="py-lineno">1084</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-309" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-309', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1085"></a><tt class="py-lineno">1085</tt> <tt class="py-line"> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">link1End1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1086"></a><tt class="py-lineno">1086</tt> <tt class="py-line"> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink1</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1087"></a><tt class="py-lineno">1087</tt> <tt class="py-line"> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1088"></a><tt class="py-lineno">1088</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1089"></a><tt class="py-lineno">1089</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-310" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-310', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1090"></a><tt class="py-lineno">1090</tt> <tt class="py-line"> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">link2End1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1091"></a><tt class="py-lineno">1091</tt> <tt class="py-line"> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink2</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1092"></a><tt class="py-lineno">1092</tt> <tt class="py-line"> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1093"></a><tt class="py-lineno">1093</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1094"></a><tt class="py-lineno">1094</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-311" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-311', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1095"></a><tt class="py-lineno">1095</tt> <tt class="py-line"> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">link3End1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1096"></a><tt class="py-lineno">1096</tt> <tt class="py-line"> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink3</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1097"></a><tt class="py-lineno">1097</tt> <tt class="py-line"> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1098"></a><tt class="py-lineno">1098</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1099"></a><tt class="py-lineno">1099</tt> <tt class="py-line"> </tt>
-<a name="L1100"></a><tt class="py-lineno">1100</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-312" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-312', 'topology', 'link-62');">topology</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1101"></a><tt class="py-lineno">1101</tt> <tt class="py-line"> <tt class="py-name">linkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-313" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkStatus
-TestON.drivers.common.cli.onosdriver.OnosDriver.checkStatus" class="py-name" href="#" onclick="return doclink('link-313', 'checkStatus', 'link-298');">checkStatus</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1102"></a><tt class="py-lineno">1102</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt><tt class="py-op">,</tt> </tt>
-<a name="L1103"></a><tt class="py-lineno">1103</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt><tt class="py-op">,</tt> </tt>
-<a name="L1104"></a><tt class="py-lineno">1104</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNlinks</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1105"></a><tt class="py-lineno">1105</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1106"></a><tt class="py-lineno">1106</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1107"></a><tt class="py-lineno">1107</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linkUp</tt><tt class="py-op">,</tt> </tt>
-<a name="L1108"></a><tt class="py-lineno">1108</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link up discovered properly"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1109"></a><tt class="py-lineno">1109</tt> <tt class="py-line"> <tt id="link-314" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-314', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Link up was not discovered in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1110"></a><tt class="py-lineno">1110</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1111"></a><tt class="py-lineno">1111</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1112"></a><tt class="py-lineno">1112</tt> <tt class="py-line"> </tt>
-<a name="L1113"></a><tt class="py-lineno">1113</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-315" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-315', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1114"></a><tt class="py-lineno">1114</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1115"></a><tt class="py-lineno">1115</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1116"></a><tt class="py-lineno">1116</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-316" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-316', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt> <tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1117"></a><tt class="py-lineno">1117</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1118"></a><tt class="py-lineno">1118</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1119"></a><tt class="py-lineno">1119</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-317" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-317', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1120"></a><tt class="py-lineno">1120</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1121"></a><tt class="py-lineno">1121</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1122"></a><tt class="py-lineno">1122</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1123"></a><tt class="py-lineno">1123</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResultLinkUp</tt><tt class="py-op">,</tt> </tt>
-<a name="L1124"></a><tt class="py-lineno">1124</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1125"></a><tt class="py-lineno">1125</tt> <tt class="py-line"> <tt id="link-318" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-318', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1126"></a><tt class="py-lineno">1126</tt> <tt class="py-line"> </tt>
-<a name="L1127"></a><tt class="py-lineno">1127</tt> <tt class="py-line"> <tt class="py-name">caseResult80</tt> <tt class="py-op">=</tt> <tt class="py-name">linkUp</tt> <tt class="py-keyword">and</tt> <tt class="py-name">pingResultLinkUp</tt> </tt>
-<a name="L1128"></a><tt class="py-lineno">1128</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">caseResult80</tt><tt class="py-op">,</tt> </tt>
-<a name="L1129"></a><tt class="py-lineno">1129</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link Up Test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1130"></a><tt class="py-lineno">1130</tt> <tt class="py-line"> <tt id="link-319" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-319', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Link Up Test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1131"></a><tt class="py-lineno">1131</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE71"></a><div id="CHOtest.CASE71-def"><a name="L1132"></a><tt class="py-lineno">1132</tt> <a class="py-toggle" href="#" id="CHOtest.CASE71-toggle" onclick="return toggle('CHOtest.CASE71');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE71">CASE71</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE71-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE71-expanded"><a name="L1133"></a><tt class="py-lineno">1133</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1134"></a><tt class="py-lineno">1134</tt> <tt class="py-line"><tt class="py-docstring"> Randomly bring some core links down and verify ping all ( Point Intents-Att Topo)</tt> </tt>
-<a name="L1135"></a><tt class="py-lineno">1135</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1136"></a><tt class="py-lineno">1136</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">random</tt> </tt>
-<a name="L1137"></a><tt class="py-lineno">1137</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink1</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1138"></a><tt class="py-lineno">1138</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink2</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1139"></a><tt class="py-lineno">1139</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink3</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1140"></a><tt class="py-lineno">1140</tt> <tt class="py-line"> <tt class="py-name">link1End1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS3a'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1141"></a><tt class="py-lineno">1141</tt> <tt class="py-line"> <tt class="py-name">link1End2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS3b'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1142"></a><tt class="py-lineno">1142</tt> <tt class="py-line"> <tt class="py-name">link2End1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS14a'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1143"></a><tt class="py-lineno">1143</tt> <tt class="py-line"> <tt class="py-name">link2End2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS14b'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1144"></a><tt class="py-lineno">1144</tt> <tt class="py-line"> <tt class="py-name">link3End1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS18a'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1145"></a><tt class="py-lineno">1145</tt> <tt class="py-line"> <tt class="py-name">link3End2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS18b'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1146"></a><tt class="py-lineno">1146</tt> <tt class="py-line"> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'toggleLinks'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1147"></a><tt class="py-lineno">1147</tt> <tt class="py-line"> <tt class="py-name">link_sleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1148"></a><tt class="py-lineno">1148</tt> <tt class="py-line"> </tt>
-<a name="L1149"></a><tt class="py-lineno">1149</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-320" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-320', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Randomly bring some core links down and verify ping all (Point Intents-Att Topo)"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1150"></a><tt class="py-lineno">1150</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-321" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-321', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"___________________________________________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1151"></a><tt class="py-lineno">1151</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-322" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-322', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Point intents - Randomly bring some core links down and verify ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1152"></a><tt class="py-lineno">1152</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-323" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-323', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify number of Switch links to toggle on each Core Switch are between 1 - 5"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1153"></a><tt class="py-lineno">1153</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> </tt>
-<a name="L1154"></a><tt class="py-lineno">1154</tt> <tt class="py-line"> <tt class="py-number">0</tt> <tt class="py-keyword">or</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1155"></a><tt class="py-lineno">1155</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-324" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-324', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Please check your PARAMS file. Valid range for number of switch links to toggle is between 1 to 5"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1156"></a><tt class="py-lineno">1156</tt> <tt class="py-line"> <tt class="py-comment">#main.cleanup()</tt> </tt>
-<a name="L1157"></a><tt class="py-lineno">1157</tt> <tt class="py-line"> <tt class="py-comment">#main.exit()</tt> </tt>
-<a name="L1158"></a><tt class="py-lineno">1158</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1159"></a><tt class="py-lineno">1159</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-325" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-325', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"User provided Core switch links range to toggle is correct, proceeding to run the test"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1160"></a><tt class="py-lineno">1160</tt> <tt class="py-line"> </tt>
-<a name="L1161"></a><tt class="py-lineno">1161</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-326" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-326', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cut links on Core devices using user provided range"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1162"></a><tt class="py-lineno">1162</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink1</tt> <tt class="py-op">=</tt> <tt class="py-name">random</tt><tt class="py-op">.</tt><tt class="py-name">sample</tt><tt class="py-op">(</tt> <tt class="py-name">link1End2</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1163"></a><tt class="py-lineno">1163</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink2</tt> <tt class="py-op">=</tt> <tt class="py-name">random</tt><tt class="py-op">.</tt><tt class="py-name">sample</tt><tt class="py-op">(</tt> <tt class="py-name">link2End2</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1164"></a><tt class="py-lineno">1164</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink3</tt> <tt class="py-op">=</tt> <tt class="py-name">random</tt><tt class="py-op">.</tt><tt class="py-name">sample</tt><tt class="py-op">(</tt> <tt class="py-name">link3End2</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1165"></a><tt class="py-lineno">1165</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1166"></a><tt class="py-lineno">1166</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-327" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-327', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1167"></a><tt class="py-lineno">1167</tt> <tt class="py-line"> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">link1End1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1168"></a><tt class="py-lineno">1168</tt> <tt class="py-line"> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink1</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1169"></a><tt class="py-lineno">1169</tt> <tt class="py-line"> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"down"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1170"></a><tt class="py-lineno">1170</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1171"></a><tt class="py-lineno">1171</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-328" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-328', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1172"></a><tt class="py-lineno">1172</tt> <tt class="py-line"> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">link2End1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1173"></a><tt class="py-lineno">1173</tt> <tt class="py-line"> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink2</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1174"></a><tt class="py-lineno">1174</tt> <tt class="py-line"> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"down"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1175"></a><tt class="py-lineno">1175</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1176"></a><tt class="py-lineno">1176</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-329" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-329', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1177"></a><tt class="py-lineno">1177</tt> <tt class="py-line"> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">link3End1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1178"></a><tt class="py-lineno">1178</tt> <tt class="py-line"> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink3</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1179"></a><tt class="py-lineno">1179</tt> <tt class="py-line"> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"down"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1180"></a><tt class="py-lineno">1180</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1181"></a><tt class="py-lineno">1181</tt> <tt class="py-line"> </tt>
-<a name="L1182"></a><tt class="py-lineno">1182</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-330" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-330', 'topology', 'link-62');">topology</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1183"></a><tt class="py-lineno">1183</tt> <tt class="py-line"> <tt class="py-name">linkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-331" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkStatus
-TestON.drivers.common.cli.onosdriver.OnosDriver.checkStatus" class="py-name" href="#" onclick="return doclink('link-331', 'checkStatus', 'link-298');">checkStatus</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1184"></a><tt class="py-lineno">1184</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L1185"></a><tt class="py-lineno">1185</tt> <tt class="py-line"> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNlinks</tt> <tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">)</tt> <tt class="py-op">*</tt> <tt class="py-number">6</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1186"></a><tt class="py-lineno">1186</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1187"></a><tt class="py-lineno">1187</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1188"></a><tt class="py-lineno">1188</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linkDown</tt><tt class="py-op">,</tt> </tt>
-<a name="L1189"></a><tt class="py-lineno">1189</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link Down discovered properly"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1190"></a><tt class="py-lineno">1190</tt> <tt class="py-line"> <tt id="link-332" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-332', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Link down was not discovered in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1191"></a><tt class="py-lineno">1191</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1192"></a><tt class="py-lineno">1192</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1193"></a><tt class="py-lineno">1193</tt> <tt class="py-line"> </tt>
-<a name="L1194"></a><tt class="py-lineno">1194</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-333" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-333', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1195"></a><tt class="py-lineno">1195</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1196"></a><tt class="py-lineno">1196</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1197"></a><tt class="py-lineno">1197</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-334" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-334', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L1198"></a><tt class="py-lineno">1198</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1199"></a><tt class="py-lineno">1199</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1200"></a><tt class="py-lineno">1200</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-335" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-335', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1201"></a><tt class="py-lineno">1201</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1202"></a><tt class="py-lineno">1202</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1203"></a><tt class="py-lineno">1203</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1204"></a><tt class="py-lineno">1204</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResultLinkDown</tt><tt class="py-op">,</tt> </tt>
-<a name="L1205"></a><tt class="py-lineno">1205</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1206"></a><tt class="py-lineno">1206</tt> <tt class="py-line"> <tt id="link-336" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-336', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1207"></a><tt class="py-lineno">1207</tt> <tt class="py-line"> </tt>
-<a name="L1208"></a><tt class="py-lineno">1208</tt> <tt class="py-line"> <tt class="py-name">caseResult71</tt> <tt class="py-op">=</tt> <tt class="py-name">linkDown</tt> <tt class="py-keyword">and</tt> <tt class="py-name">pingResultLinkDown</tt> </tt>
-<a name="L1209"></a><tt class="py-lineno">1209</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">caseResult71</tt><tt class="py-op">,</tt> </tt>
-<a name="L1210"></a><tt class="py-lineno">1210</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Random Link cut Test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1211"></a><tt class="py-lineno">1211</tt> <tt class="py-line"> <tt id="link-337" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-337', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Random Link cut Test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1212"></a><tt class="py-lineno">1212</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE81"></a><div id="CHOtest.CASE81-def"><a name="L1213"></a><tt class="py-lineno">1213</tt> <a class="py-toggle" href="#" id="CHOtest.CASE81-toggle" onclick="return toggle('CHOtest.CASE81');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE81">CASE81</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE81-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE81-expanded"><a name="L1214"></a><tt class="py-lineno">1214</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1215"></a><tt class="py-lineno">1215</tt> <tt class="py-line"><tt class="py-docstring"> Bring the core links up that are down and verify ping all ( Point Intents-Att Topo )</tt> </tt>
-<a name="L1216"></a><tt class="py-lineno">1216</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1217"></a><tt class="py-lineno">1217</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">random</tt> </tt>
-<a name="L1218"></a><tt class="py-lineno">1218</tt> <tt class="py-line"> <tt class="py-name">link1End1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS3a'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1219"></a><tt class="py-lineno">1219</tt> <tt class="py-line"> <tt class="py-name">link2End1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS14a'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1220"></a><tt class="py-lineno">1220</tt> <tt class="py-line"> <tt class="py-name">link3End1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS18a'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1221"></a><tt class="py-lineno">1221</tt> <tt class="py-line"> <tt class="py-name">link_sleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1222"></a><tt class="py-lineno">1222</tt> <tt class="py-line"> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ATTCORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'toggleLinks'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1223"></a><tt class="py-lineno">1223</tt> <tt class="py-line"> </tt>
-<a name="L1224"></a><tt class="py-lineno">1224</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-338" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-338', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1225"></a><tt class="py-lineno">1225</tt> <tt class="py-line"> <tt class="py-string">"Bring the core links up that are down and verify ping all ( Point Intents-Att Topo"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1226"></a><tt class="py-lineno">1226</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-339" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-339', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1227"></a><tt class="py-lineno">1227</tt> <tt class="py-line"> <tt class="py-string">"__________________________________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1228"></a><tt class="py-lineno">1228</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-340" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-340', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1229"></a><tt class="py-lineno">1229</tt> <tt class="py-line"> <tt class="py-string">"Point intents - Bring the core links up that are down and verify ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1230"></a><tt class="py-lineno">1230</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-341" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-341', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Bring randomly cut links on Core devices up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1231"></a><tt class="py-lineno">1231</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">switchLinksToToggle</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1232"></a><tt class="py-lineno">1232</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-342" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-342', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1233"></a><tt class="py-lineno">1233</tt> <tt class="py-line"> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">link1End1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1234"></a><tt class="py-lineno">1234</tt> <tt class="py-line"> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink1</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1235"></a><tt class="py-lineno">1235</tt> <tt class="py-line"> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1236"></a><tt class="py-lineno">1236</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1237"></a><tt class="py-lineno">1237</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-343" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-343', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1238"></a><tt class="py-lineno">1238</tt> <tt class="py-line"> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">link2End1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1239"></a><tt class="py-lineno">1239</tt> <tt class="py-line"> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink2</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1240"></a><tt class="py-lineno">1240</tt> <tt class="py-line"> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1241"></a><tt class="py-lineno">1241</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1242"></a><tt class="py-lineno">1242</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-344" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-344', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1243"></a><tt class="py-lineno">1243</tt> <tt class="py-line"> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">link3End1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1244"></a><tt class="py-lineno">1244</tt> <tt class="py-line"> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink3</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1245"></a><tt class="py-lineno">1245</tt> <tt class="py-line"> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1246"></a><tt class="py-lineno">1246</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1247"></a><tt class="py-lineno">1247</tt> <tt class="py-line"> </tt>
-<a name="L1248"></a><tt class="py-lineno">1248</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-345" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-345', 'topology', 'link-62');">topology</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1249"></a><tt class="py-lineno">1249</tt> <tt class="py-line"> <tt class="py-name">linkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-346" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkStatus
-TestON.drivers.common.cli.onosdriver.OnosDriver.checkStatus" class="py-name" href="#" onclick="return doclink('link-346', 'checkStatus', 'link-298');">checkStatus</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1250"></a><tt class="py-lineno">1250</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt><tt class="py-op">,</tt> </tt>
-<a name="L1251"></a><tt class="py-lineno">1251</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt><tt class="py-op">,</tt> </tt>
-<a name="L1252"></a><tt class="py-lineno">1252</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNlinks</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1253"></a><tt class="py-lineno">1253</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1254"></a><tt class="py-lineno">1254</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1255"></a><tt class="py-lineno">1255</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linkUp</tt><tt class="py-op">,</tt> </tt>
-<a name="L1256"></a><tt class="py-lineno">1256</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link up discovered properly"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1257"></a><tt class="py-lineno">1257</tt> <tt class="py-line"> <tt id="link-347" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-347', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Link up was not discovered in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1258"></a><tt class="py-lineno">1258</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1259"></a><tt class="py-lineno">1259</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1260"></a><tt class="py-lineno">1260</tt> <tt class="py-line"> </tt>
-<a name="L1261"></a><tt class="py-lineno">1261</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-348" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-348', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1262"></a><tt class="py-lineno">1262</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1263"></a><tt class="py-lineno">1263</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1264"></a><tt class="py-lineno">1264</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-349" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-349', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1265"></a><tt class="py-lineno">1265</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1266"></a><tt class="py-lineno">1266</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1267"></a><tt class="py-lineno">1267</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-350" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-350', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1268"></a><tt class="py-lineno">1268</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1269"></a><tt class="py-lineno">1269</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1270"></a><tt class="py-lineno">1270</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1271"></a><tt class="py-lineno">1271</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResultLinkUp</tt><tt class="py-op">,</tt> </tt>
-<a name="L1272"></a><tt class="py-lineno">1272</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1273"></a><tt class="py-lineno">1273</tt> <tt class="py-line"> <tt id="link-351" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-351', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1274"></a><tt class="py-lineno">1274</tt> <tt class="py-line"> </tt>
-<a name="L1275"></a><tt class="py-lineno">1275</tt> <tt class="py-line"> <tt class="py-name">caseResult81</tt> <tt class="py-op">=</tt> <tt class="py-name">linkUp</tt> <tt class="py-keyword">and</tt> <tt class="py-name">pingResultLinkUp</tt> </tt>
-<a name="L1276"></a><tt class="py-lineno">1276</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">caseResult81</tt><tt class="py-op">,</tt> </tt>
-<a name="L1277"></a><tt class="py-lineno">1277</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link Up Test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1278"></a><tt class="py-lineno">1278</tt> <tt class="py-line"> <tt id="link-352" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-352', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Link Up Test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1279"></a><tt class="py-lineno">1279</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE72"></a><div id="CHOtest.CASE72-def"><a name="L1280"></a><tt class="py-lineno">1280</tt> <a class="py-toggle" href="#" id="CHOtest.CASE72-toggle" onclick="return toggle('CHOtest.CASE72');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE72">CASE72</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE72-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE72-expanded"><a name="L1281"></a><tt class="py-lineno">1281</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1282"></a><tt class="py-lineno">1282</tt> <tt class="py-line"><tt class="py-docstring"> Randomly bring some links down and verify ping all ( Host Intents-Chordal Topo)</tt> </tt>
-<a name="L1283"></a><tt class="py-lineno">1283</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1284"></a><tt class="py-lineno">1284</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">random</tt> </tt>
-<a name="L1285"></a><tt class="py-lineno">1285</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">itertools</tt> </tt>
-<a name="L1286"></a><tt class="py-lineno">1286</tt> <tt class="py-line"> <tt class="py-name">link_sleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1287"></a><tt class="py-lineno">1287</tt> <tt class="py-line"> </tt>
-<a name="L1288"></a><tt class="py-lineno">1288</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-353" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-353', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Randomly bring some core links down and verify ping all (Host Intents-Chordal Topo)"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1289"></a><tt class="py-lineno">1289</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-354" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-354', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"___________________________________________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1290"></a><tt class="py-lineno">1290</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-355" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-355', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Host intents - Randomly bring some core links down and verify ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1291"></a><tt class="py-lineno">1291</tt> <tt class="py-line"> <tt class="py-name">switches</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1292"></a><tt class="py-lineno">1292</tt> <tt class="py-line"> <tt class="py-name">switchesComb</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1293"></a><tt class="py-lineno">1293</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1294"></a><tt class="py-lineno">1294</tt> <tt class="py-line"> <tt class="py-name">switches</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-string">'s%d'</tt><tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1295"></a><tt class="py-lineno">1295</tt> <tt class="py-line"> <tt class="py-name">switchesLinksComb</tt> <tt class="py-op">=</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt><tt class="py-name">itertools</tt><tt class="py-op">.</tt><tt class="py-name">combinations</tt><tt class="py-op">(</tt><tt class="py-name">switches</tt><tt class="py-op">,</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1296"></a><tt class="py-lineno">1296</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLinks</tt> <tt class="py-op">=</tt> <tt class="py-name">random</tt><tt class="py-op">.</tt><tt class="py-name">sample</tt><tt class="py-op">(</tt><tt class="py-name">switchesLinksComb</tt><tt class="py-op">,</tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1297"></a><tt class="py-lineno">1297</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLinks</tt> </tt>
-<a name="L1298"></a><tt class="py-lineno">1298</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-356" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-356', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cut links on random devices"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1299"></a><tt class="py-lineno">1299</tt> <tt class="py-line"> </tt>
-<a name="L1300"></a><tt class="py-lineno">1300</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLinks</tt><tt class="py-op">:</tt> </tt>
-<a name="L1301"></a><tt class="py-lineno">1301</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-357" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-357', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1302"></a><tt class="py-lineno">1302</tt> <tt class="py-line"> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">switch</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1303"></a><tt class="py-lineno">1303</tt> <tt class="py-line"> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">switch</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1304"></a><tt class="py-lineno">1304</tt> <tt class="py-line"> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"down"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1305"></a><tt class="py-lineno">1305</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1306"></a><tt class="py-lineno">1306</tt> <tt class="py-line"> </tt>
-<a name="L1307"></a><tt class="py-lineno">1307</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-358" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-358', 'topology', 'link-62');">topology</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1308"></a><tt class="py-lineno">1308</tt> <tt class="py-line"> <tt class="py-name">linkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-359" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkStatus
-TestON.drivers.common.cli.onosdriver.OnosDriver.checkStatus" class="py-name" href="#" onclick="return doclink('link-359', 'checkStatus', 'link-298');">checkStatus</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1309"></a><tt class="py-lineno">1309</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L1310"></a><tt class="py-lineno">1310</tt> <tt class="py-line"> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNlinks</tt> <tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">5</tt> <tt class="py-op">*</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1311"></a><tt class="py-lineno">1311</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1312"></a><tt class="py-lineno">1312</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1313"></a><tt class="py-lineno">1313</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linkDown</tt><tt class="py-op">,</tt> </tt>
-<a name="L1314"></a><tt class="py-lineno">1314</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link Down discovered properly"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1315"></a><tt class="py-lineno">1315</tt> <tt class="py-line"> <tt id="link-360" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-360', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Link down was not discovered in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1316"></a><tt class="py-lineno">1316</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1317"></a><tt class="py-lineno">1317</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1318"></a><tt class="py-lineno">1318</tt> <tt class="py-line"> </tt>
-<a name="L1319"></a><tt class="py-lineno">1319</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-361" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-361', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1320"></a><tt class="py-lineno">1320</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1321"></a><tt class="py-lineno">1321</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1322"></a><tt class="py-lineno">1322</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-362" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-362', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L1323"></a><tt class="py-lineno">1323</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1324"></a><tt class="py-lineno">1324</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1325"></a><tt class="py-lineno">1325</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-363" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-363', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1326"></a><tt class="py-lineno">1326</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1327"></a><tt class="py-lineno">1327</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1328"></a><tt class="py-lineno">1328</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1329"></a><tt class="py-lineno">1329</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResultLinkDown</tt><tt class="py-op">,</tt> </tt>
-<a name="L1330"></a><tt class="py-lineno">1330</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1331"></a><tt class="py-lineno">1331</tt> <tt class="py-line"> <tt id="link-364" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-364', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1332"></a><tt class="py-lineno">1332</tt> <tt class="py-line"> </tt>
-<a name="L1333"></a><tt class="py-lineno">1333</tt> <tt class="py-line"> <tt class="py-name">caseResult71</tt> <tt class="py-op">=</tt> <tt class="py-name">pingResultLinkDown</tt> </tt>
-<a name="L1334"></a><tt class="py-lineno">1334</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">caseResult71</tt><tt class="py-op">,</tt> </tt>
-<a name="L1335"></a><tt class="py-lineno">1335</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Random Link cut Test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1336"></a><tt class="py-lineno">1336</tt> <tt class="py-line"> <tt id="link-365" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-365', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Random Link cut Test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1337"></a><tt class="py-lineno">1337</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE82"></a><div id="CHOtest.CASE82-def"><a name="L1338"></a><tt class="py-lineno">1338</tt> <a class="py-toggle" href="#" id="CHOtest.CASE82-toggle" onclick="return toggle('CHOtest.CASE82');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE82">CASE82</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE82-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE82-expanded"><a name="L1339"></a><tt class="py-lineno">1339</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1340"></a><tt class="py-lineno">1340</tt> <tt class="py-line"><tt class="py-docstring"> Bring the core links up that are down and verify ping all ( Host Intents Chordal Topo )</tt> </tt>
-<a name="L1341"></a><tt class="py-lineno">1341</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1342"></a><tt class="py-lineno">1342</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">random</tt> </tt>
-<a name="L1343"></a><tt class="py-lineno">1343</tt> <tt class="py-line"> <tt class="py-name">link_sleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1344"></a><tt class="py-lineno">1344</tt> <tt class="py-line"> </tt>
-<a name="L1345"></a><tt class="py-lineno">1345</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-366" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-366', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1346"></a><tt class="py-lineno">1346</tt> <tt class="py-line"> <tt class="py-string">"Bring the core links up that are down and verify ping all (Host Intents-Chordal Topo"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1347"></a><tt class="py-lineno">1347</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-367" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-367', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1348"></a><tt class="py-lineno">1348</tt> <tt class="py-line"> <tt class="py-string">"__________________________________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1349"></a><tt class="py-lineno">1349</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-368" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-368', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1350"></a><tt class="py-lineno">1350</tt> <tt class="py-line"> <tt class="py-string">"Host intents - Bring the core links up that are down and verify ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1351"></a><tt class="py-lineno">1351</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-369" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-369', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Bring randomly cut links on devices up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1352"></a><tt class="py-lineno">1352</tt> <tt class="py-line"> </tt>
-<a name="L1353"></a><tt class="py-lineno">1353</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLinks</tt><tt class="py-op">:</tt> </tt>
-<a name="L1354"></a><tt class="py-lineno">1354</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-370" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-370', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1355"></a><tt class="py-lineno">1355</tt> <tt class="py-line"> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">switch</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1356"></a><tt class="py-lineno">1356</tt> <tt class="py-line"> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">switch</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1357"></a><tt class="py-lineno">1357</tt> <tt class="py-line"> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"up"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1358"></a><tt class="py-lineno">1358</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1359"></a><tt class="py-lineno">1359</tt> <tt class="py-line"> </tt>
-<a name="L1360"></a><tt class="py-lineno">1360</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-371" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-371', 'topology', 'link-62');">topology</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1361"></a><tt class="py-lineno">1361</tt> <tt class="py-line"> <tt class="py-name">linkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-372" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkStatus
-TestON.drivers.common.cli.onosdriver.OnosDriver.checkStatus" class="py-name" href="#" onclick="return doclink('link-372', 'checkStatus', 'link-298');">checkStatus</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1362"></a><tt class="py-lineno">1362</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt><tt class="py-op">,</tt> </tt>
-<a name="L1363"></a><tt class="py-lineno">1363</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt><tt class="py-op">,</tt> </tt>
-<a name="L1364"></a><tt class="py-lineno">1364</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNlinks</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1365"></a><tt class="py-lineno">1365</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1366"></a><tt class="py-lineno">1366</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1367"></a><tt class="py-lineno">1367</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linkUp</tt><tt class="py-op">,</tt> </tt>
-<a name="L1368"></a><tt class="py-lineno">1368</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link up discovered properly"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1369"></a><tt class="py-lineno">1369</tt> <tt class="py-line"> <tt id="link-373" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-373', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Link up was not discovered in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1370"></a><tt class="py-lineno">1370</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1371"></a><tt class="py-lineno">1371</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1372"></a><tt class="py-lineno">1372</tt> <tt class="py-line"> </tt>
-<a name="L1373"></a><tt class="py-lineno">1373</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-374" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-374', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1374"></a><tt class="py-lineno">1374</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1375"></a><tt class="py-lineno">1375</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1376"></a><tt class="py-lineno">1376</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-375" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-375', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L1377"></a><tt class="py-lineno">1377</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1378"></a><tt class="py-lineno">1378</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1379"></a><tt class="py-lineno">1379</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-376" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-376', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1380"></a><tt class="py-lineno">1380</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1381"></a><tt class="py-lineno">1381</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1382"></a><tt class="py-lineno">1382</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1383"></a><tt class="py-lineno">1383</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResultLinkUp</tt><tt class="py-op">,</tt> </tt>
-<a name="L1384"></a><tt class="py-lineno">1384</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1385"></a><tt class="py-lineno">1385</tt> <tt class="py-line"> <tt id="link-377" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-377', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1386"></a><tt class="py-lineno">1386</tt> <tt class="py-line"> </tt>
-<a name="L1387"></a><tt class="py-lineno">1387</tt> <tt class="py-line"> <tt class="py-name">caseResult82</tt> <tt class="py-op">=</tt> <tt class="py-name">linkUp</tt> <tt class="py-keyword">and</tt> <tt class="py-name">pingResultLinkUp</tt> </tt>
-<a name="L1388"></a><tt class="py-lineno">1388</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">caseResult82</tt><tt class="py-op">,</tt> </tt>
-<a name="L1389"></a><tt class="py-lineno">1389</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link Up Test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1390"></a><tt class="py-lineno">1390</tt> <tt class="py-line"> <tt id="link-378" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-378', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Link Up Test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1391"></a><tt class="py-lineno">1391</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE73"></a><div id="CHOtest.CASE73-def"><a name="L1392"></a><tt class="py-lineno">1392</tt> <a class="py-toggle" href="#" id="CHOtest.CASE73-toggle" onclick="return toggle('CHOtest.CASE73');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE73">CASE73</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE73-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE73-expanded"><a name="L1393"></a><tt class="py-lineno">1393</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1394"></a><tt class="py-lineno">1394</tt> <tt class="py-line"><tt class="py-docstring"> Randomly bring some links down and verify ping all ( Point Intents-Chordal Topo)</tt> </tt>
-<a name="L1395"></a><tt class="py-lineno">1395</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1396"></a><tt class="py-lineno">1396</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">random</tt> </tt>
-<a name="L1397"></a><tt class="py-lineno">1397</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">itertools</tt> </tt>
-<a name="L1398"></a><tt class="py-lineno">1398</tt> <tt class="py-line"> <tt class="py-name">link_sleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1399"></a><tt class="py-lineno">1399</tt> <tt class="py-line"> </tt>
-<a name="L1400"></a><tt class="py-lineno">1400</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-379" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-379', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Randomly bring some core links down and verify ping all ( Point Intents-Chordal Topo)"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1401"></a><tt class="py-lineno">1401</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-380" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-380', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"___________________________________________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1402"></a><tt class="py-lineno">1402</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-381" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-381', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Point intents - Randomly bring some core links down and verify ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1403"></a><tt class="py-lineno">1403</tt> <tt class="py-line"> <tt class="py-name">switches</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1404"></a><tt class="py-lineno">1404</tt> <tt class="py-line"> <tt class="py-name">switchesComb</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1405"></a><tt class="py-lineno">1405</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1406"></a><tt class="py-lineno">1406</tt> <tt class="py-line"> <tt class="py-name">switches</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-string">'s%d'</tt><tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1407"></a><tt class="py-lineno">1407</tt> <tt class="py-line"> <tt class="py-name">switchesLinksComb</tt> <tt class="py-op">=</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt><tt class="py-name">itertools</tt><tt class="py-op">.</tt><tt class="py-name">combinations</tt><tt class="py-op">(</tt><tt class="py-name">switches</tt><tt class="py-op">,</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1408"></a><tt class="py-lineno">1408</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLinks</tt> <tt class="py-op">=</tt> <tt class="py-name">random</tt><tt class="py-op">.</tt><tt class="py-name">sample</tt><tt class="py-op">(</tt><tt class="py-name">switchesLinksComb</tt><tt class="py-op">,</tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1409"></a><tt class="py-lineno">1409</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLinks</tt> </tt>
-<a name="L1410"></a><tt class="py-lineno">1410</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-382" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-382', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cut links on random devices"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1411"></a><tt class="py-lineno">1411</tt> <tt class="py-line"> </tt>
-<a name="L1412"></a><tt class="py-lineno">1412</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLinks</tt><tt class="py-op">:</tt> </tt>
-<a name="L1413"></a><tt class="py-lineno">1413</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-383" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-383', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1414"></a><tt class="py-lineno">1414</tt> <tt class="py-line"> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">switch</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1415"></a><tt class="py-lineno">1415</tt> <tt class="py-line"> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">switch</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1416"></a><tt class="py-lineno">1416</tt> <tt class="py-line"> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"down"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1417"></a><tt class="py-lineno">1417</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1418"></a><tt class="py-lineno">1418</tt> <tt class="py-line"> </tt>
-<a name="L1419"></a><tt class="py-lineno">1419</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-384" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-384', 'topology', 'link-62');">topology</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1420"></a><tt class="py-lineno">1420</tt> <tt class="py-line"> <tt class="py-name">linkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-385" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkStatus
-TestON.drivers.common.cli.onosdriver.OnosDriver.checkStatus" class="py-name" href="#" onclick="return doclink('link-385', 'checkStatus', 'link-298');">checkStatus</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1421"></a><tt class="py-lineno">1421</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L1422"></a><tt class="py-lineno">1422</tt> <tt class="py-line"> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNlinks</tt> <tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">5</tt> <tt class="py-op">*</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1423"></a><tt class="py-lineno">1423</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1424"></a><tt class="py-lineno">1424</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1425"></a><tt class="py-lineno">1425</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linkDown</tt><tt class="py-op">,</tt> </tt>
-<a name="L1426"></a><tt class="py-lineno">1426</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link Down discovered properly"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1427"></a><tt class="py-lineno">1427</tt> <tt class="py-line"> <tt id="link-386" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-386', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Link down was not discovered in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1428"></a><tt class="py-lineno">1428</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1429"></a><tt class="py-lineno">1429</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1430"></a><tt class="py-lineno">1430</tt> <tt class="py-line"> </tt>
-<a name="L1431"></a><tt class="py-lineno">1431</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-387" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-387', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1432"></a><tt class="py-lineno">1432</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1433"></a><tt class="py-lineno">1433</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1434"></a><tt class="py-lineno">1434</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-388" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-388', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L1435"></a><tt class="py-lineno">1435</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1436"></a><tt class="py-lineno">1436</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1437"></a><tt class="py-lineno">1437</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-389" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-389', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1438"></a><tt class="py-lineno">1438</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1439"></a><tt class="py-lineno">1439</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1440"></a><tt class="py-lineno">1440</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1441"></a><tt class="py-lineno">1441</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResultLinkDown</tt><tt class="py-op">,</tt> </tt>
-<a name="L1442"></a><tt class="py-lineno">1442</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1443"></a><tt class="py-lineno">1443</tt> <tt class="py-line"> <tt id="link-390" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-390', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1444"></a><tt class="py-lineno">1444</tt> <tt class="py-line"> </tt>
-<a name="L1445"></a><tt class="py-lineno">1445</tt> <tt class="py-line"> <tt class="py-name">caseResult73</tt> <tt class="py-op">=</tt> <tt class="py-name">pingResultLinkDown</tt> </tt>
-<a name="L1446"></a><tt class="py-lineno">1446</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">caseResult73</tt><tt class="py-op">,</tt> </tt>
-<a name="L1447"></a><tt class="py-lineno">1447</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Random Link cut Test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1448"></a><tt class="py-lineno">1448</tt> <tt class="py-line"> <tt id="link-391" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-391', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Random Link cut Test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1449"></a><tt class="py-lineno">1449</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE83"></a><div id="CHOtest.CASE83-def"><a name="L1450"></a><tt class="py-lineno">1450</tt> <a class="py-toggle" href="#" id="CHOtest.CASE83-toggle" onclick="return toggle('CHOtest.CASE83');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE83">CASE83</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE83-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE83-expanded"><a name="L1451"></a><tt class="py-lineno">1451</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1452"></a><tt class="py-lineno">1452</tt> <tt class="py-line"><tt class="py-docstring"> Bring the core links up that are down and verify ping all ( Point Intents Chordal Topo )</tt> </tt>
-<a name="L1453"></a><tt class="py-lineno">1453</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1454"></a><tt class="py-lineno">1454</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">random</tt> </tt>
-<a name="L1455"></a><tt class="py-lineno">1455</tt> <tt class="py-line"> <tt class="py-name">link_sleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1456"></a><tt class="py-lineno">1456</tt> <tt class="py-line"> </tt>
-<a name="L1457"></a><tt class="py-lineno">1457</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-392" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-392', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1458"></a><tt class="py-lineno">1458</tt> <tt class="py-line"> <tt class="py-string">"Bring the core links up that are down and verify ping all ( Point Intents-Chordal Topo"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1459"></a><tt class="py-lineno">1459</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-393" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-393', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1460"></a><tt class="py-lineno">1460</tt> <tt class="py-line"> <tt class="py-string">"__________________________________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1461"></a><tt class="py-lineno">1461</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-394" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-394', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1462"></a><tt class="py-lineno">1462</tt> <tt class="py-line"> <tt class="py-string">"Point intents - Bring the core links up that are down and verify ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1463"></a><tt class="py-lineno">1463</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-395" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-395', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Bring randomly cut links on devices up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1464"></a><tt class="py-lineno">1464</tt> <tt class="py-line"> </tt>
-<a name="L1465"></a><tt class="py-lineno">1465</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLinks</tt><tt class="py-op">:</tt> </tt>
-<a name="L1466"></a><tt class="py-lineno">1466</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-396" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-396', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1467"></a><tt class="py-lineno">1467</tt> <tt class="py-line"> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">switch</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1468"></a><tt class="py-lineno">1468</tt> <tt class="py-line"> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">switch</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1469"></a><tt class="py-lineno">1469</tt> <tt class="py-line"> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"up"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1470"></a><tt class="py-lineno">1470</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1471"></a><tt class="py-lineno">1471</tt> <tt class="py-line"> </tt>
-<a name="L1472"></a><tt class="py-lineno">1472</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-397" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-397', 'topology', 'link-62');">topology</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1473"></a><tt class="py-lineno">1473</tt> <tt class="py-line"> <tt class="py-name">linkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-398" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkStatus
-TestON.drivers.common.cli.onosdriver.OnosDriver.checkStatus" class="py-name" href="#" onclick="return doclink('link-398', 'checkStatus', 'link-298');">checkStatus</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1474"></a><tt class="py-lineno">1474</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt><tt class="py-op">,</tt> </tt>
-<a name="L1475"></a><tt class="py-lineno">1475</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt><tt class="py-op">,</tt> </tt>
-<a name="L1476"></a><tt class="py-lineno">1476</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNlinks</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1477"></a><tt class="py-lineno">1477</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1478"></a><tt class="py-lineno">1478</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1479"></a><tt class="py-lineno">1479</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linkUp</tt><tt class="py-op">,</tt> </tt>
-<a name="L1480"></a><tt class="py-lineno">1480</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link up discovered properly"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1481"></a><tt class="py-lineno">1481</tt> <tt class="py-line"> <tt id="link-399" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-399', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Link up was not discovered in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1482"></a><tt class="py-lineno">1482</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1483"></a><tt class="py-lineno">1483</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1484"></a><tt class="py-lineno">1484</tt> <tt class="py-line"> </tt>
-<a name="L1485"></a><tt class="py-lineno">1485</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-400" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-400', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1486"></a><tt class="py-lineno">1486</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1487"></a><tt class="py-lineno">1487</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1488"></a><tt class="py-lineno">1488</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-401" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-401', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L1489"></a><tt class="py-lineno">1489</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1490"></a><tt class="py-lineno">1490</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1491"></a><tt class="py-lineno">1491</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-402" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-402', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1492"></a><tt class="py-lineno">1492</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1493"></a><tt class="py-lineno">1493</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1494"></a><tt class="py-lineno">1494</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1495"></a><tt class="py-lineno">1495</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResultLinkUp</tt><tt class="py-op">,</tt> </tt>
-<a name="L1496"></a><tt class="py-lineno">1496</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1497"></a><tt class="py-lineno">1497</tt> <tt class="py-line"> <tt id="link-403" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-403', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1498"></a><tt class="py-lineno">1498</tt> <tt class="py-line"> </tt>
-<a name="L1499"></a><tt class="py-lineno">1499</tt> <tt class="py-line"> <tt class="py-name">caseResult83</tt> <tt class="py-op">=</tt> <tt class="py-name">linkUp</tt> <tt class="py-keyword">and</tt> <tt class="py-name">pingResultLinkUp</tt> </tt>
-<a name="L1500"></a><tt class="py-lineno">1500</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">caseResult83</tt><tt class="py-op">,</tt> </tt>
-<a name="L1501"></a><tt class="py-lineno">1501</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link Up Test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1502"></a><tt class="py-lineno">1502</tt> <tt class="py-line"> <tt id="link-404" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-404', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Link Up Test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1503"></a><tt class="py-lineno">1503</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE74"></a><div id="CHOtest.CASE74-def"><a name="L1504"></a><tt class="py-lineno">1504</tt> <a class="py-toggle" href="#" id="CHOtest.CASE74-toggle" onclick="return toggle('CHOtest.CASE74');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE74">CASE74</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE74-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE74-expanded"><a name="L1505"></a><tt class="py-lineno">1505</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1506"></a><tt class="py-lineno">1506</tt> <tt class="py-line"><tt class="py-docstring"> Randomly bring some core links down and verify ping all ( Host Intents-Spine Topo)</tt> </tt>
-<a name="L1507"></a><tt class="py-lineno">1507</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1508"></a><tt class="py-lineno">1508</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">random</tt> </tt>
-<a name="L1509"></a><tt class="py-lineno">1509</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink1</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1510"></a><tt class="py-lineno">1510</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink2</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1511"></a><tt class="py-lineno">1511</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink3</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1512"></a><tt class="py-lineno">1512</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink4</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1513"></a><tt class="py-lineno">1513</tt> <tt class="py-line"> <tt class="py-name">link1End1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SPINECORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS9'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1514"></a><tt class="py-lineno">1514</tt> <tt class="py-line"> <tt class="py-name">link1End2top</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SPINECORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS9top'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1515"></a><tt class="py-lineno">1515</tt> <tt class="py-line"> <tt class="py-name">link1End2bot</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SPINECORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS9bot'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1516"></a><tt class="py-lineno">1516</tt> <tt class="py-line"> <tt class="py-name">link2End1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SPINECORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS10'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1517"></a><tt class="py-lineno">1517</tt> <tt class="py-line"> <tt class="py-name">link2End2top</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SPINECORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS10top'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1518"></a><tt class="py-lineno">1518</tt> <tt class="py-line"> <tt class="py-name">link2End2bot</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SPINECORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS10bot'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1519"></a><tt class="py-lineno">1519</tt> <tt class="py-line"> <tt class="py-name">link_sleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1520"></a><tt class="py-lineno">1520</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt> <tt class="py-op">=</tt> <tt class="py-number">400</tt> </tt>
-<a name="L1521"></a><tt class="py-lineno">1521</tt> <tt class="py-line"> </tt>
-<a name="L1522"></a><tt class="py-lineno">1522</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-405" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-405', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Bring some core links down and verify ping all (Host Intents-Spine Topo)"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1523"></a><tt class="py-lineno">1523</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-406" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-406', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"___________________________________________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1524"></a><tt class="py-lineno">1524</tt> <tt class="py-line"> </tt>
-<a name="L1525"></a><tt class="py-lineno">1525</tt> <tt class="py-line"> <tt class="py-name">linkIndex</tt> <tt class="py-op">=</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">4</tt><tt class="py-op">)</tt> </tt>
-<a name="L1526"></a><tt class="py-lineno">1526</tt> <tt class="py-line"> <tt class="py-name">linkIndexS9</tt> <tt class="py-op">=</tt> <tt class="py-name">random</tt><tt class="py-op">.</tt><tt class="py-name">sample</tt><tt class="py-op">(</tt><tt class="py-name">linkIndex</tt><tt class="py-op">,</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L1527"></a><tt class="py-lineno">1527</tt> <tt class="py-line"> <tt class="py-name">linkIndex</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">linkIndexS9</tt><tt class="py-op">)</tt> </tt>
-<a name="L1528"></a><tt class="py-lineno">1528</tt> <tt class="py-line"> <tt class="py-name">linkIndexS10</tt> <tt class="py-op">=</tt> <tt class="py-name">random</tt><tt class="py-op">.</tt><tt class="py-name">sample</tt><tt class="py-op">(</tt><tt class="py-name">linkIndex</tt><tt class="py-op">,</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L1529"></a><tt class="py-lineno">1529</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink1</tt> <tt class="py-op">=</tt> <tt class="py-name">link1End2top</tt><tt class="py-op">[</tt><tt class="py-name">linkIndexS9</tt><tt class="py-op">]</tt> </tt>
-<a name="L1530"></a><tt class="py-lineno">1530</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink2</tt> <tt class="py-op">=</tt> <tt class="py-name">link2End2top</tt><tt class="py-op">[</tt><tt class="py-name">linkIndexS10</tt><tt class="py-op">]</tt> </tt>
-<a name="L1531"></a><tt class="py-lineno">1531</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink3</tt> <tt class="py-op">=</tt> <tt class="py-name">random</tt><tt class="py-op">.</tt><tt class="py-name">sample</tt><tt class="py-op">(</tt><tt class="py-name">link1End2bot</tt><tt class="py-op">,</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L1532"></a><tt class="py-lineno">1532</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink4</tt> <tt class="py-op">=</tt> <tt class="py-name">random</tt><tt class="py-op">.</tt><tt class="py-name">sample</tt><tt class="py-op">(</tt><tt class="py-name">link2End2bot</tt><tt class="py-op">,</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L1533"></a><tt class="py-lineno">1533</tt> <tt class="py-line"> </tt>
-<a name="L1534"></a><tt class="py-lineno">1534</tt> <tt class="py-line"> <tt class="py-comment"># Work around for link state propagation delay. Added some sleep time.</tt> </tt>
-<a name="L1535"></a><tt class="py-lineno">1535</tt> <tt class="py-line"> <tt class="py-comment"># main.Mininet1.link( END1=link1End1, END2=main.randomLink1, OPTION="down" )</tt> </tt>
-<a name="L1536"></a><tt class="py-lineno">1536</tt> <tt class="py-line"> <tt class="py-comment"># main.Mininet1.link( END1=link2End1, END2=main.randomLink2, OPTION="down" )</tt> </tt>
-<a name="L1537"></a><tt class="py-lineno">1537</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-407" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-407', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">link1End1</tt><tt class="py-op">,</tt> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink3</tt><tt class="py-op">,</tt> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"down"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1538"></a><tt class="py-lineno">1538</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1539"></a><tt class="py-lineno">1539</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-408" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-408', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">link2End1</tt><tt class="py-op">,</tt> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink4</tt><tt class="py-op">,</tt> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"down"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1540"></a><tt class="py-lineno">1540</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1541"></a><tt class="py-lineno">1541</tt> <tt class="py-line"> </tt>
-<a name="L1542"></a><tt class="py-lineno">1542</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-409" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-409', 'topology', 'link-62');">topology</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1543"></a><tt class="py-lineno">1543</tt> <tt class="py-line"> <tt class="py-name">linkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-410" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkStatus
-TestON.drivers.common.cli.onosdriver.OnosDriver.checkStatus" class="py-name" href="#" onclick="return doclink('link-410', 'checkStatus', 'link-298');">checkStatus</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1544"></a><tt class="py-lineno">1544</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L1545"></a><tt class="py-lineno">1545</tt> <tt class="py-line"> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNlinks</tt> <tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">8</tt> <tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1546"></a><tt class="py-lineno">1546</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1547"></a><tt class="py-lineno">1547</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1548"></a><tt class="py-lineno">1548</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linkDown</tt><tt class="py-op">,</tt> </tt>
-<a name="L1549"></a><tt class="py-lineno">1549</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link Down discovered properly"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1550"></a><tt class="py-lineno">1550</tt> <tt class="py-line"> <tt id="link-411" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-411', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Link down was not discovered in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1551"></a><tt class="py-lineno">1551</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1552"></a><tt class="py-lineno">1552</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1553"></a><tt class="py-lineno">1553</tt> <tt class="py-line"> </tt>
-<a name="L1554"></a><tt class="py-lineno">1554</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-412" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-412', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1555"></a><tt class="py-lineno">1555</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1556"></a><tt class="py-lineno">1556</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1557"></a><tt class="py-lineno">1557</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-413" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-413', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L1558"></a><tt class="py-lineno">1558</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1559"></a><tt class="py-lineno">1559</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1560"></a><tt class="py-lineno">1560</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-414" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-414', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1561"></a><tt class="py-lineno">1561</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1562"></a><tt class="py-lineno">1562</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1563"></a><tt class="py-lineno">1563</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1564"></a><tt class="py-lineno">1564</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResultLinkDown</tt><tt class="py-op">,</tt> </tt>
-<a name="L1565"></a><tt class="py-lineno">1565</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1566"></a><tt class="py-lineno">1566</tt> <tt class="py-line"> <tt id="link-415" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-415', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1567"></a><tt class="py-lineno">1567</tt> <tt class="py-line"> </tt>
-<a name="L1568"></a><tt class="py-lineno">1568</tt> <tt class="py-line"> <tt class="py-name">caseResult74</tt> <tt class="py-op">=</tt> <tt class="py-name">linkDown</tt> <tt class="py-keyword">and</tt> <tt class="py-name">pingResultLinkDown</tt> </tt>
-<a name="L1569"></a><tt class="py-lineno">1569</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">caseResult74</tt><tt class="py-op">,</tt> </tt>
-<a name="L1570"></a><tt class="py-lineno">1570</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Random Link cut Test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1571"></a><tt class="py-lineno">1571</tt> <tt class="py-line"> <tt id="link-416" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-416', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Random Link cut Test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1572"></a><tt class="py-lineno">1572</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE84"></a><div id="CHOtest.CASE84-def"><a name="L1573"></a><tt class="py-lineno">1573</tt> <a class="py-toggle" href="#" id="CHOtest.CASE84-toggle" onclick="return toggle('CHOtest.CASE84');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE84">CASE84</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE84-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE84-expanded"><a name="L1574"></a><tt class="py-lineno">1574</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1575"></a><tt class="py-lineno">1575</tt> <tt class="py-line"><tt class="py-docstring"> Bring the core links up that are down and verify ping all ( Host Intents-Spine Topo )</tt> </tt>
-<a name="L1576"></a><tt class="py-lineno">1576</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1577"></a><tt class="py-lineno">1577</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">random</tt> </tt>
-<a name="L1578"></a><tt class="py-lineno">1578</tt> <tt class="py-line"> <tt class="py-name">link1End1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SPINECORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS9'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1579"></a><tt class="py-lineno">1579</tt> <tt class="py-line"> <tt class="py-name">link2End1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SPINECORELINKS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'linkS10'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1580"></a><tt class="py-lineno">1580</tt> <tt class="py-line"> <tt class="py-name">link_sleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1581"></a><tt class="py-lineno">1581</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-417" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-417', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1582"></a><tt class="py-lineno">1582</tt> <tt class="py-line"> <tt class="py-string">"Bring the core links up that are down and verify ping all (Host Intents-Spine Topo"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1583"></a><tt class="py-lineno">1583</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-418" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-418', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1584"></a><tt class="py-lineno">1584</tt> <tt class="py-line"> <tt class="py-string">"__________________________________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1585"></a><tt class="py-lineno">1585</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-419" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-419', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1586"></a><tt class="py-lineno">1586</tt> <tt class="py-line"> <tt class="py-string">"Host intents - Bring the core links up that are down and verify ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1587"></a><tt class="py-lineno">1587</tt> <tt class="py-line"> </tt>
-<a name="L1588"></a><tt class="py-lineno">1588</tt> <tt class="py-line"> <tt class="py-comment"># Work around for link state propagation delay. Added some sleep time.</tt> </tt>
-<a name="L1589"></a><tt class="py-lineno">1589</tt> <tt class="py-line"> <tt class="py-comment"># main.Mininet1.link( END1=link1End1, END2=main.randomLink1, OPTION="up" )</tt> </tt>
-<a name="L1590"></a><tt class="py-lineno">1590</tt> <tt class="py-line"> <tt class="py-comment"># main.Mininet1.link( END1=link2End1, END2=main.randomLink2, OPTION="up" )</tt> </tt>
-<a name="L1591"></a><tt class="py-lineno">1591</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-420" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-420', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">link1End1</tt><tt class="py-op">,</tt> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink3</tt><tt class="py-op">,</tt> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1592"></a><tt class="py-lineno">1592</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1593"></a><tt class="py-lineno">1593</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-421" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-421', 'link', 'link-294');">link</a></tt><tt class="py-op">(</tt> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-name">link2End1</tt><tt class="py-op">,</tt> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">randomLink4</tt><tt class="py-op">,</tt> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1594"></a><tt class="py-lineno">1594</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1595"></a><tt class="py-lineno">1595</tt> <tt class="py-line"> </tt>
-<a name="L1596"></a><tt class="py-lineno">1596</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-422" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-422', 'topology', 'link-62');">topology</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1597"></a><tt class="py-lineno">1597</tt> <tt class="py-line"> <tt class="py-name">linkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-423" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkStatus
-TestON.drivers.common.cli.onosdriver.OnosDriver.checkStatus" class="py-name" href="#" onclick="return doclink('link-423', 'checkStatus', 'link-298');">checkStatus</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1598"></a><tt class="py-lineno">1598</tt> <tt class="py-line"> <tt class="py-name">topology_output</tt><tt class="py-op">,</tt> </tt>
-<a name="L1599"></a><tt class="py-lineno">1599</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNswitches</tt><tt class="py-op">,</tt> </tt>
-<a name="L1600"></a><tt class="py-lineno">1600</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numMNlinks</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1601"></a><tt class="py-lineno">1601</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1602"></a><tt class="py-lineno">1602</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1603"></a><tt class="py-lineno">1603</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linkUp</tt><tt class="py-op">,</tt> </tt>
-<a name="L1604"></a><tt class="py-lineno">1604</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link up discovered properly"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1605"></a><tt class="py-lineno">1605</tt> <tt class="py-line"> <tt id="link-424" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-424', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Link up was not discovered in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1606"></a><tt class="py-lineno">1606</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">link_sleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1607"></a><tt class="py-lineno">1607</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1608"></a><tt class="py-lineno">1608</tt> <tt class="py-line"> </tt>
-<a name="L1609"></a><tt class="py-lineno">1609</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-425" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-425', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1610"></a><tt class="py-lineno">1610</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1611"></a><tt class="py-lineno">1611</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1612"></a><tt class="py-lineno">1612</tt> <tt class="py-line"> <tt class="py-name">pingResultLinkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-426" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-426', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L1613"></a><tt class="py-lineno">1613</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1614"></a><tt class="py-lineno">1614</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1615"></a><tt class="py-lineno">1615</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-427" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-427', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1616"></a><tt class="py-lineno">1616</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1617"></a><tt class="py-lineno">1617</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1618"></a><tt class="py-lineno">1618</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1619"></a><tt class="py-lineno">1619</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResultLinkUp</tt><tt class="py-op">,</tt> </tt>
-<a name="L1620"></a><tt class="py-lineno">1620</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1621"></a><tt class="py-lineno">1621</tt> <tt class="py-line"> <tt id="link-428" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-428', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1622"></a><tt class="py-lineno">1622</tt> <tt class="py-line"> </tt>
-<a name="L1623"></a><tt class="py-lineno">1623</tt> <tt class="py-line"> <tt class="py-name">caseResult84</tt> <tt class="py-op">=</tt> <tt class="py-name">linkUp</tt> <tt class="py-keyword">and</tt> <tt class="py-name">pingResultLinkUp</tt> </tt>
-<a name="L1624"></a><tt class="py-lineno">1624</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">caseResult84</tt><tt class="py-op">,</tt> </tt>
-<a name="L1625"></a><tt class="py-lineno">1625</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link Up Test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1626"></a><tt class="py-lineno">1626</tt> <tt class="py-line"> <tt id="link-429" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-429', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Link Up Test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1627"></a><tt class="py-lineno">1627</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE90"></a><div id="CHOtest.CASE90-def"><a name="L1628"></a><tt class="py-lineno">1628</tt> <a class="py-toggle" href="#" id="CHOtest.CASE90-toggle" onclick="return toggle('CHOtest.CASE90');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE90">CASE90</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE90-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE90-expanded"><a name="L1629"></a><tt class="py-lineno">1629</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1630"></a><tt class="py-lineno">1630</tt> <tt class="py-line"><tt class="py-docstring"> Install 600 point intents and verify ping all (Att Topology)</tt> </tt>
-<a name="L1631"></a><tt class="py-lineno">1631</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1632"></a><tt class="py-lineno">1632</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-430" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-430', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Add 600 point intents and verify pingall (Att Topology)"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1633"></a><tt class="py-lineno">1633</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-431" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-431', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"_______________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1634"></a><tt class="py-lineno">1634</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">itertools</tt> </tt>
-<a name="L1635"></a><tt class="py-lineno">1635</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1636"></a><tt class="py-lineno">1636</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-432" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-432', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install 600 point intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1637"></a><tt class="py-lineno">1637</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-433" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-433', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add point Intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1638"></a><tt class="py-lineno">1638</tt> <tt class="py-line"> <tt class="py-name">intentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1639"></a><tt class="py-lineno">1639</tt> <tt class="py-line"> <tt class="py-name">deviceCombos</tt> <tt class="py-op">=</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt> <tt class="py-name">itertools</tt><tt class="py-op">.</tt><tt class="py-name">permutations</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceDPIDs</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1640"></a><tt class="py-lineno">1640</tt> <tt class="py-line"> </tt>
-<a name="L1641"></a><tt class="py-lineno">1641</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1642"></a><tt class="py-lineno">1642</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1643"></a><tt class="py-lineno">1643</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">deviceCombos</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1644"></a><tt class="py-lineno">1644</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1645"></a><tt class="py-lineno">1645</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-434" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-434', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L1646"></a><tt class="py-lineno">1646</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">deviceCombos</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1647"></a><tt class="py-lineno">1647</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L1648"></a><tt class="py-lineno">1648</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-435" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-435', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-436" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-436', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-437" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addPointIntent()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addPointIntent,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addPointIntent()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addPointIntent"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addPointIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addPointIntent" class="py-name" href="#" onclick="return doclink('link-437', 'addPointIntent', 'link-437');">addPointIntent</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1649"></a><tt class="py-lineno">1649</tt> <tt class="py-line"> <tt class="py-name">threadID</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L1650"></a><tt class="py-lineno">1650</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"addPointIntent"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1651"></a><tt class="py-lineno">1651</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">deviceCombos</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">deviceCombos</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-number">1</tt><tt class="py-op">,</tt><tt class="py-number">1</tt><tt class="py-op">,</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-name">deviceCombos</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">,</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-name">deviceCombos</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L1652"></a><tt class="py-lineno">1652</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L1653"></a><tt class="py-lineno">1653</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1654"></a><tt class="py-lineno">1654</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1655"></a><tt class="py-lineno">1655</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1656"></a><tt class="py-lineno">1656</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L1657"></a><tt class="py-lineno">1657</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1658"></a><tt class="py-lineno">1658</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L1659"></a><tt class="py-lineno">1659</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1660"></a><tt class="py-lineno">1660</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-438" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-438', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for adding point intents: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1661"></a><tt class="py-lineno">1661</tt> <tt class="py-line"> <tt class="py-name">intentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1662"></a><tt class="py-lineno">1662</tt> <tt class="py-line"> <tt class="py-name">intentsJson</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-439" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-439', 'intents', 'link-248');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1663"></a><tt class="py-lineno">1663</tt> <tt class="py-line"> <tt class="py-name">getIntentStateResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-440" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getIntentState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getIntentState" class="py-name" href="#" onclick="return doclink('link-440', 'getIntentState', 'link-249');">getIntentState</a></tt><tt class="py-op">(</tt><tt class="py-name">intentsId</tt> <tt class="py-op">=</tt> <tt class="py-name">intentIdList</tt><tt class="py-op">,</tt> </tt>
-<a name="L1664"></a><tt class="py-lineno">1664</tt> <tt class="py-line"> <tt class="py-name">intentsJson</tt> <tt class="py-op">=</tt> <tt class="py-name">intentsJson</tt><tt class="py-op">)</tt> </tt>
-<a name="L1665"></a><tt class="py-lineno">1665</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">getIntentStateResult</tt> </tt>
-<a name="L1666"></a><tt class="py-lineno">1666</tt> <tt class="py-line"> <tt class="py-comment"># Takes awhile for all the onos to get the intents</tt> </tt>
-<a name="L1667"></a><tt class="py-lineno">1667</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">60</tt><tt class="py-op">)</tt> </tt>
-<a name="L1668"></a><tt class="py-lineno">1668</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-441" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-441', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1669"></a><tt class="py-lineno">1669</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1670"></a><tt class="py-lineno">1670</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1671"></a><tt class="py-lineno">1671</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-442" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-442', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L1672"></a><tt class="py-lineno">1672</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1673"></a><tt class="py-lineno">1673</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1674"></a><tt class="py-lineno">1674</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-443" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-443', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1675"></a><tt class="py-lineno">1675</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1676"></a><tt class="py-lineno">1676</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1677"></a><tt class="py-lineno">1677</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1678"></a><tt class="py-lineno">1678</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1679"></a><tt class="py-lineno">1679</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"PING tALL PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1680"></a><tt class="py-lineno">1680</tt> <tt class="py-line"> <tt id="link-444" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-444', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1681"></a><tt class="py-lineno">1681</tt> <tt class="py-line"> </tt>
-<a name="L1682"></a><tt class="py-lineno">1682</tt> <tt class="py-line"> <tt class="py-name">case90Result</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">intentResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">pingResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1683"></a><tt class="py-lineno">1683</tt> <tt class="py-line"> </tt>
-<a name="L1684"></a><tt class="py-lineno">1684</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1685"></a><tt class="py-lineno">1685</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1686"></a><tt class="py-lineno">1686</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case90Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L1687"></a><tt class="py-lineno">1687</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Install 600 point Intents and Ping All test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1688"></a><tt class="py-lineno">1688</tt> <tt class="py-line"> <tt id="link-445" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-445', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Install 600 point Intents and Ping All test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1689"></a><tt class="py-lineno">1689</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE91"></a><div id="CHOtest.CASE91-def"><a name="L1690"></a><tt class="py-lineno">1690</tt> <a class="py-toggle" href="#" id="CHOtest.CASE91-toggle" onclick="return toggle('CHOtest.CASE91');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE91">CASE91</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE91-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE91-expanded"><a name="L1691"></a><tt class="py-lineno">1691</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1692"></a><tt class="py-lineno">1692</tt> <tt class="py-line"><tt class="py-docstring"> Install 600 point intents and verify ping all (Chordal Topology)</tt> </tt>
-<a name="L1693"></a><tt class="py-lineno">1693</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1694"></a><tt class="py-lineno">1694</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-446" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-446', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Add 600 point intents and verify pingall (Chordal Topology)"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1695"></a><tt class="py-lineno">1695</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-447" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-447', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"_______________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1696"></a><tt class="py-lineno">1696</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">itertools</tt> </tt>
-<a name="L1697"></a><tt class="py-lineno">1697</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1698"></a><tt class="py-lineno">1698</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-448" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-448', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install 600 point intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1699"></a><tt class="py-lineno">1699</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-449" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-449', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add point Intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1700"></a><tt class="py-lineno">1700</tt> <tt class="py-line"> <tt class="py-name">intentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1701"></a><tt class="py-lineno">1701</tt> <tt class="py-line"> <tt class="py-name">deviceCombos</tt> <tt class="py-op">=</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt> <tt class="py-name">itertools</tt><tt class="py-op">.</tt><tt class="py-name">permutations</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceDPIDs</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1702"></a><tt class="py-lineno">1702</tt> <tt class="py-line"> </tt>
-<a name="L1703"></a><tt class="py-lineno">1703</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1704"></a><tt class="py-lineno">1704</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1705"></a><tt class="py-lineno">1705</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">deviceCombos</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1706"></a><tt class="py-lineno">1706</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1707"></a><tt class="py-lineno">1707</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-450" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-450', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L1708"></a><tt class="py-lineno">1708</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">deviceCombos</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1709"></a><tt class="py-lineno">1709</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L1710"></a><tt class="py-lineno">1710</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-451" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-451', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-452" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-452', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-453" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addPointIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addPointIntent" class="py-name" href="#" onclick="return doclink('link-453', 'addPointIntent', 'link-437');">addPointIntent</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1711"></a><tt class="py-lineno">1711</tt> <tt class="py-line"> <tt class="py-name">threadID</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L1712"></a><tt class="py-lineno">1712</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"addPointIntent"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1713"></a><tt class="py-lineno">1713</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">deviceCombos</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">deviceCombos</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-number">1</tt><tt class="py-op">,</tt><tt class="py-number">1</tt><tt class="py-op">,</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">,</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-name">deviceCombos</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L1714"></a><tt class="py-lineno">1714</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L1715"></a><tt class="py-lineno">1715</tt> <tt class="py-line"> <tt class="py-comment">#time.sleep(1)</tt> </tt>
-<a name="L1716"></a><tt class="py-lineno">1716</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1717"></a><tt class="py-lineno">1717</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1718"></a><tt class="py-lineno">1718</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1719"></a><tt class="py-lineno">1719</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L1720"></a><tt class="py-lineno">1720</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1721"></a><tt class="py-lineno">1721</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L1722"></a><tt class="py-lineno">1722</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1723"></a><tt class="py-lineno">1723</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-454" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-454', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Time for adding point intents: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1724"></a><tt class="py-lineno">1724</tt> <tt class="py-line"> <tt class="py-name">intentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1725"></a><tt class="py-lineno">1725</tt> <tt class="py-line"> <tt class="py-name">intentsJson</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-455" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-455', 'intents', 'link-248');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1726"></a><tt class="py-lineno">1726</tt> <tt class="py-line"> <tt class="py-name">getIntentStateResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-456" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getIntentState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getIntentState" class="py-name" href="#" onclick="return doclink('link-456', 'getIntentState', 'link-249');">getIntentState</a></tt><tt class="py-op">(</tt><tt class="py-name">intentsId</tt> <tt class="py-op">=</tt> <tt class="py-name">intentIdList</tt><tt class="py-op">,</tt> </tt>
-<a name="L1727"></a><tt class="py-lineno">1727</tt> <tt class="py-line"> <tt class="py-name">intentsJson</tt> <tt class="py-op">=</tt> <tt class="py-name">intentsJson</tt><tt class="py-op">)</tt> </tt>
-<a name="L1728"></a><tt class="py-lineno">1728</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">getIntentStateResult</tt> </tt>
-<a name="L1729"></a><tt class="py-lineno">1729</tt> <tt class="py-line"> <tt class="py-comment"># Takes awhile for all the onos to get the intents</tt> </tt>
-<a name="L1730"></a><tt class="py-lineno">1730</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">30</tt><tt class="py-op">)</tt> </tt>
-<a name="L1731"></a><tt class="py-lineno">1731</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-457" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-457', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1732"></a><tt class="py-lineno">1732</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1733"></a><tt class="py-lineno">1733</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1734"></a><tt class="py-lineno">1734</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-458" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-458', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L1735"></a><tt class="py-lineno">1735</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1736"></a><tt class="py-lineno">1736</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1737"></a><tt class="py-lineno">1737</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-459" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-459', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1738"></a><tt class="py-lineno">1738</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1739"></a><tt class="py-lineno">1739</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1740"></a><tt class="py-lineno">1740</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1741"></a><tt class="py-lineno">1741</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1742"></a><tt class="py-lineno">1742</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1743"></a><tt class="py-lineno">1743</tt> <tt class="py-line"> <tt id="link-460" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-460', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1744"></a><tt class="py-lineno">1744</tt> <tt class="py-line"> </tt>
-<a name="L1745"></a><tt class="py-lineno">1745</tt> <tt class="py-line"> <tt class="py-name">case91Result</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">intentResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">pingResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1746"></a><tt class="py-lineno">1746</tt> <tt class="py-line"> </tt>
-<a name="L1747"></a><tt class="py-lineno">1747</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1748"></a><tt class="py-lineno">1748</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1749"></a><tt class="py-lineno">1749</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case91Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L1750"></a><tt class="py-lineno">1750</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Install 600 point Intents and Ping All test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1751"></a><tt class="py-lineno">1751</tt> <tt class="py-line"> <tt id="link-461" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-461', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Install 600 point Intents and Ping All test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1752"></a><tt class="py-lineno">1752</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE92"></a><div id="CHOtest.CASE92-def"><a name="L1753"></a><tt class="py-lineno">1753</tt> <a class="py-toggle" href="#" id="CHOtest.CASE92-toggle" onclick="return toggle('CHOtest.CASE92');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE92">CASE92</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE92-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE92-expanded"><a name="L1754"></a><tt class="py-lineno">1754</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1755"></a><tt class="py-lineno">1755</tt> <tt class="py-line"><tt class="py-docstring"> Install 4556 point intents and verify ping all (Spine Topology)</tt> </tt>
-<a name="L1756"></a><tt class="py-lineno">1756</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1757"></a><tt class="py-lineno">1757</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-462" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-462', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Add 4556 point intents and verify pingall (Spine Topology)"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1758"></a><tt class="py-lineno">1758</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-463" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-463', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"_______________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1759"></a><tt class="py-lineno">1759</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">itertools</tt> </tt>
-<a name="L1760"></a><tt class="py-lineno">1760</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1761"></a><tt class="py-lineno">1761</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-464" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-464', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install 4556 point intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1762"></a><tt class="py-lineno">1762</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-465" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-465', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add point Intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1763"></a><tt class="py-lineno">1763</tt> <tt class="py-line"> <tt class="py-name">intentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1764"></a><tt class="py-lineno">1764</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt> <tt class="py-op">=</tt> <tt class="py-number">600</tt> </tt>
-<a name="L1765"></a><tt class="py-lineno">1765</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostMACs</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1766"></a><tt class="py-lineno">1766</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt><tt class="py-op">[</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceDPIDs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">10</tt><tt class="py-op">]</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostMACs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">'/'</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L1767"></a><tt class="py-lineno">1767</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt> </tt>
-<a name="L1768"></a><tt class="py-lineno">1768</tt> <tt class="py-line"> <tt class="py-name">deviceCombos</tt> <tt class="py-op">=</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt> <tt class="py-name">itertools</tt><tt class="py-op">.</tt><tt class="py-name">permutations</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceDPIDs</tt><tt class="py-op">[</tt><tt class="py-number">10</tt><tt class="py-op">:</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1769"></a><tt class="py-lineno">1769</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1770"></a><tt class="py-lineno">1770</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1771"></a><tt class="py-lineno">1771</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">deviceCombos</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1772"></a><tt class="py-lineno">1772</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1773"></a><tt class="py-lineno">1773</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-466" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-466', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L1774"></a><tt class="py-lineno">1774</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">deviceCombos</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1775"></a><tt class="py-lineno">1775</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L1776"></a><tt class="py-lineno">1776</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-467" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-467', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-468" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-468', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-469" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addPointIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addPointIntent" class="py-name" href="#" onclick="return doclink('link-469', 'addPointIntent', 'link-437');">addPointIntent</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1777"></a><tt class="py-lineno">1777</tt> <tt class="py-line"> <tt class="py-name">threadID</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L1778"></a><tt class="py-lineno">1778</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"addPointIntent"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1779"></a><tt class="py-lineno">1779</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">deviceCombos</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-name">deviceCombos</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-number">1</tt><tt class="py-op">,</tt><tt class="py-number">1</tt><tt class="py-op">,</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">,</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-name">deviceCombos</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L1780"></a><tt class="py-lineno">1780</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L1781"></a><tt class="py-lineno">1781</tt> <tt class="py-line"> <tt class="py-comment">#time.sleep(1)</tt> </tt>
-<a name="L1782"></a><tt class="py-lineno">1782</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1783"></a><tt class="py-lineno">1783</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1784"></a><tt class="py-lineno">1784</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1785"></a><tt class="py-lineno">1785</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L1786"></a><tt class="py-lineno">1786</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1787"></a><tt class="py-lineno">1787</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L1788"></a><tt class="py-lineno">1788</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1789"></a><tt class="py-lineno">1789</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-470" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-470', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for adding point intents: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1790"></a><tt class="py-lineno">1790</tt> <tt class="py-line"> <tt class="py-name">intentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1791"></a><tt class="py-lineno">1791</tt> <tt class="py-line"> <tt class="py-name">intentsJson</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-471" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-471', 'intents', 'link-248');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1792"></a><tt class="py-lineno">1792</tt> <tt class="py-line"> <tt class="py-name">getIntentStateResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-472" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getIntentState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getIntentState" class="py-name" href="#" onclick="return doclink('link-472', 'getIntentState', 'link-249');">getIntentState</a></tt><tt class="py-op">(</tt><tt class="py-name">intentsId</tt> <tt class="py-op">=</tt> <tt class="py-name">intentIdList</tt><tt class="py-op">,</tt> </tt>
-<a name="L1793"></a><tt class="py-lineno">1793</tt> <tt class="py-line"> <tt class="py-name">intentsJson</tt> <tt class="py-op">=</tt> <tt class="py-name">intentsJson</tt><tt class="py-op">)</tt> </tt>
-<a name="L1794"></a><tt class="py-lineno">1794</tt> <tt class="py-line"> <tt class="py-comment">#print getIntentStateResult</tt> </tt>
-<a name="L1795"></a><tt class="py-lineno">1795</tt> <tt class="py-line"> <tt class="py-comment"># Takes awhile for all the onos to get the intents</tt> </tt>
-<a name="L1796"></a><tt class="py-lineno">1796</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">60</tt><tt class="py-op">)</tt> </tt>
-<a name="L1797"></a><tt class="py-lineno">1797</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-473" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-473', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1798"></a><tt class="py-lineno">1798</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1799"></a><tt class="py-lineno">1799</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1800"></a><tt class="py-lineno">1800</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-474" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-474', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L1801"></a><tt class="py-lineno">1801</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1802"></a><tt class="py-lineno">1802</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1803"></a><tt class="py-lineno">1803</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-475" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-475', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1804"></a><tt class="py-lineno">1804</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1805"></a><tt class="py-lineno">1805</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1806"></a><tt class="py-lineno">1806</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1807"></a><tt class="py-lineno">1807</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1808"></a><tt class="py-lineno">1808</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1809"></a><tt class="py-lineno">1809</tt> <tt class="py-line"> <tt id="link-476" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-476', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"PING ALL FAIL"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1810"></a><tt class="py-lineno">1810</tt> <tt class="py-line"> </tt>
-<a name="L1811"></a><tt class="py-lineno">1811</tt> <tt class="py-line"> <tt class="py-name">case92Result</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">intentResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">pingResult</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1812"></a><tt class="py-lineno">1812</tt> <tt class="py-line"> </tt>
-<a name="L1813"></a><tt class="py-lineno">1813</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1814"></a><tt class="py-lineno">1814</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1815"></a><tt class="py-lineno">1815</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case92Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L1816"></a><tt class="py-lineno">1816</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Install 4556 point Intents and Ping All test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1817"></a><tt class="py-lineno">1817</tt> <tt class="py-line"> <tt id="link-477" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-477', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Install 4556 point Intents and Ping All test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1818"></a><tt class="py-lineno">1818</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE93"></a><div id="CHOtest.CASE93-def"><a name="L1819"></a><tt class="py-lineno">1819</tt> <a class="py-toggle" href="#" id="CHOtest.CASE93-toggle" onclick="return toggle('CHOtest.CASE93');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE93">CASE93</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE93-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE93-expanded"><a name="L1820"></a><tt class="py-lineno">1820</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1821"></a><tt class="py-lineno">1821</tt> <tt class="py-line"><tt class="py-docstring"> Install multi-single point intents and verify Ping all works</tt> </tt>
-<a name="L1822"></a><tt class="py-lineno">1822</tt> <tt class="py-line"><tt class="py-docstring"> for att topology</tt> </tt>
-<a name="L1823"></a><tt class="py-lineno">1823</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1824"></a><tt class="py-lineno">1824</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">copy</tt> </tt>
-<a name="L1825"></a><tt class="py-lineno">1825</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1826"></a><tt class="py-lineno">1826</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-478" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-478', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Install multi-single point intents and verify Ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1827"></a><tt class="py-lineno">1827</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-479" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-479', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"___________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1828"></a><tt class="py-lineno">1828</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-480" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-480', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install multi-single point intents and Ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1829"></a><tt class="py-lineno">1829</tt> <tt class="py-line"> <tt class="py-name">deviceDPIDsCopy</tt> <tt class="py-op">=</tt> <tt class="py-name">copy</tt><tt class="py-op">.</tt><tt class="py-name">copy</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceDPIDs</tt><tt class="py-op">)</tt> </tt>
-<a name="L1830"></a><tt class="py-lineno">1830</tt> <tt class="py-line"> <tt class="py-name">portIngressList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-string">'1'</tt><tt class="py-op">]</tt><tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L1831"></a><tt class="py-lineno">1831</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1832"></a><tt class="py-lineno">1832</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"MACsDict"</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt> </tt>
-<a name="L1833"></a><tt class="py-lineno">1833</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1834"></a><tt class="py-lineno">1834</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">)</tt><tt class="py-op">,</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1835"></a><tt class="py-lineno">1835</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1836"></a><tt class="py-lineno">1836</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-481" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-481', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L1837"></a><tt class="py-lineno">1837</tt> <tt class="py-line"> <tt class="py-name">egressDevice</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> </tt>
-<a name="L1838"></a><tt class="py-lineno">1838</tt> <tt class="py-line"> <tt class="py-name">ingressDeviceList</tt> <tt class="py-op">=</tt> <tt class="py-name">copy</tt><tt class="py-op">.</tt><tt class="py-name">copy</tt><tt class="py-op">(</tt><tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">)</tt> </tt>
-<a name="L1839"></a><tt class="py-lineno">1839</tt> <tt class="py-line"> <tt class="py-name">ingressDeviceList</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">egressDevice</tt><tt class="py-op">)</tt> </tt>
-<a name="L1840"></a><tt class="py-lineno">1840</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">deviceDPIDsCopy</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1841"></a><tt class="py-lineno">1841</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L1842"></a><tt class="py-lineno">1842</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-482" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-482', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-483" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-483', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-484" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addMultipointToSinglepointIntent()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addMultipointToSinglepointIntent"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addMultipointToSinglepointIntent" class="py-name" href="#" onclick="return doclink('link-484', 'addMultipointToSinglepointIntent', 'link-484');">addMultipointToSinglepointIntent</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1843"></a><tt class="py-lineno">1843</tt> <tt class="py-line"> <tt class="py-name">threadID</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L1844"></a><tt class="py-lineno">1844</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"addMultipointToSinglepointIntent"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1845"></a><tt class="py-lineno">1845</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">ingressDeviceList</tt><tt class="py-op">,</tt><tt class="py-name">egressDevice</tt><tt class="py-op">,</tt><tt class="py-name">portIngressList</tt><tt class="py-op">,</tt><tt class="py-string">'1'</tt><tt class="py-op">,</tt><tt class="py-string">'IPV4'</tt><tt class="py-op">,</tt><tt class="py-string">''</tt><tt class="py-op">,</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-name">egressDevice</tt><tt class="py-op">)</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L1846"></a><tt class="py-lineno">1846</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L1847"></a><tt class="py-lineno">1847</tt> <tt class="py-line"> <tt class="py-comment">#time.sleep(1)</tt> </tt>
-<a name="L1848"></a><tt class="py-lineno">1848</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1849"></a><tt class="py-lineno">1849</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1850"></a><tt class="py-lineno">1850</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1851"></a><tt class="py-lineno">1851</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L1852"></a><tt class="py-lineno">1852</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1853"></a><tt class="py-lineno">1853</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L1854"></a><tt class="py-lineno">1854</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1855"></a><tt class="py-lineno">1855</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-485" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-485', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for adding point intents: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1856"></a><tt class="py-lineno">1856</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">30</tt><tt class="py-op">)</tt> </tt>
-<a name="L1857"></a><tt class="py-lineno">1857</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"getting all intents ID"</tt> </tt>
-<a name="L1858"></a><tt class="py-lineno">1858</tt> <tt class="py-line"> <tt class="py-name">intentIdTemp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-486" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllIntentsId"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId" class="py-name" href="#" onclick="return doclink('link-486', 'getAllIntentsId', 'link-486');">getAllIntentsId</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1859"></a><tt class="py-lineno">1859</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">intentIdTemp</tt> </tt>
-<a name="L1860"></a><tt class="py-lineno">1860</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">intentIdList</tt><tt class="py-op">)</tt> </tt>
-<a name="L1861"></a><tt class="py-lineno">1861</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">intentIdList</tt> </tt>
-<a name="L1862"></a><tt class="py-lineno">1862</tt> <tt class="py-line"> <tt class="py-name">checkIntentStateResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1863"></a><tt class="py-lineno">1863</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Checking intents state"</tt> </tt>
-<a name="L1864"></a><tt class="py-lineno">1864</tt> <tt class="py-line"> <tt class="py-name">checkIntentStateResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-487" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.checkIntentState()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#checkIntentState,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkIntentState()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkIntentState"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.checkIntentState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkIntentState" class="py-name" href="#" onclick="return doclink('link-487', 'checkIntentState', 'link-487');">checkIntentState</a></tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">=</tt> <tt class="py-name">intentIdList</tt> <tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">checkIntentStateResult</tt> </tt>
-<a name="L1865"></a><tt class="py-lineno">1865</tt> <tt class="py-line"> <tt class="py-name">checkIntentStateResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli2</tt><tt class="py-op">.</tt><tt id="link-488" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.checkIntentState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkIntentState" class="py-name" href="#" onclick="return doclink('link-488', 'checkIntentState', 'link-487');">checkIntentState</a></tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">=</tt> <tt class="py-name">intentIdList</tt> <tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">checkIntentStateResult</tt> </tt>
-<a name="L1866"></a><tt class="py-lineno">1866</tt> <tt class="py-line"> <tt class="py-name">checkIntentStateResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli3</tt><tt class="py-op">.</tt><tt id="link-489" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.checkIntentState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkIntentState" class="py-name" href="#" onclick="return doclink('link-489', 'checkIntentState', 'link-487');">checkIntentState</a></tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">=</tt> <tt class="py-name">intentIdList</tt> <tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">checkIntentStateResult</tt> </tt>
-<a name="L1867"></a><tt class="py-lineno">1867</tt> <tt class="py-line"> <tt class="py-name">checkIntentStateResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli4</tt><tt class="py-op">.</tt><tt id="link-490" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.checkIntentState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkIntentState" class="py-name" href="#" onclick="return doclink('link-490', 'checkIntentState', 'link-487');">checkIntentState</a></tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">=</tt> <tt class="py-name">intentIdList</tt> <tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">checkIntentStateResult</tt> </tt>
-<a name="L1868"></a><tt class="py-lineno">1868</tt> <tt class="py-line"> <tt class="py-name">checkIntentStateResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli5</tt><tt class="py-op">.</tt><tt id="link-491" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.checkIntentState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkIntentState" class="py-name" href="#" onclick="return doclink('link-491', 'checkIntentState', 'link-487');">checkIntentState</a></tt><tt class="py-op">(</tt> <tt class="py-name">intentsId</tt> <tt class="py-op">=</tt> <tt class="py-name">intentIdList</tt> <tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">checkIntentStateResult</tt> </tt>
-<a name="L1869"></a><tt class="py-lineno">1869</tt> <tt class="py-line"> </tt>
-<a name="L1870"></a><tt class="py-lineno">1870</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">checkIntentStateResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L1871"></a><tt class="py-lineno">1871</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-492" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-492', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"All intents are installed correctly "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1872"></a><tt class="py-lineno">1872</tt> <tt class="py-line"> </tt>
-<a name="L1873"></a><tt class="py-lineno">1873</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Checking flows state "</tt> </tt>
-<a name="L1874"></a><tt class="py-lineno">1874</tt> <tt class="py-line"> <tt id="link-493" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.checkFlowsState()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#checkFlowsState,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkFlowsState()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkFlowsState"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.checkFlowsState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkFlowsState" class="py-name" href="#" onclick="return doclink('link-493', 'checkFlowsState', 'link-493');">checkFlowsState</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-494" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.checkFlowsState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkFlowsState" class="py-name" href="#" onclick="return doclink('link-494', 'checkFlowsState', 'link-493');">checkFlowsState</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1875"></a><tt class="py-lineno">1875</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">50</tt><tt class="py-op">)</tt> </tt>
-<a name="L1876"></a><tt class="py-lineno">1876</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-495" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-495', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1877"></a><tt class="py-lineno">1877</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1878"></a><tt class="py-lineno">1878</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1879"></a><tt class="py-lineno">1879</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-496" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-496', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L1880"></a><tt class="py-lineno">1880</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1881"></a><tt class="py-lineno">1881</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1882"></a><tt class="py-lineno">1882</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-497" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-497', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1883"></a><tt class="py-lineno">1883</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1884"></a><tt class="py-lineno">1884</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1885"></a><tt class="py-lineno">1885</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1886"></a><tt class="py-lineno">1886</tt> <tt class="py-line"> <tt id="link-498" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.checkFlowsState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkFlowsState" class="py-name" href="#" onclick="return doclink('link-498', 'checkFlowsState', 'link-493');">checkFlowsState</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-499" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.checkFlowsState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkFlowsState" class="py-name" href="#" onclick="return doclink('link-499', 'checkFlowsState', 'link-493');">checkFlowsState</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1887"></a><tt class="py-lineno">1887</tt> <tt class="py-line"> <tt class="py-name">case93Result</tt> <tt class="py-op">=</tt> <tt class="py-name">pingResult</tt> </tt>
-<a name="L1888"></a><tt class="py-lineno">1888</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1889"></a><tt class="py-lineno">1889</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1890"></a><tt class="py-lineno">1890</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case93Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L1891"></a><tt class="py-lineno">1891</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Install 25 multi to single point Intents and Ping All test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1892"></a><tt class="py-lineno">1892</tt> <tt class="py-line"> <tt id="link-500" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-500', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Install 25 multi to single point Intents and Ping All test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1893"></a><tt class="py-lineno">1893</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE94"></a><div id="CHOtest.CASE94-def"><a name="L1894"></a><tt class="py-lineno">1894</tt> <a class="py-toggle" href="#" id="CHOtest.CASE94-toggle" onclick="return toggle('CHOtest.CASE94');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE94">CASE94</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE94-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE94-expanded"><a name="L1895"></a><tt class="py-lineno">1895</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1896"></a><tt class="py-lineno">1896</tt> <tt class="py-line"><tt class="py-docstring"> Install multi-single point intents and verify Ping all works</tt> </tt>
-<a name="L1897"></a><tt class="py-lineno">1897</tt> <tt class="py-line"><tt class="py-docstring"> for Chordal topology</tt> </tt>
-<a name="L1898"></a><tt class="py-lineno">1898</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1899"></a><tt class="py-lineno">1899</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">copy</tt> </tt>
-<a name="L1900"></a><tt class="py-lineno">1900</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1901"></a><tt class="py-lineno">1901</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-501" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-501', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Install multi-single point intents and verify Ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1902"></a><tt class="py-lineno">1902</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-502" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-502', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"___________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1903"></a><tt class="py-lineno">1903</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-503" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-503', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install multi-single point intents and Ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1904"></a><tt class="py-lineno">1904</tt> <tt class="py-line"> <tt class="py-name">deviceDPIDsCopy</tt> <tt class="py-op">=</tt> <tt class="py-name">copy</tt><tt class="py-op">.</tt><tt class="py-name">copy</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceDPIDs</tt><tt class="py-op">)</tt> </tt>
-<a name="L1905"></a><tt class="py-lineno">1905</tt> <tt class="py-line"> <tt class="py-name">portIngressList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-string">'1'</tt><tt class="py-op">]</tt><tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L1906"></a><tt class="py-lineno">1906</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1907"></a><tt class="py-lineno">1907</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"MACsDict"</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt> </tt>
-<a name="L1908"></a><tt class="py-lineno">1908</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1909"></a><tt class="py-lineno">1909</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">)</tt><tt class="py-op">,</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1910"></a><tt class="py-lineno">1910</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1911"></a><tt class="py-lineno">1911</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-504" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-504', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L1912"></a><tt class="py-lineno">1912</tt> <tt class="py-line"> <tt class="py-name">egressDevice</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> </tt>
-<a name="L1913"></a><tt class="py-lineno">1913</tt> <tt class="py-line"> <tt class="py-name">ingressDeviceList</tt> <tt class="py-op">=</tt> <tt class="py-name">copy</tt><tt class="py-op">.</tt><tt class="py-name">copy</tt><tt class="py-op">(</tt><tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">)</tt> </tt>
-<a name="L1914"></a><tt class="py-lineno">1914</tt> <tt class="py-line"> <tt class="py-name">ingressDeviceList</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">egressDevice</tt><tt class="py-op">)</tt> </tt>
-<a name="L1915"></a><tt class="py-lineno">1915</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">deviceDPIDsCopy</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1916"></a><tt class="py-lineno">1916</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L1917"></a><tt class="py-lineno">1917</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-505" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-505', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-506" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-506', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-507" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addMultipointToSinglepointIntent" class="py-name" href="#" onclick="return doclink('link-507', 'addMultipointToSinglepointIntent', 'link-484');">addMultipointToSinglepointIntent</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1918"></a><tt class="py-lineno">1918</tt> <tt class="py-line"> <tt class="py-name">threadID</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L1919"></a><tt class="py-lineno">1919</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"addMultipointToSinglepointIntent"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1920"></a><tt class="py-lineno">1920</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">ingressDeviceList</tt><tt class="py-op">,</tt><tt class="py-name">egressDevice</tt><tt class="py-op">,</tt><tt class="py-name">portIngressList</tt><tt class="py-op">,</tt><tt class="py-string">'1'</tt><tt class="py-op">,</tt><tt class="py-string">'IPV4'</tt><tt class="py-op">,</tt><tt class="py-string">''</tt><tt class="py-op">,</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-name">egressDevice</tt><tt class="py-op">)</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L1921"></a><tt class="py-lineno">1921</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L1922"></a><tt class="py-lineno">1922</tt> <tt class="py-line"> <tt class="py-comment">#time.sleep(1)</tt> </tt>
-<a name="L1923"></a><tt class="py-lineno">1923</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1924"></a><tt class="py-lineno">1924</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1925"></a><tt class="py-lineno">1925</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1926"></a><tt class="py-lineno">1926</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L1927"></a><tt class="py-lineno">1927</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1928"></a><tt class="py-lineno">1928</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L1929"></a><tt class="py-lineno">1929</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1930"></a><tt class="py-lineno">1930</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-508" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-508', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for adding point intents: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1931"></a><tt class="py-lineno">1931</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L1932"></a><tt class="py-lineno">1932</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-509" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-509', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1933"></a><tt class="py-lineno">1933</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1934"></a><tt class="py-lineno">1934</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1935"></a><tt class="py-lineno">1935</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-510" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-510', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L1936"></a><tt class="py-lineno">1936</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1937"></a><tt class="py-lineno">1937</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1938"></a><tt class="py-lineno">1938</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-511" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-511', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1939"></a><tt class="py-lineno">1939</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1940"></a><tt class="py-lineno">1940</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1941"></a><tt class="py-lineno">1941</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1942"></a><tt class="py-lineno">1942</tt> <tt class="py-line"> </tt>
-<a name="L1943"></a><tt class="py-lineno">1943</tt> <tt class="py-line"> <tt class="py-name">case94Result</tt> <tt class="py-op">=</tt> <tt class="py-name">pingResult</tt> </tt>
-<a name="L1944"></a><tt class="py-lineno">1944</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1945"></a><tt class="py-lineno">1945</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1946"></a><tt class="py-lineno">1946</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case94Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L1947"></a><tt class="py-lineno">1947</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Install 25 multi to single point Intents and Ping All test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1948"></a><tt class="py-lineno">1948</tt> <tt class="py-line"> <tt id="link-512" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-512', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Install 25 multi to single point Intents and Ping All test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1949"></a><tt class="py-lineno">1949</tt> <tt class="py-line"> </tt>
-<a name="L1950"></a><tt class="py-lineno">1950</tt> <tt class="py-line"> <tt class="py-comment">#def CASE95 multi-single point intent for Spine</tt> </tt>
-<a name="L1951"></a><tt class="py-lineno">1951</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE96"></a><div id="CHOtest.CASE96-def"><a name="L1952"></a><tt class="py-lineno">1952</tt> <a class="py-toggle" href="#" id="CHOtest.CASE96-toggle" onclick="return toggle('CHOtest.CASE96');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE96">CASE96</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE96-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE96-expanded"><a name="L1953"></a><tt class="py-lineno">1953</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1954"></a><tt class="py-lineno">1954</tt> <tt class="py-line"><tt class="py-docstring"> Install single-multi point intents and verify Ping all works</tt> </tt>
-<a name="L1955"></a><tt class="py-lineno">1955</tt> <tt class="py-line"><tt class="py-docstring"> for att topology</tt> </tt>
-<a name="L1956"></a><tt class="py-lineno">1956</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1957"></a><tt class="py-lineno">1957</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">copy</tt> </tt>
-<a name="L1958"></a><tt class="py-lineno">1958</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-513" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-513', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Install single-multi point intents and verify Ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1959"></a><tt class="py-lineno">1959</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-514" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-514', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"___________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1960"></a><tt class="py-lineno">1960</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-515" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-515', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install single-multi point intents and Ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1961"></a><tt class="py-lineno">1961</tt> <tt class="py-line"> <tt class="py-name">deviceDPIDsCopy</tt> <tt class="py-op">=</tt> <tt class="py-name">copy</tt><tt class="py-op">.</tt><tt class="py-name">copy</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceDPIDs</tt><tt class="py-op">)</tt> </tt>
-<a name="L1962"></a><tt class="py-lineno">1962</tt> <tt class="py-line"> <tt class="py-name">portEgressList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-string">'1'</tt><tt class="py-op">]</tt><tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L1963"></a><tt class="py-lineno">1963</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1964"></a><tt class="py-lineno">1964</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"MACsDict"</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt> </tt>
-<a name="L1965"></a><tt class="py-lineno">1965</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1966"></a><tt class="py-lineno">1966</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">)</tt><tt class="py-op">,</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1967"></a><tt class="py-lineno">1967</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1968"></a><tt class="py-lineno">1968</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-516" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-516', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L1969"></a><tt class="py-lineno">1969</tt> <tt class="py-line"> <tt class="py-name">ingressDevice</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> </tt>
-<a name="L1970"></a><tt class="py-lineno">1970</tt> <tt class="py-line"> <tt class="py-name">egressDeviceList</tt> <tt class="py-op">=</tt> <tt class="py-name">copy</tt><tt class="py-op">.</tt><tt class="py-name">copy</tt><tt class="py-op">(</tt><tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">)</tt> </tt>
-<a name="L1971"></a><tt class="py-lineno">1971</tt> <tt class="py-line"> <tt class="py-name">egressDeviceList</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">ingressDevice</tt><tt class="py-op">)</tt> </tt>
-<a name="L1972"></a><tt class="py-lineno">1972</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">deviceDPIDsCopy</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1973"></a><tt class="py-lineno">1973</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L1974"></a><tt class="py-lineno">1974</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-517" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-517', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-518" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-518', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-519" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addSinglepointToMultipointIntent()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addSinglepointToMultipointIntent"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addSinglepointToMultipointIntent" class="py-name" href="#" onclick="return doclink('link-519', 'addSinglepointToMultipointIntent', 'link-519');">addSinglepointToMultipointIntent</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1975"></a><tt class="py-lineno">1975</tt> <tt class="py-line"> <tt class="py-name">threadID</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L1976"></a><tt class="py-lineno">1976</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"addSinglepointToMultipointIntent"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1977"></a><tt class="py-lineno">1977</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">ingressDevice</tt><tt class="py-op">,</tt><tt class="py-name">egressDeviceList</tt><tt class="py-op">,</tt><tt class="py-string">'1'</tt><tt class="py-op">,</tt><tt class="py-name">portEgressList</tt><tt class="py-op">,</tt><tt class="py-string">'IPV4'</tt><tt class="py-op">,</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-name">ingressDevice</tt><tt class="py-op">)</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L1978"></a><tt class="py-lineno">1978</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L1979"></a><tt class="py-lineno">1979</tt> <tt class="py-line"> <tt class="py-comment">#time.sleep(1)</tt> </tt>
-<a name="L1980"></a><tt class="py-lineno">1980</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1981"></a><tt class="py-lineno">1981</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1982"></a><tt class="py-lineno">1982</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1983"></a><tt class="py-lineno">1983</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L1984"></a><tt class="py-lineno">1984</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1985"></a><tt class="py-lineno">1985</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L1986"></a><tt class="py-lineno">1986</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1987"></a><tt class="py-lineno">1987</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-520" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-520', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for adding point intents: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1988"></a><tt class="py-lineno">1988</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L1989"></a><tt class="py-lineno">1989</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-521" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-521', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1990"></a><tt class="py-lineno">1990</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1991"></a><tt class="py-lineno">1991</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1992"></a><tt class="py-lineno">1992</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-522" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-522', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L1993"></a><tt class="py-lineno">1993</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1994"></a><tt class="py-lineno">1994</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1995"></a><tt class="py-lineno">1995</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-523" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-523', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L1996"></a><tt class="py-lineno">1996</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1997"></a><tt class="py-lineno">1997</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1998"></a><tt class="py-lineno">1998</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1999"></a><tt class="py-lineno">1999</tt> <tt class="py-line"> </tt>
-<a name="L2000"></a><tt class="py-lineno">2000</tt> <tt class="py-line"> <tt class="py-name">case96Result</tt> <tt class="py-op">=</tt> <tt class="py-name">pingResult</tt> </tt>
-<a name="L2001"></a><tt class="py-lineno">2001</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2002"></a><tt class="py-lineno">2002</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2003"></a><tt class="py-lineno">2003</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case96Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L2004"></a><tt class="py-lineno">2004</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Install 25 single to multi point Intents and Ping All test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2005"></a><tt class="py-lineno">2005</tt> <tt class="py-line"> <tt id="link-524" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-524', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Install 25 single to multi point Intents and Ping All test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2006"></a><tt class="py-lineno">2006</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE97"></a><div id="CHOtest.CASE97-def"><a name="L2007"></a><tt class="py-lineno">2007</tt> <a class="py-toggle" href="#" id="CHOtest.CASE97-toggle" onclick="return toggle('CHOtest.CASE97');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE97">CASE97</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE97-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE97-expanded"><a name="L2008"></a><tt class="py-lineno">2008</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2009"></a><tt class="py-lineno">2009</tt> <tt class="py-line"><tt class="py-docstring"> Install single-multi point intents and verify Ping all works</tt> </tt>
-<a name="L2010"></a><tt class="py-lineno">2010</tt> <tt class="py-line"><tt class="py-docstring"> for Chordal topology</tt> </tt>
-<a name="L2011"></a><tt class="py-lineno">2011</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2012"></a><tt class="py-lineno">2012</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">copy</tt> </tt>
-<a name="L2013"></a><tt class="py-lineno">2013</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-525" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-525', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Install single-multi point intents and verify Ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2014"></a><tt class="py-lineno">2014</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-526" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-526', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"___________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2015"></a><tt class="py-lineno">2015</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-527" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-527', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install single-multi point intents and Ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2016"></a><tt class="py-lineno">2016</tt> <tt class="py-line"> <tt class="py-name">deviceDPIDsCopy</tt> <tt class="py-op">=</tt> <tt class="py-name">copy</tt><tt class="py-op">.</tt><tt class="py-name">copy</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceDPIDs</tt><tt class="py-op">)</tt> </tt>
-<a name="L2017"></a><tt class="py-lineno">2017</tt> <tt class="py-line"> <tt class="py-name">portEgressList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-string">'1'</tt><tt class="py-op">]</tt><tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L2018"></a><tt class="py-lineno">2018</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2019"></a><tt class="py-lineno">2019</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"MACsDict"</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt> </tt>
-<a name="L2020"></a><tt class="py-lineno">2020</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2021"></a><tt class="py-lineno">2021</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">)</tt><tt class="py-op">,</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2022"></a><tt class="py-lineno">2022</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2023"></a><tt class="py-lineno">2023</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-528" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-528', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2024"></a><tt class="py-lineno">2024</tt> <tt class="py-line"> <tt class="py-name">ingressDevice</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> </tt>
-<a name="L2025"></a><tt class="py-lineno">2025</tt> <tt class="py-line"> <tt class="py-name">egressDeviceList</tt> <tt class="py-op">=</tt> <tt class="py-name">copy</tt><tt class="py-op">.</tt><tt class="py-name">copy</tt><tt class="py-op">(</tt><tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">)</tt> </tt>
-<a name="L2026"></a><tt class="py-lineno">2026</tt> <tt class="py-line"> <tt class="py-name">egressDeviceList</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">ingressDevice</tt><tt class="py-op">)</tt> </tt>
-<a name="L2027"></a><tt class="py-lineno">2027</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">deviceDPIDsCopy</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2028"></a><tt class="py-lineno">2028</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2029"></a><tt class="py-lineno">2029</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-529" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-529', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-530" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-530', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-531" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addSinglepointToMultipointIntent" class="py-name" href="#" onclick="return doclink('link-531', 'addSinglepointToMultipointIntent', 'link-519');">addSinglepointToMultipointIntent</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2030"></a><tt class="py-lineno">2030</tt> <tt class="py-line"> <tt class="py-name">threadID</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L2031"></a><tt class="py-lineno">2031</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"addSinglepointToMultipointIntent"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2032"></a><tt class="py-lineno">2032</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">ingressDevice</tt><tt class="py-op">,</tt><tt class="py-name">egressDeviceList</tt><tt class="py-op">,</tt><tt class="py-string">'1'</tt><tt class="py-op">,</tt><tt class="py-name">portEgressList</tt><tt class="py-op">,</tt><tt class="py-string">'IPV4'</tt><tt class="py-op">,</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">MACsDict</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-name">ingressDevice</tt><tt class="py-op">)</tt><tt class="py-op">,</tt><tt class="py-string">''</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L2033"></a><tt class="py-lineno">2033</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L2034"></a><tt class="py-lineno">2034</tt> <tt class="py-line"> <tt class="py-comment">#time.sleep(1)</tt> </tt>
-<a name="L2035"></a><tt class="py-lineno">2035</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2036"></a><tt class="py-lineno">2036</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2037"></a><tt class="py-lineno">2037</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2038"></a><tt class="py-lineno">2038</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L2039"></a><tt class="py-lineno">2039</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2040"></a><tt class="py-lineno">2040</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L2041"></a><tt class="py-lineno">2041</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2042"></a><tt class="py-lineno">2042</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-532" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-532', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for adding point intents: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L2043"></a><tt class="py-lineno">2043</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L2044"></a><tt class="py-lineno">2044</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-533" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-533', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2045"></a><tt class="py-lineno">2045</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2046"></a><tt class="py-lineno">2046</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2047"></a><tt class="py-lineno">2047</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-534" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-534', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L2048"></a><tt class="py-lineno">2048</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2049"></a><tt class="py-lineno">2049</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2050"></a><tt class="py-lineno">2050</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-535" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-535', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L2051"></a><tt class="py-lineno">2051</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2052"></a><tt class="py-lineno">2052</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2053"></a><tt class="py-lineno">2053</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2054"></a><tt class="py-lineno">2054</tt> <tt class="py-line"> </tt>
-<a name="L2055"></a><tt class="py-lineno">2055</tt> <tt class="py-line"> <tt class="py-name">case97Result</tt> <tt class="py-op">=</tt> <tt class="py-name">pingResult</tt> </tt>
-<a name="L2056"></a><tt class="py-lineno">2056</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2057"></a><tt class="py-lineno">2057</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2058"></a><tt class="py-lineno">2058</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case97Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L2059"></a><tt class="py-lineno">2059</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Install 25 single to multi point Intents and Ping All test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2060"></a><tt class="py-lineno">2060</tt> <tt class="py-line"> <tt id="link-536" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-536', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Install 25 single to multi point Intents and Ping All test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2061"></a><tt class="py-lineno">2061</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE98"></a><div id="CHOtest.CASE98-def"><a name="L2062"></a><tt class="py-lineno">2062</tt> <a class="py-toggle" href="#" id="CHOtest.CASE98-toggle" onclick="return toggle('CHOtest.CASE98');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE98">CASE98</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE98-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE98-expanded"><a name="L2063"></a><tt class="py-lineno">2063</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2064"></a><tt class="py-lineno">2064</tt> <tt class="py-line"><tt class="py-docstring"> Install single-multi point intents and verify Ping all works</tt> </tt>
-<a name="L2065"></a><tt class="py-lineno">2065</tt> <tt class="py-line"><tt class="py-docstring"> for Spine topology</tt> </tt>
-<a name="L2066"></a><tt class="py-lineno">2066</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2067"></a><tt class="py-lineno">2067</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">copy</tt> </tt>
-<a name="L2068"></a><tt class="py-lineno">2068</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-537" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-537', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Install single-multi point intents and verify Ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2069"></a><tt class="py-lineno">2069</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-538" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-538', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"___________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2070"></a><tt class="py-lineno">2070</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-539" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-539', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install single-multi point intents and Ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2071"></a><tt class="py-lineno">2071</tt> <tt class="py-line"> <tt class="py-name">deviceDPIDsCopy</tt> <tt class="py-op">=</tt> <tt class="py-name">copy</tt><tt class="py-op">.</tt><tt class="py-name">copy</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">deviceDPIDs</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2072"></a><tt class="py-lineno">2072</tt> <tt class="py-line"> <tt class="py-name">deviceDPIDsCopy</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">[</tt> <tt class="py-number">10</tt><tt class="py-op">:</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2073"></a><tt class="py-lineno">2073</tt> <tt class="py-line"> <tt class="py-name">portEgressList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'1'</tt> <tt class="py-op">]</tt><tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L2074"></a><tt class="py-lineno">2074</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2075"></a><tt class="py-lineno">2075</tt> <tt class="py-line"> <tt class="py-name">MACsDictCopy</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L2076"></a><tt class="py-lineno">2076</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">deviceDPIDsCopy</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2077"></a><tt class="py-lineno">2077</tt> <tt class="py-line"> <tt class="py-name">MACsDictCopy</tt><tt class="py-op">[</tt> <tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostMACs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">'/'</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2078"></a><tt class="py-lineno">2078</tt> <tt class="py-line"> </tt>
-<a name="L2079"></a><tt class="py-lineno">2079</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"deviceDPIDsCopy"</tt><tt class="py-op">,</tt> <tt class="py-name">deviceDPIDsCopy</tt> </tt>
-<a name="L2080"></a><tt class="py-lineno">2080</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">""</tt> </tt>
-<a name="L2081"></a><tt class="py-lineno">2081</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"MACsDictCopy"</tt><tt class="py-op">,</tt> <tt class="py-name">MACsDictCopy</tt> </tt>
-<a name="L2082"></a><tt class="py-lineno">2082</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2083"></a><tt class="py-lineno">2083</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">)</tt><tt class="py-op">,</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2084"></a><tt class="py-lineno">2084</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2085"></a><tt class="py-lineno">2085</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-540" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-540', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2086"></a><tt class="py-lineno">2086</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">deviceDPIDsCopy</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2087"></a><tt class="py-lineno">2087</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2088"></a><tt class="py-lineno">2088</tt> <tt class="py-line"> <tt class="py-name">ingressDevice</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> </tt>
-<a name="L2089"></a><tt class="py-lineno">2089</tt> <tt class="py-line"> <tt class="py-name">egressDeviceList</tt> <tt class="py-op">=</tt> <tt class="py-name">copy</tt><tt class="py-op">.</tt><tt class="py-name">copy</tt><tt class="py-op">(</tt><tt class="py-name">deviceDPIDsCopy</tt><tt class="py-op">)</tt> </tt>
-<a name="L2090"></a><tt class="py-lineno">2090</tt> <tt class="py-line"> <tt class="py-name">egressDeviceList</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">ingressDevice</tt><tt class="py-op">)</tt> </tt>
-<a name="L2091"></a><tt class="py-lineno">2091</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-541" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-541', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-542" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-542', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-543" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addSinglepointToMultipointIntent" class="py-name" href="#" onclick="return doclink('link-543', 'addSinglepointToMultipointIntent', 'link-519');">addSinglepointToMultipointIntent</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2092"></a><tt class="py-lineno">2092</tt> <tt class="py-line"> <tt class="py-name">threadID</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L2093"></a><tt class="py-lineno">2093</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"addSinglepointToMultipointIntent"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2094"></a><tt class="py-lineno">2094</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">ingressDevice</tt><tt class="py-op">,</tt><tt class="py-name">egressDeviceList</tt><tt class="py-op">,</tt><tt class="py-string">'1'</tt><tt class="py-op">,</tt><tt class="py-name">portEgressList</tt><tt class="py-op">,</tt><tt class="py-string">'IPV4'</tt><tt class="py-op">,</tt><tt class="py-name">MACsDictCopy</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-name">ingressDevice</tt><tt class="py-op">)</tt><tt class="py-op">,</tt><tt class="py-string">''</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L2095"></a><tt class="py-lineno">2095</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L2096"></a><tt class="py-lineno">2096</tt> <tt class="py-line"> <tt class="py-comment">#time.sleep(1)</tt> </tt>
-<a name="L2097"></a><tt class="py-lineno">2097</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2098"></a><tt class="py-lineno">2098</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2099"></a><tt class="py-lineno">2099</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2100"></a><tt class="py-lineno">2100</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L2101"></a><tt class="py-lineno">2101</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2102"></a><tt class="py-lineno">2102</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L2103"></a><tt class="py-lineno">2103</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2104"></a><tt class="py-lineno">2104</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-544" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-544', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for adding point intents: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L2105"></a><tt class="py-lineno">2105</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L2106"></a><tt class="py-lineno">2106</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-545" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-545', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Ping across all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2107"></a><tt class="py-lineno">2107</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2108"></a><tt class="py-lineno">2108</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2109"></a><tt class="py-lineno">2109</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-546" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-546', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">pingTimeout</tt><tt class="py-op">,</tt><tt class="py-name">shortCircuit</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">acceptableFailed</tt><tt class="py-op">=</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L2110"></a><tt class="py-lineno">2110</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2111"></a><tt class="py-lineno">2111</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2112"></a><tt class="py-lineno">2112</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-547" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-547', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L2113"></a><tt class="py-lineno">2113</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2114"></a><tt class="py-lineno">2114</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2115"></a><tt class="py-lineno">2115</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2116"></a><tt class="py-lineno">2116</tt> <tt class="py-line"> </tt>
-<a name="L2117"></a><tt class="py-lineno">2117</tt> <tt class="py-line"> <tt class="py-name">case98Result</tt> <tt class="py-op">=</tt> <tt class="py-name">pingResult</tt> </tt>
-<a name="L2118"></a><tt class="py-lineno">2118</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2119"></a><tt class="py-lineno">2119</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2120"></a><tt class="py-lineno">2120</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case98Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L2121"></a><tt class="py-lineno">2121</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Install 25 single to multi point Intents and Ping All test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2122"></a><tt class="py-lineno">2122</tt> <tt class="py-line"> <tt id="link-548" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-548', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Install 25 single to multi point Intents and Ping All test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2123"></a><tt class="py-lineno">2123</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE10"></a><div id="CHOtest.CASE10-def"><a name="L2124"></a><tt class="py-lineno">2124</tt> <a class="py-toggle" href="#" id="CHOtest.CASE10-toggle" onclick="return toggle('CHOtest.CASE10');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE10">CASE10</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE10-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE10-expanded"><a name="L2125"></a><tt class="py-lineno">2125</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2126"></a><tt class="py-lineno">2126</tt> <tt class="py-line"> <tt class="py-string">"""</tt> </tt>
-<a name="L2127"></a><tt class="py-lineno">2127</tt> <tt class="py-line"><tt class="py-string"> Remove all Intents</tt> </tt>
-<a name="L2128"></a><tt class="py-lineno">2128</tt> <tt class="py-line"><tt class="py-string"> """</tt> </tt>
-<a name="L2129"></a><tt class="py-lineno">2129</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-549" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-549', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Remove all intents that were installed previously"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2130"></a><tt class="py-lineno">2130</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-550" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-550', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"______________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2131"></a><tt class="py-lineno">2131</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-551" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-551', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Remove all intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2132"></a><tt class="py-lineno">2132</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-552" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-552', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Removing intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2133"></a><tt class="py-lineno">2133</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-553" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-553', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Obtain the intent id's first"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2134"></a><tt class="py-lineno">2134</tt> <tt class="py-line"> <tt class="py-name">intentsList</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-554" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentIds()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllIntentIds"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentIds" class="py-name" href="#" onclick="return doclink('link-554', 'getAllIntentIds', 'link-554');">getAllIntentIds</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2135"></a><tt class="py-lineno">2135</tt> <tt class="py-line"> <tt class="py-name">ansi_escape</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">compile</tt><tt class="py-op">(</tt> <tt class="py-string">r'\x1b[^m]*m'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2136"></a><tt class="py-lineno">2136</tt> <tt class="py-line"> <tt class="py-name">intentsList</tt> <tt class="py-op">=</tt> <tt class="py-name">ansi_escape</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">''</tt><tt class="py-op">,</tt> <tt class="py-name">intentsList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2137"></a><tt class="py-lineno">2137</tt> <tt class="py-line"> <tt class="py-name">intentsList</tt> <tt class="py-op">=</tt> <tt class="py-name">intentsList</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> </tt>
-<a name="L2138"></a><tt class="py-lineno">2138</tt> <tt class="py-line"> <tt class="py-string">" onos:intents | grep id="</tt><tt class="py-op">,</tt> </tt>
-<a name="L2139"></a><tt class="py-lineno">2139</tt> <tt class="py-line"> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> </tt>
-<a name="L2140"></a><tt class="py-lineno">2140</tt> <tt class="py-line"> <tt class="py-string">"id="</tt><tt class="py-op">,</tt> </tt>
-<a name="L2141"></a><tt class="py-lineno">2141</tt> <tt class="py-line"> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> </tt>
-<a name="L2142"></a><tt class="py-lineno">2142</tt> <tt class="py-line"> <tt class="py-string">"\r\r"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2143"></a><tt class="py-lineno">2143</tt> <tt class="py-line"> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2144"></a><tt class="py-lineno">2144</tt> <tt class="py-line"> <tt class="py-name">intentsList</tt> <tt class="py-op">=</tt> <tt class="py-name">intentsList</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2145"></a><tt class="py-lineno">2145</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2146"></a><tt class="py-lineno">2146</tt> <tt class="py-line"> <tt class="py-name">step1Result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2147"></a><tt class="py-lineno">2147</tt> <tt class="py-line"> <tt class="py-name">moreIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2148"></a><tt class="py-lineno">2148</tt> <tt class="py-line"> <tt class="py-name">removeIntentCount</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2149"></a><tt class="py-lineno">2149</tt> <tt class="py-line"> <tt class="py-name">intentsCount</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">intentsList</tt><tt class="py-op">)</tt> </tt>
-<a name="L2150"></a><tt class="py-lineno">2150</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-555" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-555', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt> <tt class="py-op">(</tt> <tt class="py-string">"Current number of intents: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">intentsCount</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2151"></a><tt class="py-lineno">2151</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentsList</tt> <tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2152"></a><tt class="py-lineno">2152</tt> <tt class="py-line"> <tt class="py-name">results</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2153"></a><tt class="py-lineno">2153</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-556" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-556', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Removing intent..."</tt><tt class="py-op">)</tt> </tt>
-<a name="L2154"></a><tt class="py-lineno">2154</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">moreIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L2155"></a><tt class="py-lineno">2155</tt> <tt class="py-line"> <tt class="py-comment"># This is a work around only: cycle through intents removal for up to 5 times.</tt> </tt>
-<a name="L2156"></a><tt class="py-lineno">2156</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeIntentCount</tt> <tt class="py-op">==</tt> <tt class="py-number">5</tt><tt class="py-op">:</tt> </tt>
-<a name="L2157"></a><tt class="py-lineno">2157</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2158"></a><tt class="py-lineno">2158</tt> <tt class="py-line"> <tt class="py-name">removeIntentCount</tt> <tt class="py-op">=</tt> <tt class="py-name">removeIntentCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2159"></a><tt class="py-lineno">2159</tt> <tt class="py-line"> <tt class="py-name">intentsList1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-557" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentIds" class="py-name" href="#" onclick="return doclink('link-557', 'getAllIntentIds', 'link-554');">getAllIntentIds</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2160"></a><tt class="py-lineno">2160</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentsList1</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L2161"></a><tt class="py-lineno">2161</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2162"></a><tt class="py-lineno">2162</tt> <tt class="py-line"> <tt class="py-name">ansi_escape</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">compile</tt><tt class="py-op">(</tt> <tt class="py-string">r'\x1b[^m]*m'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2163"></a><tt class="py-lineno">2163</tt> <tt class="py-line"> <tt class="py-name">intentsList1</tt> <tt class="py-op">=</tt> <tt class="py-name">ansi_escape</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">''</tt><tt class="py-op">,</tt> <tt class="py-name">intentsList1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2164"></a><tt class="py-lineno">2164</tt> <tt class="py-line"> <tt class="py-name">intentsList1</tt> <tt class="py-op">=</tt> <tt class="py-name">intentsList1</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> </tt>
-<a name="L2165"></a><tt class="py-lineno">2165</tt> <tt class="py-line"> <tt class="py-string">" onos:intents | grep id="</tt><tt class="py-op">,</tt> </tt>
-<a name="L2166"></a><tt class="py-lineno">2166</tt> <tt class="py-line"> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> </tt>
-<a name="L2167"></a><tt class="py-lineno">2167</tt> <tt class="py-line"> <tt class="py-string">" state="</tt><tt class="py-op">,</tt> </tt>
-<a name="L2168"></a><tt class="py-lineno">2168</tt> <tt class="py-line"> <tt class="py-string">""</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt> </tt>
-<a name="L2169"></a><tt class="py-lineno">2169</tt> <tt class="py-line"> <tt class="py-string">"\r\r"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2170"></a><tt class="py-lineno">2170</tt> <tt class="py-line"> <tt class="py-string">""</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2171"></a><tt class="py-lineno">2171</tt> <tt class="py-line"> <tt class="py-name">intentsList1</tt> <tt class="py-op">=</tt> <tt class="py-name">intentsList1</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2172"></a><tt class="py-lineno">2172</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-558" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-558', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt> <tt class="py-op">(</tt> <tt class="py-string">"Round %d intents to remove: "</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">removeIntentCount</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2173"></a><tt class="py-lineno">2173</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">intentsList1</tt> </tt>
-<a name="L2174"></a><tt class="py-lineno">2174</tt> <tt class="py-line"> <tt class="py-name">intentIdList1</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2175"></a><tt class="py-lineno">2175</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentsList1</tt> <tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">0</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2176"></a><tt class="py-lineno">2176</tt> <tt class="py-line"> <tt class="py-name">moreIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2177"></a><tt class="py-lineno">2177</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentsList1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2178"></a><tt class="py-lineno">2178</tt> <tt class="py-line"> <tt class="py-name">intentsTemp1</tt> <tt class="py-op">=</tt> <tt class="py-name">intentsList1</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2179"></a><tt class="py-lineno">2179</tt> <tt class="py-line"> <tt class="py-name">intentIdList1</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">intentsTemp1</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">'='</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2180"></a><tt class="py-lineno">2180</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-559" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-559', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt> <tt class="py-op">(</tt> <tt class="py-string">"Leftover Intent IDs: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">intentIdList1</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2181"></a><tt class="py-lineno">2181</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-560" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-560', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt> <tt class="py-op">(</tt> <tt class="py-string">"Length of Leftover Intents list: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">intentIdList1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2182"></a><tt class="py-lineno">2182</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2183"></a><tt class="py-lineno">2183</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">xrange</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentIdList1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2184"></a><tt class="py-lineno">2184</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2185"></a><tt class="py-lineno">2185</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-561" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-561', 'cli', 'link-106');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2186"></a><tt class="py-lineno">2186</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentIdList1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2187"></a><tt class="py-lineno">2187</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2188"></a><tt class="py-lineno">2188</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-562" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-562', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-563" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-563', 'cli', 'link-106');">cli</a></tt><tt class="py-op">.</tt><tt id="link-564" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.removeIntent()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#removeIntent,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.removeIntent()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#removeIntent"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.removeIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.removeIntent" class="py-name" href="#" onclick="return doclink('link-564', 'removeIntent', 'link-564');">removeIntent</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2189"></a><tt class="py-lineno">2189</tt> <tt class="py-line"> <tt class="py-name">threadID</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L2190"></a><tt class="py-lineno">2190</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"removeIntent"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2191"></a><tt class="py-lineno">2191</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">intentIdList1</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">,</tt><tt class="py-string">'org.onosproject.cli'</tt><tt class="py-op">,</tt><tt class="py-name">False</tt><tt class="py-op">,</tt><tt class="py-name">False</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L2192"></a><tt class="py-lineno">2192</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L2193"></a><tt class="py-lineno">2193</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2194"></a><tt class="py-lineno">2194</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2195"></a><tt class="py-lineno">2195</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2196"></a><tt class="py-lineno">2196</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L2197"></a><tt class="py-lineno">2197</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2198"></a><tt class="py-lineno">2198</tt> <tt class="py-line"> <tt class="py-name">intentIdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L2199"></a><tt class="py-lineno">2199</tt> <tt class="py-line"> <tt class="py-comment">#time.sleep(2)</tt> </tt>
-<a name="L2200"></a><tt class="py-lineno">2200</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2201"></a><tt class="py-lineno">2201</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-565" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-565', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for removing host intents: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L2202"></a><tt class="py-lineno">2202</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt> </tt>
-<a name="L2203"></a><tt class="py-lineno">2203</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-566" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-566', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Purging WITHDRAWN Intents"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2204"></a><tt class="py-lineno">2204</tt> <tt class="py-line"> <tt class="py-name">purgeResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-567" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.purgeWithdrawnIntents()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#purgeWithdrawnIntents"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.purgeWithdrawnIntents" class="py-name" href="#" onclick="return doclink('link-567', 'purgeWithdrawnIntents', 'link-567');">purgeWithdrawnIntents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2205"></a><tt class="py-lineno">2205</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2206"></a><tt class="py-lineno">2206</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt> </tt>
-<a name="L2207"></a><tt class="py-lineno">2207</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-568" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-568', 'intents', 'link-248');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2208"></a><tt class="py-lineno">2208</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L2209"></a><tt class="py-lineno">2209</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2210"></a><tt class="py-lineno">2210</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt> </tt>
-<a name="L2211"></a><tt class="py-lineno">2211</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2212"></a><tt class="py-lineno">2212</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Removed %d intents"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">intentsCount</tt><tt class="py-op">)</tt> </tt>
-<a name="L2213"></a><tt class="py-lineno">2213</tt> <tt class="py-line"> <tt class="py-name">step1Result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2214"></a><tt class="py-lineno">2214</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2215"></a><tt class="py-lineno">2215</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"No Intent IDs found in Intents list: "</tt><tt class="py-op">,</tt> <tt class="py-name">intentsList</tt> </tt>
-<a name="L2216"></a><tt class="py-lineno">2216</tt> <tt class="py-line"> <tt class="py-name">step1Result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2217"></a><tt class="py-lineno">2217</tt> <tt class="py-line"> </tt>
-<a name="L2218"></a><tt class="py-lineno">2218</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-569" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-569', 'intents', 'link-248');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2219"></a><tt class="py-lineno">2219</tt> <tt class="py-line"> <tt class="py-name">caseResult10</tt> <tt class="py-op">=</tt> <tt class="py-name">step1Result</tt> </tt>
-<a name="L2220"></a><tt class="py-lineno">2220</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">caseResult10</tt><tt class="py-op">,</tt> </tt>
-<a name="L2221"></a><tt class="py-lineno">2221</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intent removal test successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2222"></a><tt class="py-lineno">2222</tt> <tt class="py-line"> <tt id="link-570" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-570', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intent removal test failed"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2223"></a><tt class="py-lineno">2223</tt> <tt class="py-line"> </tt>
-<a name="CHOtest.CASE12"></a><div id="CHOtest.CASE12-def"><a name="L2224"></a><tt class="py-lineno">2224</tt> <a class="py-toggle" href="#" id="CHOtest.CASE12-toggle" onclick="return toggle('CHOtest.CASE12');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE12">CASE12</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="CHOtest.CASE12-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="CHOtest.CASE12-expanded"><a name="L2225"></a><tt class="py-lineno">2225</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2226"></a><tt class="py-lineno">2226</tt> <tt class="py-line"><tt class="py-docstring"> Enable onos-app-ifwd, Verify Intent based Reactive forwarding through ping all and Disable it</tt> </tt>
-<a name="L2227"></a><tt class="py-lineno">2227</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2228"></a><tt class="py-lineno">2228</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L2229"></a><tt class="py-lineno">2229</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">copy</tt> </tt>
-<a name="L2230"></a><tt class="py-lineno">2230</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2231"></a><tt class="py-lineno">2231</tt> <tt class="py-line"> </tt>
-<a name="L2232"></a><tt class="py-lineno">2232</tt> <tt class="py-line"> <tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2233"></a><tt class="py-lineno">2233</tt> <tt class="py-line"> </tt>
-<a name="L2234"></a><tt class="py-lineno">2234</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-571" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-571', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Enable Intent based Reactive forwarding and Verify ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2235"></a><tt class="py-lineno">2235</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-572" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-572', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"_____________________________________________________"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2236"></a><tt class="py-lineno">2236</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-573" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-573', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Enable Intent based Reactive forwarding and Verify ping all"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2237"></a><tt class="py-lineno">2237</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-574" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-574', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Enable intent based Reactive forwarding"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2238"></a><tt class="py-lineno">2238</tt> <tt class="py-line"> <tt class="py-name">installResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2239"></a><tt class="py-lineno">2239</tt> <tt class="py-line"> <tt class="py-name">feature</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos-app-ifwd"</tt> </tt>
-<a name="L2240"></a><tt class="py-lineno">2240</tt> <tt class="py-line"> </tt>
-<a name="L2241"></a><tt class="py-lineno">2241</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2242"></a><tt class="py-lineno">2242</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2243"></a><tt class="py-lineno">2243</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-575" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-575', 'cli', 'link-106');">cli</a></tt><tt class="py-op">,</tt><tt class="py-name">feature</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2244"></a><tt class="py-lineno">2244</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-576" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-576', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt><tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-577" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-577', 'cli', 'link-106');">cli</a></tt><tt class="py-op">,</tt><tt class="py-name">threadID</tt><tt class="py-op">=</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L2245"></a><tt class="py-lineno">2245</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"featureInstall"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">feature</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L2246"></a><tt class="py-lineno">2246</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L2247"></a><tt class="py-lineno">2247</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2248"></a><tt class="py-lineno">2248</tt> <tt class="py-line"> <tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2249"></a><tt class="py-lineno">2249</tt> <tt class="py-line"> </tt>
-<a name="L2250"></a><tt class="py-lineno">2250</tt> <tt class="py-line"> <tt class="py-name">results</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2251"></a><tt class="py-lineno">2251</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L2252"></a><tt class="py-lineno">2252</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2253"></a><tt class="py-lineno">2253</tt> <tt class="py-line"> <tt class="py-name">results</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L2254"></a><tt class="py-lineno">2254</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2255"></a><tt class="py-lineno">2255</tt> <tt class="py-line"> </tt>
-<a name="L2256"></a><tt class="py-lineno">2256</tt> <tt class="py-line"> <tt class="py-keyword">if</tt><tt class="py-op">(</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt><tt class="py-name">result</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> <tt class="py-keyword">for</tt> <tt class="py-name">result</tt> <tt class="py-keyword">in</tt> <tt class="py-name">results</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">False</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2257"></a><tt class="py-lineno">2257</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-578" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-578', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Did not install onos-app-ifwd feature properly"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2258"></a><tt class="py-lineno">2258</tt> <tt class="py-line"> <tt class="py-comment">#main.cleanup()</tt> </tt>
-<a name="L2259"></a><tt class="py-lineno">2259</tt> <tt class="py-line"> <tt class="py-comment">#main.exit()</tt> </tt>
-<a name="L2260"></a><tt class="py-lineno">2260</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2261"></a><tt class="py-lineno">2261</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-579" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-579', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Successful feature:install onos-app-ifwd"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2262"></a><tt class="py-lineno">2262</tt> <tt class="py-line"> <tt class="py-name">installResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2263"></a><tt class="py-lineno">2263</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-580" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-580', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for feature:install onos-app-ifwd: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L2264"></a><tt class="py-lineno">2264</tt> <tt class="py-line"> </tt>
-<a name="L2265"></a><tt class="py-lineno">2265</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-581" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-581', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify Pingall"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2266"></a><tt class="py-lineno">2266</tt> <tt class="py-line"> <tt class="py-name">ping_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2267"></a><tt class="py-lineno">2267</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2268"></a><tt class="py-lineno">2268</tt> <tt class="py-line"> <tt class="py-name">ping_result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-582" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-582', 'pingall', 'link-138');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">=</tt><tt class="py-number">600</tt><tt class="py-op">)</tt> </tt>
-<a name="L2269"></a><tt class="py-lineno">2269</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2270"></a><tt class="py-lineno">2270</tt> <tt class="py-line"> <tt class="py-name">timeDiff</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2271"></a><tt class="py-lineno">2271</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-583" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-583', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> </tt>
-<a name="L2272"></a><tt class="py-lineno">2272</tt> <tt class="py-line"> <tt class="py-string">"Time taken for Ping All: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2273"></a><tt class="py-lineno">2273</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">timeDiff</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2274"></a><tt class="py-lineno">2274</tt> <tt class="py-line"> <tt class="py-string">" seconds"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2275"></a><tt class="py-lineno">2275</tt> <tt class="py-line"> </tt>
-<a name="L2276"></a><tt class="py-lineno">2276</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ping_result</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2277"></a><tt class="py-lineno">2277</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-584" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-584', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Pingall Test in Reactive mode successful"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2278"></a><tt class="py-lineno">2278</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2279"></a><tt class="py-lineno">2279</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-585" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-585', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Pingall Test in Reactive mode failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2280"></a><tt class="py-lineno">2280</tt> <tt class="py-line"> </tt>
-<a name="L2281"></a><tt class="py-lineno">2281</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-586" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-586', 'step', 'link-4');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Disable Intent based Reactive forwarding"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2282"></a><tt class="py-lineno">2282</tt> <tt class="py-line"> <tt class="py-name">uninstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2283"></a><tt class="py-lineno">2283</tt> <tt class="py-line"> </tt>
-<a name="L2284"></a><tt class="py-lineno">2284</tt> <tt class="py-line"> <tt class="py-name">pool</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2285"></a><tt class="py-lineno">2285</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2286"></a><tt class="py-lineno">2286</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-587" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-587', 'cli', 'link-106');">cli</a></tt><tt class="py-op">,</tt><tt class="py-name">feature</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2287"></a><tt class="py-lineno">2287</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-588" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-588', 'Thread', 'link-40');">Thread</a></tt><tt class="py-op">(</tt><tt class="py-name">target</tt><tt class="py-op">=</tt><tt id="link-589" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-589', 'cli', 'link-106');">cli</a></tt><tt class="py-op">,</tt><tt class="py-name">threadID</tt><tt class="py-op">=</tt><tt class="py-name">threadID</tt><tt class="py-op">,</tt> </tt>
-<a name="L2288"></a><tt class="py-lineno">2288</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"featureUninstall"</tt><tt class="py-op">,</tt><tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">feature</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L2289"></a><tt class="py-lineno">2289</tt> <tt class="py-line"> <tt class="py-name">pool</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L2290"></a><tt class="py-lineno">2290</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2291"></a><tt class="py-lineno">2291</tt> <tt class="py-line"> <tt class="py-name">threadID</tt> <tt class="py-op">=</tt> <tt class="py-name">threadID</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2292"></a><tt class="py-lineno">2292</tt> <tt class="py-line"> </tt>
-<a name="L2293"></a><tt class="py-lineno">2293</tt> <tt class="py-line"> <tt class="py-name">results</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2294"></a><tt class="py-lineno">2294</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thread</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pool</tt><tt class="py-op">:</tt> </tt>
-<a name="L2295"></a><tt class="py-lineno">2295</tt> <tt class="py-line"> <tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2296"></a><tt class="py-lineno">2296</tt> <tt class="py-line"> <tt class="py-name">results</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">thread</tt><tt class="py-op">.</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L2297"></a><tt class="py-lineno">2297</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2298"></a><tt class="py-lineno">2298</tt> <tt class="py-line"> </tt>
-<a name="L2299"></a><tt class="py-lineno">2299</tt> <tt class="py-line"> <tt class="py-keyword">if</tt><tt class="py-op">(</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt><tt class="py-name">result</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> <tt class="py-keyword">for</tt> <tt class="py-name">result</tt> <tt class="py-keyword">in</tt> <tt class="py-name">results</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">False</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2300"></a><tt class="py-lineno">2300</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-590" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-590', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Did not uninstall onos-app-ifwd feature properly"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2301"></a><tt class="py-lineno">2301</tt> <tt class="py-line"> <tt class="py-name">uninstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2302"></a><tt class="py-lineno">2302</tt> <tt class="py-line"> <tt class="py-comment">#main.cleanup()</tt> </tt>
-<a name="L2303"></a><tt class="py-lineno">2303</tt> <tt class="py-line"> <tt class="py-comment">#main.exit()</tt> </tt>
-<a name="L2304"></a><tt class="py-lineno">2304</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2305"></a><tt class="py-lineno">2305</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-591" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-591', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Successful feature:uninstall onos-app-ifwd"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2306"></a><tt class="py-lineno">2306</tt> <tt class="py-line"> <tt class="py-name">uninstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2307"></a><tt class="py-lineno">2307</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-592" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-592', 'log', 'link-2');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Time for feature:uninstall onos-app-ifwd: %2f seconds"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt class="py-name">time2</tt><tt class="py-op">-</tt><tt class="py-name">time1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L2308"></a><tt class="py-lineno">2308</tt> <tt class="py-line"> </tt>
-<a name="L2309"></a><tt class="py-lineno">2309</tt> <tt class="py-line"> <tt class="py-comment"># Waiting for reative flows to be cleared.</tt> </tt>
-<a name="L2310"></a><tt class="py-lineno">2310</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2311"></a><tt class="py-lineno">2311</tt> <tt class="py-line"> </tt>
-<a name="L2312"></a><tt class="py-lineno">2312</tt> <tt class="py-line"> <tt class="py-name">case11Result</tt> <tt class="py-op">=</tt> <tt class="py-name">installResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ping_result</tt> <tt class="py-keyword">and</tt> <tt class="py-name">uninstallResult</tt> </tt>
-<a name="L2313"></a><tt class="py-lineno">2313</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">case11Result</tt><tt class="py-op">,</tt> </tt>
-<a name="L2314"></a><tt class="py-lineno">2314</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intent based Reactive forwarding Pingall test PASS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2315"></a><tt class="py-lineno">2315</tt> <tt class="py-line"> <tt id="link-593" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-593', 'onfail', 'link-6');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intent based Reactive forwarding Pingall test FAIL"</tt> <tt class="py-op">)</tt> </tt>
-</div></div><a name="L2316"></a><tt class="py-lineno">2316</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.CHOtest.CHOtest.CHOtest-class.html b/TestON/Documentation/TestON_Document/TestON.tests.CHOtest.CHOtest.CHOtest-class.html
deleted file mode 100644
index a9f0961..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.CHOtest.CHOtest.CHOtest-class.html
+++ /dev/null
@@ -1,736 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.CHOtest.CHOtest.CHOtest</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.CHOtest-module.html">Package CHOtest</a> ::
- <a href="TestON.tests.CHOtest.CHOtest-module.html">Module CHOtest</a> ::
- Class CHOtest
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class CHOtest</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1"></a><span class="summary-sig-name">CASE1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Startup sequence: apply cell <name> git pull mvn clean install
- onos-package onos-verify-cell onos-uninstall onos-install
- onos-start-cli</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE20"></a><span class="summary-sig-name">CASE20</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- This test script Loads a new Topology (Att) on CHO setup and balances
- all switches</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE20">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE21"></a><span class="summary-sig-name">CASE21</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- This test script Loads a new Topology (Chordal) on CHO setup and
- balances all switches</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE21">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE22"></a><span class="summary-sig-name">CASE22</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- This test script Loads a new Topology (Spine) on CHO setup and
- balances all switches</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE22">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE3"></a><span class="summary-sig-name">CASE3</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- This Test case will be extended to collect and store more data
- related ONOS state.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE3">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE40"></a><span class="summary-sig-name">CASE40</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Verify Reactive forwarding (Att Topology)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE40">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE41"></a><span class="summary-sig-name">CASE41</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Verify Reactive forwarding (Chordal Topology)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE41">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE42"></a><span class="summary-sig-name">CASE42</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Verify Reactive forwarding (Spine Topology)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE42">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE5"></a><span class="summary-sig-name">CASE5</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Compare current ONOS topology with reference data</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE5">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE60"></a><span class="summary-sig-name">CASE60</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Install 300 host intents and verify ping all (Att Topology)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE60">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE61"></a><span class="summary-sig-name">CASE61</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Install 600 host intents and verify ping all for Chordal Topology</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE61">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE62"></a><span class="summary-sig-name">CASE62</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Install 2278 host intents and verify ping all for Spine Topology</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE62">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE70"></a><span class="summary-sig-name">CASE70</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Randomly bring some core links down and verify ping all ( Host
- Intents-Att Topo)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE70">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE80"></a><span class="summary-sig-name">CASE80</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Bring the core links up that are down and verify ping all ( Host
- Intents-Att Topo )</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE80">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE71"></a><span class="summary-sig-name">CASE71</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Randomly bring some core links down and verify ping all ( Point
- Intents-Att Topo)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE71">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE81"></a><span class="summary-sig-name">CASE81</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Bring the core links up that are down and verify ping all ( Point
- Intents-Att Topo )</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE81">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE72"></a><span class="summary-sig-name">CASE72</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Randomly bring some links down and verify ping all ( Host
- Intents-Chordal Topo)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE72">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE82"></a><span class="summary-sig-name">CASE82</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Bring the core links up that are down and verify ping all ( Host
- Intents Chordal Topo )</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE82">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE73"></a><span class="summary-sig-name">CASE73</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Randomly bring some links down and verify ping all ( Point
- Intents-Chordal Topo)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE73">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE83"></a><span class="summary-sig-name">CASE83</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Bring the core links up that are down and verify ping all ( Point
- Intents Chordal Topo )</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE83">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE74"></a><span class="summary-sig-name">CASE74</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Randomly bring some core links down and verify ping all ( Host
- Intents-Spine Topo)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE74">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE84"></a><span class="summary-sig-name">CASE84</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Bring the core links up that are down and verify ping all ( Host
- Intents-Spine Topo )</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE84">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE90"></a><span class="summary-sig-name">CASE90</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Install 600 point intents and verify ping all (Att Topology)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE90">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE91"></a><span class="summary-sig-name">CASE91</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Install 600 point intents and verify ping all (Chordal Topology)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE91">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE92"></a><span class="summary-sig-name">CASE92</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Install 4556 point intents and verify ping all (Spine Topology)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE92">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE93"></a><span class="summary-sig-name">CASE93</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Install multi-single point intents and verify Ping all works for att
- topology</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE93">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE94"></a><span class="summary-sig-name">CASE94</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Install multi-single point intents and verify Ping all works for
- Chordal topology</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE94">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE96"></a><span class="summary-sig-name">CASE96</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Install single-multi point intents and verify Ping all works for att
- topology</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE96">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE97"></a><span class="summary-sig-name">CASE97</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Install single-multi point intents and verify Ping all works for
- Chordal topology</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE97">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE98"></a><span class="summary-sig-name">CASE98</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Install single-multi point intents and verify Ping all works for
- Spine topology</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE98">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE10"></a><span class="summary-sig-name">CASE10</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE10">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE12"></a><span class="summary-sig-name">CASE12</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Enable onos-app-ifwd, Verify Intent based Reactive forwarding through
- ping all and Disable it</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.CHOtest.CHOtest-pysrc.html#CHOtest.CASE12">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.FUNCintent-module.html b/TestON/Documentation/TestON_Document/TestON.tests.FUNCintent-module.html
deleted file mode 100644
index ea6b9de..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.FUNCintent-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.FUNCintent</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package FUNCintent
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.FUNCintent-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package FUNCintent</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.FUNCintent-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.FUNCintent.FUNCintent-module.html">TestON.tests.FUNCintent.FUNCintent</a></strong> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.FUNCintent-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.FUNCintent-pysrc.html
deleted file mode 100644
index 14c7042..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.FUNCintent-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.FUNCintent</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package FUNCintent
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.FUNCintent-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.FUNCintent-module.html">Package TestON.tests.FUNCintent</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.FUNCintent.FUNCintent-module.html b/TestON/Documentation/TestON_Document/TestON.tests.FUNCintent.FUNCintent-module.html
deleted file mode 100644
index 8f3536c..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.FUNCintent.FUNCintent-module.html
+++ /dev/null
@@ -1,167 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.FUNCintent.FUNCintent</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.FUNCintent-module.html">Package FUNCintent</a> ::
- Module FUNCintent
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.FUNCintent.FUNCintent-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module FUNCintent</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html" class="summary-name">FUNCintent</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.FUNCintent.FUNCintent-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.FUNCintent.FUNCintent-pysrc.html
deleted file mode 100644
index 213082a..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.FUNCintent.FUNCintent-pysrc.html
+++ /dev/null
@@ -1,1430 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.FUNCintent.FUNCintent</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.FUNCintent-module.html">Package FUNCintent</a> ::
- Module FUNCintent
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.FUNCintent.FUNCintent-module.html">Module TestON.tests.FUNCintent.FUNCintent</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Testing the basic intent functionality of ONOS</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"> </tt>
-<a name="FUNCintent"></a><div id="FUNCintent-def"><a name="L3"></a><tt class="py-lineno"> 3</tt> <a class="py-toggle" href="#" id="FUNCintent-toggle" onclick="return toggle('FUNCintent');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a><tt class="py-op">:</tt> </tt>
-</div><div id="FUNCintent-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="FUNCintent-expanded"><a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"> </tt>
-<a name="FUNCintent.__init__"></a><div id="FUNCintent.__init__-def"><a name="L5"></a><tt class="py-lineno"> 5</tt> <a class="py-toggle" href="#" id="FUNCintent.__init__-toggle" onclick="return toggle('FUNCintent.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FUNCintent.__init__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="FUNCintent.__init__-expanded"><a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"> </tt>
-<a name="FUNCintent.CASE1"></a><div id="FUNCintent.CASE1-def"><a name="L8"></a><tt class="py-lineno"> 8</tt> <a class="py-toggle" href="#" id="FUNCintent.CASE1-toggle" onclick="return toggle('FUNCintent.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE1">CASE1</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FUNCintent.CASE1-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="FUNCintent.CASE1-expanded"><a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">imp</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"> <tt class="py-string">"""</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-string"> - Construct tests variables</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-string"> - GIT ( optional )</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-string"> - Checkout ONOS master branch</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-string"> - Pull latest ONOS code</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-string"> - Building ONOS ( optional )</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-string"> - Install ONOS package</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-string"> - Build ONOS package</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-string"> """</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-1', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Constructing test variables and building ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-2', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Constructing test variables"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"This test case is mainly for loading "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-string">"from params file, and pull and build the "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt class="py-string">" latest ONOS package"</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-comment"># Test variables</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testOnDirectory</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">"(/tests)$"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testDir</tt> <tt class="py-op">)</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#apps,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#apps"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-3', 'apps', 'link-3');">apps</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellApps'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">gitBranch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'branch'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">dependencyPath</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testOnDirectory</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'DEPENDENCY'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'path'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#topology,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topology"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-4', 'topology', 'link-4');">topology</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'DEPENDENCY'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'topology'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">scale</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SCALE'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'size'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt> <tt class="py-op">)</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt><tt class="py-op">:</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">)</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-name">wrapperFile1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'DEPENDENCY'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'wrapper1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">wrapperFile2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'DEPENDENCY'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'wrapper2'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">wrapperFile3</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'DEPENDENCY'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'wrapper3'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">startUpSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SLEEP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'startup'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">checkIntentSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SLEEP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'checkintent'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">rerouteSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SLEEP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'reroute'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">fwdSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SLEEP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'fwd'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt id="link-5" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-5', 'gitPull', 'link-5');">gitPull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'pull'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MININET'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'switch'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numLinks</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MININET'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'links'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">cellData</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> <tt class="py-comment"># for creating cell file</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostsData</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getOnosIps"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps" class="py-name" href="#" onclick="return doclink('link-6', 'getOnosIps', 'link-6');">getOnosIps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-comment"># Assigning ONOS cli handles to a list</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">'ONOScli'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-comment"># -- INIT SECTION, ONLY RUNS ONCE -- #</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">startUp</tt> <tt class="py-op">=</tt> <tt class="py-name">imp</tt><tt class="py-op">.</tt><tt class="py-name">load_source</tt><tt class="py-op">(</tt> <tt class="py-name">wrapperFile1</tt><tt class="py-op">,</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">dependencyPath</tt> <tt class="py-op">+</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">wrapperFile1</tt> <tt class="py-op">+</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-string">".py"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt> <tt class="py-op">=</tt> <tt class="py-name">imp</tt><tt class="py-op">.</tt><tt class="py-name">load_source</tt><tt class="py-op">(</tt> <tt class="py-name">wrapperFile2</tt><tt class="py-op">,</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">dependencyPath</tt> <tt class="py-op">+</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">wrapperFile2</tt> <tt class="py-op">+</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-string">".py"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">topo</tt> <tt class="py-op">=</tt> <tt class="py-name">imp</tt><tt class="py-op">.</tt><tt class="py-name">load_source</tt><tt class="py-op">(</tt> <tt class="py-name">wrapperFile3</tt><tt class="py-op">,</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">dependencyPath</tt> <tt class="py-op">+</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">wrapperFile3</tt> <tt class="py-op">+</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-string">".py"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">copyResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#copyMininetFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile" class="py-name" href="#" onclick="return doclink('link-7', 'copyMininetFile', 'link-7');">copyMininetFile</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-8', 'topology', 'link-4');">topology</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">dependencyPath</tt><tt class="py-op">,</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-10', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Did not properly created list of ONOS CLI handle"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-11', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method TestON.core.teston.TestON.cleanup()=TestON.core.teston.TestON-class.html#cleanup"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-12', 'cleanup', 'link-12');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-13', 'exit', 'link-13');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully construct "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-string">"test variables "</tt><tt class="py-op">,</tt> </tt>
-<a name="L100"></a><tt class="py-lineno"> 100</tt> <tt class="py-line"> <tt id="link-14" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-14', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to construct test variables"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno"> 101</tt> <tt class="py-line"> </tt>
-<a name="L102"></a><tt class="py-lineno"> 102</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-15', 'gitPull', 'link-5');">gitPull</a></tt> <tt class="py-op">==</tt> <tt class="py-string">'True'</tt><tt class="py-op">:</tt> </tt>
-<a name="L103"></a><tt class="py-lineno"> 103</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-16', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Building ONOS in "</tt> <tt class="py-op">+</tt> <tt class="py-name">gitBranch</tt> <tt class="py-op">+</tt> <tt class="py-string">" branch"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno"> 104</tt> <tt class="py-line"> <tt class="py-name">onosBuildResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">startUp</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosBuild()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosBuild"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosBuild" class="py-name" href="#" onclick="return doclink('link-17', 'onosBuild', 'link-17');">onosBuild</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-name">gitBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno"> 105</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosBuildResult</tt> </tt>
-<a name="L106"></a><tt class="py-lineno"> 106</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L107"></a><tt class="py-lineno"> 107</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L108"></a><tt class="py-lineno"> 108</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully compiled "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L109"></a><tt class="py-lineno"> 109</tt> <tt class="py-line"> <tt class="py-string">"latest ONOS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L110"></a><tt class="py-lineno"> 110</tt> <tt class="py-line"> <tt id="link-18" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-18', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to compile "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L111"></a><tt class="py-lineno"> 111</tt> <tt class="py-line"> <tt class="py-string">"latest ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno"> 112</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L113"></a><tt class="py-lineno"> 113</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-19', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Did not pull new code so skipping mvn "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L114"></a><tt class="py-lineno"> 114</tt> <tt class="py-line"> <tt class="py-string">"clean install"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno"> 115</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion,Method TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion
-TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion" class="py-name" href="#" onclick="return doclink('link-20', 'getVersion', 'link-20');">getVersion</a></tt><tt class="py-op">(</tt> <tt class="py-name">report</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L116"></a><tt class="py-lineno"> 116</tt> <tt class="py-line"> </tt>
-<a name="FUNCintent.CASE2"></a><div id="FUNCintent.CASE2-def"><a name="L117"></a><tt class="py-lineno"> 117</tt> <a class="py-toggle" href="#" id="FUNCintent.CASE2-toggle" onclick="return toggle('FUNCintent.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE2">CASE2</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FUNCintent.CASE2-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="FUNCintent.CASE2-expanded"><a name="L118"></a><tt class="py-lineno"> 118</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L119"></a><tt class="py-lineno"> 119</tt> <tt class="py-line"><tt class="py-docstring"> - Set up cell</tt> </tt>
-<a name="L120"></a><tt class="py-lineno"> 120</tt> <tt class="py-line"><tt class="py-docstring"> - Create cell file</tt> </tt>
-<a name="L121"></a><tt class="py-lineno"> 121</tt> <tt class="py-line"><tt class="py-docstring"> - Set cell file</tt> </tt>
-<a name="L122"></a><tt class="py-lineno"> 122</tt> <tt class="py-line"><tt class="py-docstring"> - Verify cell file</tt> </tt>
-<a name="L123"></a><tt class="py-lineno"> 123</tt> <tt class="py-line"><tt class="py-docstring"> - Kill ONOS process</tt> </tt>
-<a name="L124"></a><tt class="py-lineno"> 124</tt> <tt class="py-line"><tt class="py-docstring"> - Uninstall ONOS cluster</tt> </tt>
-<a name="L125"></a><tt class="py-lineno"> 125</tt> <tt class="py-line"><tt class="py-docstring"> - Verify ONOS start up</tt> </tt>
-<a name="L126"></a><tt class="py-lineno"> 126</tt> <tt class="py-line"><tt class="py-docstring"> - Install ONOS cluster</tt> </tt>
-<a name="L127"></a><tt class="py-lineno"> 127</tt> <tt class="py-line"><tt class="py-docstring"> - Connect to cli</tt> </tt>
-<a name="L128"></a><tt class="py-lineno"> 128</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L129"></a><tt class="py-lineno"> 129</tt> <tt class="py-line"> </tt>
-<a name="L130"></a><tt class="py-lineno"> 130</tt> <tt class="py-line"> <tt class="py-comment"># main.scale[ 0 ] determines the current number of ONOS controller</tt> </tt>
-<a name="L131"></a><tt class="py-lineno"> 131</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno"> 132</tt> <tt class="py-line"> </tt>
-<a name="L133"></a><tt class="py-lineno"> 133</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-21', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting up "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L134"></a><tt class="py-lineno"> 134</tt> <tt class="py-line"> <tt class="py-string">" node(s) ONOS cluster"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno"> 135</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Set up ONOS with "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L136"></a><tt class="py-lineno"> 136</tt> <tt class="py-line"> <tt class="py-string">" node(s) ONOS cluster"</tt> </tt>
-<a name="L137"></a><tt class="py-lineno"> 137</tt> <tt class="py-line"> </tt>
-<a name="L138"></a><tt class="py-lineno"> 138</tt> <tt class="py-line"> </tt>
-<a name="L139"></a><tt class="py-lineno"> 139</tt> <tt class="py-line"> </tt>
-<a name="L140"></a><tt class="py-lineno"> 140</tt> <tt class="py-line"> <tt class="py-comment">#kill off all onos processes</tt> </tt>
-<a name="L141"></a><tt class="py-lineno"> 141</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-22', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Safety check, killing all ONOS processes"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L142"></a><tt class="py-lineno"> 142</tt> <tt class="py-line"> <tt class="py-string">" before initiating enviornment setup"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno"> 143</tt> <tt class="py-line"> </tt>
-<a name="L144"></a><tt class="py-lineno"> 144</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L145"></a><tt class="py-lineno"> 145</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosDie"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie" class="py-name" href="#" onclick="return doclink('link-23', 'onosDie', 'link-23');">onosDie</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno"> 146</tt> <tt class="py-line"> </tt>
-<a name="L147"></a><tt class="py-lineno"> 147</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"NODE COUNT = "</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L148"></a><tt class="py-lineno"> 148</tt> <tt class="py-line"> </tt>
-<a name="L149"></a><tt class="py-lineno"> 149</tt> <tt class="py-line"> <tt class="py-name">tempOnosIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L150"></a><tt class="py-lineno"> 150</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L151"></a><tt class="py-lineno"> 151</tt> <tt class="py-line"> <tt class="py-name">tempOnosIp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno"> 152</tt> <tt class="py-line"> </tt>
-<a name="L153"></a><tt class="py-lineno"> 153</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile" class="py-name" href="#" onclick="return doclink('link-24', 'createCellFile', 'link-24');">createCellFile</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L154"></a><tt class="py-lineno"> 154</tt> <tt class="py-line"> <tt class="py-string">"temp"</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L155"></a><tt class="py-lineno"> 155</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-25', 'apps', 'link-3');">apps</a></tt><tt class="py-op">,</tt> <tt class="py-name">tempOnosIp</tt> <tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno"> 156</tt> <tt class="py-line"> </tt>
-<a name="L157"></a><tt class="py-lineno"> 157</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-26', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Apply cell to environment"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L158"></a><tt class="py-lineno"> 158</tt> <tt class="py-line"> <tt class="py-name">cellResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell,Method TestON.drivers.common.cli.onosdriver.OnosDriver.setCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell" class="py-name" href="#" onclick="return doclink('link-27', 'setCell', 'link-27');">setCell</a></tt><tt class="py-op">(</tt> <tt class="py-string">"temp"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L159"></a><tt class="py-lineno"> 159</tt> <tt class="py-line"> <tt class="py-name">verifyResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell" class="py-name" href="#" onclick="return doclink('link-28', 'verifyCell', 'link-28');">verifyCell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno"> 160</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">cellResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">verifyResult</tt> </tt>
-<a name="L161"></a><tt class="py-lineno"> 161</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L162"></a><tt class="py-lineno"> 162</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L163"></a><tt class="py-lineno"> 163</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully applied cell to "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L164"></a><tt class="py-lineno"> 164</tt> <tt class="py-line"> <tt class="py-string">"environment"</tt><tt class="py-op">,</tt> </tt>
-<a name="L165"></a><tt class="py-lineno"> 165</tt> <tt class="py-line"> <tt id="link-29" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-29', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to apply cell to environment "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L166"></a><tt class="py-lineno"> 166</tt> <tt class="py-line"> </tt>
-<a name="L167"></a><tt class="py-lineno"> 167</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-30', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Creating ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L168"></a><tt class="py-lineno"> 168</tt> <tt class="py-line"> <tt class="py-name">packageResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage" class="py-name" href="#" onclick="return doclink('link-31', 'onosPackage', 'link-31');">onosPackage</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L169"></a><tt class="py-lineno"> 169</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">packageResult</tt> </tt>
-<a name="L170"></a><tt class="py-lineno"> 170</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L171"></a><tt class="py-lineno"> 171</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L172"></a><tt class="py-lineno"> 172</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully created ONOS package"</tt><tt class="py-op">,</tt> </tt>
-<a name="L173"></a><tt class="py-lineno"> 173</tt> <tt class="py-line"> <tt id="link-32" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-32', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to create ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L174"></a><tt class="py-lineno"> 174</tt> <tt class="py-line"> </tt>
-<a name="L175"></a><tt class="py-lineno"> 175</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">startUpSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L176"></a><tt class="py-lineno"> 176</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-33', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Uninstalling ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno"> 177</tt> <tt class="py-line"> <tt class="py-name">onosUninstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L178"></a><tt class="py-lineno"> 178</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">ip</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">:</tt> </tt>
-<a name="L179"></a><tt class="py-lineno"> 179</tt> <tt class="py-line"> <tt class="py-name">onosUninstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosUninstallResult</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L180"></a><tt class="py-lineno"> 180</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall" class="py-name" href="#" onclick="return doclink('link-34', 'onosUninstall', 'link-34');">onosUninstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">nodeIp</tt><tt class="py-op">=</tt><tt class="py-name">ip</tt> <tt class="py-op">)</tt> </tt>
-<a name="L181"></a><tt class="py-lineno"> 181</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosUninstallResult</tt> </tt>
-<a name="L182"></a><tt class="py-lineno"> 182</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L183"></a><tt class="py-lineno"> 183</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L184"></a><tt class="py-lineno"> 184</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully uninstalled ONOS package"</tt><tt class="py-op">,</tt> </tt>
-<a name="L185"></a><tt class="py-lineno"> 185</tt> <tt class="py-line"> <tt id="link-35" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-35', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to uninstall ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L186"></a><tt class="py-lineno"> 186</tt> <tt class="py-line"> </tt>
-<a name="L187"></a><tt class="py-lineno"> 187</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">startUpSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L188"></a><tt class="py-lineno"> 188</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-36', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Installing ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L189"></a><tt class="py-lineno"> 189</tt> <tt class="py-line"> <tt class="py-name">onosInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L190"></a><tt class="py-lineno"> 190</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L191"></a><tt class="py-lineno"> 191</tt> <tt class="py-line"> <tt class="py-name">onosInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosInstallResult</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L192"></a><tt class="py-lineno"> 192</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall" class="py-name" href="#" onclick="return doclink('link-37', 'onosInstall', 'link-37');">onosInstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L193"></a><tt class="py-lineno"> 193</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosInstallResult</tt> </tt>
-<a name="L194"></a><tt class="py-lineno"> 194</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L195"></a><tt class="py-lineno"> 195</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L196"></a><tt class="py-lineno"> 196</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully installed ONOS package"</tt><tt class="py-op">,</tt> </tt>
-<a name="L197"></a><tt class="py-lineno"> 197</tt> <tt class="py-line"> <tt id="link-38" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-38', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to install ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L198"></a><tt class="py-lineno"> 198</tt> <tt class="py-line"> </tt>
-<a name="L199"></a><tt class="py-lineno"> 199</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">startUpSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L200"></a><tt class="py-lineno"> 200</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-39', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting ONOS service"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L201"></a><tt class="py-lineno"> 201</tt> <tt class="py-line"> <tt class="py-name">stopResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L202"></a><tt class="py-lineno"> 202</tt> <tt class="py-line"> <tt class="py-name">startResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L203"></a><tt class="py-lineno"> 203</tt> <tt class="py-line"> <tt class="py-name">onosIsUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L204"></a><tt class="py-lineno"> 204</tt> <tt class="py-line"> </tt>
-<a name="L205"></a><tt class="py-lineno"> 205</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L206"></a><tt class="py-lineno"> 206</tt> <tt class="py-line"> <tt class="py-name">onosIsUp</tt> <tt class="py-op">=</tt> <tt class="py-name">onosIsUp</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.isup()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-40', 'isup', 'link-40');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L207"></a><tt class="py-lineno"> 207</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosIsUp</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L208"></a><tt class="py-lineno"> 208</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-41', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS instance is up and ready"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno"> 209</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L210"></a><tt class="py-lineno"> 210</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-42', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS instance may not be up, stop and "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L211"></a><tt class="py-lineno"> 211</tt> <tt class="py-line"> <tt class="py-string">"start ONOS again "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L212"></a><tt class="py-lineno"> 212</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L213"></a><tt class="py-lineno"> 213</tt> <tt class="py-line"> <tt class="py-name">stopResult</tt> <tt class="py-op">=</tt> <tt class="py-name">stopResult</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L214"></a><tt class="py-lineno"> 214</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosStop()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStop"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosStop" class="py-name" href="#" onclick="return doclink('link-43', 'onosStop', 'link-43');">onosStop</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L215"></a><tt class="py-lineno"> 215</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L216"></a><tt class="py-lineno"> 216</tt> <tt class="py-line"> <tt class="py-name">startResult</tt> <tt class="py-op">=</tt> <tt class="py-name">startResult</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L217"></a><tt class="py-lineno"> 217</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosStart()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStart"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosStart" class="py-name" href="#" onclick="return doclink('link-44', 'onosStart', 'link-44');">onosStart</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L218"></a><tt class="py-lineno"> 218</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosIsUp</tt> <tt class="py-keyword">and</tt> <tt class="py-name">stopResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">startResult</tt> </tt>
-<a name="L219"></a><tt class="py-lineno"> 219</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L220"></a><tt class="py-lineno"> 220</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L221"></a><tt class="py-lineno"> 221</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS service is ready"</tt><tt class="py-op">,</tt> </tt>
-<a name="L222"></a><tt class="py-lineno"> 222</tt> <tt class="py-line"> <tt id="link-45" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-45', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS service did not start properly"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L223"></a><tt class="py-lineno"> 223</tt> <tt class="py-line"> </tt>
-<a name="L224"></a><tt class="py-lineno"> 224</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-46', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start ONOS cli"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L225"></a><tt class="py-lineno"> 225</tt> <tt class="py-line"> <tt class="py-name">cliResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L226"></a><tt class="py-lineno"> 226</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L227"></a><tt class="py-lineno"> 227</tt> <tt class="py-line"> <tt class="py-name">cliResult</tt> <tt class="py-op">=</tt> <tt class="py-name">cliResult</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L228"></a><tt class="py-lineno"> 228</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#startOnosCli"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli" class="py-name" href="#" onclick="return doclink('link-47', 'startOnosCli', 'link-47');">startOnosCli</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L229"></a><tt class="py-lineno"> 229</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">cliResult</tt> </tt>
-<a name="L230"></a><tt class="py-lineno"> 230</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L231"></a><tt class="py-lineno"> 231</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L232"></a><tt class="py-lineno"> 232</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully start ONOS cli"</tt><tt class="py-op">,</tt> </tt>
-<a name="L233"></a><tt class="py-lineno"> 233</tt> <tt class="py-line"> <tt id="link-48" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-48', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to start ONOS cli"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L234"></a><tt class="py-lineno"> 234</tt> <tt class="py-line"> </tt>
-<a name="L235"></a><tt class="py-lineno"> 235</tt> <tt class="py-line"> <tt class="py-comment"># Remove the first element in main.scale list</tt> </tt>
-<a name="L236"></a><tt class="py-lineno"> 236</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">scale</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L237"></a><tt class="py-lineno"> 237</tt> <tt class="py-line"> </tt>
-<a name="FUNCintent.CASE8"></a><div id="FUNCintent.CASE8-def"><a name="L238"></a><tt class="py-lineno"> 238</tt> <a class="py-toggle" href="#" id="FUNCintent.CASE8-toggle" onclick="return toggle('FUNCintent.CASE8');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE8">CASE8</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FUNCintent.CASE8-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="FUNCintent.CASE8-expanded"><a name="L239"></a><tt class="py-lineno"> 239</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L240"></a><tt class="py-lineno"> 240</tt> <tt class="py-line"><tt class="py-docstring"> Compare Topo</tt> </tt>
-<a name="L241"></a><tt class="py-lineno"> 241</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L242"></a><tt class="py-lineno"> 242</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L243"></a><tt class="py-lineno"> 243</tt> <tt class="py-line"> </tt>
-<a name="L244"></a><tt class="py-lineno"> 244</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-49', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Compare ONOS Topology view to Mininet topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L245"></a><tt class="py-lineno"> 245</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Compare topology elements between Mininet"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L246"></a><tt class="py-lineno"> 246</tt> <tt class="py-line"> <tt class="py-string">" and ONOS"</tt> </tt>
-<a name="L247"></a><tt class="py-lineno"> 247</tt> <tt class="py-line"> </tt>
-<a name="L248"></a><tt class="py-lineno"> 248</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-50', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Gathering topology information"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L249"></a><tt class="py-lineno"> 249</tt> <tt class="py-line"> <tt class="py-comment"># TODO: add a paramaterized sleep here</tt> </tt>
-<a name="L250"></a><tt class="py-lineno"> 250</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L251"></a><tt class="py-lineno"> 251</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L252"></a><tt class="py-lineno"> 252</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L253"></a><tt class="py-lineno"> 253</tt> <tt class="py-line"> <tt id="link-51" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#devices"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-51', 'devices', 'link-51');">devices</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">topo</tt><tt class="py-op">.</tt><tt class="py-name">getAllDevices</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt> <tt class="py-op">)</tt> </tt>
-<a name="L254"></a><tt class="py-lineno"> 254</tt> <tt class="py-line"> <tt id="link-52" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#hosts,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#hosts"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-52', 'hosts', 'link-52');">hosts</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">topo</tt><tt class="py-op">.</tt><tt class="py-name">getAllHosts</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt> <tt class="py-op">)</tt> </tt>
-<a name="L255"></a><tt class="py-lineno"> 255</tt> <tt class="py-line"> <tt id="link-53" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#ports"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-53', 'ports', 'link-53');">ports</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">topo</tt><tt class="py-op">.</tt><tt class="py-name">getAllPorts</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt> <tt class="py-op">)</tt> </tt>
-<a name="L256"></a><tt class="py-lineno"> 256</tt> <tt class="py-line"> <tt id="link-54" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#links,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#links"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-54', 'links', 'link-54');">links</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">topo</tt><tt class="py-op">.</tt><tt class="py-name">getAllLinks</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt> <tt class="py-op">)</tt> </tt>
-<a name="L257"></a><tt class="py-lineno"> 257</tt> <tt class="py-line"> <tt id="link-55" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#clusters"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-55', 'clusters', 'link-55');">clusters</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">topo</tt><tt class="py-op">.</tt><tt class="py-name">getAllClusters</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt> <tt class="py-op">)</tt> </tt>
-<a name="L258"></a><tt class="py-lineno"> 258</tt> <tt class="py-line"> </tt>
-<a name="L259"></a><tt class="py-lineno"> 259</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitches()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitches"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitches" class="py-name" href="#" onclick="return doclink('link-56', 'getSwitches', 'link-56');">getSwitches</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno"> 260</tt> <tt class="py-line"> <tt class="py-name">mnLinks</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getLinks()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getLinks"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getLinks" class="py-name" href="#" onclick="return doclink('link-57', 'getLinks', 'link-57');">getLinks</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno"> 261</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getHosts"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts" class="py-name" href="#" onclick="return doclink('link-58', 'getHosts', 'link-58');">getHosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno"> 262</tt> <tt class="py-line"> </tt>
-<a name="L263"></a><tt class="py-lineno"> 263</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-59', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Conmparing MN topology to ONOS topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L264"></a><tt class="py-lineno"> 264</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-60" class="py-name" targets="Package TestON.drivers.common.api.controller=TestON.drivers.common.api.controller-module.html"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-60', 'controller', 'link-60');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L265"></a><tt class="py-lineno"> 265</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-61" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-61', 'controller', 'link-60');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L266"></a><tt class="py-lineno"> 266</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-62" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-62', 'devices', 'link-51');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-63" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-63', 'controller', 'link-60');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt id="link-64" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-64', 'ports', 'link-53');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-65" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-65', 'controller', 'link-60');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L267"></a><tt class="py-lineno"> 267</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-66" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-66', 'devices', 'link-51');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-67" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-67', 'controller', 'link-60');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L268"></a><tt class="py-lineno"> 268</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-68" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-68', 'ports', 'link-53');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-69" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-69', 'controller', 'link-60');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L269"></a><tt class="py-lineno"> 269</tt> <tt class="py-line"> </tt>
-<a name="L270"></a><tt class="py-lineno"> 270</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareSwitches()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareSwitches"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareSwitches" class="py-name" href="#" onclick="return doclink('link-70', 'compareSwitches', 'link-70');">compareSwitches</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L271"></a><tt class="py-lineno"> 271</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> </tt>
-<a name="L272"></a><tt class="py-lineno"> 272</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-71" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-71', 'devices', 'link-51');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-72" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-72', 'controller', 'link-60');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L273"></a><tt class="py-lineno"> 273</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-73" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-73', 'ports', 'link-53');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-74" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-74', 'controller', 'link-60');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L274"></a><tt class="py-lineno"> 274</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L275"></a><tt class="py-lineno"> 275</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L276"></a><tt class="py-lineno"> 276</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L277"></a><tt class="py-lineno"> 277</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentDevicesResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L278"></a><tt class="py-lineno"> 278</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L279"></a><tt class="py-lineno"> 279</tt> <tt class="py-line"> <tt class="py-string">" Switches view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L280"></a><tt class="py-lineno"> 280</tt> <tt class="py-line"> <tt id="link-75" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-75', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L281"></a><tt class="py-lineno"> 281</tt> <tt class="py-line"> <tt class="py-string">" Switches view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L282"></a><tt class="py-lineno"> 282</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">devicesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentDevicesResult</tt> </tt>
-<a name="L283"></a><tt class="py-lineno"> 283</tt> <tt class="py-line"> </tt>
-<a name="L284"></a><tt class="py-lineno"> 284</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-76" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-76', 'links', 'link-54');">links</a></tt><tt class="py-op">[</tt> <tt id="link-77" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-77', 'controller', 'link-60');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-78" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-78', 'links', 'link-54');">links</a></tt><tt class="py-op">[</tt> <tt id="link-79" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-79', 'controller', 'link-60');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L285"></a><tt class="py-lineno"> 285</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareLinks()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareLinks"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareLinks" class="py-name" href="#" onclick="return doclink('link-80', 'compareLinks', 'link-80');">compareLinks</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L286"></a><tt class="py-lineno"> 286</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> <tt class="py-name">mnLinks</tt><tt class="py-op">,</tt> </tt>
-<a name="L287"></a><tt class="py-lineno"> 287</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-81" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-81', 'links', 'link-54');">links</a></tt><tt class="py-op">[</tt> <tt id="link-82" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-82', 'controller', 'link-60');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L288"></a><tt class="py-lineno"> 288</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L289"></a><tt class="py-lineno"> 289</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L290"></a><tt class="py-lineno"> 290</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L291"></a><tt class="py-lineno"> 291</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentLinksResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L292"></a><tt class="py-lineno"> 292</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L293"></a><tt class="py-lineno"> 293</tt> <tt class="py-line"> <tt class="py-string">" links view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L294"></a><tt class="py-lineno"> 294</tt> <tt class="py-line"> <tt id="link-83" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-83', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L295"></a><tt class="py-lineno"> 295</tt> <tt class="py-line"> <tt class="py-string">" links view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L296"></a><tt class="py-lineno"> 296</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">linksResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentLinksResult</tt> </tt>
-<a name="L297"></a><tt class="py-lineno"> 297</tt> <tt class="py-line"> </tt>
-<a name="L298"></a><tt class="py-lineno"> 298</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-84" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-84', 'hosts', 'link-52');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-85" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-85', 'controller', 'link-60');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-86" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-86', 'hosts', 'link-52');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-87" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-87', 'controller', 'link-60');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L299"></a><tt class="py-lineno"> 299</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareHosts()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareHosts"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareHosts" class="py-name" href="#" onclick="return doclink('link-88', 'compareHosts', 'link-88');">compareHosts</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L300"></a><tt class="py-lineno"> 300</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt><tt class="py-op">,</tt> </tt>
-<a name="L301"></a><tt class="py-lineno"> 301</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-89" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-89', 'hosts', 'link-52');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-90" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-90', 'controller', 'link-60');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L302"></a><tt class="py-lineno"> 302</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L303"></a><tt class="py-lineno"> 303</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L304"></a><tt class="py-lineno"> 304</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L305"></a><tt class="py-lineno"> 305</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentHostsResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L306"></a><tt class="py-lineno"> 306</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L307"></a><tt class="py-lineno"> 307</tt> <tt class="py-line"> <tt class="py-string">" hosts exist in Mininet"</tt><tt class="py-op">,</tt> </tt>
-<a name="L308"></a><tt class="py-lineno"> 308</tt> <tt class="py-line"> <tt id="link-91" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-91', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L309"></a><tt class="py-lineno"> 309</tt> <tt class="py-line"> <tt class="py-string">" hosts don't match Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L310"></a><tt class="py-lineno"> 310</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentHostsResult</tt> </tt>
-<a name="L311"></a><tt class="py-lineno"> 311</tt> <tt class="py-line"> <tt class="py-name">topoResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">linksResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">devicesResults</tt> </tt>
-<a name="L312"></a><tt class="py-lineno"> 312</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L313"></a><tt class="py-lineno"> 313</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">topoResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L314"></a><tt class="py-lineno"> 314</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS correctly discovered the topology"</tt><tt class="py-op">,</tt> </tt>
-<a name="L315"></a><tt class="py-lineno"> 315</tt> <tt class="py-line"> <tt id="link-92" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-92', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS incorrectly discovered the topology"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L316"></a><tt class="py-lineno"> 316</tt> <tt class="py-line"> </tt>
-<a name="L317"></a><tt class="py-lineno"> 317</tt> <tt class="py-line"> </tt>
-<a name="FUNCintent.CASE9"></a><div id="FUNCintent.CASE9-def"><a name="L318"></a><tt class="py-lineno"> 318</tt> <a class="py-toggle" href="#" id="FUNCintent.CASE9-toggle" onclick="return toggle('FUNCintent.CASE9');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE9">CASE9</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FUNCintent.CASE9-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="FUNCintent.CASE9-expanded"><a name="L319"></a><tt class="py-lineno"> 319</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L320"></a><tt class="py-lineno"> 320</tt> <tt class="py-line"><tt class="py-docstring"> Report errors/warnings/exceptions</tt> </tt>
-<a name="L321"></a><tt class="py-lineno"> 321</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L322"></a><tt class="py-lineno"> 322</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-93', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testName</tt> <tt class="py-op">+</tt> <tt class="py-string">" Report - "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L323"></a><tt class="py-lineno"> 323</tt> <tt class="py-line"> <tt class="py-string">" NODE(S) - OF "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">OFProtocol</tt> <tt class="py-op">)</tt> </tt>
-<a name="L324"></a><tt class="py-lineno"> 324</tt> <tt class="py-line"> </tt>
-<a name="L325"></a><tt class="py-lineno"> 325</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.logReport()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#logReport"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-94', 'logReport', 'link-94');">logReport</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L326"></a><tt class="py-lineno"> 326</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">"INFO"</tt><tt class="py-op">,</tt> </tt>
-<a name="L327"></a><tt class="py-lineno"> 327</tt> <tt class="py-line"> <tt class="py-string">"FOLLOWER"</tt><tt class="py-op">,</tt> </tt>
-<a name="L328"></a><tt class="py-lineno"> 328</tt> <tt class="py-line"> <tt class="py-string">"WARN"</tt><tt class="py-op">,</tt> </tt>
-<a name="L329"></a><tt class="py-lineno"> 329</tt> <tt class="py-line"> <tt class="py-string">"flow"</tt><tt class="py-op">,</tt> </tt>
-<a name="L330"></a><tt class="py-lineno"> 330</tt> <tt class="py-line"> <tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> </tt>
-<a name="L331"></a><tt class="py-lineno"> 331</tt> <tt class="py-line"> <tt class="py-string">"Except"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L332"></a><tt class="py-lineno"> 332</tt> <tt class="py-line"> <tt class="py-string">"s"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L333"></a><tt class="py-lineno"> 333</tt> <tt class="py-line"> </tt>
-<a name="L334"></a><tt class="py-lineno"> 334</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-95', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ERROR report: \n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L335"></a><tt class="py-lineno"> 335</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L336"></a><tt class="py-lineno"> 336</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-96', 'logReport', 'link-94');">logReport</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L337"></a><tt class="py-lineno"> 337</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">"ERROR"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L338"></a><tt class="py-lineno"> 338</tt> <tt class="py-line"> <tt class="py-string">"d"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L339"></a><tt class="py-lineno"> 339</tt> <tt class="py-line"> </tt>
-<a name="L340"></a><tt class="py-lineno"> 340</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-97', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"EXCEPTIONS report: \n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L341"></a><tt class="py-lineno"> 341</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L342"></a><tt class="py-lineno"> 342</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-98', 'logReport', 'link-94');">logReport</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L343"></a><tt class="py-lineno"> 343</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">"Except"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L344"></a><tt class="py-lineno"> 344</tt> <tt class="py-line"> <tt class="py-string">"d"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L345"></a><tt class="py-lineno"> 345</tt> <tt class="py-line"> </tt>
-<a name="L346"></a><tt class="py-lineno"> 346</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-99', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"WARNING report: \n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L347"></a><tt class="py-lineno"> 347</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L348"></a><tt class="py-lineno"> 348</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-100', 'logReport', 'link-94');">logReport</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L349"></a><tt class="py-lineno"> 349</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">"WARN"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L350"></a><tt class="py-lineno"> 350</tt> <tt class="py-line"> <tt class="py-string">"d"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L351"></a><tt class="py-lineno"> 351</tt> <tt class="py-line"> </tt>
-<a name="FUNCintent.CASE10"></a><div id="FUNCintent.CASE10-def"><a name="L352"></a><tt class="py-lineno"> 352</tt> <a class="py-toggle" href="#" id="FUNCintent.CASE10-toggle" onclick="return toggle('FUNCintent.CASE10');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE10">CASE10</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FUNCintent.CASE10-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="FUNCintent.CASE10-expanded"><a name="L353"></a><tt class="py-lineno"> 353</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L354"></a><tt class="py-lineno"> 354</tt> <tt class="py-line"><tt class="py-docstring"> Start Mininet topology with OF 1.0 switches</tt> </tt>
-<a name="L355"></a><tt class="py-lineno"> 355</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L356"></a><tt class="py-lineno"> 356</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">OFProtocol</tt> <tt class="py-op">=</tt> <tt class="py-string">"1.0"</tt> </tt>
-<a name="L357"></a><tt class="py-lineno"> 357</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-101', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Start Mininet topology with OF 1.0 switches"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L358"></a><tt class="py-lineno"> 358</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-102', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start Mininet topology with OF 1.0 switches"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L359"></a><tt class="py-lineno"> 359</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Start mininet topology with OF 1.0 "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L360"></a><tt class="py-lineno"> 360</tt> <tt class="py-line"> <tt class="py-string">"switches to test intents, exits out if "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L361"></a><tt class="py-lineno"> 361</tt> <tt class="py-line"> <tt class="py-string">"topology did not start correctly"</tt> </tt>
-<a name="L362"></a><tt class="py-lineno"> 362</tt> <tt class="py-line"> </tt>
-<a name="L363"></a><tt class="py-lineno"> 363</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-103', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting Mininet topology with OF 1.0 switches"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L364"></a><tt class="py-lineno"> 364</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-string">"--switch ovs,protocols=OpenFlow10"</tt> </tt>
-<a name="L365"></a><tt class="py-lineno"> 365</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet" class="py-name" href="#" onclick="return doclink('link-104', 'startNet', 'link-104');">startNet</a></tt><tt class="py-op">(</tt> <tt class="py-name">topoFile</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">dependencyPath</tt> <tt class="py-op">+</tt> </tt>
-<a name="L366"></a><tt class="py-lineno"> 366</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-105', 'topology', 'link-4');">topology</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L367"></a><tt class="py-lineno"> 367</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-name">args</tt> <tt class="py-op">)</tt> </tt>
-<a name="L368"></a><tt class="py-lineno"> 368</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">topoResult</tt> </tt>
-<a name="L369"></a><tt class="py-lineno"> 369</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L370"></a><tt class="py-lineno"> 370</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L371"></a><tt class="py-lineno"> 371</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully loaded topology"</tt><tt class="py-op">,</tt> </tt>
-<a name="L372"></a><tt class="py-lineno"> 372</tt> <tt class="py-line"> <tt id="link-106" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-106', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to load topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L373"></a><tt class="py-lineno"> 373</tt> <tt class="py-line"> <tt class="py-comment"># Exit if topology did not load properly</tt> </tt>
-<a name="L374"></a><tt class="py-lineno"> 374</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">topoResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L375"></a><tt class="py-lineno"> 375</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-107', 'cleanup', 'link-12');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L376"></a><tt class="py-lineno"> 376</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-108', 'exit', 'link-13');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L377"></a><tt class="py-lineno"> 377</tt> <tt class="py-line"> </tt>
-<a name="FUNCintent.CASE11"></a><div id="FUNCintent.CASE11-def"><a name="L378"></a><tt class="py-lineno"> 378</tt> <a class="py-toggle" href="#" id="FUNCintent.CASE11-toggle" onclick="return toggle('FUNCintent.CASE11');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE11">CASE11</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FUNCintent.CASE11-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="FUNCintent.CASE11-expanded"><a name="L379"></a><tt class="py-lineno"> 379</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L380"></a><tt class="py-lineno"> 380</tt> <tt class="py-line"><tt class="py-docstring"> Start Mininet topology with OF 1.3 switches</tt> </tt>
-<a name="L381"></a><tt class="py-lineno"> 381</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L382"></a><tt class="py-lineno"> 382</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">OFProtocol</tt> <tt class="py-op">=</tt> <tt class="py-string">"1.3"</tt> </tt>
-<a name="L383"></a><tt class="py-lineno"> 383</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-109', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Start Mininet topology with OF 1.3 switches"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L384"></a><tt class="py-lineno"> 384</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-110', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start Mininet topology with OF 1.3 switches"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L385"></a><tt class="py-lineno"> 385</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Start mininet topology with OF 1.3 "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L386"></a><tt class="py-lineno"> 386</tt> <tt class="py-line"> <tt class="py-string">"switches to test intents, exits out if "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L387"></a><tt class="py-lineno"> 387</tt> <tt class="py-line"> <tt class="py-string">"topology did not start correctly"</tt> </tt>
-<a name="L388"></a><tt class="py-lineno"> 388</tt> <tt class="py-line"> </tt>
-<a name="L389"></a><tt class="py-lineno"> 389</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-111', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting Mininet topology with OF 1.3 switches"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L390"></a><tt class="py-lineno"> 390</tt> <tt class="py-line"> <tt class="py-name">args</tt> <tt class="py-op">=</tt> <tt class="py-string">"--switch ovs,protocols=OpenFlow13"</tt> </tt>
-<a name="L391"></a><tt class="py-lineno"> 391</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet" class="py-name" href="#" onclick="return doclink('link-112', 'startNet', 'link-104');">startNet</a></tt><tt class="py-op">(</tt> <tt class="py-name">topoFile</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">dependencyPath</tt> <tt class="py-op">+</tt> </tt>
-<a name="L392"></a><tt class="py-lineno"> 392</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-113', 'topology', 'link-4');">topology</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L393"></a><tt class="py-lineno"> 393</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-name">args</tt> <tt class="py-op">)</tt> </tt>
-<a name="L394"></a><tt class="py-lineno"> 394</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">topoResult</tt> </tt>
-<a name="L395"></a><tt class="py-lineno"> 395</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L396"></a><tt class="py-lineno"> 396</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L397"></a><tt class="py-lineno"> 397</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully loaded topology"</tt><tt class="py-op">,</tt> </tt>
-<a name="L398"></a><tt class="py-lineno"> 398</tt> <tt class="py-line"> <tt id="link-114" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-114', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to load topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L399"></a><tt class="py-lineno"> 399</tt> <tt class="py-line"> <tt class="py-comment"># Exit if topology did not load properly</tt> </tt>
-<a name="L400"></a><tt class="py-lineno"> 400</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">topoResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L401"></a><tt class="py-lineno"> 401</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-115" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-115', 'cleanup', 'link-12');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L402"></a><tt class="py-lineno"> 402</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-116', 'exit', 'link-13');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L403"></a><tt class="py-lineno"> 403</tt> <tt class="py-line"> </tt>
-<a name="FUNCintent.CASE12"></a><div id="FUNCintent.CASE12-def"><a name="L404"></a><tt class="py-lineno"> 404</tt> <a class="py-toggle" href="#" id="FUNCintent.CASE12-toggle" onclick="return toggle('FUNCintent.CASE12');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE12">CASE12</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FUNCintent.CASE12-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="FUNCintent.CASE12-expanded"><a name="L405"></a><tt class="py-lineno"> 405</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L406"></a><tt class="py-lineno"> 406</tt> <tt class="py-line"><tt class="py-docstring"> Assign mastership to controllers</tt> </tt>
-<a name="L407"></a><tt class="py-lineno"> 407</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L408"></a><tt class="py-lineno"> 408</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L409"></a><tt class="py-lineno"> 409</tt> <tt class="py-line"> </tt>
-<a name="L410"></a><tt class="py-lineno"> 410</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-117', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assign switches to controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L411"></a><tt class="py-lineno"> 411</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-118', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assigning switches to controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L412"></a><tt class="py-lineno"> 412</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Assign OF "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">OFProtocol</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L413"></a><tt class="py-lineno"> 413</tt> <tt class="py-line"> <tt class="py-string">" switches to ONOS nodes"</tt> </tt>
-<a name="L414"></a><tt class="py-lineno"> 414</tt> <tt class="py-line"> </tt>
-<a name="L415"></a><tt class="py-lineno"> 415</tt> <tt class="py-line"> <tt class="py-name">assignResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L416"></a><tt class="py-lineno"> 416</tt> <tt class="py-line"> <tt class="py-name">switchList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L417"></a><tt class="py-lineno"> 417</tt> <tt class="py-line"> </tt>
-<a name="L418"></a><tt class="py-lineno"> 418</tt> <tt class="py-line"> <tt class="py-comment"># Creates a list switch name, use getSwitch() function later...</tt> </tt>
-<a name="L419"></a><tt class="py-lineno"> 419</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numSwitch</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L420"></a><tt class="py-lineno"> 420</tt> <tt class="py-line"> <tt class="py-name">switchList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">'s'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L421"></a><tt class="py-lineno"> 421</tt> <tt class="py-line"> </tt>
-<a name="L422"></a><tt class="py-lineno"> 422</tt> <tt class="py-line"> <tt class="py-name">tempONOSip</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L423"></a><tt class="py-lineno"> 423</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L424"></a><tt class="py-lineno"> 424</tt> <tt class="py-line"> <tt class="py-name">tempONOSip</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L425"></a><tt class="py-lineno"> 425</tt> <tt class="py-line"> </tt>
-<a name="L426"></a><tt class="py-lineno"> 426</tt> <tt class="py-line"> <tt class="py-name">assignResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-119" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignSwController"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController" class="py-name" href="#" onclick="return doclink('link-119', 'assignSwController', 'link-119');">assignSwController</a></tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt><tt class="py-op">=</tt><tt class="py-name">switchList</tt><tt class="py-op">,</tt> </tt>
-<a name="L427"></a><tt class="py-lineno"> 427</tt> <tt class="py-line"> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">tempONOSip</tt><tt class="py-op">,</tt> </tt>
-<a name="L428"></a><tt class="py-lineno"> 428</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-string">'6633'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L429"></a><tt class="py-lineno"> 429</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">assignResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L430"></a><tt class="py-lineno"> 430</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-120" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-120', 'cleanup', 'link-12');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L431"></a><tt class="py-lineno"> 431</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-121" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-121', 'exit', 'link-13');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L432"></a><tt class="py-lineno"> 432</tt> <tt class="py-line"> </tt>
-<a name="L433"></a><tt class="py-lineno"> 433</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numSwitch</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L434"></a><tt class="py-lineno"> 434</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwController()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwController"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwController" class="py-name" href="#" onclick="return doclink('link-122', 'getSwController', 'link-122');">getSwController</a></tt><tt class="py-op">(</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L435"></a><tt class="py-lineno"> 435</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt> <tt class="py-string">"Response is "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L436"></a><tt class="py-lineno"> 436</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"tcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L437"></a><tt class="py-lineno"> 437</tt> <tt class="py-line"> <tt class="py-name">assignResult</tt> <tt class="py-op">=</tt> <tt class="py-name">assignResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L438"></a><tt class="py-lineno"> 438</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L439"></a><tt class="py-lineno"> 439</tt> <tt class="py-line"> <tt class="py-name">assignResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L440"></a><tt class="py-lineno"> 440</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">assignResult</tt> </tt>
-<a name="L441"></a><tt class="py-lineno"> 441</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L442"></a><tt class="py-lineno"> 442</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L443"></a><tt class="py-lineno"> 443</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully assigned switches"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L444"></a><tt class="py-lineno"> 444</tt> <tt class="py-line"> <tt class="py-string">"to controller"</tt><tt class="py-op">,</tt> </tt>
-<a name="L445"></a><tt class="py-lineno"> 445</tt> <tt class="py-line"> <tt id="link-123" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-123', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to assign switches to "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L446"></a><tt class="py-lineno"> 446</tt> <tt class="py-line"> <tt class="py-string">"controller"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="FUNCintent.CASE13"></a><div id="FUNCintent.CASE13-def"><a name="L447"></a><tt class="py-lineno"> 447</tt> <a class="py-toggle" href="#" id="FUNCintent.CASE13-toggle" onclick="return toggle('FUNCintent.CASE13');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE13">CASE13</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FUNCintent.CASE13-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="FUNCintent.CASE13-expanded"><a name="L448"></a><tt class="py-lineno"> 448</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L449"></a><tt class="py-lineno"> 449</tt> <tt class="py-line"><tt class="py-docstring"> Discover all hosts and store its data to a dictionary</tt> </tt>
-<a name="L450"></a><tt class="py-lineno"> 450</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L451"></a><tt class="py-lineno"> 451</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-124" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-124', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Discover all hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L452"></a><tt class="py-lineno"> 452</tt> <tt class="py-line"> </tt>
-<a name="L453"></a><tt class="py-lineno"> 453</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L454"></a><tt class="py-lineno"> 454</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-125', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Discover all hosts using pingall "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L455"></a><tt class="py-lineno"> 455</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">getHostsData</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt> <tt class="py-op">)</tt> </tt>
-<a name="L456"></a><tt class="py-lineno"> 456</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L457"></a><tt class="py-lineno"> 457</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L458"></a><tt class="py-lineno"> 458</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully discovered hosts"</tt><tt class="py-op">,</tt> </tt>
-<a name="L459"></a><tt class="py-lineno"> 459</tt> <tt class="py-line"> <tt id="link-126" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-126', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to discover hosts"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L460"></a><tt class="py-lineno"> 460</tt> <tt class="py-line"> </tt>
-<a name="FUNCintent.CASE14"></a><div id="FUNCintent.CASE14-def"><a name="L461"></a><tt class="py-lineno"> 461</tt> <a class="py-toggle" href="#" id="FUNCintent.CASE14-toggle" onclick="return toggle('FUNCintent.CASE14');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE14">CASE14</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FUNCintent.CASE14-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="FUNCintent.CASE14-expanded"><a name="L462"></a><tt class="py-lineno"> 462</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L463"></a><tt class="py-lineno"> 463</tt> <tt class="py-line"><tt class="py-docstring"> Stop mininet</tt> </tt>
-<a name="L464"></a><tt class="py-lineno"> 464</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L465"></a><tt class="py-lineno"> 465</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-127', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Stop Mininet topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L466"></a><tt class="py-lineno"> 466</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-128', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Stop Mininet topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L467"></a><tt class="py-lineno"> 467</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Stopping the current mininet topology "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L468"></a><tt class="py-lineno"> 468</tt> <tt class="py-line"> <tt class="py-string">"to start up fresh"</tt> </tt>
-<a name="L469"></a><tt class="py-lineno"> 469</tt> <tt class="py-line"> </tt>
-<a name="L470"></a><tt class="py-lineno"> 470</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-129', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Stopping Mininet Topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L471"></a><tt class="py-lineno"> 471</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-130" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet" class="py-name" href="#" onclick="return doclink('link-130', 'stopNet', 'link-130');">stopNet</a></tt><tt class="py-op">(</tt> <tt class="py-op">)</tt> </tt>
-<a name="L472"></a><tt class="py-lineno"> 472</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">topoResult</tt> </tt>
-<a name="L473"></a><tt class="py-lineno"> 473</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L474"></a><tt class="py-lineno"> 474</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L475"></a><tt class="py-lineno"> 475</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully stop mininet"</tt><tt class="py-op">,</tt> </tt>
-<a name="L476"></a><tt class="py-lineno"> 476</tt> <tt class="py-line"> <tt id="link-131" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-131', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to stop mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L477"></a><tt class="py-lineno"> 477</tt> <tt class="py-line"> <tt class="py-comment"># Exit if topology did not load properly</tt> </tt>
-<a name="L478"></a><tt class="py-lineno"> 478</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">topoResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L479"></a><tt class="py-lineno"> 479</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-132', 'cleanup', 'link-12');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L480"></a><tt class="py-lineno"> 480</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-133', 'exit', 'link-13');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L481"></a><tt class="py-lineno"> 481</tt> <tt class="py-line"> </tt>
-<a name="FUNCintent.CASE1000"></a><div id="FUNCintent.CASE1000-def"><a name="L482"></a><tt class="py-lineno"> 482</tt> <a class="py-toggle" href="#" id="FUNCintent.CASE1000-toggle" onclick="return toggle('FUNCintent.CASE1000');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE1000">CASE1000</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FUNCintent.CASE1000-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="FUNCintent.CASE1000-expanded"><a name="L483"></a><tt class="py-lineno"> 483</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L484"></a><tt class="py-lineno"> 484</tt> <tt class="py-line"><tt class="py-docstring"> Add host intents between 2 host:</tt> </tt>
-<a name="L485"></a><tt class="py-lineno"> 485</tt> <tt class="py-line"><tt class="py-docstring"> - Discover hosts</tt> </tt>
-<a name="L486"></a><tt class="py-lineno"> 486</tt> <tt class="py-line"><tt class="py-docstring"> - Add host intents</tt> </tt>
-<a name="L487"></a><tt class="py-lineno"> 487</tt> <tt class="py-line"><tt class="py-docstring"> - Check intents</tt> </tt>
-<a name="L488"></a><tt class="py-lineno"> 488</tt> <tt class="py-line"><tt class="py-docstring"> - Verify flows</tt> </tt>
-<a name="L489"></a><tt class="py-lineno"> 489</tt> <tt class="py-line"><tt class="py-docstring"> - Ping hosts</tt> </tt>
-<a name="L490"></a><tt class="py-lineno"> 490</tt> <tt class="py-line"><tt class="py-docstring"> - Reroute</tt> </tt>
-<a name="L491"></a><tt class="py-lineno"> 491</tt> <tt class="py-line"><tt class="py-docstring"> - Link down</tt> </tt>
-<a name="L492"></a><tt class="py-lineno"> 492</tt> <tt class="py-line"><tt class="py-docstring"> - Verify flows</tt> </tt>
-<a name="L493"></a><tt class="py-lineno"> 493</tt> <tt class="py-line"><tt class="py-docstring"> - Check topology</tt> </tt>
-<a name="L494"></a><tt class="py-lineno"> 494</tt> <tt class="py-line"><tt class="py-docstring"> - Ping hosts</tt> </tt>
-<a name="L495"></a><tt class="py-lineno"> 495</tt> <tt class="py-line"><tt class="py-docstring"> - Link up</tt> </tt>
-<a name="L496"></a><tt class="py-lineno"> 496</tt> <tt class="py-line"><tt class="py-docstring"> - Verify flows</tt> </tt>
-<a name="L497"></a><tt class="py-lineno"> 497</tt> <tt class="py-line"><tt class="py-docstring"> - Check topology</tt> </tt>
-<a name="L498"></a><tt class="py-lineno"> 498</tt> <tt class="py-line"><tt class="py-docstring"> - Ping hosts</tt> </tt>
-<a name="L499"></a><tt class="py-lineno"> 499</tt> <tt class="py-line"><tt class="py-docstring"> - Remove intents</tt> </tt>
-<a name="L500"></a><tt class="py-lineno"> 500</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L501"></a><tt class="py-lineno"> 501</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L502"></a><tt class="py-lineno"> 502</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L503"></a><tt class="py-lineno"> 503</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L504"></a><tt class="py-lineno"> 504</tt> <tt class="py-line"> </tt>
-<a name="L505"></a><tt class="py-lineno"> 505</tt> <tt class="py-line"> <tt class="py-comment"># Assert variables - These variable's name|format must be followed</tt> </tt>
-<a name="L506"></a><tt class="py-lineno"> 506</tt> <tt class="py-line"> <tt class="py-comment"># if you want to use the wrapper function</tt> </tt>
-<a name="L507"></a><tt class="py-lineno"> 507</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"There is no main"</tt> </tt>
-<a name="L508"></a><tt class="py-lineno"> 508</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"There is no main.CLIs"</tt> </tt>
-<a name="L509"></a><tt class="py-lineno"> 509</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">,</tt> <tt class="py-string">"Mininet handle should be named Mininet1"</tt> </tt>
-<a name="L510"></a><tt class="py-lineno"> 510</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numSwitch</tt><tt class="py-op">,</tt> <tt class="py-string">"Placed the total number of switch topology in \</tt> </tt>
-<a name="L511"></a><tt class="py-lineno"> 511</tt> <tt class="py-line"><tt class="py-string"> main.numSwitch"</tt> </tt>
-<a name="L512"></a><tt class="py-lineno"> 512</tt> <tt class="py-line"> </tt>
-<a name="L513"></a><tt class="py-lineno"> 513</tt> <tt class="py-line"> <tt class="py-name">intentLeadersOld</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-134" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaderCandidates()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#leaderCandidates"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaderCandidates" class="py-name" href="#" onclick="return doclink('link-134', 'leaderCandidates', 'link-134');">leaderCandidates</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L514"></a><tt class="py-lineno"> 514</tt> <tt class="py-line"> </tt>
-<a name="L515"></a><tt class="py-lineno"> 515</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testName</tt> <tt class="py-op">=</tt> <tt class="py-string">"Host Intents"</tt> </tt>
-<a name="L516"></a><tt class="py-lineno"> 516</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-135', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testName</tt> <tt class="py-op">+</tt> <tt class="py-string">" Test - "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L517"></a><tt class="py-lineno"> 517</tt> <tt class="py-line"> <tt class="py-string">" NODE(S) - OF "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">OFProtocol</tt> <tt class="py-op">)</tt> </tt>
-<a name="L518"></a><tt class="py-lineno"> 518</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"This test case tests Host intents using "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L519"></a><tt class="py-lineno"> 519</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" node(s) cluster;\n"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L520"></a><tt class="py-lineno"> 520</tt> <tt class="py-line"> <tt class="py-string">"Different type of hosts will be tested in "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L521"></a><tt class="py-lineno"> 521</tt> <tt class="py-line"> <tt class="py-string">"each step such as IPV4, Dual stack, VLAN "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L522"></a><tt class="py-lineno"> 522</tt> <tt class="py-line"> <tt class="py-string">"etc;\nThe test will use OF "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">OFProtocol</tt>\ </tt>
-<a name="L523"></a><tt class="py-lineno"> 523</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" OVS running in Mininet"</tt> </tt>
-<a name="L524"></a><tt class="py-lineno"> 524</tt> <tt class="py-line"> </tt>
-<a name="L525"></a><tt class="py-lineno"> 525</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-136" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-136', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"IPV4: Add host intents between h1 and h9"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L526"></a><tt class="py-lineno"> 526</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L527"></a><tt class="py-lineno"> 527</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">hostIntent</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L528"></a><tt class="py-lineno"> 528</tt> <tt class="py-line"> <tt class="py-name">onosNode</tt><tt class="py-op">=</tt><tt class="py-string">'0'</tt><tt class="py-op">,</tt> </tt>
-<a name="L529"></a><tt class="py-lineno"> 529</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">'IPV4'</tt><tt class="py-op">,</tt> </tt>
-<a name="L530"></a><tt class="py-lineno"> 530</tt> <tt class="py-line"> <tt class="py-name">host1</tt><tt class="py-op">=</tt><tt class="py-string">'h1'</tt><tt class="py-op">,</tt> </tt>
-<a name="L531"></a><tt class="py-lineno"> 531</tt> <tt class="py-line"> <tt class="py-name">host2</tt><tt class="py-op">=</tt><tt class="py-string">'h9'</tt><tt class="py-op">,</tt> </tt>
-<a name="L532"></a><tt class="py-lineno"> 532</tt> <tt class="py-line"> <tt class="py-name">host1Id</tt><tt class="py-op">=</tt><tt class="py-string">'00:00:00:00:00:01/-1'</tt><tt class="py-op">,</tt> </tt>
-<a name="L533"></a><tt class="py-lineno"> 533</tt> <tt class="py-line"> <tt class="py-name">host2Id</tt><tt class="py-op">=</tt><tt class="py-string">'00:00:00:00:00:09/-1'</tt><tt class="py-op">,</tt> </tt>
-<a name="L534"></a><tt class="py-lineno"> 534</tt> <tt class="py-line"> <tt class="py-name">sw1</tt><tt class="py-op">=</tt><tt class="py-string">'s5'</tt><tt class="py-op">,</tt> </tt>
-<a name="L535"></a><tt class="py-lineno"> 535</tt> <tt class="py-line"> <tt class="py-name">sw2</tt><tt class="py-op">=</tt><tt class="py-string">'s2'</tt><tt class="py-op">,</tt> </tt>
-<a name="L536"></a><tt class="py-lineno"> 536</tt> <tt class="py-line"> <tt class="py-name">expectedLink</tt><tt class="py-op">=</tt><tt class="py-number">18</tt> <tt class="py-op">)</tt> </tt>
-<a name="L537"></a><tt class="py-lineno"> 537</tt> <tt class="py-line"> </tt>
-<a name="L538"></a><tt class="py-lineno"> 538</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L539"></a><tt class="py-lineno"> 539</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L540"></a><tt class="py-lineno"> 540</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4: Host intent test successful "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L541"></a><tt class="py-lineno"> 541</tt> <tt class="py-line"> <tt class="py-string">"between two IPV4 hosts"</tt><tt class="py-op">,</tt> </tt>
-<a name="L542"></a><tt class="py-lineno"> 542</tt> <tt class="py-line"> <tt id="link-137" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-137', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"IPV4: Host intent test failed "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L543"></a><tt class="py-lineno"> 543</tt> <tt class="py-line"> <tt class="py-string">"between two IPV4 hosts"</tt><tt class="py-op">)</tt> </tt>
-<a name="L544"></a><tt class="py-lineno"> 544</tt> <tt class="py-line"> </tt>
-<a name="L545"></a><tt class="py-lineno"> 545</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-138', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"DUALSTACK1: Add host intents between h3 and h11"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L546"></a><tt class="py-lineno"> 546</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L547"></a><tt class="py-lineno"> 547</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">hostIntent</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L548"></a><tt class="py-lineno"> 548</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">'DUALSTACK'</tt><tt class="py-op">,</tt> </tt>
-<a name="L549"></a><tt class="py-lineno"> 549</tt> <tt class="py-line"> <tt class="py-name">host1</tt><tt class="py-op">=</tt><tt class="py-string">'h3'</tt><tt class="py-op">,</tt> </tt>
-<a name="L550"></a><tt class="py-lineno"> 550</tt> <tt class="py-line"> <tt class="py-name">host2</tt><tt class="py-op">=</tt><tt class="py-string">'h11'</tt><tt class="py-op">,</tt> </tt>
-<a name="L551"></a><tt class="py-lineno"> 551</tt> <tt class="py-line"> <tt class="py-name">host1Id</tt><tt class="py-op">=</tt><tt class="py-string">'00:00:00:00:00:03/-1'</tt><tt class="py-op">,</tt> </tt>
-<a name="L552"></a><tt class="py-lineno"> 552</tt> <tt class="py-line"> <tt class="py-name">host2Id</tt><tt class="py-op">=</tt><tt class="py-string">'00:00:00:00:00:0B/-1'</tt><tt class="py-op">,</tt> </tt>
-<a name="L553"></a><tt class="py-lineno"> 553</tt> <tt class="py-line"> <tt class="py-name">sw1</tt><tt class="py-op">=</tt><tt class="py-string">'s5'</tt><tt class="py-op">,</tt> </tt>
-<a name="L554"></a><tt class="py-lineno"> 554</tt> <tt class="py-line"> <tt class="py-name">sw2</tt><tt class="py-op">=</tt><tt class="py-string">'s2'</tt><tt class="py-op">,</tt> </tt>
-<a name="L555"></a><tt class="py-lineno"> 555</tt> <tt class="py-line"> <tt class="py-name">expectedLink</tt><tt class="py-op">=</tt><tt class="py-number">18</tt> <tt class="py-op">)</tt> </tt>
-<a name="L556"></a><tt class="py-lineno"> 556</tt> <tt class="py-line"> </tt>
-<a name="L557"></a><tt class="py-lineno"> 557</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L558"></a><tt class="py-lineno"> 558</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L559"></a><tt class="py-lineno"> 559</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"DUALSTACK: Host intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L560"></a><tt class="py-lineno"> 560</tt> <tt class="py-line"> <tt class="py-string">"successful between two "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L561"></a><tt class="py-lineno"> 561</tt> <tt class="py-line"> <tt class="py-string">"dual stack host using IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L562"></a><tt class="py-lineno"> 562</tt> <tt class="py-line"> <tt id="link-139" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-139', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"DUALSTACK: Host intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L563"></a><tt class="py-lineno"> 563</tt> <tt class="py-line"> <tt class="py-string">"failed between two"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L564"></a><tt class="py-lineno"> 564</tt> <tt class="py-line"> <tt class="py-string">"dual stack host using IPV4"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L565"></a><tt class="py-lineno"> 565</tt> <tt class="py-line"> </tt>
-<a name="L566"></a><tt class="py-lineno"> 566</tt> <tt class="py-line"> </tt>
-<a name="L567"></a><tt class="py-lineno"> 567</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-140" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-140', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"DUALSTACK2: Add host intents between h1 and h11"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L568"></a><tt class="py-lineno"> 568</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L569"></a><tt class="py-lineno"> 569</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">hostIntent</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L570"></a><tt class="py-lineno"> 570</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">'DUALSTACK2'</tt><tt class="py-op">,</tt> </tt>
-<a name="L571"></a><tt class="py-lineno"> 571</tt> <tt class="py-line"> <tt class="py-name">host1</tt><tt class="py-op">=</tt><tt class="py-string">'h1'</tt><tt class="py-op">,</tt> </tt>
-<a name="L572"></a><tt class="py-lineno"> 572</tt> <tt class="py-line"> <tt class="py-name">host2</tt><tt class="py-op">=</tt><tt class="py-string">'h11'</tt><tt class="py-op">,</tt> </tt>
-<a name="L573"></a><tt class="py-lineno"> 573</tt> <tt class="py-line"> <tt class="py-name">sw1</tt><tt class="py-op">=</tt><tt class="py-string">'s5'</tt><tt class="py-op">,</tt> </tt>
-<a name="L574"></a><tt class="py-lineno"> 574</tt> <tt class="py-line"> <tt class="py-name">sw2</tt><tt class="py-op">=</tt><tt class="py-string">'s2'</tt><tt class="py-op">,</tt> </tt>
-<a name="L575"></a><tt class="py-lineno"> 575</tt> <tt class="py-line"> <tt class="py-name">expectedLink</tt><tt class="py-op">=</tt><tt class="py-number">18</tt> <tt class="py-op">)</tt> </tt>
-<a name="L576"></a><tt class="py-lineno"> 576</tt> <tt class="py-line"> </tt>
-<a name="L577"></a><tt class="py-lineno"> 577</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L578"></a><tt class="py-lineno"> 578</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L579"></a><tt class="py-lineno"> 579</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"DUALSTACK2: Host intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L580"></a><tt class="py-lineno"> 580</tt> <tt class="py-line"> <tt class="py-string">"successful between two "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L581"></a><tt class="py-lineno"> 581</tt> <tt class="py-line"> <tt class="py-string">"dual stack host using IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L582"></a><tt class="py-lineno"> 582</tt> <tt class="py-line"> <tt id="link-141" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-141', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"DUALSTACK2: Host intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L583"></a><tt class="py-lineno"> 583</tt> <tt class="py-line"> <tt class="py-string">"failed between two"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L584"></a><tt class="py-lineno"> 584</tt> <tt class="py-line"> <tt class="py-string">"dual stack host using IPV4"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L585"></a><tt class="py-lineno"> 585</tt> <tt class="py-line"> </tt>
-<a name="L586"></a><tt class="py-lineno"> 586</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-142', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"1HOP: Add host intents between h1 and h3"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L587"></a><tt class="py-lineno"> 587</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L588"></a><tt class="py-lineno"> 588</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">hostIntent</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L589"></a><tt class="py-lineno"> 589</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">'1HOP'</tt><tt class="py-op">,</tt> </tt>
-<a name="L590"></a><tt class="py-lineno"> 590</tt> <tt class="py-line"> <tt class="py-name">host1</tt><tt class="py-op">=</tt><tt class="py-string">'h1'</tt><tt class="py-op">,</tt> </tt>
-<a name="L591"></a><tt class="py-lineno"> 591</tt> <tt class="py-line"> <tt class="py-name">host2</tt><tt class="py-op">=</tt><tt class="py-string">'h3'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L592"></a><tt class="py-lineno"> 592</tt> <tt class="py-line"> </tt>
-<a name="L593"></a><tt class="py-lineno"> 593</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L594"></a><tt class="py-lineno"> 594</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L595"></a><tt class="py-lineno"> 595</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"1HOP: Host intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L596"></a><tt class="py-lineno"> 596</tt> <tt class="py-line"> <tt class="py-string">"successful between two "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L597"></a><tt class="py-lineno"> 597</tt> <tt class="py-line"> <tt class="py-string">"host using IPV4 in the same switch"</tt><tt class="py-op">,</tt> </tt>
-<a name="L598"></a><tt class="py-lineno"> 598</tt> <tt class="py-line"> <tt id="link-143" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-143', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"1HOP: Host intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L599"></a><tt class="py-lineno"> 599</tt> <tt class="py-line"> <tt class="py-string">"failed between two"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L600"></a><tt class="py-lineno"> 600</tt> <tt class="py-line"> <tt class="py-string">"host using IPV4 in the same switch"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L601"></a><tt class="py-lineno"> 601</tt> <tt class="py-line"> </tt>
-<a name="L602"></a><tt class="py-lineno"> 602</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-144" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-144', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"VLAN1: Add vlan host intents between h4 and h12"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L603"></a><tt class="py-lineno"> 603</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L604"></a><tt class="py-lineno"> 604</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">hostIntent</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L605"></a><tt class="py-lineno"> 605</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">'VLAN1'</tt><tt class="py-op">,</tt> </tt>
-<a name="L606"></a><tt class="py-lineno"> 606</tt> <tt class="py-line"> <tt class="py-name">host1</tt><tt class="py-op">=</tt><tt class="py-string">'h4'</tt><tt class="py-op">,</tt> </tt>
-<a name="L607"></a><tt class="py-lineno"> 607</tt> <tt class="py-line"> <tt class="py-name">host2</tt><tt class="py-op">=</tt><tt class="py-string">'h12'</tt><tt class="py-op">,</tt> </tt>
-<a name="L608"></a><tt class="py-lineno"> 608</tt> <tt class="py-line"> <tt class="py-name">host1Id</tt><tt class="py-op">=</tt><tt class="py-string">'00:00:00:00:00:04/100'</tt><tt class="py-op">,</tt> </tt>
-<a name="L609"></a><tt class="py-lineno"> 609</tt> <tt class="py-line"> <tt class="py-name">host2Id</tt><tt class="py-op">=</tt><tt class="py-string">'00:00:00:00:00:0C/100'</tt><tt class="py-op">,</tt> </tt>
-<a name="L610"></a><tt class="py-lineno"> 610</tt> <tt class="py-line"> <tt class="py-name">sw1</tt><tt class="py-op">=</tt><tt class="py-string">'s5'</tt><tt class="py-op">,</tt> </tt>
-<a name="L611"></a><tt class="py-lineno"> 611</tt> <tt class="py-line"> <tt class="py-name">sw2</tt><tt class="py-op">=</tt><tt class="py-string">'s2'</tt><tt class="py-op">,</tt> </tt>
-<a name="L612"></a><tt class="py-lineno"> 612</tt> <tt class="py-line"> <tt class="py-name">expectedLink</tt><tt class="py-op">=</tt><tt class="py-number">18</tt> <tt class="py-op">)</tt> </tt>
-<a name="L613"></a><tt class="py-lineno"> 613</tt> <tt class="py-line"> </tt>
-<a name="L614"></a><tt class="py-lineno"> 614</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L615"></a><tt class="py-lineno"> 615</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L616"></a><tt class="py-lineno"> 616</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"VLAN1: Host intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L617"></a><tt class="py-lineno"> 617</tt> <tt class="py-line"> <tt class="py-string">"successful between two "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L618"></a><tt class="py-lineno"> 618</tt> <tt class="py-line"> <tt class="py-string">"host using IPV4 in the same VLAN"</tt><tt class="py-op">,</tt> </tt>
-<a name="L619"></a><tt class="py-lineno"> 619</tt> <tt class="py-line"> <tt id="link-145" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-145', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"VLAN1: Host intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L620"></a><tt class="py-lineno"> 620</tt> <tt class="py-line"> <tt class="py-string">"failed between two"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L621"></a><tt class="py-lineno"> 621</tt> <tt class="py-line"> <tt class="py-string">"host using IPV4 in the same VLAN"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L622"></a><tt class="py-lineno"> 622</tt> <tt class="py-line"> </tt>
-<a name="L623"></a><tt class="py-lineno"> 623</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-146" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-146', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"VLAN2: Add inter vlan host intents between h13 and h20"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L624"></a><tt class="py-lineno"> 624</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L625"></a><tt class="py-lineno"> 625</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">hostIntent</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L626"></a><tt class="py-lineno"> 626</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">'VLAN2'</tt><tt class="py-op">,</tt> </tt>
-<a name="L627"></a><tt class="py-lineno"> 627</tt> <tt class="py-line"> <tt class="py-name">host1</tt><tt class="py-op">=</tt><tt class="py-string">'h13'</tt><tt class="py-op">,</tt> </tt>
-<a name="L628"></a><tt class="py-lineno"> 628</tt> <tt class="py-line"> <tt class="py-name">host2</tt><tt class="py-op">=</tt><tt class="py-string">'h20'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L629"></a><tt class="py-lineno"> 629</tt> <tt class="py-line"> </tt>
-<a name="L630"></a><tt class="py-lineno"> 630</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">,</tt> </tt>
-<a name="L631"></a><tt class="py-lineno"> 631</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L632"></a><tt class="py-lineno"> 632</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"VLAN2: Host intent negative test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L633"></a><tt class="py-lineno"> 633</tt> <tt class="py-line"> <tt class="py-string">"successful between two "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L634"></a><tt class="py-lineno"> 634</tt> <tt class="py-line"> <tt class="py-string">"host using IPV4 in different VLAN"</tt><tt class="py-op">,</tt> </tt>
-<a name="L635"></a><tt class="py-lineno"> 635</tt> <tt class="py-line"> <tt id="link-147" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-147', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"VLAN2: Host intent negative test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L636"></a><tt class="py-lineno"> 636</tt> <tt class="py-line"> <tt class="py-string">"failed between two"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L637"></a><tt class="py-lineno"> 637</tt> <tt class="py-line"> <tt class="py-string">"host using IPV4 in different VLAN"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L638"></a><tt class="py-lineno"> 638</tt> <tt class="py-line"> </tt>
-<a name="L639"></a><tt class="py-lineno"> 639</tt> <tt class="py-line"> </tt>
-<a name="L640"></a><tt class="py-lineno"> 640</tt> <tt class="py-line"> <tt class="py-name">intentLeadersNew</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-148" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaderCandidates" class="py-name" href="#" onclick="return doclink('link-148', 'leaderCandidates', 'link-134');">leaderCandidates</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L641"></a><tt class="py-lineno"> 641</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">checkLeaderChange</tt><tt class="py-op">(</tt> <tt class="py-name">intentLeadersOld</tt><tt class="py-op">,</tt> </tt>
-<a name="L642"></a><tt class="py-lineno"> 642</tt> <tt class="py-line"> <tt class="py-name">intentLeadersNew</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L643"></a><tt class="py-lineno"> 643</tt> <tt class="py-line"> </tt>
-<a name="FUNCintent.CASE2000"></a><div id="FUNCintent.CASE2000-def"><a name="L644"></a><tt class="py-lineno"> 644</tt> <a class="py-toggle" href="#" id="FUNCintent.CASE2000-toggle" onclick="return toggle('FUNCintent.CASE2000');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE2000">CASE2000</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FUNCintent.CASE2000-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="FUNCintent.CASE2000-expanded"><a name="L645"></a><tt class="py-lineno"> 645</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L646"></a><tt class="py-lineno"> 646</tt> <tt class="py-line"><tt class="py-docstring"> Add point intents between 2 hosts:</tt> </tt>
-<a name="L647"></a><tt class="py-lineno"> 647</tt> <tt class="py-line"><tt class="py-docstring"> - Get device ids | ports</tt> </tt>
-<a name="L648"></a><tt class="py-lineno"> 648</tt> <tt class="py-line"><tt class="py-docstring"> - Add point intents</tt> </tt>
-<a name="L649"></a><tt class="py-lineno"> 649</tt> <tt class="py-line"><tt class="py-docstring"> - Check intents</tt> </tt>
-<a name="L650"></a><tt class="py-lineno"> 650</tt> <tt class="py-line"><tt class="py-docstring"> - Verify flows</tt> </tt>
-<a name="L651"></a><tt class="py-lineno"> 651</tt> <tt class="py-line"><tt class="py-docstring"> - Ping hosts</tt> </tt>
-<a name="L652"></a><tt class="py-lineno"> 652</tt> <tt class="py-line"><tt class="py-docstring"> - Reroute</tt> </tt>
-<a name="L653"></a><tt class="py-lineno"> 653</tt> <tt class="py-line"><tt class="py-docstring"> - Link down</tt> </tt>
-<a name="L654"></a><tt class="py-lineno"> 654</tt> <tt class="py-line"><tt class="py-docstring"> - Verify flows</tt> </tt>
-<a name="L655"></a><tt class="py-lineno"> 655</tt> <tt class="py-line"><tt class="py-docstring"> - Check topology</tt> </tt>
-<a name="L656"></a><tt class="py-lineno"> 656</tt> <tt class="py-line"><tt class="py-docstring"> - Ping hosts</tt> </tt>
-<a name="L657"></a><tt class="py-lineno"> 657</tt> <tt class="py-line"><tt class="py-docstring"> - Link up</tt> </tt>
-<a name="L658"></a><tt class="py-lineno"> 658</tt> <tt class="py-line"><tt class="py-docstring"> - Verify flows</tt> </tt>
-<a name="L659"></a><tt class="py-lineno"> 659</tt> <tt class="py-line"><tt class="py-docstring"> - Check topology</tt> </tt>
-<a name="L660"></a><tt class="py-lineno"> 660</tt> <tt class="py-line"><tt class="py-docstring"> - Ping hosts</tt> </tt>
-<a name="L661"></a><tt class="py-lineno"> 661</tt> <tt class="py-line"><tt class="py-docstring"> - Remove intents</tt> </tt>
-<a name="L662"></a><tt class="py-lineno"> 662</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L663"></a><tt class="py-lineno"> 663</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L664"></a><tt class="py-lineno"> 664</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L665"></a><tt class="py-lineno"> 665</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L666"></a><tt class="py-lineno"> 666</tt> <tt class="py-line"> </tt>
-<a name="L667"></a><tt class="py-lineno"> 667</tt> <tt class="py-line"> <tt class="py-comment"># Assert variables - These variable's name|format must be followed</tt> </tt>
-<a name="L668"></a><tt class="py-lineno"> 668</tt> <tt class="py-line"> <tt class="py-comment"># if you want to use the wrapper function</tt> </tt>
-<a name="L669"></a><tt class="py-lineno"> 669</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"There is no main"</tt> </tt>
-<a name="L670"></a><tt class="py-lineno"> 670</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"There is no main.CLIs"</tt> </tt>
-<a name="L671"></a><tt class="py-lineno"> 671</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">,</tt> <tt class="py-string">"Mininet handle should be named Mininet1"</tt> </tt>
-<a name="L672"></a><tt class="py-lineno"> 672</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numSwitch</tt><tt class="py-op">,</tt> <tt class="py-string">"Placed the total number of switch topology in \</tt> </tt>
-<a name="L673"></a><tt class="py-lineno"> 673</tt> <tt class="py-line"><tt class="py-string"> main.numSwitch"</tt> </tt>
-<a name="L674"></a><tt class="py-lineno"> 674</tt> <tt class="py-line"> </tt>
-<a name="L675"></a><tt class="py-lineno"> 675</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testName</tt> <tt class="py-op">=</tt> <tt class="py-string">"Point Intents"</tt> </tt>
-<a name="L676"></a><tt class="py-lineno"> 676</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-149" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-149', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testName</tt> <tt class="py-op">+</tt> <tt class="py-string">" Test - "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L677"></a><tt class="py-lineno"> 677</tt> <tt class="py-line"> <tt class="py-string">" NODE(S) - OF "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">OFProtocol</tt> <tt class="py-op">)</tt> </tt>
-<a name="L678"></a><tt class="py-lineno"> 678</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"This test case will test point to point"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L679"></a><tt class="py-lineno"> 679</tt> <tt class="py-line"> <tt class="py-string">" intents using "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L680"></a><tt class="py-lineno"> 680</tt> <tt class="py-line"> <tt class="py-string">" node(s) cluster;\n"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L681"></a><tt class="py-lineno"> 681</tt> <tt class="py-line"> <tt class="py-string">"Different type of hosts will be tested in "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L682"></a><tt class="py-lineno"> 682</tt> <tt class="py-line"> <tt class="py-string">"each step such as IPV4, Dual stack, VLAN etc"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L683"></a><tt class="py-lineno"> 683</tt> <tt class="py-line"> <tt class="py-string">";\nThe test will use OF "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">OFProtocol</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L684"></a><tt class="py-lineno"> 684</tt> <tt class="py-line"> <tt class="py-string">" OVS running in Mininet"</tt> </tt>
-<a name="L685"></a><tt class="py-lineno"> 685</tt> <tt class="py-line"> </tt>
-<a name="L686"></a><tt class="py-lineno"> 686</tt> <tt class="py-line"> <tt class="py-comment"># No option point intents</tt> </tt>
-<a name="L687"></a><tt class="py-lineno"> 687</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-150" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-150', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"NOOPTION: Add point intents between h1 and h9"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L688"></a><tt class="py-lineno"> 688</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L689"></a><tt class="py-lineno"> 689</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">pointIntent</tt><tt class="py-op">(</tt> </tt>
-<a name="L690"></a><tt class="py-lineno"> 690</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L691"></a><tt class="py-lineno"> 691</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"NOOPTION"</tt><tt class="py-op">,</tt> </tt>
-<a name="L692"></a><tt class="py-lineno"> 692</tt> <tt class="py-line"> <tt class="py-name">host1</tt><tt class="py-op">=</tt><tt class="py-string">"h1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L693"></a><tt class="py-lineno"> 693</tt> <tt class="py-line"> <tt class="py-name">host2</tt><tt class="py-op">=</tt><tt class="py-string">"h9"</tt><tt class="py-op">,</tt> </tt>
-<a name="L694"></a><tt class="py-lineno"> 694</tt> <tt class="py-line"> <tt class="py-name">deviceId1</tt><tt class="py-op">=</tt><tt class="py-string">"of:0000000000000005/1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L695"></a><tt class="py-lineno"> 695</tt> <tt class="py-line"> <tt class="py-name">deviceId2</tt><tt class="py-op">=</tt><tt class="py-string">"of:0000000000000006/1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L696"></a><tt class="py-lineno"> 696</tt> <tt class="py-line"> <tt class="py-name">sw1</tt><tt class="py-op">=</tt><tt class="py-string">"s5"</tt><tt class="py-op">,</tt> </tt>
-<a name="L697"></a><tt class="py-lineno"> 697</tt> <tt class="py-line"> <tt class="py-name">sw2</tt><tt class="py-op">=</tt><tt class="py-string">"s2"</tt><tt class="py-op">,</tt> </tt>
-<a name="L698"></a><tt class="py-lineno"> 698</tt> <tt class="py-line"> <tt class="py-name">expectedLink</tt><tt class="py-op">=</tt><tt class="py-number">18</tt> <tt class="py-op">)</tt> </tt>
-<a name="L699"></a><tt class="py-lineno"> 699</tt> <tt class="py-line"> </tt>
-<a name="L700"></a><tt class="py-lineno"> 700</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L701"></a><tt class="py-lineno"> 701</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L702"></a><tt class="py-lineno"> 702</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"NOOPTION: Point intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L703"></a><tt class="py-lineno"> 703</tt> <tt class="py-line"> <tt class="py-string">"successful using no match action"</tt><tt class="py-op">,</tt> </tt>
-<a name="L704"></a><tt class="py-lineno"> 704</tt> <tt class="py-line"> <tt id="link-151" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-151', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"NOOPTION: Point intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L705"></a><tt class="py-lineno"> 705</tt> <tt class="py-line"> <tt class="py-string">"failed using no match action"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L706"></a><tt class="py-lineno"> 706</tt> <tt class="py-line"> </tt>
-<a name="L707"></a><tt class="py-lineno"> 707</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L708"></a><tt class="py-lineno"> 708</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-152', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"IPV4: Add point intents between h1 and h9"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L709"></a><tt class="py-lineno"> 709</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">pointIntent</tt><tt class="py-op">(</tt> </tt>
-<a name="L710"></a><tt class="py-lineno"> 710</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L711"></a><tt class="py-lineno"> 711</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L712"></a><tt class="py-lineno"> 712</tt> <tt class="py-line"> <tt class="py-name">host1</tt><tt class="py-op">=</tt><tt class="py-string">"h1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L713"></a><tt class="py-lineno"> 713</tt> <tt class="py-line"> <tt class="py-name">host2</tt><tt class="py-op">=</tt><tt class="py-string">"h9"</tt><tt class="py-op">,</tt> </tt>
-<a name="L714"></a><tt class="py-lineno"> 714</tt> <tt class="py-line"> <tt class="py-name">deviceId1</tt><tt class="py-op">=</tt><tt class="py-string">"of:0000000000000005/1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L715"></a><tt class="py-lineno"> 715</tt> <tt class="py-line"> <tt class="py-name">deviceId2</tt><tt class="py-op">=</tt><tt class="py-string">"of:0000000000000006/1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L716"></a><tt class="py-lineno"> 716</tt> <tt class="py-line"> <tt class="py-name">port1</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L717"></a><tt class="py-lineno"> 717</tt> <tt class="py-line"> <tt class="py-name">port2</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L718"></a><tt class="py-lineno"> 718</tt> <tt class="py-line"> <tt class="py-name">ethType</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L719"></a><tt class="py-lineno"> 719</tt> <tt class="py-line"> <tt class="py-name">mac1</tt><tt class="py-op">=</tt><tt class="py-string">"00:00:00:00:00:01"</tt><tt class="py-op">,</tt> </tt>
-<a name="L720"></a><tt class="py-lineno"> 720</tt> <tt class="py-line"> <tt class="py-name">mac2</tt><tt class="py-op">=</tt><tt class="py-string">"00:00:00:00:00:09"</tt><tt class="py-op">,</tt> </tt>
-<a name="L721"></a><tt class="py-lineno"> 721</tt> <tt class="py-line"> <tt class="py-name">bandwidth</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L722"></a><tt class="py-lineno"> 722</tt> <tt class="py-line"> <tt class="py-name">lambdaAlloc</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> </tt>
-<a name="L723"></a><tt class="py-lineno"> 723</tt> <tt class="py-line"> <tt class="py-name">ipProto</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L724"></a><tt class="py-lineno"> 724</tt> <tt class="py-line"> <tt class="py-name">ip1</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L725"></a><tt class="py-lineno"> 725</tt> <tt class="py-line"> <tt class="py-name">ip2</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L726"></a><tt class="py-lineno"> 726</tt> <tt class="py-line"> <tt class="py-name">tcp1</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L727"></a><tt class="py-lineno"> 727</tt> <tt class="py-line"> <tt class="py-name">tcp2</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L728"></a><tt class="py-lineno"> 728</tt> <tt class="py-line"> <tt class="py-name">sw1</tt><tt class="py-op">=</tt><tt class="py-string">"s5"</tt><tt class="py-op">,</tt> </tt>
-<a name="L729"></a><tt class="py-lineno"> 729</tt> <tt class="py-line"> <tt class="py-name">sw2</tt><tt class="py-op">=</tt><tt class="py-string">"s2"</tt><tt class="py-op">,</tt> </tt>
-<a name="L730"></a><tt class="py-lineno"> 730</tt> <tt class="py-line"> <tt class="py-name">expectedLink</tt><tt class="py-op">=</tt><tt class="py-number">18</tt> <tt class="py-op">)</tt> </tt>
-<a name="L731"></a><tt class="py-lineno"> 731</tt> <tt class="py-line"> </tt>
-<a name="L732"></a><tt class="py-lineno"> 732</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L733"></a><tt class="py-lineno"> 733</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L734"></a><tt class="py-lineno"> 734</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4: Point intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L735"></a><tt class="py-lineno"> 735</tt> <tt class="py-line"> <tt class="py-string">"successful using IPV4 type with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L736"></a><tt class="py-lineno"> 736</tt> <tt class="py-line"> <tt class="py-string">"MAC addresses"</tt><tt class="py-op">,</tt> </tt>
-<a name="L737"></a><tt class="py-lineno"> 737</tt> <tt class="py-line"> <tt id="link-153" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-153', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"IPV4: Point intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L738"></a><tt class="py-lineno"> 738</tt> <tt class="py-line"> <tt class="py-string">"failed using IPV4 type with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L739"></a><tt class="py-lineno"> 739</tt> <tt class="py-line"> <tt class="py-string">"MAC addresses"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L740"></a><tt class="py-lineno"> 740</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-154" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-154', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"IPV4_2: Add point intents between h1 and h9"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L741"></a><tt class="py-lineno"> 741</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L742"></a><tt class="py-lineno"> 742</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">pointIntent</tt><tt class="py-op">(</tt> </tt>
-<a name="L743"></a><tt class="py-lineno"> 743</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L744"></a><tt class="py-lineno"> 744</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4_2"</tt><tt class="py-op">,</tt> </tt>
-<a name="L745"></a><tt class="py-lineno"> 745</tt> <tt class="py-line"> <tt class="py-name">host1</tt><tt class="py-op">=</tt><tt class="py-string">"h1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L746"></a><tt class="py-lineno"> 746</tt> <tt class="py-line"> <tt class="py-name">host2</tt><tt class="py-op">=</tt><tt class="py-string">"h9"</tt><tt class="py-op">,</tt> </tt>
-<a name="L747"></a><tt class="py-lineno"> 747</tt> <tt class="py-line"> <tt class="py-name">deviceId1</tt><tt class="py-op">=</tt><tt class="py-string">"of:0000000000000005/1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L748"></a><tt class="py-lineno"> 748</tt> <tt class="py-line"> <tt class="py-name">deviceId2</tt><tt class="py-op">=</tt><tt class="py-string">"of:0000000000000006/1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L749"></a><tt class="py-lineno"> 749</tt> <tt class="py-line"> <tt class="py-name">ipProto</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L750"></a><tt class="py-lineno"> 750</tt> <tt class="py-line"> <tt class="py-name">ip1</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L751"></a><tt class="py-lineno"> 751</tt> <tt class="py-line"> <tt class="py-name">ip2</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L752"></a><tt class="py-lineno"> 752</tt> <tt class="py-line"> <tt class="py-name">tcp1</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L753"></a><tt class="py-lineno"> 753</tt> <tt class="py-line"> <tt class="py-name">tcp2</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L754"></a><tt class="py-lineno"> 754</tt> <tt class="py-line"> <tt class="py-name">sw1</tt><tt class="py-op">=</tt><tt class="py-string">"s5"</tt><tt class="py-op">,</tt> </tt>
-<a name="L755"></a><tt class="py-lineno"> 755</tt> <tt class="py-line"> <tt class="py-name">sw2</tt><tt class="py-op">=</tt><tt class="py-string">"s2"</tt><tt class="py-op">,</tt> </tt>
-<a name="L756"></a><tt class="py-lineno"> 756</tt> <tt class="py-line"> <tt class="py-name">expectedLink</tt><tt class="py-op">=</tt><tt class="py-number">18</tt> <tt class="py-op">)</tt> </tt>
-<a name="L757"></a><tt class="py-lineno"> 757</tt> <tt class="py-line"> </tt>
-<a name="L758"></a><tt class="py-lineno"> 758</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L759"></a><tt class="py-lineno"> 759</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L760"></a><tt class="py-lineno"> 760</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4_2: Point intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L761"></a><tt class="py-lineno"> 761</tt> <tt class="py-line"> <tt class="py-string">"successful using IPV4 type with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L762"></a><tt class="py-lineno"> 762</tt> <tt class="py-line"> <tt class="py-string">"no MAC addresses"</tt><tt class="py-op">,</tt> </tt>
-<a name="L763"></a><tt class="py-lineno"> 763</tt> <tt class="py-line"> <tt id="link-155" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-155', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"IPV4_2: Point intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L764"></a><tt class="py-lineno"> 764</tt> <tt class="py-line"> <tt class="py-string">"failed using IPV4 type with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L765"></a><tt class="py-lineno"> 765</tt> <tt class="py-line"> <tt class="py-string">"no MAC addresses"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L766"></a><tt class="py-lineno"> 766</tt> <tt class="py-line"> </tt>
-<a name="L767"></a><tt class="py-lineno"> 767</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-156" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-156', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"SDNIP-ICMP: Add point intents between h1 and h9"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L768"></a><tt class="py-lineno"> 768</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L769"></a><tt class="py-lineno"> 769</tt> <tt class="py-line"> <tt class="py-name">mac1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostsData</tt><tt class="py-op">[</tt> <tt class="py-string">'h1'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'mac'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L770"></a><tt class="py-lineno"> 770</tt> <tt class="py-line"> <tt class="py-name">mac2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostsData</tt><tt class="py-op">[</tt> <tt class="py-string">'h9'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'mac'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L771"></a><tt class="py-lineno"> 771</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L772"></a><tt class="py-lineno"> 772</tt> <tt class="py-line"> <tt class="py-name">ip1</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostsData</tt><tt class="py-op">[</tt> <tt class="py-string">'h1'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ipAddresses'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/24"</tt> </tt>
-<a name="L773"></a><tt class="py-lineno"> 773</tt> <tt class="py-line"> <tt class="py-name">ip2</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostsData</tt><tt class="py-op">[</tt> <tt class="py-string">'h9'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ipAddresses'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/24"</tt> </tt>
-<a name="L774"></a><tt class="py-lineno"> 774</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">:</tt> </tt>
-<a name="L775"></a><tt class="py-lineno"> 775</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-157', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Key Error getting IP addresses of h1 | h9 in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L776"></a><tt class="py-lineno"> 776</tt> <tt class="py-line"> <tt class="py-string">"main.hostsData"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L777"></a><tt class="py-lineno"> 777</tt> <tt class="py-line"> <tt class="py-name">ip1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-158" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getIPAddress()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getIPAddress"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getIPAddress" class="py-name" href="#" onclick="return doclink('link-158', 'getIPAddress', 'link-158');">getIPAddress</a></tt><tt class="py-op">(</tt> <tt class="py-string">'h1'</tt><tt class="py-op">)</tt> </tt>
-<a name="L778"></a><tt class="py-lineno"> 778</tt> <tt class="py-line"> <tt class="py-name">ip2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-159" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getIPAddress" class="py-name" href="#" onclick="return doclink('link-159', 'getIPAddress', 'link-158');">getIPAddress</a></tt><tt class="py-op">(</tt> <tt class="py-string">'h9'</tt><tt class="py-op">)</tt> </tt>
-<a name="L779"></a><tt class="py-lineno"> 779</tt> <tt class="py-line"> </tt>
-<a name="L780"></a><tt class="py-lineno"> 780</tt> <tt class="py-line"> <tt class="py-name">ipProto</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SDNIP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'icmpProto'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L781"></a><tt class="py-lineno"> 781</tt> <tt class="py-line"> <tt class="py-comment"># Uneccessary, not including this in the selectors</tt> </tt>
-<a name="L782"></a><tt class="py-lineno"> 782</tt> <tt class="py-line"> <tt class="py-name">tcp1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SDNIP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'srcPort'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L783"></a><tt class="py-lineno"> 783</tt> <tt class="py-line"> <tt class="py-name">tcp2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SDNIP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'dstPort'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L784"></a><tt class="py-lineno"> 784</tt> <tt class="py-line"> </tt>
-<a name="L785"></a><tt class="py-lineno"> 785</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">pointIntent</tt><tt class="py-op">(</tt> </tt>
-<a name="L786"></a><tt class="py-lineno"> 786</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L787"></a><tt class="py-lineno"> 787</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"SDNIP-ICMP"</tt><tt class="py-op">,</tt> </tt>
-<a name="L788"></a><tt class="py-lineno"> 788</tt> <tt class="py-line"> <tt class="py-name">host1</tt><tt class="py-op">=</tt><tt class="py-string">"h1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L789"></a><tt class="py-lineno"> 789</tt> <tt class="py-line"> <tt class="py-name">host2</tt><tt class="py-op">=</tt><tt class="py-string">"h9"</tt><tt class="py-op">,</tt> </tt>
-<a name="L790"></a><tt class="py-lineno"> 790</tt> <tt class="py-line"> <tt class="py-name">deviceId1</tt><tt class="py-op">=</tt><tt class="py-string">"of:0000000000000005/1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L791"></a><tt class="py-lineno"> 791</tt> <tt class="py-line"> <tt class="py-name">deviceId2</tt><tt class="py-op">=</tt><tt class="py-string">"of:0000000000000006/1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L792"></a><tt class="py-lineno"> 792</tt> <tt class="py-line"> <tt class="py-name">mac1</tt><tt class="py-op">=</tt><tt class="py-name">mac1</tt><tt class="py-op">,</tt> </tt>
-<a name="L793"></a><tt class="py-lineno"> 793</tt> <tt class="py-line"> <tt class="py-name">mac2</tt><tt class="py-op">=</tt><tt class="py-name">mac2</tt><tt class="py-op">,</tt> </tt>
-<a name="L794"></a><tt class="py-lineno"> 794</tt> <tt class="py-line"> <tt class="py-name">ethType</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L795"></a><tt class="py-lineno"> 795</tt> <tt class="py-line"> <tt class="py-name">ipProto</tt><tt class="py-op">=</tt><tt class="py-name">ipProto</tt><tt class="py-op">,</tt> </tt>
-<a name="L796"></a><tt class="py-lineno"> 796</tt> <tt class="py-line"> <tt class="py-name">ip1</tt><tt class="py-op">=</tt><tt class="py-name">ip1</tt><tt class="py-op">,</tt> </tt>
-<a name="L797"></a><tt class="py-lineno"> 797</tt> <tt class="py-line"> <tt class="py-name">ip2</tt><tt class="py-op">=</tt><tt class="py-name">ip2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L798"></a><tt class="py-lineno"> 798</tt> <tt class="py-line"> </tt>
-<a name="L799"></a><tt class="py-lineno"> 799</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L800"></a><tt class="py-lineno"> 800</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L801"></a><tt class="py-lineno"> 801</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"SDNIP-ICMP: Point intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L802"></a><tt class="py-lineno"> 802</tt> <tt class="py-line"> <tt class="py-string">"successful using IPV4 type with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L803"></a><tt class="py-lineno"> 803</tt> <tt class="py-line"> <tt class="py-string">"IP protocol TCP enabled"</tt><tt class="py-op">,</tt> </tt>
-<a name="L804"></a><tt class="py-lineno"> 804</tt> <tt class="py-line"> <tt id="link-160" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-160', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"SDNIP-ICMP: Point intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L805"></a><tt class="py-lineno"> 805</tt> <tt class="py-line"> <tt class="py-string">"failed using IPV4 type with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L806"></a><tt class="py-lineno"> 806</tt> <tt class="py-line"> <tt class="py-string">"IP protocol TCP enabled"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L807"></a><tt class="py-lineno"> 807</tt> <tt class="py-line"> </tt>
-<a name="L808"></a><tt class="py-lineno"> 808</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-161" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-161', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"SDNIP-TCP: Add point intents between h1 and h9"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L809"></a><tt class="py-lineno"> 809</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L810"></a><tt class="py-lineno"> 810</tt> <tt class="py-line"> <tt class="py-name">mac1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostsData</tt><tt class="py-op">[</tt> <tt class="py-string">'h1'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'mac'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L811"></a><tt class="py-lineno"> 811</tt> <tt class="py-line"> <tt class="py-name">mac2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostsData</tt><tt class="py-op">[</tt> <tt class="py-string">'h9'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'mac'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L812"></a><tt class="py-lineno"> 812</tt> <tt class="py-line"> <tt class="py-name">ip1</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostsData</tt><tt class="py-op">[</tt> <tt class="py-string">'h1'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ipAddresses'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/32"</tt> </tt>
-<a name="L813"></a><tt class="py-lineno"> 813</tt> <tt class="py-line"> <tt class="py-name">ip2</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostsData</tt><tt class="py-op">[</tt> <tt class="py-string">'h9'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ipAddresses'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"/32"</tt> </tt>
-<a name="L814"></a><tt class="py-lineno"> 814</tt> <tt class="py-line"> <tt class="py-name">ipProto</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SDNIP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'tcpProto'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L815"></a><tt class="py-lineno"> 815</tt> <tt class="py-line"> <tt class="py-name">tcp1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SDNIP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'srcPort'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L816"></a><tt class="py-lineno"> 816</tt> <tt class="py-line"> <tt class="py-name">tcp2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SDNIP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'dstPort'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L817"></a><tt class="py-lineno"> 817</tt> <tt class="py-line"> </tt>
-<a name="L818"></a><tt class="py-lineno"> 818</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">pointIntentTcp</tt><tt class="py-op">(</tt> </tt>
-<a name="L819"></a><tt class="py-lineno"> 819</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L820"></a><tt class="py-lineno"> 820</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"SDNIP-TCP"</tt><tt class="py-op">,</tt> </tt>
-<a name="L821"></a><tt class="py-lineno"> 821</tt> <tt class="py-line"> <tt class="py-name">host1</tt><tt class="py-op">=</tt><tt class="py-string">"h1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L822"></a><tt class="py-lineno"> 822</tt> <tt class="py-line"> <tt class="py-name">host2</tt><tt class="py-op">=</tt><tt class="py-string">"h9"</tt><tt class="py-op">,</tt> </tt>
-<a name="L823"></a><tt class="py-lineno"> 823</tt> <tt class="py-line"> <tt class="py-name">deviceId1</tt><tt class="py-op">=</tt><tt class="py-string">"of:0000000000000005/1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L824"></a><tt class="py-lineno"> 824</tt> <tt class="py-line"> <tt class="py-name">deviceId2</tt><tt class="py-op">=</tt><tt class="py-string">"of:0000000000000006/1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L825"></a><tt class="py-lineno"> 825</tt> <tt class="py-line"> <tt class="py-name">mac1</tt><tt class="py-op">=</tt><tt class="py-name">mac1</tt><tt class="py-op">,</tt> </tt>
-<a name="L826"></a><tt class="py-lineno"> 826</tt> <tt class="py-line"> <tt class="py-name">mac2</tt><tt class="py-op">=</tt><tt class="py-name">mac2</tt><tt class="py-op">,</tt> </tt>
-<a name="L827"></a><tt class="py-lineno"> 827</tt> <tt class="py-line"> <tt class="py-name">ethType</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L828"></a><tt class="py-lineno"> 828</tt> <tt class="py-line"> <tt class="py-name">ipProto</tt><tt class="py-op">=</tt><tt class="py-name">ipProto</tt><tt class="py-op">,</tt> </tt>
-<a name="L829"></a><tt class="py-lineno"> 829</tt> <tt class="py-line"> <tt class="py-name">ip1</tt><tt class="py-op">=</tt><tt class="py-name">ip1</tt><tt class="py-op">,</tt> </tt>
-<a name="L830"></a><tt class="py-lineno"> 830</tt> <tt class="py-line"> <tt class="py-name">ip2</tt><tt class="py-op">=</tt><tt class="py-name">ip2</tt><tt class="py-op">,</tt> </tt>
-<a name="L831"></a><tt class="py-lineno"> 831</tt> <tt class="py-line"> <tt class="py-name">tcp1</tt><tt class="py-op">=</tt><tt class="py-name">tcp1</tt><tt class="py-op">,</tt> </tt>
-<a name="L832"></a><tt class="py-lineno"> 832</tt> <tt class="py-line"> <tt class="py-name">tcp2</tt><tt class="py-op">=</tt><tt class="py-name">tcp2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L833"></a><tt class="py-lineno"> 833</tt> <tt class="py-line"> </tt>
-<a name="L834"></a><tt class="py-lineno"> 834</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L835"></a><tt class="py-lineno"> 835</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L836"></a><tt class="py-lineno"> 836</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"SDNIP-TCP: Point intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L837"></a><tt class="py-lineno"> 837</tt> <tt class="py-line"> <tt class="py-string">"successful using IPV4 type with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L838"></a><tt class="py-lineno"> 838</tt> <tt class="py-line"> <tt class="py-string">"IP protocol ICMP enabled"</tt><tt class="py-op">,</tt> </tt>
-<a name="L839"></a><tt class="py-lineno"> 839</tt> <tt class="py-line"> <tt id="link-162" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-162', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"SDNIP-TCP: Point intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L840"></a><tt class="py-lineno"> 840</tt> <tt class="py-line"> <tt class="py-string">"failed using IPV4 type with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L841"></a><tt class="py-lineno"> 841</tt> <tt class="py-line"> <tt class="py-string">"IP protocol ICMP enabled"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L842"></a><tt class="py-lineno"> 842</tt> <tt class="py-line"> </tt>
-<a name="L843"></a><tt class="py-lineno"> 843</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-163" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-163', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"DUALSTACK1: Add point intents between h1 and h9"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L844"></a><tt class="py-lineno"> 844</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L845"></a><tt class="py-lineno"> 845</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">pointIntent</tt><tt class="py-op">(</tt> </tt>
-<a name="L846"></a><tt class="py-lineno"> 846</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L847"></a><tt class="py-lineno"> 847</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"DUALSTACK1"</tt><tt class="py-op">,</tt> </tt>
-<a name="L848"></a><tt class="py-lineno"> 848</tt> <tt class="py-line"> <tt class="py-name">host1</tt><tt class="py-op">=</tt><tt class="py-string">"h3"</tt><tt class="py-op">,</tt> </tt>
-<a name="L849"></a><tt class="py-lineno"> 849</tt> <tt class="py-line"> <tt class="py-name">host2</tt><tt class="py-op">=</tt><tt class="py-string">"h11"</tt><tt class="py-op">,</tt> </tt>
-<a name="L850"></a><tt class="py-lineno"> 850</tt> <tt class="py-line"> <tt class="py-name">deviceId1</tt><tt class="py-op">=</tt><tt class="py-string">"of:0000000000000005"</tt><tt class="py-op">,</tt> </tt>
-<a name="L851"></a><tt class="py-lineno"> 851</tt> <tt class="py-line"> <tt class="py-name">deviceId2</tt><tt class="py-op">=</tt><tt class="py-string">"of:0000000000000006"</tt><tt class="py-op">,</tt> </tt>
-<a name="L852"></a><tt class="py-lineno"> 852</tt> <tt class="py-line"> <tt class="py-name">port1</tt><tt class="py-op">=</tt><tt class="py-string">"3"</tt><tt class="py-op">,</tt> </tt>
-<a name="L853"></a><tt class="py-lineno"> 853</tt> <tt class="py-line"> <tt class="py-name">port2</tt><tt class="py-op">=</tt><tt class="py-string">"3"</tt><tt class="py-op">,</tt> </tt>
-<a name="L854"></a><tt class="py-lineno"> 854</tt> <tt class="py-line"> <tt class="py-name">ethType</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L855"></a><tt class="py-lineno"> 855</tt> <tt class="py-line"> <tt class="py-name">mac1</tt><tt class="py-op">=</tt><tt class="py-string">"00:00:00:00:00:03"</tt><tt class="py-op">,</tt> </tt>
-<a name="L856"></a><tt class="py-lineno"> 856</tt> <tt class="py-line"> <tt class="py-name">mac2</tt><tt class="py-op">=</tt><tt class="py-string">"00:00:00:00:00:0B"</tt><tt class="py-op">,</tt> </tt>
-<a name="L857"></a><tt class="py-lineno"> 857</tt> <tt class="py-line"> <tt class="py-name">bandwidth</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L858"></a><tt class="py-lineno"> 858</tt> <tt class="py-line"> <tt class="py-name">lambdaAlloc</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> </tt>
-<a name="L859"></a><tt class="py-lineno"> 859</tt> <tt class="py-line"> <tt class="py-name">ipProto</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L860"></a><tt class="py-lineno"> 860</tt> <tt class="py-line"> <tt class="py-name">ip1</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L861"></a><tt class="py-lineno"> 861</tt> <tt class="py-line"> <tt class="py-name">ip2</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L862"></a><tt class="py-lineno"> 862</tt> <tt class="py-line"> <tt class="py-name">tcp1</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L863"></a><tt class="py-lineno"> 863</tt> <tt class="py-line"> <tt class="py-name">tcp2</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L864"></a><tt class="py-lineno"> 864</tt> <tt class="py-line"> <tt class="py-name">sw1</tt><tt class="py-op">=</tt><tt class="py-string">"s5"</tt><tt class="py-op">,</tt> </tt>
-<a name="L865"></a><tt class="py-lineno"> 865</tt> <tt class="py-line"> <tt class="py-name">sw2</tt><tt class="py-op">=</tt><tt class="py-string">"s2"</tt><tt class="py-op">,</tt> </tt>
-<a name="L866"></a><tt class="py-lineno"> 866</tt> <tt class="py-line"> <tt class="py-name">expectedLink</tt><tt class="py-op">=</tt><tt class="py-number">18</tt> <tt class="py-op">)</tt> </tt>
-<a name="L867"></a><tt class="py-lineno"> 867</tt> <tt class="py-line"> </tt>
-<a name="L868"></a><tt class="py-lineno"> 868</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L869"></a><tt class="py-lineno"> 869</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L870"></a><tt class="py-lineno"> 870</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"DUALSTACK1: Point intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L871"></a><tt class="py-lineno"> 871</tt> <tt class="py-line"> <tt class="py-string">"successful using IPV4 type with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L872"></a><tt class="py-lineno"> 872</tt> <tt class="py-line"> <tt class="py-string">"MAC addresses"</tt><tt class="py-op">,</tt> </tt>
-<a name="L873"></a><tt class="py-lineno"> 873</tt> <tt class="py-line"> <tt id="link-164" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-164', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"DUALSTACK1: Point intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L874"></a><tt class="py-lineno"> 874</tt> <tt class="py-line"> <tt class="py-string">"failed using IPV4 type with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L875"></a><tt class="py-lineno"> 875</tt> <tt class="py-line"> <tt class="py-string">"MAC addresses"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L876"></a><tt class="py-lineno"> 876</tt> <tt class="py-line"> </tt>
-<a name="L877"></a><tt class="py-lineno"> 877</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-165" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-165', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"VLAN: Add point intents between h5 and h21"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L878"></a><tt class="py-lineno"> 878</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L879"></a><tt class="py-lineno"> 879</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">pointIntent</tt><tt class="py-op">(</tt> </tt>
-<a name="L880"></a><tt class="py-lineno"> 880</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L881"></a><tt class="py-lineno"> 881</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"VLAN"</tt><tt class="py-op">,</tt> </tt>
-<a name="L882"></a><tt class="py-lineno"> 882</tt> <tt class="py-line"> <tt class="py-name">host1</tt><tt class="py-op">=</tt><tt class="py-string">"h5"</tt><tt class="py-op">,</tt> </tt>
-<a name="L883"></a><tt class="py-lineno"> 883</tt> <tt class="py-line"> <tt class="py-name">host2</tt><tt class="py-op">=</tt><tt class="py-string">"h21"</tt><tt class="py-op">,</tt> </tt>
-<a name="L884"></a><tt class="py-lineno"> 884</tt> <tt class="py-line"> <tt class="py-name">deviceId1</tt><tt class="py-op">=</tt><tt class="py-string">"of:0000000000000005/5"</tt><tt class="py-op">,</tt> </tt>
-<a name="L885"></a><tt class="py-lineno"> 885</tt> <tt class="py-line"> <tt class="py-name">deviceId2</tt><tt class="py-op">=</tt><tt class="py-string">"of:0000000000000007/5"</tt><tt class="py-op">,</tt> </tt>
-<a name="L886"></a><tt class="py-lineno"> 886</tt> <tt class="py-line"> <tt class="py-name">port1</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L887"></a><tt class="py-lineno"> 887</tt> <tt class="py-line"> <tt class="py-name">port2</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L888"></a><tt class="py-lineno"> 888</tt> <tt class="py-line"> <tt class="py-name">ethType</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L889"></a><tt class="py-lineno"> 889</tt> <tt class="py-line"> <tt class="py-name">mac1</tt><tt class="py-op">=</tt><tt class="py-string">"00:00:00:00:00:05"</tt><tt class="py-op">,</tt> </tt>
-<a name="L890"></a><tt class="py-lineno"> 890</tt> <tt class="py-line"> <tt class="py-name">mac2</tt><tt class="py-op">=</tt><tt class="py-string">"00:00:00:00:00:15"</tt><tt class="py-op">,</tt> </tt>
-<a name="L891"></a><tt class="py-lineno"> 891</tt> <tt class="py-line"> <tt class="py-name">bandwidth</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L892"></a><tt class="py-lineno"> 892</tt> <tt class="py-line"> <tt class="py-name">lambdaAlloc</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> </tt>
-<a name="L893"></a><tt class="py-lineno"> 893</tt> <tt class="py-line"> <tt class="py-name">ipProto</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L894"></a><tt class="py-lineno"> 894</tt> <tt class="py-line"> <tt class="py-name">ip1</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L895"></a><tt class="py-lineno"> 895</tt> <tt class="py-line"> <tt class="py-name">ip2</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L896"></a><tt class="py-lineno"> 896</tt> <tt class="py-line"> <tt class="py-name">tcp1</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L897"></a><tt class="py-lineno"> 897</tt> <tt class="py-line"> <tt class="py-name">tcp2</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L898"></a><tt class="py-lineno"> 898</tt> <tt class="py-line"> <tt class="py-name">sw1</tt><tt class="py-op">=</tt><tt class="py-string">"s5"</tt><tt class="py-op">,</tt> </tt>
-<a name="L899"></a><tt class="py-lineno"> 899</tt> <tt class="py-line"> <tt class="py-name">sw2</tt><tt class="py-op">=</tt><tt class="py-string">"s2"</tt><tt class="py-op">,</tt> </tt>
-<a name="L900"></a><tt class="py-lineno"> 900</tt> <tt class="py-line"> <tt class="py-name">expectedLink</tt><tt class="py-op">=</tt><tt class="py-number">18</tt> <tt class="py-op">)</tt> </tt>
-<a name="L901"></a><tt class="py-lineno"> 901</tt> <tt class="py-line"> </tt>
-<a name="L902"></a><tt class="py-lineno"> 902</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L903"></a><tt class="py-lineno"> 903</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L904"></a><tt class="py-lineno"> 904</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"VLAN1: Point intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L905"></a><tt class="py-lineno"> 905</tt> <tt class="py-line"> <tt class="py-string">"successful using IPV4 type with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L906"></a><tt class="py-lineno"> 906</tt> <tt class="py-line"> <tt class="py-string">"MAC addresses"</tt><tt class="py-op">,</tt> </tt>
-<a name="L907"></a><tt class="py-lineno"> 907</tt> <tt class="py-line"> <tt id="link-166" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-166', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"VLAN1: Point intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L908"></a><tt class="py-lineno"> 908</tt> <tt class="py-line"> <tt class="py-string">"failed using IPV4 type with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L909"></a><tt class="py-lineno"> 909</tt> <tt class="py-line"> <tt class="py-string">"MAC addresses"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L910"></a><tt class="py-lineno"> 910</tt> <tt class="py-line"> </tt>
-<a name="L911"></a><tt class="py-lineno"> 911</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-167', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"1HOP: Add point intents between h1 and h3"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L912"></a><tt class="py-lineno"> 912</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L913"></a><tt class="py-lineno"> 913</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">hostIntent</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L914"></a><tt class="py-lineno"> 914</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">'1HOP'</tt><tt class="py-op">,</tt> </tt>
-<a name="L915"></a><tt class="py-lineno"> 915</tt> <tt class="py-line"> <tt class="py-name">host1</tt><tt class="py-op">=</tt><tt class="py-string">'h1'</tt><tt class="py-op">,</tt> </tt>
-<a name="L916"></a><tt class="py-lineno"> 916</tt> <tt class="py-line"> <tt class="py-name">host2</tt><tt class="py-op">=</tt><tt class="py-string">'h3'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L917"></a><tt class="py-lineno"> 917</tt> <tt class="py-line"> </tt>
-<a name="L918"></a><tt class="py-lineno"> 918</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L919"></a><tt class="py-lineno"> 919</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L920"></a><tt class="py-lineno"> 920</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"1HOP: Point intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L921"></a><tt class="py-lineno"> 921</tt> <tt class="py-line"> <tt class="py-string">"successful using IPV4 type with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L922"></a><tt class="py-lineno"> 922</tt> <tt class="py-line"> <tt class="py-string">"no MAC addresses"</tt><tt class="py-op">,</tt> </tt>
-<a name="L923"></a><tt class="py-lineno"> 923</tt> <tt class="py-line"> <tt id="link-168" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-168', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"1HOP: Point intent test "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L924"></a><tt class="py-lineno"> 924</tt> <tt class="py-line"> <tt class="py-string">"failed using IPV4 type with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L925"></a><tt class="py-lineno"> 925</tt> <tt class="py-line"> <tt class="py-string">"no MAC addresses"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L926"></a><tt class="py-lineno"> 926</tt> <tt class="py-line"> </tt>
-<a name="FUNCintent.CASE3000"></a><div id="FUNCintent.CASE3000-def"><a name="L927"></a><tt class="py-lineno"> 927</tt> <a class="py-toggle" href="#" id="FUNCintent.CASE3000-toggle" onclick="return toggle('FUNCintent.CASE3000');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE3000">CASE3000</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FUNCintent.CASE3000-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="FUNCintent.CASE3000-expanded"><a name="L928"></a><tt class="py-lineno"> 928</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L929"></a><tt class="py-lineno"> 929</tt> <tt class="py-line"><tt class="py-docstring"> Add single point to multi point intents</tt> </tt>
-<a name="L930"></a><tt class="py-lineno"> 930</tt> <tt class="py-line"><tt class="py-docstring"> - Get device ids</tt> </tt>
-<a name="L931"></a><tt class="py-lineno"> 931</tt> <tt class="py-line"><tt class="py-docstring"> - Add single point to multi point intents</tt> </tt>
-<a name="L932"></a><tt class="py-lineno"> 932</tt> <tt class="py-line"><tt class="py-docstring"> - Check intents</tt> </tt>
-<a name="L933"></a><tt class="py-lineno"> 933</tt> <tt class="py-line"><tt class="py-docstring"> - Verify flows</tt> </tt>
-<a name="L934"></a><tt class="py-lineno"> 934</tt> <tt class="py-line"><tt class="py-docstring"> - Ping hosts</tt> </tt>
-<a name="L935"></a><tt class="py-lineno"> 935</tt> <tt class="py-line"><tt class="py-docstring"> - Reroute</tt> </tt>
-<a name="L936"></a><tt class="py-lineno"> 936</tt> <tt class="py-line"><tt class="py-docstring"> - Link down</tt> </tt>
-<a name="L937"></a><tt class="py-lineno"> 937</tt> <tt class="py-line"><tt class="py-docstring"> - Verify flows</tt> </tt>
-<a name="L938"></a><tt class="py-lineno"> 938</tt> <tt class="py-line"><tt class="py-docstring"> - Check topology</tt> </tt>
-<a name="L939"></a><tt class="py-lineno"> 939</tt> <tt class="py-line"><tt class="py-docstring"> - Ping hosts</tt> </tt>
-<a name="L940"></a><tt class="py-lineno"> 940</tt> <tt class="py-line"><tt class="py-docstring"> - Link up</tt> </tt>
-<a name="L941"></a><tt class="py-lineno"> 941</tt> <tt class="py-line"><tt class="py-docstring"> - Verify flows</tt> </tt>
-<a name="L942"></a><tt class="py-lineno"> 942</tt> <tt class="py-line"><tt class="py-docstring"> - Check topology</tt> </tt>
-<a name="L943"></a><tt class="py-lineno"> 943</tt> <tt class="py-line"><tt class="py-docstring"> - Ping hosts</tt> </tt>
-<a name="L944"></a><tt class="py-lineno"> 944</tt> <tt class="py-line"><tt class="py-docstring"> - Remove intents</tt> </tt>
-<a name="L945"></a><tt class="py-lineno"> 945</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L946"></a><tt class="py-lineno"> 946</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"There is no main"</tt> </tt>
-<a name="L947"></a><tt class="py-lineno"> 947</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"There is no main.CLIs"</tt> </tt>
-<a name="L948"></a><tt class="py-lineno"> 948</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">,</tt> <tt class="py-string">"Mininet handle should be named Mininet1"</tt> </tt>
-<a name="L949"></a><tt class="py-lineno"> 949</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numSwitch</tt><tt class="py-op">,</tt> <tt class="py-string">"Placed the total number of switch topology in \</tt> </tt>
-<a name="L950"></a><tt class="py-lineno"> 950</tt> <tt class="py-line"><tt class="py-string"> main.numSwitch"</tt> </tt>
-<a name="L951"></a><tt class="py-lineno"> 951</tt> <tt class="py-line"> </tt>
-<a name="L952"></a><tt class="py-lineno"> 952</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testName</tt> <tt class="py-op">=</tt> <tt class="py-string">"Single to Multi Point Intents"</tt> </tt>
-<a name="L953"></a><tt class="py-lineno"> 953</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-169" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-169', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testName</tt> <tt class="py-op">+</tt> <tt class="py-string">" Test - "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L954"></a><tt class="py-lineno"> 954</tt> <tt class="py-line"> <tt class="py-string">" NODE(S) - OF "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">OFProtocol</tt> <tt class="py-op">)</tt> </tt>
-<a name="L955"></a><tt class="py-lineno"> 955</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"This test case will test single point to"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L956"></a><tt class="py-lineno"> 956</tt> <tt class="py-line"> <tt class="py-string">" multi point intents using "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L957"></a><tt class="py-lineno"> 957</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" node(s) cluster;\n"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L958"></a><tt class="py-lineno"> 958</tt> <tt class="py-line"> <tt class="py-string">"Different type of hosts will be tested in "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L959"></a><tt class="py-lineno"> 959</tt> <tt class="py-line"> <tt class="py-string">"each step such as IPV4, Dual stack, VLAN etc"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L960"></a><tt class="py-lineno"> 960</tt> <tt class="py-line"> <tt class="py-string">";\nThe test will use OF "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">OFProtocol</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L961"></a><tt class="py-lineno"> 961</tt> <tt class="py-line"> <tt class="py-string">" OVS running in Mininet"</tt> </tt>
-<a name="L962"></a><tt class="py-lineno"> 962</tt> <tt class="py-line"> </tt>
-<a name="L963"></a><tt class="py-lineno"> 963</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-170" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-170', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"NOOPTION: Add single point to multi point intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L964"></a><tt class="py-lineno"> 964</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L965"></a><tt class="py-lineno"> 965</tt> <tt class="py-line"> <tt class="py-name">hostNames</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'h8'</tt><tt class="py-op">,</tt> <tt class="py-string">'h16'</tt><tt class="py-op">,</tt> <tt class="py-string">'h24'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L966"></a><tt class="py-lineno"> 966</tt> <tt class="py-line"> <tt id="link-171" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-171', 'devices', 'link-51');">devices</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'of:0000000000000005/8'</tt><tt class="py-op">,</tt> <tt class="py-string">'of:0000000000000006/8'</tt><tt class="py-op">,</tt> \ </tt>
-<a name="L967"></a><tt class="py-lineno"> 967</tt> <tt class="py-line"> <tt class="py-string">'of:0000000000000007/8'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L968"></a><tt class="py-lineno"> 968</tt> <tt class="py-line"> <tt class="py-name">macs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'00:00:00:00:00:08'</tt><tt class="py-op">,</tt> <tt class="py-string">'00:00:00:00:00:10'</tt><tt class="py-op">,</tt> <tt class="py-string">'00:00:00:00:00:18'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L969"></a><tt class="py-lineno"> 969</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">singleToMultiIntent</tt><tt class="py-op">(</tt> </tt>
-<a name="L970"></a><tt class="py-lineno"> 970</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L971"></a><tt class="py-lineno"> 971</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"NOOPTION"</tt><tt class="py-op">,</tt> </tt>
-<a name="L972"></a><tt class="py-lineno"> 972</tt> <tt class="py-line"> <tt class="py-name">hostNames</tt><tt class="py-op">=</tt><tt class="py-name">hostNames</tt><tt class="py-op">,</tt> </tt>
-<a name="L973"></a><tt class="py-lineno"> 973</tt> <tt class="py-line"> <tt id="link-172" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-172', 'devices', 'link-51');">devices</a></tt><tt class="py-op">=</tt><tt id="link-173" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-173', 'devices', 'link-51');">devices</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L974"></a><tt class="py-lineno"> 974</tt> <tt class="py-line"> <tt class="py-name">sw1</tt><tt class="py-op">=</tt><tt class="py-string">"s5"</tt><tt class="py-op">,</tt> </tt>
-<a name="L975"></a><tt class="py-lineno"> 975</tt> <tt class="py-line"> <tt class="py-name">sw2</tt><tt class="py-op">=</tt><tt class="py-string">"s2"</tt><tt class="py-op">,</tt> </tt>
-<a name="L976"></a><tt class="py-lineno"> 976</tt> <tt class="py-line"> <tt class="py-name">expectedLink</tt><tt class="py-op">=</tt><tt class="py-number">18</tt> <tt class="py-op">)</tt> </tt>
-<a name="L977"></a><tt class="py-lineno"> 977</tt> <tt class="py-line"> </tt>
-<a name="L978"></a><tt class="py-lineno"> 978</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L979"></a><tt class="py-lineno"> 979</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L980"></a><tt class="py-lineno"> 980</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"NOOPTION: Successfully added single "</tt> </tt>
-<a name="L981"></a><tt class="py-lineno"> 981</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" point to multi point intents"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L982"></a><tt class="py-lineno"> 982</tt> <tt class="py-line"> <tt class="py-string">" with no match action"</tt><tt class="py-op">,</tt> </tt>
-<a name="L983"></a><tt class="py-lineno"> 983</tt> <tt class="py-line"> <tt id="link-174" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-174', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"NOOPTION: Failed to add single point"</tt> </tt>
-<a name="L984"></a><tt class="py-lineno"> 984</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" point to multi point intents"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L985"></a><tt class="py-lineno"> 985</tt> <tt class="py-line"> <tt class="py-string">" with no match action"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L986"></a><tt class="py-lineno"> 986</tt> <tt class="py-line"> </tt>
-<a name="L987"></a><tt class="py-lineno"> 987</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-175" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-175', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"IPV4: Add single point to multi point intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L988"></a><tt class="py-lineno"> 988</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L989"></a><tt class="py-lineno"> 989</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">singleToMultiIntent</tt><tt class="py-op">(</tt> </tt>
-<a name="L990"></a><tt class="py-lineno"> 990</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L991"></a><tt class="py-lineno"> 991</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L992"></a><tt class="py-lineno"> 992</tt> <tt class="py-line"> <tt class="py-name">hostNames</tt><tt class="py-op">=</tt><tt class="py-name">hostNames</tt><tt class="py-op">,</tt> </tt>
-<a name="L993"></a><tt class="py-lineno"> 993</tt> <tt class="py-line"> <tt id="link-176" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-176', 'devices', 'link-51');">devices</a></tt><tt class="py-op">=</tt><tt id="link-177" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-177', 'devices', 'link-51');">devices</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L994"></a><tt class="py-lineno"> 994</tt> <tt class="py-line"> <tt id="link-178" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-178', 'ports', 'link-53');">ports</a></tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L995"></a><tt class="py-lineno"> 995</tt> <tt class="py-line"> <tt class="py-name">ethType</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L996"></a><tt class="py-lineno"> 996</tt> <tt class="py-line"> <tt class="py-name">macs</tt><tt class="py-op">=</tt><tt class="py-name">macs</tt><tt class="py-op">,</tt> </tt>
-<a name="L997"></a><tt class="py-lineno"> 997</tt> <tt class="py-line"> <tt class="py-name">bandwidth</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L998"></a><tt class="py-lineno"> 998</tt> <tt class="py-line"> <tt class="py-name">lambdaAlloc</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> </tt>
-<a name="L999"></a><tt class="py-lineno"> 999</tt> <tt class="py-line"> <tt class="py-name">ipProto</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1000"></a><tt class="py-lineno">1000</tt> <tt class="py-line"> <tt class="py-name">ipAddresses</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1001"></a><tt class="py-lineno">1001</tt> <tt class="py-line"> <tt class="py-name">tcp</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1002"></a><tt class="py-lineno">1002</tt> <tt class="py-line"> <tt class="py-name">sw1</tt><tt class="py-op">=</tt><tt class="py-string">"s5"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1003"></a><tt class="py-lineno">1003</tt> <tt class="py-line"> <tt class="py-name">sw2</tt><tt class="py-op">=</tt><tt class="py-string">"s2"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1004"></a><tt class="py-lineno">1004</tt> <tt class="py-line"> <tt class="py-name">expectedLink</tt><tt class="py-op">=</tt><tt class="py-number">18</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1005"></a><tt class="py-lineno">1005</tt> <tt class="py-line"> </tt>
-<a name="L1006"></a><tt class="py-lineno">1006</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1007"></a><tt class="py-lineno">1007</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1008"></a><tt class="py-lineno">1008</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4: Successfully added single "</tt> </tt>
-<a name="L1009"></a><tt class="py-lineno">1009</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" point to multi point intents"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1010"></a><tt class="py-lineno">1010</tt> <tt class="py-line"> <tt class="py-string">" with IPV4 type and MAC addresses"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1011"></a><tt class="py-lineno">1011</tt> <tt class="py-line"> <tt id="link-179" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-179', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"IPV4: Failed to add single point"</tt> </tt>
-<a name="L1012"></a><tt class="py-lineno">1012</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" point to multi point intents"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1013"></a><tt class="py-lineno">1013</tt> <tt class="py-line"> <tt class="py-string">" with IPV4 type and MAC addresses"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1014"></a><tt class="py-lineno">1014</tt> <tt class="py-line"> </tt>
-<a name="L1015"></a><tt class="py-lineno">1015</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-180" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-180', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"IPV4_2: Add single point to multi point intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1016"></a><tt class="py-lineno">1016</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1017"></a><tt class="py-lineno">1017</tt> <tt class="py-line"> <tt class="py-name">hostNames</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'h8'</tt><tt class="py-op">,</tt> <tt class="py-string">'h16'</tt><tt class="py-op">,</tt> <tt class="py-string">'h24'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1018"></a><tt class="py-lineno">1018</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">singleToMultiIntent</tt><tt class="py-op">(</tt> </tt>
-<a name="L1019"></a><tt class="py-lineno">1019</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L1020"></a><tt class="py-lineno">1020</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1021"></a><tt class="py-lineno">1021</tt> <tt class="py-line"> <tt class="py-name">hostNames</tt><tt class="py-op">=</tt><tt class="py-name">hostNames</tt><tt class="py-op">,</tt> </tt>
-<a name="L1022"></a><tt class="py-lineno">1022</tt> <tt class="py-line"> <tt class="py-name">ethType</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1023"></a><tt class="py-lineno">1023</tt> <tt class="py-line"> <tt class="py-name">lambdaAlloc</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1024"></a><tt class="py-lineno">1024</tt> <tt class="py-line"> </tt>
-<a name="L1025"></a><tt class="py-lineno">1025</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1026"></a><tt class="py-lineno">1026</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1027"></a><tt class="py-lineno">1027</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4_2: Successfully added single "</tt> </tt>
-<a name="L1028"></a><tt class="py-lineno">1028</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" point to multi point intents"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1029"></a><tt class="py-lineno">1029</tt> <tt class="py-line"> <tt class="py-string">" with IPV4 type and no MAC addresses"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1030"></a><tt class="py-lineno">1030</tt> <tt class="py-line"> <tt id="link-181" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-181', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"IPV4_2: Failed to add single point"</tt> </tt>
-<a name="L1031"></a><tt class="py-lineno">1031</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" point to multi point intents"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1032"></a><tt class="py-lineno">1032</tt> <tt class="py-line"> <tt class="py-string">" with IPV4 type and no MAC addresses"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1033"></a><tt class="py-lineno">1033</tt> <tt class="py-line"> </tt>
-<a name="L1034"></a><tt class="py-lineno">1034</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-182" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-182', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"VLAN: Add single point to multi point intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1035"></a><tt class="py-lineno">1035</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1036"></a><tt class="py-lineno">1036</tt> <tt class="py-line"> <tt class="py-name">hostNames</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'h4'</tt><tt class="py-op">,</tt> <tt class="py-string">'h12'</tt><tt class="py-op">,</tt> <tt class="py-string">'h20'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1037"></a><tt class="py-lineno">1037</tt> <tt class="py-line"> <tt id="link-183" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-183', 'devices', 'link-51');">devices</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'of:0000000000000005/4'</tt><tt class="py-op">,</tt> <tt class="py-string">'of:0000000000000006/4'</tt><tt class="py-op">,</tt> \ </tt>
-<a name="L1038"></a><tt class="py-lineno">1038</tt> <tt class="py-line"> <tt class="py-string">'of:0000000000000007/4'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1039"></a><tt class="py-lineno">1039</tt> <tt class="py-line"> <tt class="py-name">macs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'00:00:00:00:00:04'</tt><tt class="py-op">,</tt> <tt class="py-string">'00:00:00:00:00:0C'</tt><tt class="py-op">,</tt> <tt class="py-string">'00:00:00:00:00:14'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1040"></a><tt class="py-lineno">1040</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">singleToMultiIntent</tt><tt class="py-op">(</tt> </tt>
-<a name="L1041"></a><tt class="py-lineno">1041</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L1042"></a><tt class="py-lineno">1042</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"VLAN"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1043"></a><tt class="py-lineno">1043</tt> <tt class="py-line"> <tt class="py-name">hostNames</tt><tt class="py-op">=</tt><tt class="py-name">hostNames</tt><tt class="py-op">,</tt> </tt>
-<a name="L1044"></a><tt class="py-lineno">1044</tt> <tt class="py-line"> <tt id="link-184" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-184', 'devices', 'link-51');">devices</a></tt><tt class="py-op">=</tt><tt id="link-185" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-185', 'devices', 'link-51');">devices</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1045"></a><tt class="py-lineno">1045</tt> <tt class="py-line"> <tt id="link-186" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-186', 'ports', 'link-53');">ports</a></tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L1046"></a><tt class="py-lineno">1046</tt> <tt class="py-line"> <tt class="py-name">ethType</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1047"></a><tt class="py-lineno">1047</tt> <tt class="py-line"> <tt class="py-name">macs</tt><tt class="py-op">=</tt><tt class="py-name">macs</tt><tt class="py-op">,</tt> </tt>
-<a name="L1048"></a><tt class="py-lineno">1048</tt> <tt class="py-line"> <tt class="py-name">bandwidth</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1049"></a><tt class="py-lineno">1049</tt> <tt class="py-line"> <tt class="py-name">lambdaAlloc</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> </tt>
-<a name="L1050"></a><tt class="py-lineno">1050</tt> <tt class="py-line"> <tt class="py-name">ipProto</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1051"></a><tt class="py-lineno">1051</tt> <tt class="py-line"> <tt class="py-name">ipAddresses</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1052"></a><tt class="py-lineno">1052</tt> <tt class="py-line"> <tt class="py-name">tcp</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1053"></a><tt class="py-lineno">1053</tt> <tt class="py-line"> <tt class="py-name">sw1</tt><tt class="py-op">=</tt><tt class="py-string">"s5"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1054"></a><tt class="py-lineno">1054</tt> <tt class="py-line"> <tt class="py-name">sw2</tt><tt class="py-op">=</tt><tt class="py-string">"s2"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1055"></a><tt class="py-lineno">1055</tt> <tt class="py-line"> <tt class="py-name">expectedLink</tt><tt class="py-op">=</tt><tt class="py-number">18</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1056"></a><tt class="py-lineno">1056</tt> <tt class="py-line"> </tt>
-<a name="L1057"></a><tt class="py-lineno">1057</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1058"></a><tt class="py-lineno">1058</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1059"></a><tt class="py-lineno">1059</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"VLAN: Successfully added single "</tt> </tt>
-<a name="L1060"></a><tt class="py-lineno">1060</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" point to multi point intents"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1061"></a><tt class="py-lineno">1061</tt> <tt class="py-line"> <tt class="py-string">" with IPV4 type and MAC addresses"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1062"></a><tt class="py-lineno">1062</tt> <tt class="py-line"> <tt class="py-string">" in the same VLAN"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1063"></a><tt class="py-lineno">1063</tt> <tt class="py-line"> <tt id="link-187" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-187', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"VLAN: Failed to add single point"</tt> </tt>
-<a name="L1064"></a><tt class="py-lineno">1064</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" point to multi point intents"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1065"></a><tt class="py-lineno">1065</tt> <tt class="py-line"> <tt class="py-string">" with IPV4 type and MAC addresses"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1066"></a><tt class="py-lineno">1066</tt> <tt class="py-line"> <tt class="py-string">" in the same VLAN"</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1067"></a><tt class="py-lineno">1067</tt> <tt class="py-line"> </tt>
-<a name="FUNCintent.CASE4000"></a><div id="FUNCintent.CASE4000-def"><a name="L1068"></a><tt class="py-lineno">1068</tt> <a class="py-toggle" href="#" id="FUNCintent.CASE4000-toggle" onclick="return toggle('FUNCintent.CASE4000');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE4000">CASE4000</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FUNCintent.CASE4000-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="FUNCintent.CASE4000-expanded"><a name="L1069"></a><tt class="py-lineno">1069</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1070"></a><tt class="py-lineno">1070</tt> <tt class="py-line"><tt class="py-docstring"> Add multi point to single point intents</tt> </tt>
-<a name="L1071"></a><tt class="py-lineno">1071</tt> <tt class="py-line"><tt class="py-docstring"> - Get device ids</tt> </tt>
-<a name="L1072"></a><tt class="py-lineno">1072</tt> <tt class="py-line"><tt class="py-docstring"> - Add multi point to single point intents</tt> </tt>
-<a name="L1073"></a><tt class="py-lineno">1073</tt> <tt class="py-line"><tt class="py-docstring"> - Check intents</tt> </tt>
-<a name="L1074"></a><tt class="py-lineno">1074</tt> <tt class="py-line"><tt class="py-docstring"> - Verify flows</tt> </tt>
-<a name="L1075"></a><tt class="py-lineno">1075</tt> <tt class="py-line"><tt class="py-docstring"> - Ping hosts</tt> </tt>
-<a name="L1076"></a><tt class="py-lineno">1076</tt> <tt class="py-line"><tt class="py-docstring"> - Reroute</tt> </tt>
-<a name="L1077"></a><tt class="py-lineno">1077</tt> <tt class="py-line"><tt class="py-docstring"> - Link down</tt> </tt>
-<a name="L1078"></a><tt class="py-lineno">1078</tt> <tt class="py-line"><tt class="py-docstring"> - Verify flows</tt> </tt>
-<a name="L1079"></a><tt class="py-lineno">1079</tt> <tt class="py-line"><tt class="py-docstring"> - Check topology</tt> </tt>
-<a name="L1080"></a><tt class="py-lineno">1080</tt> <tt class="py-line"><tt class="py-docstring"> - Ping hosts</tt> </tt>
-<a name="L1081"></a><tt class="py-lineno">1081</tt> <tt class="py-line"><tt class="py-docstring"> - Link up</tt> </tt>
-<a name="L1082"></a><tt class="py-lineno">1082</tt> <tt class="py-line"><tt class="py-docstring"> - Verify flows</tt> </tt>
-<a name="L1083"></a><tt class="py-lineno">1083</tt> <tt class="py-line"><tt class="py-docstring"> - Check topology</tt> </tt>
-<a name="L1084"></a><tt class="py-lineno">1084</tt> <tt class="py-line"><tt class="py-docstring"> - Ping hosts</tt> </tt>
-<a name="L1085"></a><tt class="py-lineno">1085</tt> <tt class="py-line"><tt class="py-docstring"> - Remove intents</tt> </tt>
-<a name="L1086"></a><tt class="py-lineno">1086</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1087"></a><tt class="py-lineno">1087</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"There is no main"</tt> </tt>
-<a name="L1088"></a><tt class="py-lineno">1088</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"There is no main.CLIs"</tt> </tt>
-<a name="L1089"></a><tt class="py-lineno">1089</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">,</tt> <tt class="py-string">"Mininet handle should be named Mininet1"</tt> </tt>
-<a name="L1090"></a><tt class="py-lineno">1090</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numSwitch</tt><tt class="py-op">,</tt> <tt class="py-string">"Placed the total number of switch topology in \</tt> </tt>
-<a name="L1091"></a><tt class="py-lineno">1091</tt> <tt class="py-line"><tt class="py-string"> main.numSwitch"</tt> </tt>
-<a name="L1092"></a><tt class="py-lineno">1092</tt> <tt class="py-line"> </tt>
-<a name="L1093"></a><tt class="py-lineno">1093</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testName</tt> <tt class="py-op">=</tt> <tt class="py-string">"Multi To Single Point Intents"</tt> </tt>
-<a name="L1094"></a><tt class="py-lineno">1094</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-188" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-188', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testName</tt> <tt class="py-op">+</tt> <tt class="py-string">" Test - "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1095"></a><tt class="py-lineno">1095</tt> <tt class="py-line"> <tt class="py-string">" NODE(S) - OF "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">OFProtocol</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1096"></a><tt class="py-lineno">1096</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"This test case will test single point to"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1097"></a><tt class="py-lineno">1097</tt> <tt class="py-line"> <tt class="py-string">" multi point intents using "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1098"></a><tt class="py-lineno">1098</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" node(s) cluster;\n"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1099"></a><tt class="py-lineno">1099</tt> <tt class="py-line"> <tt class="py-string">"Different type of hosts will be tested in "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1100"></a><tt class="py-lineno">1100</tt> <tt class="py-line"> <tt class="py-string">"each step such as IPV4, Dual stack, VLAN etc"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1101"></a><tt class="py-lineno">1101</tt> <tt class="py-line"> <tt class="py-string">";\nThe test will use OF "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">OFProtocol</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1102"></a><tt class="py-lineno">1102</tt> <tt class="py-line"> <tt class="py-string">" OVS running in Mininet"</tt> </tt>
-<a name="L1103"></a><tt class="py-lineno">1103</tt> <tt class="py-line"> </tt>
-<a name="L1104"></a><tt class="py-lineno">1104</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-189" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-189', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"NOOPTION: Add multi point to single point intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1105"></a><tt class="py-lineno">1105</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1106"></a><tt class="py-lineno">1106</tt> <tt class="py-line"> <tt class="py-name">hostNames</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'h8'</tt><tt class="py-op">,</tt> <tt class="py-string">'h16'</tt><tt class="py-op">,</tt> <tt class="py-string">'h24'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1107"></a><tt class="py-lineno">1107</tt> <tt class="py-line"> <tt id="link-190" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-190', 'devices', 'link-51');">devices</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'of:0000000000000005/8'</tt><tt class="py-op">,</tt> <tt class="py-string">'of:0000000000000006/8'</tt><tt class="py-op">,</tt> \ </tt>
-<a name="L1108"></a><tt class="py-lineno">1108</tt> <tt class="py-line"> <tt class="py-string">'of:0000000000000007/8'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1109"></a><tt class="py-lineno">1109</tt> <tt class="py-line"> <tt class="py-name">macs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'00:00:00:00:00:08'</tt><tt class="py-op">,</tt> <tt class="py-string">'00:00:00:00:00:10'</tt><tt class="py-op">,</tt> <tt class="py-string">'00:00:00:00:00:18'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1110"></a><tt class="py-lineno">1110</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">multiToSingleIntent</tt><tt class="py-op">(</tt> </tt>
-<a name="L1111"></a><tt class="py-lineno">1111</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L1112"></a><tt class="py-lineno">1112</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"NOOPTION"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1113"></a><tt class="py-lineno">1113</tt> <tt class="py-line"> <tt class="py-name">hostNames</tt><tt class="py-op">=</tt><tt class="py-name">hostNames</tt><tt class="py-op">,</tt> </tt>
-<a name="L1114"></a><tt class="py-lineno">1114</tt> <tt class="py-line"> <tt id="link-191" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-191', 'devices', 'link-51');">devices</a></tt><tt class="py-op">=</tt><tt id="link-192" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-192', 'devices', 'link-51');">devices</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1115"></a><tt class="py-lineno">1115</tt> <tt class="py-line"> <tt class="py-name">sw1</tt><tt class="py-op">=</tt><tt class="py-string">"s5"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1116"></a><tt class="py-lineno">1116</tt> <tt class="py-line"> <tt class="py-name">sw2</tt><tt class="py-op">=</tt><tt class="py-string">"s2"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1117"></a><tt class="py-lineno">1117</tt> <tt class="py-line"> <tt class="py-name">expectedLink</tt><tt class="py-op">=</tt><tt class="py-number">18</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1118"></a><tt class="py-lineno">1118</tt> <tt class="py-line"> </tt>
-<a name="L1119"></a><tt class="py-lineno">1119</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1120"></a><tt class="py-lineno">1120</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1121"></a><tt class="py-lineno">1121</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"NOOPTION: Successfully added multi "</tt> </tt>
-<a name="L1122"></a><tt class="py-lineno">1122</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" point to single point intents"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1123"></a><tt class="py-lineno">1123</tt> <tt class="py-line"> <tt class="py-string">" with no match action"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1124"></a><tt class="py-lineno">1124</tt> <tt class="py-line"> <tt id="link-193" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-193', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"NOOPTION: Failed to add multi point"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1125"></a><tt class="py-lineno">1125</tt> <tt class="py-line"> <tt class="py-string">" to single point intents"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1126"></a><tt class="py-lineno">1126</tt> <tt class="py-line"> <tt class="py-string">" with no match action"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1127"></a><tt class="py-lineno">1127</tt> <tt class="py-line"> </tt>
-<a name="L1128"></a><tt class="py-lineno">1128</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-194" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-194', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"IPV4: Add multi point to single point intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1129"></a><tt class="py-lineno">1129</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1130"></a><tt class="py-lineno">1130</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">multiToSingleIntent</tt><tt class="py-op">(</tt> </tt>
-<a name="L1131"></a><tt class="py-lineno">1131</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L1132"></a><tt class="py-lineno">1132</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1133"></a><tt class="py-lineno">1133</tt> <tt class="py-line"> <tt class="py-name">hostNames</tt><tt class="py-op">=</tt><tt class="py-name">hostNames</tt><tt class="py-op">,</tt> </tt>
-<a name="L1134"></a><tt class="py-lineno">1134</tt> <tt class="py-line"> <tt id="link-195" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-195', 'devices', 'link-51');">devices</a></tt><tt class="py-op">=</tt><tt id="link-196" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-196', 'devices', 'link-51');">devices</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1135"></a><tt class="py-lineno">1135</tt> <tt class="py-line"> <tt id="link-197" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-197', 'ports', 'link-53');">ports</a></tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L1136"></a><tt class="py-lineno">1136</tt> <tt class="py-line"> <tt class="py-name">ethType</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1137"></a><tt class="py-lineno">1137</tt> <tt class="py-line"> <tt class="py-name">macs</tt><tt class="py-op">=</tt><tt class="py-name">macs</tt><tt class="py-op">,</tt> </tt>
-<a name="L1138"></a><tt class="py-lineno">1138</tt> <tt class="py-line"> <tt class="py-name">bandwidth</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1139"></a><tt class="py-lineno">1139</tt> <tt class="py-line"> <tt class="py-name">lambdaAlloc</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> </tt>
-<a name="L1140"></a><tt class="py-lineno">1140</tt> <tt class="py-line"> <tt class="py-name">ipProto</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1141"></a><tt class="py-lineno">1141</tt> <tt class="py-line"> <tt class="py-name">ipAddresses</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1142"></a><tt class="py-lineno">1142</tt> <tt class="py-line"> <tt class="py-name">tcp</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1143"></a><tt class="py-lineno">1143</tt> <tt class="py-line"> <tt class="py-name">sw1</tt><tt class="py-op">=</tt><tt class="py-string">"s5"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1144"></a><tt class="py-lineno">1144</tt> <tt class="py-line"> <tt class="py-name">sw2</tt><tt class="py-op">=</tt><tt class="py-string">"s2"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1145"></a><tt class="py-lineno">1145</tt> <tt class="py-line"> <tt class="py-name">expectedLink</tt><tt class="py-op">=</tt><tt class="py-number">18</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1146"></a><tt class="py-lineno">1146</tt> <tt class="py-line"> </tt>
-<a name="L1147"></a><tt class="py-lineno">1147</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1148"></a><tt class="py-lineno">1148</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1149"></a><tt class="py-lineno">1149</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4: Successfully added multi point"</tt> </tt>
-<a name="L1150"></a><tt class="py-lineno">1150</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" to single point intents"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1151"></a><tt class="py-lineno">1151</tt> <tt class="py-line"> <tt class="py-string">" with IPV4 type and MAC addresses"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1152"></a><tt class="py-lineno">1152</tt> <tt class="py-line"> <tt id="link-198" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-198', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"IPV4: Failed to add multi point"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1153"></a><tt class="py-lineno">1153</tt> <tt class="py-line"> <tt class="py-string">" to single point intents"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1154"></a><tt class="py-lineno">1154</tt> <tt class="py-line"> <tt class="py-string">" with IPV4 type and MAC addresses"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1155"></a><tt class="py-lineno">1155</tt> <tt class="py-line"> </tt>
-<a name="L1156"></a><tt class="py-lineno">1156</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-199" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-199', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"IPV4_2: Add multi point to single point intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1157"></a><tt class="py-lineno">1157</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1158"></a><tt class="py-lineno">1158</tt> <tt class="py-line"> <tt class="py-name">hostNames</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'h8'</tt><tt class="py-op">,</tt> <tt class="py-string">'h16'</tt><tt class="py-op">,</tt> <tt class="py-string">'h24'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1159"></a><tt class="py-lineno">1159</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">multiToSingleIntent</tt><tt class="py-op">(</tt> </tt>
-<a name="L1160"></a><tt class="py-lineno">1160</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L1161"></a><tt class="py-lineno">1161</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1162"></a><tt class="py-lineno">1162</tt> <tt class="py-line"> <tt class="py-name">hostNames</tt><tt class="py-op">=</tt><tt class="py-name">hostNames</tt><tt class="py-op">,</tt> </tt>
-<a name="L1163"></a><tt class="py-lineno">1163</tt> <tt class="py-line"> <tt class="py-name">ethType</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1164"></a><tt class="py-lineno">1164</tt> <tt class="py-line"> <tt class="py-name">lambdaAlloc</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1165"></a><tt class="py-lineno">1165</tt> <tt class="py-line"> </tt>
-<a name="L1166"></a><tt class="py-lineno">1166</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1167"></a><tt class="py-lineno">1167</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1168"></a><tt class="py-lineno">1168</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4_2: Successfully added multi point"</tt> </tt>
-<a name="L1169"></a><tt class="py-lineno">1169</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" to single point intents"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1170"></a><tt class="py-lineno">1170</tt> <tt class="py-line"> <tt class="py-string">" with IPV4 type and no MAC addresses"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1171"></a><tt class="py-lineno">1171</tt> <tt class="py-line"> <tt id="link-200" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-200', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"IPV4_2: Failed to add multi point"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1172"></a><tt class="py-lineno">1172</tt> <tt class="py-line"> <tt class="py-string">" to single point intents"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1173"></a><tt class="py-lineno">1173</tt> <tt class="py-line"> <tt class="py-string">" with IPV4 type and no MAC addresses"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1174"></a><tt class="py-lineno">1174</tt> <tt class="py-line"> </tt>
-<a name="L1175"></a><tt class="py-lineno">1175</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-201" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-201', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"VLAN: Add multi point to single point intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1176"></a><tt class="py-lineno">1176</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1177"></a><tt class="py-lineno">1177</tt> <tt class="py-line"> <tt class="py-name">hostNames</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'h5'</tt><tt class="py-op">,</tt> <tt class="py-string">'h13'</tt><tt class="py-op">,</tt> <tt class="py-string">'h21'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1178"></a><tt class="py-lineno">1178</tt> <tt class="py-line"> <tt id="link-202" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-202', 'devices', 'link-51');">devices</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'of:0000000000000005/5'</tt><tt class="py-op">,</tt> <tt class="py-string">'of:0000000000000006/5'</tt><tt class="py-op">,</tt> \ </tt>
-<a name="L1179"></a><tt class="py-lineno">1179</tt> <tt class="py-line"> <tt class="py-string">'of:0000000000000007/5'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1180"></a><tt class="py-lineno">1180</tt> <tt class="py-line"> <tt class="py-name">macs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'00:00:00:00:00:05'</tt><tt class="py-op">,</tt> <tt class="py-string">'00:00:00:00:00:0D'</tt><tt class="py-op">,</tt> <tt class="py-string">'00:00:00:00:00:15'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1181"></a><tt class="py-lineno">1181</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">multiToSingleIntent</tt><tt class="py-op">(</tt> </tt>
-<a name="L1182"></a><tt class="py-lineno">1182</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L1183"></a><tt class="py-lineno">1183</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"VLAN"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1184"></a><tt class="py-lineno">1184</tt> <tt class="py-line"> <tt class="py-name">hostNames</tt><tt class="py-op">=</tt><tt class="py-name">hostNames</tt><tt class="py-op">,</tt> </tt>
-<a name="L1185"></a><tt class="py-lineno">1185</tt> <tt class="py-line"> <tt id="link-203" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-203', 'devices', 'link-51');">devices</a></tt><tt class="py-op">=</tt><tt id="link-204" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-204', 'devices', 'link-51');">devices</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1186"></a><tt class="py-lineno">1186</tt> <tt class="py-line"> <tt id="link-205" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-205', 'ports', 'link-53');">ports</a></tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L1187"></a><tt class="py-lineno">1187</tt> <tt class="py-line"> <tt class="py-name">ethType</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1188"></a><tt class="py-lineno">1188</tt> <tt class="py-line"> <tt class="py-name">macs</tt><tt class="py-op">=</tt><tt class="py-name">macs</tt><tt class="py-op">,</tt> </tt>
-<a name="L1189"></a><tt class="py-lineno">1189</tt> <tt class="py-line"> <tt class="py-name">bandwidth</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1190"></a><tt class="py-lineno">1190</tt> <tt class="py-line"> <tt class="py-name">lambdaAlloc</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> </tt>
-<a name="L1191"></a><tt class="py-lineno">1191</tt> <tt class="py-line"> <tt class="py-name">ipProto</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1192"></a><tt class="py-lineno">1192</tt> <tt class="py-line"> <tt class="py-name">ipAddresses</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1193"></a><tt class="py-lineno">1193</tt> <tt class="py-line"> <tt class="py-name">tcp</tt><tt class="py-op">=</tt><tt class="py-string">""</tt><tt class="py-op">,</tt> </tt>
-<a name="L1194"></a><tt class="py-lineno">1194</tt> <tt class="py-line"> <tt class="py-name">sw1</tt><tt class="py-op">=</tt><tt class="py-string">"s5"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1195"></a><tt class="py-lineno">1195</tt> <tt class="py-line"> <tt class="py-name">sw2</tt><tt class="py-op">=</tt><tt class="py-string">"s2"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1196"></a><tt class="py-lineno">1196</tt> <tt class="py-line"> <tt class="py-name">expectedLink</tt><tt class="py-op">=</tt><tt class="py-number">18</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1197"></a><tt class="py-lineno">1197</tt> <tt class="py-line"> </tt>
-<a name="L1198"></a><tt class="py-lineno">1198</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1199"></a><tt class="py-lineno">1199</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1200"></a><tt class="py-lineno">1200</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"VLAN: Successfully added multi point"</tt> </tt>
-<a name="L1201"></a><tt class="py-lineno">1201</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" to single point intents"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1202"></a><tt class="py-lineno">1202</tt> <tt class="py-line"> <tt class="py-string">" with IPV4 type and MAC addresses"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1203"></a><tt class="py-lineno">1203</tt> <tt class="py-line"> <tt class="py-string">" in the same VLAN"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1204"></a><tt class="py-lineno">1204</tt> <tt class="py-line"> <tt id="link-206" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-206', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"VLAN: Failed to add multi point"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1205"></a><tt class="py-lineno">1205</tt> <tt class="py-line"> <tt class="py-string">" to single point intents"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1206"></a><tt class="py-lineno">1206</tt> <tt class="py-line"> </tt>
-<a name="FUNCintent.CASE5000"></a><div id="FUNCintent.CASE5000-def"><a name="L1207"></a><tt class="py-lineno">1207</tt> <a class="py-toggle" href="#" id="FUNCintent.CASE5000-toggle" onclick="return toggle('FUNCintent.CASE5000');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE5000">CASE5000</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="FUNCintent.CASE5000-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="FUNCintent.CASE5000-expanded"><a name="L1208"></a><tt class="py-lineno">1208</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1209"></a><tt class="py-lineno">1209</tt> <tt class="py-line"><tt class="py-docstring"> Will add description in next patch set</tt> </tt>
-<a name="L1210"></a><tt class="py-lineno">1210</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1211"></a><tt class="py-lineno">1211</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"There is no main"</tt> </tt>
-<a name="L1212"></a><tt class="py-lineno">1212</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"There is no main.CLIs"</tt> </tt>
-<a name="L1213"></a><tt class="py-lineno">1213</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">,</tt> <tt class="py-string">"Mininet handle should be named Mininet1"</tt> </tt>
-<a name="L1214"></a><tt class="py-lineno">1214</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numSwitch</tt><tt class="py-op">,</tt> <tt class="py-string">"Placed the total number of switch topology in \</tt> </tt>
-<a name="L1215"></a><tt class="py-lineno">1215</tt> <tt class="py-line"><tt class="py-string"> main.numSwitch"</tt> </tt>
-<a name="L1216"></a><tt class="py-lineno">1216</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-207" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-207', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Test host mobility with host intents "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1217"></a><tt class="py-lineno">1217</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-208" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-208', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">" Testing host mobility by moving h1 from s5 to s6"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1218"></a><tt class="py-lineno">1218</tt> <tt class="py-line"> <tt class="py-name">h1PreMove</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostsData</tt><tt class="py-op">[</tt> <tt class="py-string">"h1"</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">"location"</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt><tt class="py-number">19</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1219"></a><tt class="py-lineno">1219</tt> <tt class="py-line"> </tt>
-<a name="L1220"></a><tt class="py-lineno">1220</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-209" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-209', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Moving h1 from s5 to s6"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1221"></a><tt class="py-lineno">1221</tt> <tt class="py-line"> </tt>
-<a name="L1222"></a><tt class="py-lineno">1222</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-210" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.moveHost()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#moveHost"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.moveHost" class="py-name" href="#" onclick="return doclink('link-210', 'moveHost', 'link-210');">moveHost</a></tt><tt class="py-op">(</tt> <tt class="py-string">"h1"</tt><tt class="py-op">,</tt><tt class="py-string">"s5"</tt><tt class="py-op">,</tt><tt class="py-string">"s6"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1223"></a><tt class="py-lineno">1223</tt> <tt class="py-line"> </tt>
-<a name="L1224"></a><tt class="py-lineno">1224</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">getHostsData</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1225"></a><tt class="py-lineno">1225</tt> <tt class="py-line"> <tt class="py-name">h1PostMove</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostsData</tt><tt class="py-op">[</tt> <tt class="py-string">"h1"</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">"location"</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt><tt class="py-number">19</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1226"></a><tt class="py-lineno">1226</tt> <tt class="py-line"> </tt>
-<a name="L1227"></a><tt class="py-lineno">1227</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-string">"of:0000000000000006"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1228"></a><tt class="py-lineno">1228</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">h1PostMove</tt><tt class="py-op">,</tt> </tt>
-<a name="L1229"></a><tt class="py-lineno">1229</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Mobility: Successfully moved h1 to s6"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1230"></a><tt class="py-lineno">1230</tt> <tt class="py-line"> <tt id="link-211" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-211', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Mobility: Failed to moved h1 to s6"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1231"></a><tt class="py-lineno">1231</tt> <tt class="py-line"> <tt class="py-string">" to single point intents"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1232"></a><tt class="py-lineno">1232</tt> <tt class="py-line"> <tt class="py-string">" with IPV4 type and MAC addresses"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1233"></a><tt class="py-lineno">1233</tt> <tt class="py-line"> <tt class="py-string">" in the same VLAN"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1234"></a><tt class="py-lineno">1234</tt> <tt class="py-line"> </tt>
-<a name="L1235"></a><tt class="py-lineno">1235</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-212" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-212', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"IPV4: Add host intents between h1 and h9"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1236"></a><tt class="py-lineno">1236</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1237"></a><tt class="py-lineno">1237</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">intentFunction</tt><tt class="py-op">.</tt><tt class="py-name">hostIntent</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L1238"></a><tt class="py-lineno">1238</tt> <tt class="py-line"> <tt class="py-name">onosNode</tt><tt class="py-op">=</tt><tt class="py-string">'0'</tt><tt class="py-op">,</tt> </tt>
-<a name="L1239"></a><tt class="py-lineno">1239</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">'IPV4'</tt><tt class="py-op">,</tt> </tt>
-<a name="L1240"></a><tt class="py-lineno">1240</tt> <tt class="py-line"> <tt class="py-name">host1</tt><tt class="py-op">=</tt><tt class="py-string">'h1'</tt><tt class="py-op">,</tt> </tt>
-<a name="L1241"></a><tt class="py-lineno">1241</tt> <tt class="py-line"> <tt class="py-name">host2</tt><tt class="py-op">=</tt><tt class="py-string">'h9'</tt><tt class="py-op">,</tt> </tt>
-<a name="L1242"></a><tt class="py-lineno">1242</tt> <tt class="py-line"> <tt class="py-name">host1Id</tt><tt class="py-op">=</tt><tt class="py-string">'00:00:00:00:00:01/-1'</tt><tt class="py-op">,</tt> </tt>
-<a name="L1243"></a><tt class="py-lineno">1243</tt> <tt class="py-line"> <tt class="py-name">host2Id</tt><tt class="py-op">=</tt><tt class="py-string">'00:00:00:00:00:09/-1'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1244"></a><tt class="py-lineno">1244</tt> <tt class="py-line"> </tt>
-<a name="L1245"></a><tt class="py-lineno">1245</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1246"></a><tt class="py-lineno">1246</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1247"></a><tt class="py-lineno">1247</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"IPV4: Host intent test successful "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1248"></a><tt class="py-lineno">1248</tt> <tt class="py-line"> <tt class="py-string">"between two IPV4 hosts"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1249"></a><tt class="py-lineno">1249</tt> <tt class="py-line"> <tt id="link-213" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-213', 'onfail', 'link-14');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"IPV4: Host intent test failed "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1250"></a><tt class="py-lineno">1250</tt> <tt class="py-line"> <tt class="py-string">"between two IPV4 hosts"</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L1251"></a><tt class="py-lineno">1251</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html b/TestON/Documentation/TestON_Document/TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html
deleted file mode 100644
index 2a6eade..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html
+++ /dev/null
@@ -1,749 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.FUNCintent.FUNCintent.FUNCintent</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.FUNCintent-module.html">Package FUNCintent</a> ::
- <a href="TestON.tests.FUNCintent.FUNCintent-module.html">Module FUNCintent</a> ::
- Class FUNCintent
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class FUNCintent</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1"></a><span class="summary-sig-name">CASE1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE2" class="summary-sig-name">CASE2</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Set up cell</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE8"></a><span class="summary-sig-name">CASE8</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Compare Topo</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE8">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE9"></a><span class="summary-sig-name">CASE9</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Report errors/warnings/exceptions</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE9">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE10"></a><span class="summary-sig-name">CASE10</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Start Mininet topology with OF 1.0 switches</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE10">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE11"></a><span class="summary-sig-name">CASE11</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Start Mininet topology with OF 1.3 switches</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE11">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE12"></a><span class="summary-sig-name">CASE12</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Assign mastership to controllers</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE12">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE13"></a><span class="summary-sig-name">CASE13</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Discover all hosts and store its data to a dictionary</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE13">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE14"></a><span class="summary-sig-name">CASE14</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Stop mininet</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE14">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE1000" class="summary-sig-name">CASE1000</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Add host intents between 2 host:</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE1000">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE2000" class="summary-sig-name">CASE2000</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Add point intents between 2 hosts:</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE2000">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE3000" class="summary-sig-name">CASE3000</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Add single point to multi point intents</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE3000">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE4000" class="summary-sig-name">CASE4000</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Add multi point to single point intents</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE4000">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE5000"></a><span class="summary-sig-name">CASE5000</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Will add description in next patch set</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE5000">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="CASE2"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">CASE2</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">main</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE2">source code</a></span>
- </td>
- </tr></table>
-
- <ul>
- <li>
- Set up cell
- <ul>
- <li>
- Create cell file
- </li>
- <li>
- Set cell file
- </li>
- <li>
- Verify cell file
- </li>
- </ul>
- </li>
- <li>
- Kill ONOS process
- </li>
- <li>
- Uninstall ONOS cluster
- </li>
- <li>
- Verify ONOS start up
- </li>
- <li>
- Install ONOS cluster
- </li>
- <li>
- Connect to cli
- </li>
- </ul>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="CASE1000"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">CASE1000</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">main</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE1000">source code</a></span>
- </td>
- </tr></table>
-
- <p>Add host intents between 2 host:</p>
- <ul>
- <li>
- Discover hosts
- </li>
- <li>
- Add host intents
- </li>
- <li>
- Check intents
- </li>
- <li>
- Verify flows
- </li>
- <li>
- Ping hosts
- </li>
- <li>
- Reroute
- <ul>
- <li>
- Link down
- </li>
- <li>
- Verify flows
- </li>
- <li>
- Check topology
- </li>
- <li>
- Ping hosts
- </li>
- <li>
- Link up
- </li>
- <li>
- Verify flows
- </li>
- <li>
- Check topology
- </li>
- <li>
- Ping hosts
- </li>
- </ul>
- </li>
- <li>
- Remove intents
- </li>
- </ul>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="CASE2000"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">CASE2000</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">main</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE2000">source code</a></span>
- </td>
- </tr></table>
-
- <p>Add point intents between 2 hosts:</p>
- <ul>
- <li>
- Get device ids | ports
- </li>
- <li>
- Add point intents
- </li>
- <li>
- Check intents
- </li>
- <li>
- Verify flows
- </li>
- <li>
- Ping hosts
- </li>
- <li>
- Reroute
- <ul>
- <li>
- Link down
- </li>
- <li>
- Verify flows
- </li>
- <li>
- Check topology
- </li>
- <li>
- Ping hosts
- </li>
- <li>
- Link up
- </li>
- <li>
- Verify flows
- </li>
- <li>
- Check topology
- </li>
- <li>
- Ping hosts
- </li>
- </ul>
- </li>
- <li>
- Remove intents
- </li>
- </ul>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="CASE3000"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">CASE3000</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">main</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE3000">source code</a></span>
- </td>
- </tr></table>
-
- <p>Add single point to multi point intents</p>
- <ul>
- <li>
- Get device ids
- </li>
- <li>
- Add single point to multi point intents
- </li>
- <li>
- Check intents
- </li>
- <li>
- Verify flows
- </li>
- <li>
- Ping hosts
- </li>
- <li>
- Reroute
- <ul>
- <li>
- Link down
- </li>
- <li>
- Verify flows
- </li>
- <li>
- Check topology
- </li>
- <li>
- Ping hosts
- </li>
- <li>
- Link up
- </li>
- <li>
- Verify flows
- </li>
- <li>
- Check topology
- </li>
- <li>
- Ping hosts
- </li>
- </ul>
- </li>
- <li>
- Remove intents
- </li>
- </ul>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="CASE4000"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">CASE4000</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">main</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.FUNCintent.FUNCintent-pysrc.html#FUNCintent.CASE4000">source code</a></span>
- </td>
- </tr></table>
-
- <p>Add multi point to single point intents</p>
- <ul>
- <li>
- Get device ids
- </li>
- <li>
- Add multi point to single point intents
- </li>
- <li>
- Check intents
- </li>
- <li>
- Verify flows
- </li>
- <li>
- Ping hosts
- </li>
- <li>
- Reroute
- <ul>
- <li>
- Link down
- </li>
- <li>
- Verify flows
- </li>
- <li>
- Check topology
- </li>
- <li>
- Ping hosts
- </li>
- <li>
- Link up
- </li>
- <li>
- Verify flows
- </li>
- <li>
- Check topology
- </li>
- <li>
- Ping hosts
- </li>
- </ul>
- </li>
- </ul>
- <ul>
- <li>
- Remove intents
- </li>
- </ul>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart-module.html
deleted file mode 100644
index 38e8819..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart-module.html
+++ /dev/null
@@ -1,172 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAclusterRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package HAclusterRestart
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAclusterRestart-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package HAclusterRestart</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAclusterRestart-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-module.html">TestON.tests.HAclusterRestart.HAclusterRestart</a></strong>: <em class="summary">Description: This test is to determine if ONOS can handle
- all of it's nodes restarting</em> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.dependencies-module.html">TestON.tests.HAclusterRestart.dependencies</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html">TestON.tests.HAclusterRestart.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html">TestON.tests.HAclusterRestart.dependencies.obelisk</a></strong> </li>
- </ul>
- </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart-pysrc.html
deleted file mode 100644
index ded9ecb..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAclusterRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package HAclusterRestart
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAclusterRestart-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAclusterRestart-module.html">Package TestON.tests.HAclusterRestart</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.HAclusterRestart-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.HAclusterRestart-module.html
deleted file mode 100644
index 9f4190a..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.HAclusterRestart-module.html
+++ /dev/null
@@ -1,194 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAclusterRestart.HAclusterRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAclusterRestart-module.html">Package HAclusterRestart</a> ::
- Module HAclusterRestart
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAclusterRestart.HAclusterRestart-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module HAclusterRestart</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Description: This test is to determine if ONOS can handle
- all of it's nodes restarting
-
-List of test cases:
-CASE1: Compile ONOS and push it to the test machines
-CASE2: Assign devices to controllers
-CASE21: Assign mastership to controllers
-CASE3: Assign intents
-CASE4: Ping across added host intents
-CASE5: Reading state of ONOS
-CASE6: The Failure case.
-CASE7: Check state after control plane failure
-CASE8: Compare topo
-CASE9: Link s3-s28 down
-CASE10: Link s3-s28 up
-CASE11: Switch down
-CASE12: Switch up
-CASE13: Clean up
-CASE14: start election app on all onos nodes
-CASE15: Check that Leadership Election is still functional
-CASE16: Install Distributed Primitives app
-CASE17: Check for basic functionality with distributed primitives
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html" class="summary-name">HAclusterRestart</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html
deleted file mode 100644
index 5e012f9..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html
+++ /dev/null
@@ -1,4806 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAclusterRestart.HAclusterRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAclusterRestart-module.html">Package HAclusterRestart</a> ::
- Module HAclusterRestart
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAclusterRestart.HAclusterRestart-module.html">Module TestON.tests.HAclusterRestart.HAclusterRestart</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">Description: This test is to determine if ONOS can handle</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring"> all of it's nodes restarting</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">List of test cases:</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring">CASE1: Compile ONOS and push it to the test machines</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring">CASE2: Assign devices to controllers</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring">CASE21: Assign mastership to controllers</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring">CASE3: Assign intents</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring">CASE4: Ping across added host intents</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring">CASE5: Reading state of ONOS</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring">CASE6: The Failure case.</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring">CASE7: Check state after control plane failure</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring">CASE8: Compare topo</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring">CASE9: Link s3-s28 down</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring">CASE10: Link s3-s28 up</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring">CASE11: Switch down</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring">CASE12: Switch up</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">CASE13: Clean up</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">CASE14: start election app on all onos nodes</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">CASE15: Check that Leadership Election is still functional</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">CASE16: Install Distributed Primitives app</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">CASE17: Check for basic functionality with distributed primitives</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart"></a><div id="HAclusterRestart-def"><a name="L27"></a><tt class="py-lineno"> 27</tt> <a class="py-toggle" href="#" id="HAclusterRestart-toggle" onclick="return toggle('HAclusterRestart');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="HAclusterRestart-expanded"><a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.__init__"></a><div id="HAclusterRestart.__init__-def"><a name="L29"></a><tt class="py-lineno"> 29</tt> <a class="py-toggle" href="#" id="HAclusterRestart.__init__-toggle" onclick="return toggle('HAclusterRestart.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.__init__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.__init__-expanded"><a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE1"></a><div id="HAclusterRestart.CASE1-def"><a name="L32"></a><tt class="py-lineno"> 32</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE1-toggle" onclick="return toggle('HAclusterRestart.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE1">CASE1</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE1-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE1-expanded"><a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-docstring"> CASE1 is to compile ONOS and push it to the test machines</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> Startup sequence:</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> cell <name></tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"> onos-verify-cell</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: temporary - onos-remove-raft-logs</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring"> onos-uninstall</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring"> start mininet</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring"> git pull</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-docstring"> mvn clean install</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring"> onos-package</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> onos-install -f</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> onos-wait-for-start</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-docstring"> start cli sessions</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-docstring"> start tcpdump</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">imp</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS HA test: Restart all ONOS nodes - "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-string">"initialization"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-2', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Setting up test environment"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Setup the test environment including "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-string">"installing ONOS, starting Mininet and ONOS"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-string">"cli sessions."</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-comment"># TODO: save all the timers and output them for plotting</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-comment"># load some variables from the params file</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">PULLCODE</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'Git'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'True'</tt><tt class="py-op">:</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">PULLCODE</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">gitBranch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'branch'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'num_controllers'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt><tt class="py-op">:</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op"><</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">:</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-comment"># set global variables</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS1Port</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS2Port</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS3Port</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS4Port</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS5Port</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS6Port</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS7Port</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-comment"># These are for csv plotting in jenkins</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">labels</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">data</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">labels</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: just get controller port from params?</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-comment"># TODO: do we really need all these?</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">ONOS1Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">ONOS2Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port2'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">ONOS3Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port3'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">ONOS4Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port4'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">ONOS5Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port5'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">ONOS6Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port6'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">ONOS7Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port7'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">fileName</tt> <tt class="py-op">=</tt> <tt class="py-string">"Counters"</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt id="link-3" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-3', 'path', 'link-3');">path</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'imports'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'path'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Module TestON.tests.HAclusterRestart.dependencies.Counters=TestON.tests.HAclusterRestart.dependencies.Counters-module.html,Module TestON.tests.HAminorityRestart.dependencies.Counters=TestON.tests.HAminorityRestart.dependencies.Counters-module.html,Module TestON.tests.HAsanity.dependencies.Counters=TestON.tests.HAsanity.dependencies.Counters-module.html,Module TestON.tests.HAsingleInstanceRestart.dependencies.Counters=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-4', 'Counters', 'link-4');">Counters</a></tt> <tt class="py-op">=</tt> <tt class="py-name">imp</tt><tt class="py-op">.</tt><tt class="py-name">load_source</tt><tt class="py-op">(</tt> <tt class="py-name">fileName</tt><tt class="py-op">,</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt id="link-5" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-5', 'path', 'link-3');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt> <tt class="py-op">+</tt> <tt class="py-string">".py"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L100"></a><tt class="py-lineno"> 100</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-6', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno"> 101</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.core.teston.TestON.cleanup()=TestON.core.teston.TestON-class.html#cleanup"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-7', 'cleanup', 'link-7');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L102"></a><tt class="py-lineno"> 102</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-8', 'exit', 'link-8');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno"> 103</tt> <tt class="py-line"> </tt>
-<a name="L104"></a><tt class="py-lineno"> 104</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L105"></a><tt class="py-lineno"> 105</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#nodes,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#nodes"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-9', 'nodes', 'link-9');">nodes</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L106"></a><tt class="py-lineno"> 106</tt> <tt class="py-line"> <tt class="py-name">ipList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L107"></a><tt class="py-lineno"> 107</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L108"></a><tt class="py-lineno"> 108</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L109"></a><tt class="py-lineno"> 109</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">'ONOScli'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L110"></a><tt class="py-lineno"> 110</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-10', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">'ONOS'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno"> 111</tt> <tt class="py-line"> <tt class="py-name">ipList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-11', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno"> 112</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L113"></a><tt class="py-lineno"> 113</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L114"></a><tt class="py-lineno"> 114</tt> <tt class="py-line"> </tt>
-<a name="L115"></a><tt class="py-lineno"> 115</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-12', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Create cell file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno"> 116</tt> <tt class="py-line"> <tt class="py-name">cellAppString</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'appString'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L117"></a><tt class="py-lineno"> 117</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile" class="py-name" href="#" onclick="return doclink('link-13', 'createCellFile', 'link-13');">createCellFile</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-name">cellName</tt><tt class="py-op">,</tt> </tt>
-<a name="L118"></a><tt class="py-lineno"> 118</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L119"></a><tt class="py-lineno"> 119</tt> <tt class="py-line"> <tt class="py-name">cellAppString</tt><tt class="py-op">,</tt> <tt class="py-name">ipList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno"> 120</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-14', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Applying cell variable to environment"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno"> 121</tt> <tt class="py-line"> <tt class="py-name">cellResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell,Method TestON.drivers.common.cli.onosdriver.OnosDriver.setCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell" class="py-name" href="#" onclick="return doclink('link-15', 'setCell', 'link-15');">setCell</a></tt><tt class="py-op">(</tt> <tt class="py-name">cellName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno"> 122</tt> <tt class="py-line"> <tt class="py-name">verifyResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell" class="py-name" href="#" onclick="return doclink('link-16', 'verifyCell', 'link-16');">verifyCell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L123"></a><tt class="py-lineno"> 123</tt> <tt class="py-line"> </tt>
-<a name="L124"></a><tt class="py-lineno"> 124</tt> <tt class="py-line"> <tt class="py-comment"># FIXME:this is short term fix</tt> </tt>
-<a name="L125"></a><tt class="py-lineno"> 125</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-17', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Removing raft logs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L126"></a><tt class="py-lineno"> 126</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosRemoveRaftLogs()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosRemoveRaftLogs"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosRemoveRaftLogs" class="py-name" href="#" onclick="return doclink('link-18', 'onosRemoveRaftLogs', 'link-18');">onosRemoveRaftLogs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L127"></a><tt class="py-lineno"> 127</tt> <tt class="py-line"> </tt>
-<a name="L128"></a><tt class="py-lineno"> 128</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-19', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Uninstalling ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno"> 129</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-20', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L130"></a><tt class="py-lineno"> 130</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall" class="py-name" href="#" onclick="return doclink('link-21', 'onosUninstall', 'link-21');">onosUninstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L131"></a><tt class="py-lineno"> 131</tt> <tt class="py-line"> </tt>
-<a name="L132"></a><tt class="py-lineno"> 132</tt> <tt class="py-line"> <tt class="py-comment"># Make sure ONOS is DEAD</tt> </tt>
-<a name="L133"></a><tt class="py-lineno"> 133</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-22', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Killing any ONOS processes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L134"></a><tt class="py-lineno"> 134</tt> <tt class="py-line"> <tt class="py-name">killResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L135"></a><tt class="py-lineno"> 135</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-23', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L136"></a><tt class="py-lineno"> 136</tt> <tt class="py-line"> <tt class="py-name">killed</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosKill()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosKill"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosKill" class="py-name" href="#" onclick="return doclink('link-24', 'onosKill', 'link-24');">onosKill</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno"> 137</tt> <tt class="py-line"> <tt class="py-name">killResults</tt> <tt class="py-op">=</tt> <tt class="py-name">killResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">killed</tt> </tt>
-<a name="L138"></a><tt class="py-lineno"> 138</tt> <tt class="py-line"> </tt>
-<a name="L139"></a><tt class="py-lineno"> 139</tt> <tt class="py-line"> <tt class="py-name">cleanInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L140"></a><tt class="py-lineno"> 140</tt> <tt class="py-line"> <tt class="py-name">gitPullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L141"></a><tt class="py-lineno"> 141</tt> <tt class="py-line"> </tt>
-<a name="L142"></a><tt class="py-lineno"> 142</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-25', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno"> 143</tt> <tt class="py-line"> <tt class="py-comment"># scp topo file to mininet</tt> </tt>
-<a name="L144"></a><tt class="py-lineno"> 144</tt> <tt class="py-line"> <tt class="py-comment"># TODO: move to params?</tt> </tt>
-<a name="L145"></a><tt class="py-lineno"> 145</tt> <tt class="py-line"> <tt class="py-name">topoName</tt> <tt class="py-op">=</tt> <tt class="py-string">"obelisk.py"</tt> </tt>
-<a name="L146"></a><tt class="py-lineno"> 146</tt> <tt class="py-line"> <tt class="py-name">filePath</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"/tools/test/topos/"</tt> </tt>
-<a name="L147"></a><tt class="py-lineno"> 147</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#copyMininetFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile" class="py-name" href="#" onclick="return doclink('link-26', 'copyMininetFile', 'link-26');">copyMininetFile</a></tt><tt class="py-op">(</tt> <tt class="py-name">topoName</tt><tt class="py-op">,</tt> <tt class="py-name">filePath</tt><tt class="py-op">,</tt> </tt>
-<a name="L148"></a><tt class="py-lineno"> 148</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L149"></a><tt class="py-lineno"> 149</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno"> 150</tt> <tt class="py-line"> <tt class="py-name">mnResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet" class="py-name" href="#" onclick="return doclink('link-27', 'startNet', 'link-27');">startNet</a></tt><tt class="py-op">(</tt> <tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno"> 151</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">mnResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L152"></a><tt class="py-lineno"> 152</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Mininet Started"</tt><tt class="py-op">,</tt> </tt>
-<a name="L153"></a><tt class="py-lineno"> 153</tt> <tt class="py-line"> <tt id="link-28" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-28', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error starting Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno"> 154</tt> <tt class="py-line"> </tt>
-<a name="L155"></a><tt class="py-lineno"> 155</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-29', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Git checkout and pull "</tt> <tt class="py-op">+</tt> <tt class="py-name">gitBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno"> 156</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">PULLCODE</tt><tt class="py-op">:</tt> </tt>
-<a name="L157"></a><tt class="py-lineno"> 157</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitCheckout"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout" class="py-name" href="#" onclick="return doclink('link-30', 'gitCheckout', 'link-30');">gitCheckout</a></tt><tt class="py-op">(</tt> <tt class="py-name">gitBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L158"></a><tt class="py-lineno"> 158</tt> <tt class="py-line"> <tt class="py-name">gitPullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-31', 'gitPull', 'link-31');">gitPull</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L159"></a><tt class="py-lineno"> 159</tt> <tt class="py-line"> <tt class="py-comment"># values of 1 or 3 are good</tt> </tt>
-<a name="L160"></a><tt class="py-lineno"> 160</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_lesser</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">gitPullResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L161"></a><tt class="py-lineno"> 161</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Git pull successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L162"></a><tt class="py-lineno"> 162</tt> <tt class="py-line"> <tt id="link-32" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-32', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Git pull failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno"> 163</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion,Method TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion
-TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion" class="py-name" href="#" onclick="return doclink('link-33', 'getVersion', 'link-33');">getVersion</a></tt><tt class="py-op">(</tt> <tt class="py-name">report</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno"> 164</tt> <tt class="py-line"> </tt>
-<a name="L165"></a><tt class="py-lineno"> 165</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-34', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Using mvn clean install"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L166"></a><tt class="py-lineno"> 166</tt> <tt class="py-line"> <tt class="py-name">cleanInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L167"></a><tt class="py-lineno"> 167</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">PULLCODE</tt> <tt class="py-keyword">and</tt> <tt class="py-name">gitPullResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L168"></a><tt class="py-lineno"> 168</tt> <tt class="py-line"> <tt class="py-name">cleanInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cleanInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall" class="py-name" href="#" onclick="return doclink('link-35', 'cleanInstall', 'link-35');">cleanInstall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L169"></a><tt class="py-lineno"> 169</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L170"></a><tt class="py-lineno"> 170</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-36', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Did not pull new code so skipping mvn "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L171"></a><tt class="py-lineno"> 171</tt> <tt class="py-line"> <tt class="py-string">"clean install"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L172"></a><tt class="py-lineno"> 172</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L173"></a><tt class="py-lineno"> 173</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">cleanInstallResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L174"></a><tt class="py-lineno"> 174</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"MCI successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L175"></a><tt class="py-lineno"> 175</tt> <tt class="py-line"> <tt id="link-37" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-37', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"MCI failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L176"></a><tt class="py-lineno"> 176</tt> <tt class="py-line"> <tt class="py-comment"># GRAPHS</tt> </tt>
-<a name="L177"></a><tt class="py-lineno"> 177</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: important params here:</tt> </tt>
-<a name="L178"></a><tt class="py-lineno"> 178</tt> <tt class="py-line"> <tt class="py-comment"># job = name of Jenkins job</tt> </tt>
-<a name="L179"></a><tt class="py-lineno"> 179</tt> <tt class="py-line"> <tt class="py-comment"># Plot Name = Plot-HA, only can be used if multiple plots</tt> </tt>
-<a name="L180"></a><tt class="py-lineno"> 180</tt> <tt class="py-line"> <tt class="py-comment"># index = The number of the graph under plot name</tt> </tt>
-<a name="L181"></a><tt class="py-lineno"> 181</tt> <tt class="py-line"> <tt class="py-name">job</tt> <tt class="py-op">=</tt> <tt class="py-string">"HAclusterRestart"</tt> </tt>
-<a name="L182"></a><tt class="py-lineno"> 182</tt> <tt class="py-line"> <tt class="py-name">plotName</tt> <tt class="py-op">=</tt> <tt class="py-string">"Plot-HA"</tt> </tt>
-<a name="L183"></a><tt class="py-lineno"> 183</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">=</tt> <tt class="py-string">'<ac:structured-macro ac:name="html">\n'</tt> </tt>
-<a name="L184"></a><tt class="py-lineno"> 184</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">+=</tt> <tt class="py-string">'<ac:plain-text-body><![CDATA[\n'</tt> </tt>
-<a name="L185"></a><tt class="py-lineno"> 185</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">+=</tt> <tt class="py-string">'<iframe src="https://onos-jenkins.onlab.us/job/'</tt> <tt class="py-op">+</tt> <tt class="py-name">job</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L186"></a><tt class="py-lineno"> 186</tt> <tt class="py-line"> <tt class="py-string">'/plot/'</tt> <tt class="py-op">+</tt> <tt class="py-name">plotName</tt> <tt class="py-op">+</tt> <tt class="py-string">'/getPlot?index=0'</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L187"></a><tt class="py-lineno"> 187</tt> <tt class="py-line"> <tt class="py-string">'&width=500&height=300"'</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L188"></a><tt class="py-lineno"> 188</tt> <tt class="py-line"> <tt class="py-string">'noborder="0" width="500" height="300" scrolling="yes" '</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L189"></a><tt class="py-lineno"> 189</tt> <tt class="py-line"> <tt class="py-string">'seamless="seamless"></iframe>\n'</tt> </tt>
-<a name="L190"></a><tt class="py-lineno"> 190</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">+=</tt> <tt class="py-string">']]></ac:plain-text-body>\n'</tt> </tt>
-<a name="L191"></a><tt class="py-lineno"> 191</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">+=</tt> <tt class="py-string">'</ac:structured-macro>\n'</tt> </tt>
-<a name="L192"></a><tt class="py-lineno"> 192</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-38', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt><tt class="py-name">graphs</tt><tt class="py-op">)</tt> </tt>
-<a name="L193"></a><tt class="py-lineno"> 193</tt> <tt class="py-line"> </tt>
-<a name="L194"></a><tt class="py-lineno"> 194</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-39', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Creating ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L195"></a><tt class="py-lineno"> 195</tt> <tt class="py-line"> <tt class="py-name">packageResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage" class="py-name" href="#" onclick="return doclink('link-40', 'onosPackage', 'link-40');">onosPackage</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L196"></a><tt class="py-lineno"> 196</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">packageResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L197"></a><tt class="py-lineno"> 197</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS package successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L198"></a><tt class="py-lineno"> 198</tt> <tt class="py-line"> <tt id="link-41" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-41', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS package failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L199"></a><tt class="py-lineno"> 199</tt> <tt class="py-line"> </tt>
-<a name="L200"></a><tt class="py-lineno"> 200</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-42', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Installing ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L201"></a><tt class="py-lineno"> 201</tt> <tt class="py-line"> <tt class="py-name">onosInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L202"></a><tt class="py-lineno"> 202</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-43', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L203"></a><tt class="py-lineno"> 203</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall" class="py-name" href="#" onclick="return doclink('link-44', 'onosInstall', 'link-44');">onosInstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">options</tt><tt class="py-op">=</tt><tt class="py-string">"-f"</tt><tt class="py-op">,</tt> </tt>
-<a name="L204"></a><tt class="py-lineno"> 204</tt> <tt class="py-line"> <tt class="py-name">node</tt><tt class="py-op">=</tt><tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno"> 205</tt> <tt class="py-line"> <tt class="py-name">onosInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosInstallResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L206"></a><tt class="py-lineno"> 206</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">onosInstallResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L207"></a><tt class="py-lineno"> 207</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS install successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L208"></a><tt class="py-lineno"> 208</tt> <tt class="py-line"> <tt id="link-45" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-45', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS install failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno"> 209</tt> <tt class="py-line"> </tt>
-<a name="L210"></a><tt class="py-lineno"> 210</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-46', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Checking if ONOS is up yet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno"> 211</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L212"></a><tt class="py-lineno"> 212</tt> <tt class="py-line"> <tt class="py-name">onosIsupResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L213"></a><tt class="py-lineno"> 213</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-47', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L214"></a><tt class="py-lineno"> 214</tt> <tt class="py-line"> <tt class="py-name">started</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.isup()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-48', 'isup', 'link-48');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L215"></a><tt class="py-lineno"> 215</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">started</tt><tt class="py-op">:</tt> </tt>
-<a name="L216"></a><tt class="py-lineno"> 216</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-49', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-50" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-50', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" didn't start!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L217"></a><tt class="py-lineno"> 217</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosStop()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStop"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosStop" class="py-name" href="#" onclick="return doclink('link-51', 'onosStop', 'link-51');">onosStop</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L218"></a><tt class="py-lineno"> 218</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosStart()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStart"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosStart" class="py-name" href="#" onclick="return doclink('link-52', 'onosStart', 'link-52');">onosStart</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L219"></a><tt class="py-lineno"> 219</tt> <tt class="py-line"> <tt class="py-name">onosIsupResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosIsupResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">started</tt> </tt>
-<a name="L220"></a><tt class="py-lineno"> 220</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosIsupResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L221"></a><tt class="py-lineno"> 221</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L222"></a><tt class="py-lineno"> 222</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">onosIsupResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L223"></a><tt class="py-lineno"> 223</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS startup successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L224"></a><tt class="py-lineno"> 224</tt> <tt class="py-line"> <tt id="link-53" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-53', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS startup failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L225"></a><tt class="py-lineno"> 225</tt> <tt class="py-line"> </tt>
-<a name="L226"></a><tt class="py-lineno"> 226</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-54', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-55', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting ONOS CLI sessions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L227"></a><tt class="py-lineno"> 227</tt> <tt class="py-line"> <tt class="py-name">cliResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L228"></a><tt class="py-lineno"> 228</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L229"></a><tt class="py-lineno"> 229</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L230"></a><tt class="py-lineno"> 230</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name" targets="Module TestON.core.Thread=TestON.core.Thread-module.html,Class TestON.core.Thread.Thread=TestON.core.Thread.Thread-class.html"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-56', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#startOnosCli"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli" class="py-name" href="#" onclick="return doclink('link-57', 'startOnosCli', 'link-57');">startOnosCli</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L231"></a><tt class="py-lineno"> 231</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"startOnosCli-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L232"></a><tt class="py-lineno"> 232</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-58', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L233"></a><tt class="py-lineno"> 233</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L234"></a><tt class="py-lineno"> 234</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L235"></a><tt class="py-lineno"> 235</tt> <tt class="py-line"> </tt>
-<a name="L236"></a><tt class="py-lineno"> 236</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L237"></a><tt class="py-lineno"> 237</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L238"></a><tt class="py-lineno"> 238</tt> <tt class="py-line"> <tt class="py-name">cliResults</tt> <tt class="py-op">=</tt> <tt class="py-name">cliResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L239"></a><tt class="py-lineno"> 239</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">cliResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L240"></a><tt class="py-lineno"> 240</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS cli startup successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L241"></a><tt class="py-lineno"> 241</tt> <tt class="py-line"> <tt id="link-59" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-59', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS cli startup failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L242"></a><tt class="py-lineno"> 242</tt> <tt class="py-line"> </tt>
-<a name="L243"></a><tt class="py-lineno"> 243</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'tcpdump'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-string">"true"</tt><tt class="py-op">:</tt> </tt>
-<a name="L244"></a><tt class="py-lineno"> 244</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-60', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start Packet Capture MN"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L245"></a><tt class="py-lineno"> 245</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startTcpdump()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startTcpdump,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.startTcpdump()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#startTcpdump"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startTcpdump
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.startTcpdump" class="py-name" href="#" onclick="return doclink('link-61', 'startTcpdump', 'link-61');">startTcpdump</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L246"></a><tt class="py-lineno"> 246</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MNtcpdump'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'folder'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">)</tt> </tt>
-<a name="L247"></a><tt class="py-lineno"> 247</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">"-MN.pcap"</tt><tt class="py-op">,</tt> </tt>
-<a name="L248"></a><tt class="py-lineno"> 248</tt> <tt class="py-line"> <tt class="py-name">intf</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MNtcpdump'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'intf'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L249"></a><tt class="py-lineno"> 249</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MNtcpdump'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L250"></a><tt class="py-lineno"> 250</tt> <tt class="py-line"> </tt>
-<a name="L251"></a><tt class="py-lineno"> 251</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-62', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"App Ids check"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L252"></a><tt class="py-lineno"> 252</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L253"></a><tt class="py-lineno"> 253</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L254"></a><tt class="py-lineno"> 254</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L255"></a><tt class="py-lineno"> 255</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-63', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appToIDCheck"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-64', 'appToIDCheck', 'link-64');">appToIDCheck</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L256"></a><tt class="py-lineno"> 256</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"appToIDCheck-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L257"></a><tt class="py-lineno"> 257</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L258"></a><tt class="py-lineno"> 258</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L259"></a><tt class="py-lineno"> 259</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno"> 260</tt> <tt class="py-line"> </tt>
-<a name="L261"></a><tt class="py-lineno"> 261</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L262"></a><tt class="py-lineno"> 262</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L263"></a><tt class="py-lineno"> 263</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">appCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L264"></a><tt class="py-lineno"> 264</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L265"></a><tt class="py-lineno"> 265</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-65', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#apps,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#apps"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-66', 'apps', 'link-66');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L266"></a><tt class="py-lineno"> 266</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-67', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appIDs"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-68', 'appIDs', 'link-68');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L267"></a><tt class="py-lineno"> 267</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L268"></a><tt class="py-lineno"> 268</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L269"></a><tt class="py-lineno"> 269</tt> <tt class="py-line"> <tt id="link-69" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-69', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L270"></a><tt class="py-lineno"> 270</tt> <tt class="py-line"> </tt>
-<a name="L271"></a><tt class="py-lineno"> 271</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">cliResults</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L272"></a><tt class="py-lineno"> 272</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-70', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-71', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to start ONOS, stopping test"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L273"></a><tt class="py-lineno"> 273</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-72', 'cleanup', 'link-7');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L274"></a><tt class="py-lineno"> 274</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-73', 'exit', 'link-8');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L275"></a><tt class="py-lineno"> 275</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE2"></a><div id="HAclusterRestart.CASE2-def"><a name="L276"></a><tt class="py-lineno"> 276</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE2-toggle" onclick="return toggle('HAclusterRestart.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE2">CASE2</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE2-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE2-expanded"><a name="L277"></a><tt class="py-lineno"> 277</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L278"></a><tt class="py-lineno"> 278</tt> <tt class="py-line"><tt class="py-docstring"> Assign devices to controllers</tt> </tt>
-<a name="L279"></a><tt class="py-lineno"> 279</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L280"></a><tt class="py-lineno"> 280</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L281"></a><tt class="py-lineno"> 281</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L282"></a><tt class="py-lineno"> 282</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L283"></a><tt class="py-lineno"> 283</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L284"></a><tt class="py-lineno"> 284</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L285"></a><tt class="py-lineno"> 285</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-74', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L286"></a><tt class="py-lineno"> 286</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS1Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS1Port not defined"</tt> </tt>
-<a name="L287"></a><tt class="py-lineno"> 287</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS2Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS2Port not defined"</tt> </tt>
-<a name="L288"></a><tt class="py-lineno"> 288</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS3Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS3Port not defined"</tt> </tt>
-<a name="L289"></a><tt class="py-lineno"> 289</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS4Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS4Port not defined"</tt> </tt>
-<a name="L290"></a><tt class="py-lineno"> 290</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS5Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS5Port not defined"</tt> </tt>
-<a name="L291"></a><tt class="py-lineno"> 291</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS6Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS6Port not defined"</tt> </tt>
-<a name="L292"></a><tt class="py-lineno"> 292</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS7Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS7Port not defined"</tt> </tt>
-<a name="L293"></a><tt class="py-lineno"> 293</tt> <tt class="py-line"> </tt>
-<a name="L294"></a><tt class="py-lineno"> 294</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-75', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assigning devices to controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L295"></a><tt class="py-lineno"> 295</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Assign switches to ONOS using 'ovs-vsctl' "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L296"></a><tt class="py-lineno"> 296</tt> <tt class="py-line"> <tt class="py-string">"and check that an ONOS node becomes the "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L297"></a><tt class="py-lineno"> 297</tt> <tt class="py-line"> <tt class="py-string">"master of the device."</tt> </tt>
-<a name="L298"></a><tt class="py-lineno"> 298</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-76', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assign switches to controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L299"></a><tt class="py-lineno"> 299</tt> <tt class="py-line"> </tt>
-<a name="L300"></a><tt class="py-lineno"> 300</tt> <tt class="py-line"> <tt class="py-name">ipList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L301"></a><tt class="py-lineno"> 301</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L302"></a><tt class="py-lineno"> 302</tt> <tt class="py-line"> <tt class="py-name">ipList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-77', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L303"></a><tt class="py-lineno"> 303</tt> <tt class="py-line"> <tt class="py-name">swList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L304"></a><tt class="py-lineno"> 304</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L305"></a><tt class="py-lineno"> 305</tt> <tt class="py-line"> <tt class="py-name">swList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L306"></a><tt class="py-lineno"> 306</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignSwController"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController" class="py-name" href="#" onclick="return doclink('link-78', 'assignSwController', 'link-78');">assignSwController</a></tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt><tt class="py-op">=</tt><tt class="py-name">swList</tt><tt class="py-op">,</tt> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">ipList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L307"></a><tt class="py-lineno"> 307</tt> <tt class="py-line"> </tt>
-<a name="L308"></a><tt class="py-lineno"> 308</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L309"></a><tt class="py-lineno"> 309</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L310"></a><tt class="py-lineno"> 310</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwController()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwController"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwController" class="py-name" href="#" onclick="return doclink('link-79', 'getSwController', 'link-79');">getSwController</a></tt><tt class="py-op">(</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno"> 311</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L312"></a><tt class="py-lineno"> 312</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-80', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L313"></a><tt class="py-lineno"> 313</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L314"></a><tt class="py-lineno"> 314</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-81', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L315"></a><tt class="py-lineno"> 315</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-82', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L316"></a><tt class="py-lineno"> 316</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"tcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L317"></a><tt class="py-lineno"> 317</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">mastershipCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L318"></a><tt class="py-lineno"> 318</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L319"></a><tt class="py-lineno"> 319</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-83', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-84', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, node "</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> <tt class="py-string">" is "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L320"></a><tt class="py-lineno"> 320</tt> <tt class="py-line"> <tt class="py-string">"not in the list of controllers s"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L321"></a><tt class="py-lineno"> 321</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is connecting to."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L322"></a><tt class="py-lineno"> 322</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L323"></a><tt class="py-lineno"> 323</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L324"></a><tt class="py-lineno"> 324</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L325"></a><tt class="py-lineno"> 325</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">mastershipCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L326"></a><tt class="py-lineno"> 326</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Switch mastership assigned correctly"</tt><tt class="py-op">,</tt> </tt>
-<a name="L327"></a><tt class="py-lineno"> 327</tt> <tt class="py-line"> <tt id="link-85" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-85', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Switches not assigned correctly to controllers"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L328"></a><tt class="py-lineno"> 328</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE21"></a><div id="HAclusterRestart.CASE21-def"><a name="L329"></a><tt class="py-lineno"> 329</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE21-toggle" onclick="return toggle('HAclusterRestart.CASE21');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE21">CASE21</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE21-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE21-expanded"><a name="L330"></a><tt class="py-lineno"> 330</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L331"></a><tt class="py-lineno"> 331</tt> <tt class="py-line"><tt class="py-docstring"> Assign mastership to controllers</tt> </tt>
-<a name="L332"></a><tt class="py-lineno"> 332</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L333"></a><tt class="py-lineno"> 333</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L334"></a><tt class="py-lineno"> 334</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L335"></a><tt class="py-lineno"> 335</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L336"></a><tt class="py-lineno"> 336</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L337"></a><tt class="py-lineno"> 337</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L338"></a><tt class="py-lineno"> 338</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-86', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L339"></a><tt class="py-lineno"> 339</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS1Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS1Port not defined"</tt> </tt>
-<a name="L340"></a><tt class="py-lineno"> 340</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS2Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS2Port not defined"</tt> </tt>
-<a name="L341"></a><tt class="py-lineno"> 341</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS3Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS3Port not defined"</tt> </tt>
-<a name="L342"></a><tt class="py-lineno"> 342</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS4Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS4Port not defined"</tt> </tt>
-<a name="L343"></a><tt class="py-lineno"> 343</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS5Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS5Port not defined"</tt> </tt>
-<a name="L344"></a><tt class="py-lineno"> 344</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS6Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS6Port not defined"</tt> </tt>
-<a name="L345"></a><tt class="py-lineno"> 345</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS7Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS7Port not defined"</tt> </tt>
-<a name="L346"></a><tt class="py-lineno"> 346</tt> <tt class="py-line"> </tt>
-<a name="L347"></a><tt class="py-lineno"> 347</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-87', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assigning Controller roles for switches"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L348"></a><tt class="py-lineno"> 348</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Check that ONOS is connected to each "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L349"></a><tt class="py-lineno"> 349</tt> <tt class="py-line"> <tt class="py-string">"device. Then manually assign"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L350"></a><tt class="py-lineno"> 350</tt> <tt class="py-line"> <tt class="py-string">" mastership to specific ONOS nodes using"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L351"></a><tt class="py-lineno"> 351</tt> <tt class="py-line"> <tt class="py-string">" 'device-role'"</tt> </tt>
-<a name="L352"></a><tt class="py-lineno"> 352</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-88', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assign mastership of switches to specific controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L353"></a><tt class="py-lineno"> 353</tt> <tt class="py-line"> <tt class="py-comment"># Manually assign mastership to the controller we want</tt> </tt>
-<a name="L354"></a><tt class="py-lineno"> 354</tt> <tt class="py-line"> <tt class="py-name">roleCall</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L355"></a><tt class="py-lineno"> 355</tt> <tt class="py-line"> </tt>
-<a name="L356"></a><tt class="py-lineno"> 356</tt> <tt class="py-line"> <tt class="py-name">ipList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-op">]</tt> </tt>
-<a name="L357"></a><tt class="py-lineno"> 357</tt> <tt class="py-line"> <tt class="py-name">deviceList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L358"></a><tt class="py-lineno"> 358</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L359"></a><tt class="py-lineno"> 359</tt> <tt class="py-line"> <tt class="py-comment"># Assign mastership to specific controllers. This assignment was</tt> </tt>
-<a name="L360"></a><tt class="py-lineno"> 360</tt> <tt class="py-line"> <tt class="py-comment"># determined for a 7 node cluser, but will work with any sized</tt> </tt>
-<a name="L361"></a><tt class="py-lineno"> 361</tt> <tt class="py-line"> <tt class="py-comment"># cluster</tt> </tt>
-<a name="L362"></a><tt class="py-lineno"> 362</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># switches 1 through 28</tt> </tt>
-<a name="L363"></a><tt class="py-lineno"> 363</tt> <tt class="py-line"> <tt class="py-comment"># set up correct variables:</tt> </tt>
-<a name="L364"></a><tt class="py-lineno"> 364</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L365"></a><tt class="py-lineno"> 365</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L366"></a><tt class="py-lineno"> 366</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-89', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS1</tt> </tt>
-<a name="L367"></a><tt class="py-lineno"> 367</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getDevice"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-90', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"1000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L368"></a><tt class="py-lineno"> 368</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L369"></a><tt class="py-lineno"> 369</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L370"></a><tt class="py-lineno"> 370</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-91', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS2</tt> </tt>
-<a name="L371"></a><tt class="py-lineno"> 371</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-92', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"2000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L372"></a><tt class="py-lineno"> 372</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L373"></a><tt class="py-lineno"> 373</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L374"></a><tt class="py-lineno"> 374</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-93', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS2</tt> </tt>
-<a name="L375"></a><tt class="py-lineno"> 375</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-94', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"3000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L376"></a><tt class="py-lineno"> 376</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L377"></a><tt class="py-lineno"> 377</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">3</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L378"></a><tt class="py-lineno"> 378</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-95', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS4</tt> </tt>
-<a name="L379"></a><tt class="py-lineno"> 379</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-96', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"3004"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L380"></a><tt class="py-lineno"> 380</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">5</tt><tt class="py-op">:</tt> </tt>
-<a name="L381"></a><tt class="py-lineno"> 381</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">2</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L382"></a><tt class="py-lineno"> 382</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-97', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS3</tt> </tt>
-<a name="L383"></a><tt class="py-lineno"> 383</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-98', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"5000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L384"></a><tt class="py-lineno"> 384</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">6</tt><tt class="py-op">:</tt> </tt>
-<a name="L385"></a><tt class="py-lineno"> 385</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">2</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L386"></a><tt class="py-lineno"> 386</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-99', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS3</tt> </tt>
-<a name="L387"></a><tt class="py-lineno"> 387</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-100', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"6000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L388"></a><tt class="py-lineno"> 388</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">7</tt><tt class="py-op">:</tt> </tt>
-<a name="L389"></a><tt class="py-lineno"> 389</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">5</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L390"></a><tt class="py-lineno"> 390</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-101', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS6</tt> </tt>
-<a name="L391"></a><tt class="py-lineno"> 391</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-102', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"6007"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L392"></a><tt class="py-lineno"> 392</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">8</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-number">17</tt><tt class="py-op">:</tt> </tt>
-<a name="L393"></a><tt class="py-lineno"> 393</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">4</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L394"></a><tt class="py-lineno"> 394</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-103', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS5</tt> </tt>
-<a name="L395"></a><tt class="py-lineno"> 395</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'3'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L396"></a><tt class="py-lineno"> 396</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-104', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L397"></a><tt class="py-lineno"> 397</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">18</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-number">27</tt><tt class="py-op">:</tt> </tt>
-<a name="L398"></a><tt class="py-lineno"> 398</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">6</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L399"></a><tt class="py-lineno"> 399</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-105', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS7</tt> </tt>
-<a name="L400"></a><tt class="py-lineno"> 400</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'6'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L401"></a><tt class="py-lineno"> 401</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-106" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-106', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L402"></a><tt class="py-lineno"> 402</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">28</tt><tt class="py-op">:</tt> </tt>
-<a name="L403"></a><tt class="py-lineno"> 403</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L404"></a><tt class="py-lineno"> 404</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-107', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS1</tt> </tt>
-<a name="L405"></a><tt class="py-lineno"> 405</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-108', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"2800"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L406"></a><tt class="py-lineno"> 406</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L407"></a><tt class="py-lineno"> 407</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-109', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-110', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"You didn't write an else statement for "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L408"></a><tt class="py-lineno"> 408</tt> <tt class="py-line"> <tt class="py-string">"switch s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L409"></a><tt class="py-lineno"> 409</tt> <tt class="py-line"> <tt class="py-name">roleCall</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L410"></a><tt class="py-lineno"> 410</tt> <tt class="py-line"> <tt class="py-comment"># Assign switch</tt> </tt>
-<a name="L411"></a><tt class="py-lineno"> 411</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">deviceId</tt><tt class="py-op">,</tt> <tt class="py-string">"No device id for s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" in ONOS"</tt> </tt>
-<a name="L412"></a><tt class="py-lineno"> 412</tt> <tt class="py-line"> <tt class="py-comment"># TODO: make this controller dynamic</tt> </tt>
-<a name="L413"></a><tt class="py-lineno"> 413</tt> <tt class="py-line"> <tt class="py-name">roleCall</tt> <tt class="py-op">=</tt> <tt class="py-name">roleCall</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deviceRole()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deviceRole"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deviceRole" class="py-name" href="#" onclick="return doclink('link-111', 'deviceRole', 'link-111');">deviceRole</a></tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt><tt class="py-op">,</tt> </tt>
-<a name="L414"></a><tt class="py-lineno"> 414</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> </tt>
-<a name="L415"></a><tt class="py-lineno"> 415</tt> <tt class="py-line"> <tt class="py-name">ipList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> </tt>
-<a name="L416"></a><tt class="py-lineno"> 416</tt> <tt class="py-line"> <tt class="py-name">deviceList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L417"></a><tt class="py-lineno"> 417</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">,</tt> <tt class="py-name">AssertionError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L418"></a><tt class="py-lineno"> 418</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-112', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Something is wrong with ONOS device view"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L419"></a><tt class="py-lineno"> 419</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-113', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#devices"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-114', 'devices', 'link-114');">devices</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L420"></a><tt class="py-lineno"> 420</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L421"></a><tt class="py-lineno"> 421</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L422"></a><tt class="py-lineno"> 422</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">roleCall</tt><tt class="py-op">,</tt> </tt>
-<a name="L423"></a><tt class="py-lineno"> 423</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Re-assigned switch mastership to designated controller"</tt><tt class="py-op">,</tt> </tt>
-<a name="L424"></a><tt class="py-lineno"> 424</tt> <tt class="py-line"> <tt id="link-115" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-115', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something wrong with deviceRole calls"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L425"></a><tt class="py-lineno"> 425</tt> <tt class="py-line"> </tt>
-<a name="L426"></a><tt class="py-lineno"> 426</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-116', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check mastership was correctly assigned"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L427"></a><tt class="py-lineno"> 427</tt> <tt class="py-line"> <tt class="py-name">roleCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L428"></a><tt class="py-lineno"> 428</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: This is due to the fact that device mastership change is not</tt> </tt>
-<a name="L429"></a><tt class="py-lineno"> 429</tt> <tt class="py-line"> <tt class="py-comment"># atomic and is actually a multi step process</tt> </tt>
-<a name="L430"></a><tt class="py-lineno"> 430</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L431"></a><tt class="py-lineno"> 431</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">ipList</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L432"></a><tt class="py-lineno"> 432</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">ipList</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> </tt>
-<a name="L433"></a><tt class="py-lineno"> 433</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceList</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> </tt>
-<a name="L434"></a><tt class="py-lineno"> 434</tt> <tt class="py-line"> <tt class="py-comment"># Check assignment</tt> </tt>
-<a name="L435"></a><tt class="py-lineno"> 435</tt> <tt class="py-line"> <tt class="py-name">master</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getRole()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getRole"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getRole" class="py-name" href="#" onclick="return doclink('link-117', 'getRole', 'link-117');">getRole</a></tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'master'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L436"></a><tt class="py-lineno"> 436</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-keyword">in</tt> <tt class="py-name">master</tt><tt class="py-op">:</tt> </tt>
-<a name="L437"></a><tt class="py-lineno"> 437</tt> <tt class="py-line"> <tt class="py-name">roleCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">roleCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L438"></a><tt class="py-lineno"> 438</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L439"></a><tt class="py-lineno"> 439</tt> <tt class="py-line"> <tt class="py-name">roleCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">roleCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L440"></a><tt class="py-lineno"> 440</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-118', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-119', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, controller "</tt> <tt class="py-op">+</tt> <tt class="py-name">ip</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L441"></a><tt class="py-lineno"> 441</tt> <tt class="py-line"> <tt class="py-string">" master "</tt> <tt class="py-op">+</tt> <tt class="py-string">"of device "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L442"></a><tt class="py-lineno"> 442</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">". Master is "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L443"></a><tt class="py-lineno"> 443</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">master</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L444"></a><tt class="py-lineno"> 444</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L445"></a><tt class="py-lineno"> 445</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L446"></a><tt class="py-lineno"> 446</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">roleCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L447"></a><tt class="py-lineno"> 447</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Switches were successfully reassigned to designated "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L448"></a><tt class="py-lineno"> 448</tt> <tt class="py-line"> <tt class="py-string">"controller"</tt><tt class="py-op">,</tt> </tt>
-<a name="L449"></a><tt class="py-lineno"> 449</tt> <tt class="py-line"> <tt id="link-120" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-120', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Switches were not successfully reassigned"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L450"></a><tt class="py-lineno"> 450</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE3"></a><div id="HAclusterRestart.CASE3-def"><a name="L451"></a><tt class="py-lineno"> 451</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE3-toggle" onclick="return toggle('HAclusterRestart.CASE3');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE3">CASE3</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE3-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE3-expanded"><a name="L452"></a><tt class="py-lineno"> 452</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L453"></a><tt class="py-lineno"> 453</tt> <tt class="py-line"><tt class="py-docstring"> Assign intents</tt> </tt>
-<a name="L454"></a><tt class="py-lineno"> 454</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L455"></a><tt class="py-lineno"> 455</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L456"></a><tt class="py-lineno"> 456</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L457"></a><tt class="py-lineno"> 457</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L458"></a><tt class="py-lineno"> 458</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L459"></a><tt class="py-lineno"> 459</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L460"></a><tt class="py-lineno"> 460</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L461"></a><tt class="py-lineno"> 461</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-121" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-121', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L462"></a><tt class="py-lineno"> 462</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L463"></a><tt class="py-lineno"> 463</tt> <tt class="py-line"> <tt class="py-name">labels</tt> </tt>
-<a name="L464"></a><tt class="py-lineno"> 464</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L465"></a><tt class="py-lineno"> 465</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-122', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-123', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"labels not defined, setting to []"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L466"></a><tt class="py-lineno"> 466</tt> <tt class="py-line"> <tt class="py-name">labels</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L467"></a><tt class="py-lineno"> 467</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L468"></a><tt class="py-lineno"> 468</tt> <tt class="py-line"> <tt class="py-name">data</tt> </tt>
-<a name="L469"></a><tt class="py-lineno"> 469</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L470"></a><tt class="py-lineno"> 470</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-124" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-124', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-125', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"data not defined, setting to []"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L471"></a><tt class="py-lineno"> 471</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L472"></a><tt class="py-lineno"> 472</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: we must reinstall intents until we have a persistant intent</tt> </tt>
-<a name="L473"></a><tt class="py-lineno"> 473</tt> <tt class="py-line"> <tt class="py-comment"># datastore!</tt> </tt>
-<a name="L474"></a><tt class="py-lineno"> 474</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-126', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Adding host Intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L475"></a><tt class="py-lineno"> 475</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Discover hosts by using pingall then "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L476"></a><tt class="py-lineno"> 476</tt> <tt class="py-line"> <tt class="py-string">"assign predetermined host-to-host intents."</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L477"></a><tt class="py-lineno"> 477</tt> <tt class="py-line"> <tt class="py-string">" After installation, check that the intent"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L478"></a><tt class="py-lineno"> 478</tt> <tt class="py-line"> <tt class="py-string">" is distributed to all nodes and the state"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L479"></a><tt class="py-lineno"> 479</tt> <tt class="py-line"> <tt class="py-string">" is INSTALLED"</tt> </tt>
-<a name="L480"></a><tt class="py-lineno"> 480</tt> <tt class="py-line"> </tt>
-<a name="L481"></a><tt class="py-lineno"> 481</tt> <tt class="py-line"> <tt class="py-comment"># install onos-app-fwd</tt> </tt>
-<a name="L482"></a><tt class="py-lineno"> 482</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-127', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install reactive forwarding app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L483"></a><tt class="py-lineno"> 483</tt> <tt class="py-line"> <tt class="py-name">installResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#activateApp,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#activateApp"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-128', 'activateApp', 'link-128');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.fwd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L484"></a><tt class="py-lineno"> 484</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">installResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L485"></a><tt class="py-lineno"> 485</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Install fwd successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L486"></a><tt class="py-lineno"> 486</tt> <tt class="py-line"> <tt id="link-129" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-129', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Install fwd failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L487"></a><tt class="py-lineno"> 487</tt> <tt class="py-line"> </tt>
-<a name="L488"></a><tt class="py-lineno"> 488</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-130" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-130', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check app ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L489"></a><tt class="py-lineno"> 489</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L490"></a><tt class="py-lineno"> 490</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L491"></a><tt class="py-lineno"> 491</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L492"></a><tt class="py-lineno"> 492</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-131', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-132', 'appToIDCheck', 'link-64');">appToIDCheck</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L493"></a><tt class="py-lineno"> 493</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"appToIDCheck-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L494"></a><tt class="py-lineno"> 494</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L495"></a><tt class="py-lineno"> 495</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L496"></a><tt class="py-lineno"> 496</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L497"></a><tt class="py-lineno"> 497</tt> <tt class="py-line"> </tt>
-<a name="L498"></a><tt class="py-lineno"> 498</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L499"></a><tt class="py-lineno"> 499</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L500"></a><tt class="py-lineno"> 500</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">appCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L501"></a><tt class="py-lineno"> 501</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L502"></a><tt class="py-lineno"> 502</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-133', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-134" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-134', 'apps', 'link-66');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L503"></a><tt class="py-lineno"> 503</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-135', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-136" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-136', 'appIDs', 'link-68');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L504"></a><tt class="py-lineno"> 504</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L505"></a><tt class="py-lineno"> 505</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L506"></a><tt class="py-lineno"> 506</tt> <tt class="py-line"> <tt id="link-137" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-137', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L507"></a><tt class="py-lineno"> 507</tt> <tt class="py-line"> </tt>
-<a name="L508"></a><tt class="py-lineno"> 508</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-138', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Discovering Hosts( Via pingall for now )"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L509"></a><tt class="py-lineno"> 509</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: Once we have a host discovery mechanism, use that instead</tt> </tt>
-<a name="L510"></a><tt class="py-lineno"> 510</tt> <tt class="py-line"> <tt class="py-comment"># REACTIVE FWD test</tt> </tt>
-<a name="L511"></a><tt class="py-lineno"> 511</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L512"></a><tt class="py-lineno"> 512</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># Retry if pingall fails first time</tt> </tt>
-<a name="L513"></a><tt class="py-lineno"> 513</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L514"></a><tt class="py-lineno"> 514</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-139" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingall"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-139', 'pingall', 'link-139');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L515"></a><tt class="py-lineno"> 515</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L516"></a><tt class="py-lineno"> 516</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L517"></a><tt class="py-lineno"> 517</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L518"></a><tt class="py-lineno"> 518</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L519"></a><tt class="py-lineno"> 519</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Reactive Pingall test passed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L520"></a><tt class="py-lineno"> 520</tt> <tt class="py-line"> <tt id="link-140" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-140', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Reactive Pingall failed, "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L521"></a><tt class="py-lineno"> 521</tt> <tt class="py-line"> <tt class="py-string">"one or more ping pairs failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L522"></a><tt class="py-lineno"> 522</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L523"></a><tt class="py-lineno"> 523</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-141" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-141', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Time for pingall: %2f seconds"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L524"></a><tt class="py-lineno"> 524</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L525"></a><tt class="py-lineno"> 525</tt> <tt class="py-line"> <tt class="py-comment"># timeout for fwd flows</tt> </tt>
-<a name="L526"></a><tt class="py-lineno"> 526</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">11</tt> <tt class="py-op">)</tt> </tt>
-<a name="L527"></a><tt class="py-lineno"> 527</tt> <tt class="py-line"> <tt class="py-comment"># uninstall onos-app-fwd</tt> </tt>
-<a name="L528"></a><tt class="py-lineno"> 528</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-142', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Uninstall reactive forwarding app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L529"></a><tt class="py-lineno"> 529</tt> <tt class="py-line"> <tt class="py-name">uninstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.deactivateApp()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#deactivateApp,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deactivateApp()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deactivateApp"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.deactivateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deactivateApp" class="py-name" href="#" onclick="return doclink('link-143', 'deactivateApp', 'link-143');">deactivateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.fwd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L530"></a><tt class="py-lineno"> 530</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">uninstallResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L531"></a><tt class="py-lineno"> 531</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Uninstall fwd successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L532"></a><tt class="py-lineno"> 532</tt> <tt class="py-line"> <tt id="link-144" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-144', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Uninstall fwd failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L533"></a><tt class="py-lineno"> 533</tt> <tt class="py-line"> </tt>
-<a name="L534"></a><tt class="py-lineno"> 534</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-145" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-145', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check app ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L535"></a><tt class="py-lineno"> 535</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L536"></a><tt class="py-lineno"> 536</tt> <tt class="py-line"> <tt class="py-name">appCheck2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L537"></a><tt class="py-lineno"> 537</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L538"></a><tt class="py-lineno"> 538</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-146" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-146', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-147', 'appToIDCheck', 'link-64');">appToIDCheck</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L539"></a><tt class="py-lineno"> 539</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"appToIDCheck-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L540"></a><tt class="py-lineno"> 540</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L541"></a><tt class="py-lineno"> 541</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L542"></a><tt class="py-lineno"> 542</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L543"></a><tt class="py-lineno"> 543</tt> <tt class="py-line"> </tt>
-<a name="L544"></a><tt class="py-lineno"> 544</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L545"></a><tt class="py-lineno"> 545</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L546"></a><tt class="py-lineno"> 546</tt> <tt class="py-line"> <tt class="py-name">appCheck2</tt> <tt class="py-op">=</tt> <tt class="py-name">appCheck2</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L547"></a><tt class="py-lineno"> 547</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck2</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L548"></a><tt class="py-lineno"> 548</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-148" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-148', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-149" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-149', 'apps', 'link-66');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L549"></a><tt class="py-lineno"> 549</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-150" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-150', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-151" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-151', 'appIDs', 'link-68');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L550"></a><tt class="py-lineno"> 550</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck2</tt><tt class="py-op">,</tt> </tt>
-<a name="L551"></a><tt class="py-lineno"> 551</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L552"></a><tt class="py-lineno"> 552</tt> <tt class="py-line"> <tt id="link-152" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-152', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L553"></a><tt class="py-lineno"> 553</tt> <tt class="py-line"> </tt>
-<a name="L554"></a><tt class="py-lineno"> 554</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-153', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add host intents via cli"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L555"></a><tt class="py-lineno"> 555</tt> <tt class="py-line"> <tt class="py-name">intentIds</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L556"></a><tt class="py-lineno"> 556</tt> <tt class="py-line"> <tt class="py-comment"># TODO: move the host numbers to params</tt> </tt>
-<a name="L557"></a><tt class="py-lineno"> 557</tt> <tt class="py-line"> <tt class="py-comment"># Maybe look at all the paths we ping?</tt> </tt>
-<a name="L558"></a><tt class="py-lineno"> 558</tt> <tt class="py-line"> <tt class="py-name">intentAddResult</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L559"></a><tt class="py-lineno"> 559</tt> <tt class="py-line"> <tt class="py-name">hostResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L560"></a><tt class="py-lineno"> 560</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-number">18</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L561"></a><tt class="py-lineno"> 561</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-154" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-154', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Adding host intent between h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L562"></a><tt class="py-lineno"> 562</tt> <tt class="py-line"> <tt class="py-string">" and h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L563"></a><tt class="py-lineno"> 563</tt> <tt class="py-line"> <tt class="py-name">host1</tt> <tt class="py-op">=</tt> <tt class="py-string">"00:00:00:00:00:"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L564"></a><tt class="py-lineno"> 564</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L565"></a><tt class="py-lineno"> 565</tt> <tt class="py-line"> <tt class="py-name">host2</tt> <tt class="py-op">=</tt> <tt class="py-string">"00:00:00:00:00:"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L566"></a><tt class="py-lineno"> 566</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L567"></a><tt class="py-lineno"> 567</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: getHost can return None</tt> </tt>
-<a name="L568"></a><tt class="py-lineno"> 568</tt> <tt class="py-line"> <tt class="py-name">host1Dict</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getHost()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getHost,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getHost()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getHost"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getHost
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getHost" class="py-name" href="#" onclick="return doclink('link-155', 'getHost', 'link-155');">getHost</a></tt><tt class="py-op">(</tt> <tt class="py-name">host1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L569"></a><tt class="py-lineno"> 569</tt> <tt class="py-line"> <tt class="py-name">host2Dict</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-156" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getHost
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getHost" class="py-name" href="#" onclick="return doclink('link-156', 'getHost', 'link-155');">getHost</a></tt><tt class="py-op">(</tt> <tt class="py-name">host2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L570"></a><tt class="py-lineno"> 570</tt> <tt class="py-line"> <tt class="py-name">host1Id</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L571"></a><tt class="py-lineno"> 571</tt> <tt class="py-line"> <tt class="py-name">host2Id</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L572"></a><tt class="py-lineno"> 572</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">host1Dict</tt> <tt class="py-keyword">and</tt> <tt class="py-name">host2Dict</tt><tt class="py-op">:</tt> </tt>
-<a name="L573"></a><tt class="py-lineno"> 573</tt> <tt class="py-line"> <tt class="py-name">host1Id</tt> <tt class="py-op">=</tt> <tt class="py-name">host1Dict</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L574"></a><tt class="py-lineno"> 574</tt> <tt class="py-line"> <tt class="py-name">host2Id</tt> <tt class="py-op">=</tt> <tt class="py-name">host2Dict</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L575"></a><tt class="py-lineno"> 575</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">host1Id</tt> <tt class="py-keyword">and</tt> <tt class="py-name">host2Id</tt><tt class="py-op">:</tt> </tt>
-<a name="L576"></a><tt class="py-lineno"> 576</tt> <tt class="py-line"> <tt class="py-name">nodeNum</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> </tt>
-<a name="L577"></a><tt class="py-lineno"> 577</tt> <tt class="py-line"> <tt class="py-name">tmpId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt> <tt class="py-name">nodeNum</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addHostIntent()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addHostIntent,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addHostIntent()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addHostIntent"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addHostIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addHostIntent" class="py-name" href="#" onclick="return doclink('link-157', 'addHostIntent', 'link-157');">addHostIntent</a></tt><tt class="py-op">(</tt> <tt class="py-name">host1Id</tt><tt class="py-op">,</tt> <tt class="py-name">host2Id</tt> <tt class="py-op">)</tt> </tt>
-<a name="L578"></a><tt class="py-lineno"> 578</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tmpId</tt><tt class="py-op">:</tt> </tt>
-<a name="L579"></a><tt class="py-lineno"> 579</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-158" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-158', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Added intent with id: "</tt> <tt class="py-op">+</tt> <tt class="py-name">tmpId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L580"></a><tt class="py-lineno"> 580</tt> <tt class="py-line"> <tt class="py-name">intentIds</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">tmpId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L581"></a><tt class="py-lineno"> 581</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L582"></a><tt class="py-lineno"> 582</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-159" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-159', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-160" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-160', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"addHostIntent returned: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L583"></a><tt class="py-lineno"> 583</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">tmpId</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L584"></a><tt class="py-lineno"> 584</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L585"></a><tt class="py-lineno"> 585</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-161" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-161', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-162', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, getHost() failed for h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L586"></a><tt class="py-lineno"> 586</tt> <tt class="py-line"> <tt class="py-string">" and/or h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L587"></a><tt class="py-lineno"> 587</tt> <tt class="py-line"> <tt id="link-163" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#hosts,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#hosts"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-163', 'hosts', 'link-163');">hosts</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-164" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-164', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L588"></a><tt class="py-lineno"> 588</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-165" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-165', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Hosts output: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L589"></a><tt class="py-lineno"> 589</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L590"></a><tt class="py-lineno"> 590</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-166" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-166', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-167" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-167', 'hosts', 'link-163');">hosts</a></tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L591"></a><tt class="py-lineno"> 591</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L592"></a><tt class="py-lineno"> 592</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L593"></a><tt class="py-lineno"> 593</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L594"></a><tt class="py-lineno"> 594</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L595"></a><tt class="py-lineno"> 595</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-168', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-169" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-169', 'hosts', 'link-163');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L596"></a><tt class="py-lineno"> 596</tt> <tt class="py-line"> <tt class="py-name">hostResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L597"></a><tt class="py-lineno"> 597</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">hostResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L598"></a><tt class="py-lineno"> 598</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Found a host id for each host"</tt><tt class="py-op">,</tt> </tt>
-<a name="L599"></a><tt class="py-lineno"> 599</tt> <tt class="py-line"> <tt id="link-170" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-170', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error looking up host ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L600"></a><tt class="py-lineno"> 600</tt> <tt class="py-line"> </tt>
-<a name="L601"></a><tt class="py-lineno"> 601</tt> <tt class="py-line"> <tt class="py-name">intentStart</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L602"></a><tt class="py-lineno"> 602</tt> <tt class="py-line"> <tt class="py-name">onosIds</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-171" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllIntentsId"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId" class="py-name" href="#" onclick="return doclink('link-171', 'getAllIntentsId', 'link-171');">getAllIntentsId</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L603"></a><tt class="py-lineno"> 603</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-172" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-172', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Submitted intents: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">intentIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L604"></a><tt class="py-lineno"> 604</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-173', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents in ONOS: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L605"></a><tt class="py-lineno"> 605</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-174" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intent"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-174', 'intent', 'link-174');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentIds</tt><tt class="py-op">:</tt> </tt>
-<a name="L606"></a><tt class="py-lineno"> 606</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-175" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-175', 'intent', 'link-174');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosIds</tt><tt class="py-op">:</tt> </tt>
-<a name="L607"></a><tt class="py-lineno"> 607</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> <tt class="py-comment"># intent submitted is in onos</tt> </tt>
-<a name="L608"></a><tt class="py-lineno"> 608</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L609"></a><tt class="py-lineno"> 609</tt> <tt class="py-line"> <tt class="py-name">intentAddResult</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L610"></a><tt class="py-lineno"> 610</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentAddResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L611"></a><tt class="py-lineno"> 611</tt> <tt class="py-line"> <tt class="py-name">intentStop</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L612"></a><tt class="py-lineno"> 612</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L613"></a><tt class="py-lineno"> 613</tt> <tt class="py-line"> <tt class="py-name">intentStop</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L614"></a><tt class="py-lineno"> 614</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L615"></a><tt class="py-lineno"> 615</tt> <tt class="py-line"> <tt id="link-176" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intents,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intents"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-176', 'intents', 'link-176');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-177" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-177', 'intents', 'link-176');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L616"></a><tt class="py-lineno"> 616</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L617"></a><tt class="py-lineno"> 617</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L618"></a><tt class="py-lineno"> 618</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-178" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-178', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-string">'Count'</tt><tt class="py-op">,</tt> <tt class="py-string">'ID'</tt><tt class="py-op">,</tt> <tt class="py-string">'State'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L619"></a><tt class="py-lineno"> 619</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L620"></a><tt class="py-lineno"> 620</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L621"></a><tt class="py-lineno"> 621</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-179" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-179', 'intent', 'link-174');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-180" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-180', 'intents', 'link-176');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L622"></a><tt class="py-lineno"> 622</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-181" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-181', 'intent', 'link-174');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L623"></a><tt class="py-lineno"> 623</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"INSTALLED"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L624"></a><tt class="py-lineno"> 624</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L625"></a><tt class="py-lineno"> 625</tt> <tt class="py-line"> <tt class="py-name">intentId</tt> <tt class="py-op">=</tt> <tt id="link-182" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-182', 'intent', 'link-174');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L626"></a><tt class="py-lineno"> 626</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L627"></a><tt class="py-lineno"> 627</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L628"></a><tt class="py-lineno"> 628</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-183" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-183', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L629"></a><tt class="py-lineno"> 629</tt> <tt class="py-line"> <tt class="py-comment"># add submitted intents not in the store</tt> </tt>
-<a name="L630"></a><tt class="py-lineno"> 630</tt> <tt class="py-line"> <tt class="py-name">tmplist</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt> <tt class="py-op">]</tt> </tt>
-<a name="L631"></a><tt class="py-lineno"> 631</tt> <tt class="py-line"> <tt class="py-name">missingIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L632"></a><tt class="py-lineno"> 632</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentIds</tt><tt class="py-op">:</tt> </tt>
-<a name="L633"></a><tt class="py-lineno"> 633</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">tmplist</tt><tt class="py-op">:</tt> </tt>
-<a name="L634"></a><tt class="py-lineno"> 634</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-string">" - "</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L635"></a><tt class="py-lineno"> 635</tt> <tt class="py-line"> <tt class="py-name">missingIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L636"></a><tt class="py-lineno"> 636</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L637"></a><tt class="py-lineno"> 637</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt><tt class="py-op">:</tt> </tt>
-<a name="L638"></a><tt class="py-lineno"> 638</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L639"></a><tt class="py-lineno"> 639</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-184" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-184', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L640"></a><tt class="py-lineno"> 640</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">s</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L641"></a><tt class="py-lineno"> 641</tt> <tt class="py-line"> <tt id="link-185" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#leaders"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-185', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-186" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-186', 'leaders', 'link-185');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L642"></a><tt class="py-lineno"> 642</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L643"></a><tt class="py-lineno"> 643</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L644"></a><tt class="py-lineno"> 644</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-187" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-187', 'leaders', 'link-185');">leaders</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L645"></a><tt class="py-lineno"> 645</tt> <tt class="py-line"> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-188" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-188', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L646"></a><tt class="py-lineno"> 646</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-189" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-189', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedLeaders</tt><tt class="py-op">,</tt> </tt>
-<a name="L647"></a><tt class="py-lineno"> 647</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L648"></a><tt class="py-lineno"> 648</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L649"></a><tt class="py-lineno"> 649</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L650"></a><tt class="py-lineno"> 650</tt> <tt class="py-line"> <tt class="py-comment"># check for all intent partitions</tt> </tt>
-<a name="L651"></a><tt class="py-lineno"> 651</tt> <tt class="py-line"> <tt class="py-name">topics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L652"></a><tt class="py-lineno"> 652</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">14</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L653"></a><tt class="py-lineno"> 653</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"intent-partition-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L654"></a><tt class="py-lineno"> 654</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-190" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-190', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">topics</tt> <tt class="py-op">)</tt> </tt>
-<a name="L655"></a><tt class="py-lineno"> 655</tt> <tt class="py-line"> <tt class="py-name">ONOStopics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-string">'topic'</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">]</tt> </tt>
-<a name="L656"></a><tt class="py-lineno"> 656</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">in</tt> <tt class="py-name">topics</tt><tt class="py-op">:</tt> </tt>
-<a name="L657"></a><tt class="py-lineno"> 657</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOStopics</tt><tt class="py-op">:</tt> </tt>
-<a name="L658"></a><tt class="py-lineno"> 658</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-191" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-191', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-192" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-192', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error: "</tt> <tt class="py-op">+</tt> <tt class="py-name">topic</tt> <tt class="py-op">+</tt> </tt>
-<a name="L659"></a><tt class="py-lineno"> 659</tt> <tt class="py-line"> <tt class="py-string">" not in leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L660"></a><tt class="py-lineno"> 660</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L661"></a><tt class="py-lineno"> 661</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L662"></a><tt class="py-lineno"> 662</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-193" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-193', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-194" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-194', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"leaders() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L663"></a><tt class="py-lineno"> 663</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L664"></a><tt class="py-lineno"> 664</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-195" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-195', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L665"></a><tt class="py-lineno"> 665</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-196" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-196', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-197" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-197', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-198" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-198', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L666"></a><tt class="py-lineno"> 666</tt> <tt class="py-line"> <tt class="py-comment"># Check all nodes</tt> </tt>
-<a name="L667"></a><tt class="py-lineno"> 667</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">missing</tt><tt class="py-op">:</tt> </tt>
-<a name="L668"></a><tt class="py-lineno"> 668</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L669"></a><tt class="py-lineno"> 669</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt id="link-199" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-199', 'leaders', 'link-185');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L670"></a><tt class="py-lineno"> 670</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-200" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-200', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" leaders output: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L671"></a><tt class="py-lineno"> 671</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L672"></a><tt class="py-lineno"> 672</tt> <tt class="py-line"> </tt>
-<a name="L673"></a><tt class="py-lineno"> 673</tt> <tt class="py-line"> <tt id="link-201" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#partitions"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-201', 'partitions', 'link-201');">partitions</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-202" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-202', 'partitions', 'link-201');">partitions</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L674"></a><tt class="py-lineno"> 674</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L675"></a><tt class="py-lineno"> 675</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-203" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-203', 'partitions', 'link-201');">partitions</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L676"></a><tt class="py-lineno"> 676</tt> <tt class="py-line"> <tt class="py-name">parsedPartitions</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-204" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-204', 'partitions', 'link-201');">partitions</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L677"></a><tt class="py-lineno"> 677</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-205" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-205', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPartitions</tt><tt class="py-op">,</tt> </tt>
-<a name="L678"></a><tt class="py-lineno"> 678</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L679"></a><tt class="py-lineno"> 679</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L680"></a><tt class="py-lineno"> 680</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L681"></a><tt class="py-lineno"> 681</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for a leader in all paritions</tt> </tt>
-<a name="L682"></a><tt class="py-lineno"> 682</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for consistency among nodes</tt> </tt>
-<a name="L683"></a><tt class="py-lineno"> 683</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L684"></a><tt class="py-lineno"> 684</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-206" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-206', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-207" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-207', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"partitions() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L685"></a><tt class="py-lineno"> 685</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L686"></a><tt class="py-lineno"> 686</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-208" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-208', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing partitions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L687"></a><tt class="py-lineno"> 687</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-209" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-209', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-210" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-210', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-211" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-211', 'partitions', 'link-201');">partitions</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L688"></a><tt class="py-lineno"> 688</tt> <tt class="py-line"> <tt id="link-212" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#pendingMap"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-212', 'pendingMap', 'link-212');">pendingMap</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-213" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-213', 'pendingMap', 'link-212');">pendingMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L689"></a><tt class="py-lineno"> 689</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L690"></a><tt class="py-lineno"> 690</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-214" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-214', 'pendingMap', 'link-212');">pendingMap</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L691"></a><tt class="py-lineno"> 691</tt> <tt class="py-line"> <tt class="py-name">parsedPending</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-215" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-215', 'pendingMap', 'link-212');">pendingMap</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L692"></a><tt class="py-lineno"> 692</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-216" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-216', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPending</tt><tt class="py-op">,</tt> </tt>
-<a name="L693"></a><tt class="py-lineno"> 693</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L694"></a><tt class="py-lineno"> 694</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L695"></a><tt class="py-lineno"> 695</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L696"></a><tt class="py-lineno"> 696</tt> <tt class="py-line"> <tt class="py-comment"># TODO check something here?</tt> </tt>
-<a name="L697"></a><tt class="py-lineno"> 697</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L698"></a><tt class="py-lineno"> 698</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-217" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-217', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-218" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-218', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pendingMap() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L699"></a><tt class="py-lineno"> 699</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L700"></a><tt class="py-lineno"> 700</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-219" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-219', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing pending map"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L701"></a><tt class="py-lineno"> 701</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-220" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-220', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-221" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-221', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-222" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-222', 'pendingMap', 'link-212');">pendingMap</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L702"></a><tt class="py-lineno"> 702</tt> <tt class="py-line"> </tt>
-<a name="L703"></a><tt class="py-lineno"> 703</tt> <tt class="py-line"> <tt class="py-name">intentAddResult</tt> <tt class="py-op">=</tt> <tt class="py-name">bool</tt><tt class="py-op">(</tt> <tt class="py-name">intentAddResult</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">missingIntents</tt> <tt class="py-keyword">and</tt> </tt>
-<a name="L704"></a><tt class="py-lineno"> 704</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">)</tt> </tt>
-<a name="L705"></a><tt class="py-lineno"> 705</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">intentAddResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L706"></a><tt class="py-lineno"> 706</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-223" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-223', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-224" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-224', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in pushing host intents to ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L707"></a><tt class="py-lineno"> 707</tt> <tt class="py-line"> </tt>
-<a name="L708"></a><tt class="py-lineno"> 708</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-225" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-225', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Intent Anti-Entropy dispersion"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L709"></a><tt class="py-lineno"> 709</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">100</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L710"></a><tt class="py-lineno"> 710</tt> <tt class="py-line"> <tt class="py-name">correct</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L711"></a><tt class="py-lineno"> 711</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-226" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-226', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Submitted intents: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">intentIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L712"></a><tt class="py-lineno"> 712</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-227" class="py-name" targets="Module TestON.bin.cli=TestON.bin.cli-module.html,Package TestON.drivers.common.cli=TestON.drivers.common.cli-module.html"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-227', 'cli', 'link-227');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L713"></a><tt class="py-lineno"> 713</tt> <tt class="py-line"> <tt class="py-name">onosIds</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L714"></a><tt class="py-lineno"> 714</tt> <tt class="py-line"> <tt class="py-name">ids</tt> <tt class="py-op">=</tt> <tt id="link-228" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-228', 'cli', 'link-227');">cli</a></tt><tt class="py-op">.</tt><tt id="link-229" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId" class="py-name" href="#" onclick="return doclink('link-229', 'getAllIntentsId', 'link-171');">getAllIntentsId</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L715"></a><tt class="py-lineno"> 715</tt> <tt class="py-line"> <tt class="py-name">onosIds</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">ids</tt> <tt class="py-op">)</tt> </tt>
-<a name="L716"></a><tt class="py-lineno"> 716</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-230" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-230', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents in "</tt> <tt class="py-op">+</tt> <tt id="link-231" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-231', 'cli', 'link-227');">cli</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L717"></a><tt class="py-lineno"> 717</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">onosIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L718"></a><tt class="py-lineno"> 718</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">ids</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">intentIds</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L719"></a><tt class="py-lineno"> 719</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-232" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-232', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Set of intent IDs doesn't match"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L720"></a><tt class="py-lineno"> 720</tt> <tt class="py-line"> <tt class="py-name">correct</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L721"></a><tt class="py-lineno"> 721</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L722"></a><tt class="py-lineno"> 722</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L723"></a><tt class="py-lineno"> 723</tt> <tt class="py-line"> <tt id="link-233" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-233', 'intents', 'link-176');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-234" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-234', 'cli', 'link-227');">cli</a></tt><tt class="py-op">.</tt><tt id="link-235" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-235', 'intents', 'link-176');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L724"></a><tt class="py-lineno"> 724</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-236" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-236', 'intent', 'link-174');">intent</a></tt> <tt class="py-keyword">in</tt> <tt id="link-237" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-237', 'intents', 'link-176');">intents</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L725"></a><tt class="py-lineno"> 725</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-238" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-238', 'intent', 'link-174');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">"INSTALLED"</tt><tt class="py-op">:</tt> </tt>
-<a name="L726"></a><tt class="py-lineno"> 726</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-239" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-239', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Intent "</tt> <tt class="py-op">+</tt> <tt id="link-240" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-240', 'intent', 'link-174');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> </tt>
-<a name="L727"></a><tt class="py-lineno"> 727</tt> <tt class="py-line"> <tt class="py-string">" is "</tt> <tt class="py-op">+</tt> <tt id="link-241" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-241', 'intent', 'link-174');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L728"></a><tt class="py-lineno"> 728</tt> <tt class="py-line"> <tt class="py-name">correct</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L729"></a><tt class="py-lineno"> 729</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L730"></a><tt class="py-lineno"> 730</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">correct</tt><tt class="py-op">:</tt> </tt>
-<a name="L731"></a><tt class="py-lineno"> 731</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L732"></a><tt class="py-lineno"> 732</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L733"></a><tt class="py-lineno"> 733</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L734"></a><tt class="py-lineno"> 734</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">intentStop</tt><tt class="py-op">:</tt> </tt>
-<a name="L735"></a><tt class="py-lineno"> 735</tt> <tt class="py-line"> <tt class="py-name">intentStop</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L736"></a><tt class="py-lineno"> 736</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">gossipTime</tt> </tt>
-<a name="L737"></a><tt class="py-lineno"> 737</tt> <tt class="py-line"> <tt class="py-name">gossipTime</tt> <tt class="py-op">=</tt> <tt class="py-name">intentStop</tt> <tt class="py-op">-</tt> <tt class="py-name">intentStart</tt> </tt>
-<a name="L738"></a><tt class="py-lineno"> 738</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-242" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-242', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"It took about "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">gossipTime</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L739"></a><tt class="py-lineno"> 739</tt> <tt class="py-line"> <tt class="py-string">" seconds for all intents to appear in each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L740"></a><tt class="py-lineno"> 740</tt> <tt class="py-line"> <tt class="py-name">append</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L741"></a><tt class="py-lineno"> 741</tt> <tt class="py-line"> <tt class="py-name">title</tt> <tt class="py-op">=</tt> <tt class="py-string">"Gossip Intents"</tt> </tt>
-<a name="L742"></a><tt class="py-lineno"> 742</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L743"></a><tt class="py-lineno"> 743</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">append</tt> <tt class="py-keyword">is</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L744"></a><tt class="py-lineno"> 744</tt> <tt class="py-line"> <tt class="py-name">curTitle</tt> <tt class="py-op">=</tt> <tt class="py-name">title</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt> </tt>
-<a name="L745"></a><tt class="py-lineno"> 745</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">curTitle</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">labels</tt><tt class="py-op">:</tt> </tt>
-<a name="L746"></a><tt class="py-lineno"> 746</tt> <tt class="py-line"> <tt class="py-name">labels</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">curTitle</tt> <tt class="py-op">)</tt> </tt>
-<a name="L747"></a><tt class="py-lineno"> 747</tt> <tt class="py-line"> <tt class="py-name">data</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">gossipTime</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L748"></a><tt class="py-lineno"> 748</tt> <tt class="py-line"> <tt class="py-name">append</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L749"></a><tt class="py-lineno"> 749</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L750"></a><tt class="py-lineno"> 750</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L751"></a><tt class="py-lineno"> 751</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: make this time configurable/calculate based off of number of</tt> </tt>
-<a name="L752"></a><tt class="py-lineno"> 752</tt> <tt class="py-line"> <tt class="py-comment"># nodes and gossip rounds</tt> </tt>
-<a name="L753"></a><tt class="py-lineno"> 753</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_greater_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L754"></a><tt class="py-lineno"> 754</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-number">40</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">gossipTime</tt><tt class="py-op">,</tt> </tt>
-<a name="L755"></a><tt class="py-lineno"> 755</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ECM anti-entropy for intents worked within "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L756"></a><tt class="py-lineno"> 756</tt> <tt class="py-line"> <tt class="py-string">"expected time"</tt><tt class="py-op">,</tt> </tt>
-<a name="L757"></a><tt class="py-lineno"> 757</tt> <tt class="py-line"> <tt id="link-243" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-243', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intent ECM anti-entropy took too long"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L758"></a><tt class="py-lineno"> 758</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">gossipTime</tt> <tt class="py-op"><=</tt> <tt class="py-number">40</tt><tt class="py-op">:</tt> </tt>
-<a name="L759"></a><tt class="py-lineno"> 759</tt> <tt class="py-line"> <tt class="py-name">intentAddResult</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L760"></a><tt class="py-lineno"> 760</tt> <tt class="py-line"> </tt>
-<a name="L761"></a><tt class="py-lineno"> 761</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">intentAddResult</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"key"</tt> <tt class="py-keyword">in</tt> <tt id="link-244" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-244', 'pendingMap', 'link-212');">pendingMap</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L762"></a><tt class="py-lineno"> 762</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L763"></a><tt class="py-lineno"> 763</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L764"></a><tt class="py-lineno"> 764</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-245" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-245', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Sleeping 60 seconds to see if intents are found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L765"></a><tt class="py-lineno"> 765</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L766"></a><tt class="py-lineno"> 766</tt> <tt class="py-line"> <tt class="py-name">onosIds</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-246" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId" class="py-name" href="#" onclick="return doclink('link-246', 'getAllIntentsId', 'link-171');">getAllIntentsId</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L767"></a><tt class="py-lineno"> 767</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-247" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-247', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Submitted intents: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">intentIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L768"></a><tt class="py-lineno"> 768</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-248" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-248', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents in ONOS: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L769"></a><tt class="py-lineno"> 769</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L770"></a><tt class="py-lineno"> 770</tt> <tt class="py-line"> <tt id="link-249" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-249', 'intents', 'link-176');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-250" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-250', 'intents', 'link-176');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L771"></a><tt class="py-lineno"> 771</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L772"></a><tt class="py-lineno"> 772</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-251" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-251', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-string">'Count'</tt><tt class="py-op">,</tt> <tt class="py-string">'ID'</tt><tt class="py-op">,</tt> <tt class="py-string">'State'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L773"></a><tt class="py-lineno"> 773</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L774"></a><tt class="py-lineno"> 774</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L775"></a><tt class="py-lineno"> 775</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-252" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-252', 'intent', 'link-174');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-253" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-253', 'intents', 'link-176');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L776"></a><tt class="py-lineno"> 776</tt> <tt class="py-line"> <tt class="py-comment"># Iter through intents of a node</tt> </tt>
-<a name="L777"></a><tt class="py-lineno"> 777</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-254" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-254', 'intent', 'link-174');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L778"></a><tt class="py-lineno"> 778</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"INSTALLED"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L779"></a><tt class="py-lineno"> 779</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L780"></a><tt class="py-lineno"> 780</tt> <tt class="py-line"> <tt class="py-name">intentId</tt> <tt class="py-op">=</tt> <tt id="link-255" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-255', 'intent', 'link-174');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L781"></a><tt class="py-lineno"> 781</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L782"></a><tt class="py-lineno"> 782</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L783"></a><tt class="py-lineno"> 783</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-256" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-256', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L784"></a><tt class="py-lineno"> 784</tt> <tt class="py-line"> <tt class="py-comment"># add submitted intents not in the store</tt> </tt>
-<a name="L785"></a><tt class="py-lineno"> 785</tt> <tt class="py-line"> <tt class="py-name">tmplist</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt> <tt class="py-op">]</tt> </tt>
-<a name="L786"></a><tt class="py-lineno"> 786</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentIds</tt><tt class="py-op">:</tt> </tt>
-<a name="L787"></a><tt class="py-lineno"> 787</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">tmplist</tt><tt class="py-op">:</tt> </tt>
-<a name="L788"></a><tt class="py-lineno"> 788</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-string">" - "</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L789"></a><tt class="py-lineno"> 789</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L790"></a><tt class="py-lineno"> 790</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt><tt class="py-op">:</tt> </tt>
-<a name="L791"></a><tt class="py-lineno"> 791</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L792"></a><tt class="py-lineno"> 792</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-257" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-257', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L793"></a><tt class="py-lineno"> 793</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">s</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L794"></a><tt class="py-lineno"> 794</tt> <tt class="py-line"> <tt id="link-258" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-258', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-259" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-259', 'leaders', 'link-185');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L795"></a><tt class="py-lineno"> 795</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L796"></a><tt class="py-lineno"> 796</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L797"></a><tt class="py-lineno"> 797</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-260" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-260', 'leaders', 'link-185');">leaders</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L798"></a><tt class="py-lineno"> 798</tt> <tt class="py-line"> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-261" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-261', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L799"></a><tt class="py-lineno"> 799</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-262" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-262', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedLeaders</tt><tt class="py-op">,</tt> </tt>
-<a name="L800"></a><tt class="py-lineno"> 800</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L801"></a><tt class="py-lineno"> 801</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L802"></a><tt class="py-lineno"> 802</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L803"></a><tt class="py-lineno"> 803</tt> <tt class="py-line"> <tt class="py-comment"># check for all intent partitions</tt> </tt>
-<a name="L804"></a><tt class="py-lineno"> 804</tt> <tt class="py-line"> <tt class="py-comment"># check for election</tt> </tt>
-<a name="L805"></a><tt class="py-lineno"> 805</tt> <tt class="py-line"> <tt class="py-name">topics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L806"></a><tt class="py-lineno"> 806</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">14</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L807"></a><tt class="py-lineno"> 807</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"intent-partition-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L808"></a><tt class="py-lineno"> 808</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: this should only be after we start the app</tt> </tt>
-<a name="L809"></a><tt class="py-lineno"> 809</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L810"></a><tt class="py-lineno"> 810</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-263" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-263', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">topics</tt> <tt class="py-op">)</tt> </tt>
-<a name="L811"></a><tt class="py-lineno"> 811</tt> <tt class="py-line"> <tt class="py-name">ONOStopics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-string">'topic'</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">]</tt> </tt>
-<a name="L812"></a><tt class="py-lineno"> 812</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">in</tt> <tt class="py-name">topics</tt><tt class="py-op">:</tt> </tt>
-<a name="L813"></a><tt class="py-lineno"> 813</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOStopics</tt><tt class="py-op">:</tt> </tt>
-<a name="L814"></a><tt class="py-lineno"> 814</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-264" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-264', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-265" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-265', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error: "</tt> <tt class="py-op">+</tt> <tt class="py-name">topic</tt> <tt class="py-op">+</tt> </tt>
-<a name="L815"></a><tt class="py-lineno"> 815</tt> <tt class="py-line"> <tt class="py-string">" not in leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L816"></a><tt class="py-lineno"> 816</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L817"></a><tt class="py-lineno"> 817</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L818"></a><tt class="py-lineno"> 818</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-266" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-266', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-267" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-267', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"leaders() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L819"></a><tt class="py-lineno"> 819</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L820"></a><tt class="py-lineno"> 820</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-268" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-268', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L821"></a><tt class="py-lineno"> 821</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-269" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-269', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-270" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-270', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-271" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-271', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L822"></a><tt class="py-lineno"> 822</tt> <tt class="py-line"> <tt class="py-comment"># Check all nodes</tt> </tt>
-<a name="L823"></a><tt class="py-lineno"> 823</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">missing</tt><tt class="py-op">:</tt> </tt>
-<a name="L824"></a><tt class="py-lineno"> 824</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L825"></a><tt class="py-lineno"> 825</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt id="link-272" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-272', 'leaders', 'link-185');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L826"></a><tt class="py-lineno"> 826</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-273" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-273', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" leaders output: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L827"></a><tt class="py-lineno"> 827</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L828"></a><tt class="py-lineno"> 828</tt> <tt class="py-line"> </tt>
-<a name="L829"></a><tt class="py-lineno"> 829</tt> <tt class="py-line"> <tt id="link-274" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-274', 'partitions', 'link-201');">partitions</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-275" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-275', 'partitions', 'link-201');">partitions</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L830"></a><tt class="py-lineno"> 830</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L831"></a><tt class="py-lineno"> 831</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-276" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-276', 'partitions', 'link-201');">partitions</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L832"></a><tt class="py-lineno"> 832</tt> <tt class="py-line"> <tt class="py-name">parsedPartitions</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-277" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-277', 'partitions', 'link-201');">partitions</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L833"></a><tt class="py-lineno"> 833</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-278" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-278', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPartitions</tt><tt class="py-op">,</tt> </tt>
-<a name="L834"></a><tt class="py-lineno"> 834</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L835"></a><tt class="py-lineno"> 835</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L836"></a><tt class="py-lineno"> 836</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L837"></a><tt class="py-lineno"> 837</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for a leader in all paritions</tt> </tt>
-<a name="L838"></a><tt class="py-lineno"> 838</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for consistency among nodes</tt> </tt>
-<a name="L839"></a><tt class="py-lineno"> 839</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L840"></a><tt class="py-lineno"> 840</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-279" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-279', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-280" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-280', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"partitions() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L841"></a><tt class="py-lineno"> 841</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L842"></a><tt class="py-lineno"> 842</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-281" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-281', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing partitions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L843"></a><tt class="py-lineno"> 843</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-282" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-282', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-283" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-283', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-284" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-284', 'partitions', 'link-201');">partitions</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L844"></a><tt class="py-lineno"> 844</tt> <tt class="py-line"> <tt id="link-285" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-285', 'pendingMap', 'link-212');">pendingMap</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-286" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-286', 'pendingMap', 'link-212');">pendingMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L845"></a><tt class="py-lineno"> 845</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L846"></a><tt class="py-lineno"> 846</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-287" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-287', 'pendingMap', 'link-212');">pendingMap</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L847"></a><tt class="py-lineno"> 847</tt> <tt class="py-line"> <tt class="py-name">parsedPending</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-288" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-288', 'pendingMap', 'link-212');">pendingMap</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L848"></a><tt class="py-lineno"> 848</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-289" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-289', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPending</tt><tt class="py-op">,</tt> </tt>
-<a name="L849"></a><tt class="py-lineno"> 849</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L850"></a><tt class="py-lineno"> 850</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L851"></a><tt class="py-lineno"> 851</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L852"></a><tt class="py-lineno"> 852</tt> <tt class="py-line"> <tt class="py-comment"># TODO check something here?</tt> </tt>
-<a name="L853"></a><tt class="py-lineno"> 853</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L854"></a><tt class="py-lineno"> 854</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-290" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-290', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-291" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-291', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pendingMap() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L855"></a><tt class="py-lineno"> 855</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L856"></a><tt class="py-lineno"> 856</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-292" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-292', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing pending map"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L857"></a><tt class="py-lineno"> 857</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-293" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-293', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-294" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-294', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-295" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-295', 'pendingMap', 'link-212');">pendingMap</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L858"></a><tt class="py-lineno"> 858</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE4"></a><div id="HAclusterRestart.CASE4-def"><a name="L859"></a><tt class="py-lineno"> 859</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE4-toggle" onclick="return toggle('HAclusterRestart.CASE4');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE4">CASE4</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE4-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE4-expanded"><a name="L860"></a><tt class="py-lineno"> 860</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L861"></a><tt class="py-lineno"> 861</tt> <tt class="py-line"><tt class="py-docstring"> Ping across added host intents</tt> </tt>
-<a name="L862"></a><tt class="py-lineno"> 862</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L863"></a><tt class="py-lineno"> 863</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L864"></a><tt class="py-lineno"> 864</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L865"></a><tt class="py-lineno"> 865</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L866"></a><tt class="py-lineno"> 866</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L867"></a><tt class="py-lineno"> 867</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L868"></a><tt class="py-lineno"> 868</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L869"></a><tt class="py-lineno"> 869</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-296" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-296', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L870"></a><tt class="py-lineno"> 870</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-297" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-297', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify connectivity by sendind traffic across Intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L871"></a><tt class="py-lineno"> 871</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Ping across added host intents to check "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L872"></a><tt class="py-lineno"> 872</tt> <tt class="py-line"> <tt class="py-string">"functionality and check the state of "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L873"></a><tt class="py-lineno"> 873</tt> <tt class="py-line"> <tt class="py-string">"the intent"</tt> </tt>
-<a name="L874"></a><tt class="py-lineno"> 874</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-298" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-298', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Ping across added host intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L875"></a><tt class="py-lineno"> 875</tt> <tt class="py-line"> <tt class="py-name">PingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L876"></a><tt class="py-lineno"> 876</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-number">18</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L877"></a><tt class="py-lineno"> 877</tt> <tt class="py-line"> <tt class="py-name">ping</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-299" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingHost()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingHost,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingHost()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingHost"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingHost
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingHost" class="py-name" href="#" onclick="return doclink('link-299', 'pingHost', 'link-299');">pingHost</a></tt><tt class="py-op">(</tt> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-string">"h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L878"></a><tt class="py-lineno"> 878</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-string">"h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L879"></a><tt class="py-lineno"> 879</tt> <tt class="py-line"> <tt class="py-name">PingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">PingResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ping</tt> </tt>
-<a name="L880"></a><tt class="py-lineno"> 880</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ping</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L881"></a><tt class="py-lineno"> 881</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-300" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-300', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Ping failed between h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L882"></a><tt class="py-lineno"> 882</tt> <tt class="py-line"> <tt class="py-string">" and h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L883"></a><tt class="py-lineno"> 883</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ping</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L884"></a><tt class="py-lineno"> 884</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-301" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-301', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Ping test passed!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L885"></a><tt class="py-lineno"> 885</tt> <tt class="py-line"> <tt class="py-comment"># Don't set PingResult or you'd override failures</tt> </tt>
-<a name="L886"></a><tt class="py-lineno"> 886</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">PingResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L887"></a><tt class="py-lineno"> 887</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-302" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-302', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-303" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-303', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L888"></a><tt class="py-lineno"> 888</tt> <tt class="py-line"> <tt class="py-string">"Intents have not been installed correctly, pings failed."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L889"></a><tt class="py-lineno"> 889</tt> <tt class="py-line"> <tt class="py-comment"># TODO: pretty print</tt> </tt>
-<a name="L890"></a><tt class="py-lineno"> 890</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-304" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-304', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS1 intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L891"></a><tt class="py-lineno"> 891</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L892"></a><tt class="py-lineno"> 892</tt> <tt class="py-line"> <tt class="py-name">tmpIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-305" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-305', 'intents', 'link-176');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L893"></a><tt class="py-lineno"> 893</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-306" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-306', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">tmpIntents</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L894"></a><tt class="py-lineno"> 894</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L895"></a><tt class="py-lineno"> 895</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L896"></a><tt class="py-lineno"> 896</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L897"></a><tt class="py-lineno"> 897</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L898"></a><tt class="py-lineno"> 898</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-307" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-307', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">tmpIntents</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L899"></a><tt class="py-lineno"> 899</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L900"></a><tt class="py-lineno"> 900</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L901"></a><tt class="py-lineno"> 901</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">PingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L902"></a><tt class="py-lineno"> 902</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents have been installed correctly and pings work"</tt><tt class="py-op">,</tt> </tt>
-<a name="L903"></a><tt class="py-lineno"> 903</tt> <tt class="py-line"> <tt id="link-308" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-308', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intents have not been installed correctly, pings failed."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L904"></a><tt class="py-lineno"> 904</tt> <tt class="py-line"> </tt>
-<a name="L905"></a><tt class="py-lineno"> 905</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-309" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-309', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check Intent state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L906"></a><tt class="py-lineno"> 906</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L907"></a><tt class="py-lineno"> 907</tt> <tt class="py-line"> <tt class="py-name">loopCount</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L908"></a><tt class="py-lineno"> 908</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-keyword">not</tt> <tt class="py-name">installedCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">loopCount</tt> <tt class="py-op"><</tt> <tt class="py-number">40</tt><tt class="py-op">:</tt> </tt>
-<a name="L909"></a><tt class="py-lineno"> 909</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L910"></a><tt class="py-lineno"> 910</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L911"></a><tt class="py-lineno"> 911</tt> <tt class="py-line"> <tt id="link-310" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-310', 'intents', 'link-176');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-311" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-311', 'intents', 'link-176');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L912"></a><tt class="py-lineno"> 912</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L913"></a><tt class="py-lineno"> 913</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-312" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-312', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-string">'Count'</tt><tt class="py-op">,</tt> <tt class="py-string">'ID'</tt><tt class="py-op">,</tt> <tt class="py-string">'State'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L914"></a><tt class="py-lineno"> 914</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L915"></a><tt class="py-lineno"> 915</tt> <tt class="py-line"> <tt class="py-comment"># Iter through intents of a node</tt> </tt>
-<a name="L916"></a><tt class="py-lineno"> 916</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L917"></a><tt class="py-lineno"> 917</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-313" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-313', 'intent', 'link-174');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-314" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-314', 'intents', 'link-176');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L918"></a><tt class="py-lineno"> 918</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-315" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-315', 'intent', 'link-174');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L919"></a><tt class="py-lineno"> 919</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"INSTALLED"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L920"></a><tt class="py-lineno"> 920</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L921"></a><tt class="py-lineno"> 921</tt> <tt class="py-line"> <tt class="py-name">intentId</tt> <tt class="py-op">=</tt> <tt id="link-316" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-316', 'intent', 'link-174');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L922"></a><tt class="py-lineno"> 922</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L923"></a><tt class="py-lineno"> 923</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L924"></a><tt class="py-lineno"> 924</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-317" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-317', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing intents."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L925"></a><tt class="py-lineno"> 925</tt> <tt class="py-line"> <tt class="py-comment"># Print states</tt> </tt>
-<a name="L926"></a><tt class="py-lineno"> 926</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L927"></a><tt class="py-lineno"> 927</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt><tt class="py-op">:</tt> </tt>
-<a name="L928"></a><tt class="py-lineno"> 928</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L929"></a><tt class="py-lineno"> 929</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-318" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-318', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L930"></a><tt class="py-lineno"> 930</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">s</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L931"></a><tt class="py-lineno"> 931</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">installedCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L932"></a><tt class="py-lineno"> 932</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L933"></a><tt class="py-lineno"> 933</tt> <tt class="py-line"> <tt class="py-name">loopCount</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L934"></a><tt class="py-lineno"> 934</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">installedCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L935"></a><tt class="py-lineno"> 935</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents are all INSTALLED"</tt><tt class="py-op">,</tt> </tt>
-<a name="L936"></a><tt class="py-lineno"> 936</tt> <tt class="py-line"> <tt id="link-319" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-319', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intents are not all in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L937"></a><tt class="py-lineno"> 937</tt> <tt class="py-line"> <tt class="py-string">"INSTALLED state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L938"></a><tt class="py-lineno"> 938</tt> <tt class="py-line"> </tt>
-<a name="L939"></a><tt class="py-lineno"> 939</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-320" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-320', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check leadership of topics"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L940"></a><tt class="py-lineno"> 940</tt> <tt class="py-line"> <tt id="link-321" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-321', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-322" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-322', 'leaders', 'link-185');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L941"></a><tt class="py-lineno"> 941</tt> <tt class="py-line"> <tt class="py-name">topicCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L942"></a><tt class="py-lineno"> 942</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L943"></a><tt class="py-lineno"> 943</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-323" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-323', 'leaders', 'link-185');">leaders</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L944"></a><tt class="py-lineno"> 944</tt> <tt class="py-line"> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-324" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-324', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L945"></a><tt class="py-lineno"> 945</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-325" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-325', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedLeaders</tt><tt class="py-op">,</tt> </tt>
-<a name="L946"></a><tt class="py-lineno"> 946</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L947"></a><tt class="py-lineno"> 947</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L948"></a><tt class="py-lineno"> 948</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L949"></a><tt class="py-lineno"> 949</tt> <tt class="py-line"> <tt class="py-comment"># check for all intent partitions</tt> </tt>
-<a name="L950"></a><tt class="py-lineno"> 950</tt> <tt class="py-line"> <tt class="py-comment"># check for election</tt> </tt>
-<a name="L951"></a><tt class="py-lineno"> 951</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Look at Devices as topics now that it uses this system</tt> </tt>
-<a name="L952"></a><tt class="py-lineno"> 952</tt> <tt class="py-line"> <tt class="py-name">topics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L953"></a><tt class="py-lineno"> 953</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">14</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L954"></a><tt class="py-lineno"> 954</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"intent-partition-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L955"></a><tt class="py-lineno"> 955</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: this should only be after we start the app</tt> </tt>
-<a name="L956"></a><tt class="py-lineno"> 956</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: topics.append( "org.onosproject.election" )</tt> </tt>
-<a name="L957"></a><tt class="py-lineno"> 957</tt> <tt class="py-line"> <tt class="py-comment"># Print leaders output</tt> </tt>
-<a name="L958"></a><tt class="py-lineno"> 958</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-326" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-326', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">topics</tt> <tt class="py-op">)</tt> </tt>
-<a name="L959"></a><tt class="py-lineno"> 959</tt> <tt class="py-line"> <tt class="py-name">ONOStopics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-string">'topic'</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">]</tt> </tt>
-<a name="L960"></a><tt class="py-lineno"> 960</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">in</tt> <tt class="py-name">topics</tt><tt class="py-op">:</tt> </tt>
-<a name="L961"></a><tt class="py-lineno"> 961</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOStopics</tt><tt class="py-op">:</tt> </tt>
-<a name="L962"></a><tt class="py-lineno"> 962</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-327" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-327', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-328" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-328', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error: "</tt> <tt class="py-op">+</tt> <tt class="py-name">topic</tt> <tt class="py-op">+</tt> </tt>
-<a name="L963"></a><tt class="py-lineno"> 963</tt> <tt class="py-line"> <tt class="py-string">" not in leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L964"></a><tt class="py-lineno"> 964</tt> <tt class="py-line"> <tt class="py-name">topicCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L965"></a><tt class="py-lineno"> 965</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L966"></a><tt class="py-lineno"> 966</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-329" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-329', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-330" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-330', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"leaders() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L967"></a><tt class="py-lineno"> 967</tt> <tt class="py-line"> <tt class="py-name">topicCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L968"></a><tt class="py-lineno"> 968</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L969"></a><tt class="py-lineno"> 969</tt> <tt class="py-line"> <tt class="py-name">topicCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L970"></a><tt class="py-lineno"> 970</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-331" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-331', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L971"></a><tt class="py-lineno"> 971</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-332" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-332', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-333" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-333', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-334" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-334', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L972"></a><tt class="py-lineno"> 972</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Check for a leader of these topics</tt> </tt>
-<a name="L973"></a><tt class="py-lineno"> 973</tt> <tt class="py-line"> <tt class="py-comment"># Check all nodes</tt> </tt>
-<a name="L974"></a><tt class="py-lineno"> 974</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topicCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L975"></a><tt class="py-lineno"> 975</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L976"></a><tt class="py-lineno"> 976</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt id="link-335" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-335', 'leaders', 'link-185');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L977"></a><tt class="py-lineno"> 977</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-336" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-336', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" leaders output: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L978"></a><tt class="py-lineno"> 978</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L979"></a><tt class="py-lineno"> 979</tt> <tt class="py-line"> </tt>
-<a name="L980"></a><tt class="py-lineno"> 980</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">topicCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L981"></a><tt class="py-lineno"> 981</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"intent Partitions is in leaders"</tt><tt class="py-op">,</tt> </tt>
-<a name="L982"></a><tt class="py-lineno"> 982</tt> <tt class="py-line"> <tt id="link-337" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-337', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Some topics were lost "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L983"></a><tt class="py-lineno"> 983</tt> <tt class="py-line"> <tt class="py-comment"># Print partitions</tt> </tt>
-<a name="L984"></a><tt class="py-lineno"> 984</tt> <tt class="py-line"> <tt id="link-338" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-338', 'partitions', 'link-201');">partitions</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-339" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-339', 'partitions', 'link-201');">partitions</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L985"></a><tt class="py-lineno"> 985</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L986"></a><tt class="py-lineno"> 986</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-340" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-340', 'partitions', 'link-201');">partitions</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L987"></a><tt class="py-lineno"> 987</tt> <tt class="py-line"> <tt class="py-name">parsedPartitions</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-341" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-341', 'partitions', 'link-201');">partitions</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L988"></a><tt class="py-lineno"> 988</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-342" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-342', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPartitions</tt><tt class="py-op">,</tt> </tt>
-<a name="L989"></a><tt class="py-lineno"> 989</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L990"></a><tt class="py-lineno"> 990</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L991"></a><tt class="py-lineno"> 991</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L992"></a><tt class="py-lineno"> 992</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for a leader in all paritions</tt> </tt>
-<a name="L993"></a><tt class="py-lineno"> 993</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for consistency among nodes</tt> </tt>
-<a name="L994"></a><tt class="py-lineno"> 994</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L995"></a><tt class="py-lineno"> 995</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-343" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-343', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-344" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-344', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"partitions() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L996"></a><tt class="py-lineno"> 996</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L997"></a><tt class="py-lineno"> 997</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-345" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-345', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing partitions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L998"></a><tt class="py-lineno"> 998</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-346" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-346', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-347" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-347', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-348" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-348', 'partitions', 'link-201');">partitions</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L999"></a><tt class="py-lineno"> 999</tt> <tt class="py-line"> <tt class="py-comment"># Print Pending Map</tt> </tt>
-<a name="L1000"></a><tt class="py-lineno">1000</tt> <tt class="py-line"> <tt id="link-349" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-349', 'pendingMap', 'link-212');">pendingMap</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-350" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-350', 'pendingMap', 'link-212');">pendingMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1001"></a><tt class="py-lineno">1001</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1002"></a><tt class="py-lineno">1002</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-351" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-351', 'pendingMap', 'link-212');">pendingMap</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L1003"></a><tt class="py-lineno">1003</tt> <tt class="py-line"> <tt class="py-name">parsedPending</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-352" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-352', 'pendingMap', 'link-212');">pendingMap</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L1004"></a><tt class="py-lineno">1004</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-353" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-353', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPending</tt><tt class="py-op">,</tt> </tt>
-<a name="L1005"></a><tt class="py-lineno">1005</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1006"></a><tt class="py-lineno">1006</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1007"></a><tt class="py-lineno">1007</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1008"></a><tt class="py-lineno">1008</tt> <tt class="py-line"> <tt class="py-comment"># TODO check something here?</tt> </tt>
-<a name="L1009"></a><tt class="py-lineno">1009</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1010"></a><tt class="py-lineno">1010</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-354" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-354', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-355" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-355', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pendingMap() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1011"></a><tt class="py-lineno">1011</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1012"></a><tt class="py-lineno">1012</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-356" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-356', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing pending map"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1013"></a><tt class="py-lineno">1013</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-357" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-357', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-358" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-358', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-359" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-359', 'pendingMap', 'link-212');">pendingMap</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1014"></a><tt class="py-lineno">1014</tt> <tt class="py-line"> </tt>
-<a name="L1015"></a><tt class="py-lineno">1015</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">installedCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L1016"></a><tt class="py-lineno">1016</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-360" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-360', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting 60 seconds to see if the state of "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1017"></a><tt class="py-lineno">1017</tt> <tt class="py-line"> <tt class="py-string">"intents change"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1018"></a><tt class="py-lineno">1018</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1019"></a><tt class="py-lineno">1019</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L1020"></a><tt class="py-lineno">1020</tt> <tt class="py-line"> <tt id="link-361" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-361', 'intents', 'link-176');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-362" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-362', 'intents', 'link-176');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1021"></a><tt class="py-lineno">1021</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1022"></a><tt class="py-lineno">1022</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-363" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-363', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-string">'Count'</tt><tt class="py-op">,</tt> <tt class="py-string">'ID'</tt><tt class="py-op">,</tt> <tt class="py-string">'State'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1023"></a><tt class="py-lineno">1023</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1024"></a><tt class="py-lineno">1024</tt> <tt class="py-line"> <tt class="py-comment"># Iter through intents of a node</tt> </tt>
-<a name="L1025"></a><tt class="py-lineno">1025</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1026"></a><tt class="py-lineno">1026</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-364" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-364', 'intent', 'link-174');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-365" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-365', 'intents', 'link-176');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1027"></a><tt class="py-lineno">1027</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-366" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-366', 'intent', 'link-174');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1028"></a><tt class="py-lineno">1028</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"INSTALLED"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L1029"></a><tt class="py-lineno">1029</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1030"></a><tt class="py-lineno">1030</tt> <tt class="py-line"> <tt class="py-name">intentId</tt> <tt class="py-op">=</tt> <tt id="link-367" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-367', 'intent', 'link-174');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1031"></a><tt class="py-lineno">1031</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1032"></a><tt class="py-lineno">1032</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1033"></a><tt class="py-lineno">1033</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-368" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-368', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing intents."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1034"></a><tt class="py-lineno">1034</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1035"></a><tt class="py-lineno">1035</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt><tt class="py-op">:</tt> </tt>
-<a name="L1036"></a><tt class="py-lineno">1036</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1037"></a><tt class="py-lineno">1037</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-369" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-369', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L1038"></a><tt class="py-lineno">1038</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">s</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1039"></a><tt class="py-lineno">1039</tt> <tt class="py-line"> <tt id="link-370" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-370', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-371" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-371', 'leaders', 'link-185');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1040"></a><tt class="py-lineno">1040</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1041"></a><tt class="py-lineno">1041</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1042"></a><tt class="py-lineno">1042</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-372" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-372', 'leaders', 'link-185');">leaders</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1043"></a><tt class="py-lineno">1043</tt> <tt class="py-line"> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-373" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-373', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L1044"></a><tt class="py-lineno">1044</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-374" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-374', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedLeaders</tt><tt class="py-op">,</tt> </tt>
-<a name="L1045"></a><tt class="py-lineno">1045</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1046"></a><tt class="py-lineno">1046</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1047"></a><tt class="py-lineno">1047</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1048"></a><tt class="py-lineno">1048</tt> <tt class="py-line"> <tt class="py-comment"># check for all intent partitions</tt> </tt>
-<a name="L1049"></a><tt class="py-lineno">1049</tt> <tt class="py-line"> <tt class="py-comment"># check for election</tt> </tt>
-<a name="L1050"></a><tt class="py-lineno">1050</tt> <tt class="py-line"> <tt class="py-name">topics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1051"></a><tt class="py-lineno">1051</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">14</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1052"></a><tt class="py-lineno">1052</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"intent-partition-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1053"></a><tt class="py-lineno">1053</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: this should only be after we start the app</tt> </tt>
-<a name="L1054"></a><tt class="py-lineno">1054</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1055"></a><tt class="py-lineno">1055</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-375" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-375', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">topics</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1056"></a><tt class="py-lineno">1056</tt> <tt class="py-line"> <tt class="py-name">ONOStopics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-string">'topic'</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1057"></a><tt class="py-lineno">1057</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">in</tt> <tt class="py-name">topics</tt><tt class="py-op">:</tt> </tt>
-<a name="L1058"></a><tt class="py-lineno">1058</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOStopics</tt><tt class="py-op">:</tt> </tt>
-<a name="L1059"></a><tt class="py-lineno">1059</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-376" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-376', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-377" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-377', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error: "</tt> <tt class="py-op">+</tt> <tt class="py-name">topic</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1060"></a><tt class="py-lineno">1060</tt> <tt class="py-line"> <tt class="py-string">" not in leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1061"></a><tt class="py-lineno">1061</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1062"></a><tt class="py-lineno">1062</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1063"></a><tt class="py-lineno">1063</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-378" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-378', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-379" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-379', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"leaders() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1064"></a><tt class="py-lineno">1064</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1065"></a><tt class="py-lineno">1065</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-380" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-380', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1066"></a><tt class="py-lineno">1066</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-381" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-381', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-382" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-382', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-383" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-383', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1067"></a><tt class="py-lineno">1067</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">missing</tt><tt class="py-op">:</tt> </tt>
-<a name="L1068"></a><tt class="py-lineno">1068</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L1069"></a><tt class="py-lineno">1069</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt id="link-384" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-384', 'leaders', 'link-185');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L1070"></a><tt class="py-lineno">1070</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-385" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-385', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" leaders output: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1071"></a><tt class="py-lineno">1071</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1072"></a><tt class="py-lineno">1072</tt> <tt class="py-line"> </tt>
-<a name="L1073"></a><tt class="py-lineno">1073</tt> <tt class="py-line"> <tt id="link-386" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-386', 'partitions', 'link-201');">partitions</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-387" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-387', 'partitions', 'link-201');">partitions</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1074"></a><tt class="py-lineno">1074</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1075"></a><tt class="py-lineno">1075</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-388" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-388', 'partitions', 'link-201');">partitions</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L1076"></a><tt class="py-lineno">1076</tt> <tt class="py-line"> <tt class="py-name">parsedPartitions</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-389" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-389', 'partitions', 'link-201');">partitions</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L1077"></a><tt class="py-lineno">1077</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-390" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-390', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPartitions</tt><tt class="py-op">,</tt> </tt>
-<a name="L1078"></a><tt class="py-lineno">1078</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1079"></a><tt class="py-lineno">1079</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1080"></a><tt class="py-lineno">1080</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1081"></a><tt class="py-lineno">1081</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for a leader in all paritions</tt> </tt>
-<a name="L1082"></a><tt class="py-lineno">1082</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for consistency among nodes</tt> </tt>
-<a name="L1083"></a><tt class="py-lineno">1083</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1084"></a><tt class="py-lineno">1084</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-391" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-391', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-392" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-392', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"partitions() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1085"></a><tt class="py-lineno">1085</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1086"></a><tt class="py-lineno">1086</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-393" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-393', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing partitions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1087"></a><tt class="py-lineno">1087</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-394" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-394', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-395" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-395', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-396" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-396', 'partitions', 'link-201');">partitions</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1088"></a><tt class="py-lineno">1088</tt> <tt class="py-line"> <tt id="link-397" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-397', 'pendingMap', 'link-212');">pendingMap</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-398" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-398', 'pendingMap', 'link-212');">pendingMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1089"></a><tt class="py-lineno">1089</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1090"></a><tt class="py-lineno">1090</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-399" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-399', 'pendingMap', 'link-212');">pendingMap</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L1091"></a><tt class="py-lineno">1091</tt> <tt class="py-line"> <tt class="py-name">parsedPending</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-400" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-400', 'pendingMap', 'link-212');">pendingMap</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L1092"></a><tt class="py-lineno">1092</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-401" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-401', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPending</tt><tt class="py-op">,</tt> </tt>
-<a name="L1093"></a><tt class="py-lineno">1093</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1094"></a><tt class="py-lineno">1094</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1095"></a><tt class="py-lineno">1095</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1096"></a><tt class="py-lineno">1096</tt> <tt class="py-line"> <tt class="py-comment"># TODO check something here?</tt> </tt>
-<a name="L1097"></a><tt class="py-lineno">1097</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1098"></a><tt class="py-lineno">1098</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-402" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-402', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-403" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-403', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pendingMap() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1099"></a><tt class="py-lineno">1099</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1100"></a><tt class="py-lineno">1100</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-404" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-404', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing pending map"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1101"></a><tt class="py-lineno">1101</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-405" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-405', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-406" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-406', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-407" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-407', 'pendingMap', 'link-212');">pendingMap</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1102"></a><tt class="py-lineno">1102</tt> <tt class="py-line"> <tt class="py-comment"># Print flowrules</tt> </tt>
-<a name="L1103"></a><tt class="py-lineno">1103</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-408" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-408', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-409" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#flows,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#flows"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-409', 'flows', 'link-409');">flows</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1104"></a><tt class="py-lineno">1104</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-410" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-410', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Wait a minute then ping again"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1105"></a><tt class="py-lineno">1105</tt> <tt class="py-line"> <tt class="py-comment"># the wait is above</tt> </tt>
-<a name="L1106"></a><tt class="py-lineno">1106</tt> <tt class="py-line"> <tt class="py-name">PingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1107"></a><tt class="py-lineno">1107</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-number">18</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1108"></a><tt class="py-lineno">1108</tt> <tt class="py-line"> <tt class="py-name">ping</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-411" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingHost
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingHost" class="py-name" href="#" onclick="return doclink('link-411', 'pingHost', 'link-299');">pingHost</a></tt><tt class="py-op">(</tt> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-string">"h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1109"></a><tt class="py-lineno">1109</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-string">"h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1110"></a><tt class="py-lineno">1110</tt> <tt class="py-line"> <tt class="py-name">PingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">PingResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ping</tt> </tt>
-<a name="L1111"></a><tt class="py-lineno">1111</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ping</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1112"></a><tt class="py-lineno">1112</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-412" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-412', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Ping failed between h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1113"></a><tt class="py-lineno">1113</tt> <tt class="py-line"> <tt class="py-string">" and h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1114"></a><tt class="py-lineno">1114</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ping</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1115"></a><tt class="py-lineno">1115</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-413" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-413', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Ping test passed!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1116"></a><tt class="py-lineno">1116</tt> <tt class="py-line"> <tt class="py-comment"># Don't set PingResult or you'd override failures</tt> </tt>
-<a name="L1117"></a><tt class="py-lineno">1117</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">PingResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1118"></a><tt class="py-lineno">1118</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-414" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-414', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-415" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-415', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1119"></a><tt class="py-lineno">1119</tt> <tt class="py-line"> <tt class="py-string">"Intents have not been installed correctly, pings failed."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1120"></a><tt class="py-lineno">1120</tt> <tt class="py-line"> <tt class="py-comment"># TODO: pretty print</tt> </tt>
-<a name="L1121"></a><tt class="py-lineno">1121</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-416" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-416', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS1 intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1122"></a><tt class="py-lineno">1122</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1123"></a><tt class="py-lineno">1123</tt> <tt class="py-line"> <tt class="py-name">tmpIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-417" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-417', 'intents', 'link-176');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1124"></a><tt class="py-lineno">1124</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-418" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-418', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">tmpIntents</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1125"></a><tt class="py-lineno">1125</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1126"></a><tt class="py-lineno">1126</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1127"></a><tt class="py-lineno">1127</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1128"></a><tt class="py-lineno">1128</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1129"></a><tt class="py-lineno">1129</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-419" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-419', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">tmpIntents</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1130"></a><tt class="py-lineno">1130</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1131"></a><tt class="py-lineno">1131</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1132"></a><tt class="py-lineno">1132</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">PingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1133"></a><tt class="py-lineno">1133</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents have been installed correctly and pings work"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1134"></a><tt class="py-lineno">1134</tt> <tt class="py-line"> <tt id="link-420" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-420', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intents have not been installed correctly, pings failed."</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1135"></a><tt class="py-lineno">1135</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE5"></a><div id="HAclusterRestart.CASE5-def"><a name="L1136"></a><tt class="py-lineno">1136</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE5-toggle" onclick="return toggle('HAclusterRestart.CASE5');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE5">CASE5</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE5-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE5-expanded"><a name="L1137"></a><tt class="py-lineno">1137</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1138"></a><tt class="py-lineno">1138</tt> <tt class="py-line"><tt class="py-docstring"> Reading state of ONOS</tt> </tt>
-<a name="L1139"></a><tt class="py-lineno">1139</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1140"></a><tt class="py-lineno">1140</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L1141"></a><tt class="py-lineno">1141</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1142"></a><tt class="py-lineno">1142</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1143"></a><tt class="py-lineno">1143</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1144"></a><tt class="py-lineno">1144</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1145"></a><tt class="py-lineno">1145</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L1146"></a><tt class="py-lineno">1146</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-421" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-421', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L1147"></a><tt class="py-lineno">1147</tt> <tt class="py-line"> </tt>
-<a name="L1148"></a><tt class="py-lineno">1148</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-422" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-422', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Setting up and gathering data for current state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1149"></a><tt class="py-lineno">1149</tt> <tt class="py-line"> <tt class="py-comment"># The general idea for this test case is to pull the state of</tt> </tt>
-<a name="L1150"></a><tt class="py-lineno">1150</tt> <tt class="py-line"> <tt class="py-comment"># ( intents,flows, topology,... ) from each ONOS node</tt> </tt>
-<a name="L1151"></a><tt class="py-lineno">1151</tt> <tt class="py-line"> <tt class="py-comment"># We can then compare them with each other and also with past states</tt> </tt>
-<a name="L1152"></a><tt class="py-lineno">1152</tt> <tt class="py-line"> </tt>
-<a name="L1153"></a><tt class="py-lineno">1153</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-423" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-423', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check that each switch has a master"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1154"></a><tt class="py-lineno">1154</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">mastershipState</tt> </tt>
-<a name="L1155"></a><tt class="py-lineno">1155</tt> <tt class="py-line"> <tt class="py-name">mastershipState</tt> <tt class="py-op">=</tt> <tt class="py-string">'[]'</tt> </tt>
-<a name="L1156"></a><tt class="py-lineno">1156</tt> <tt class="py-line"> </tt>
-<a name="L1157"></a><tt class="py-lineno">1157</tt> <tt class="py-line"> <tt class="py-comment"># Assert that each device has a master</tt> </tt>
-<a name="L1158"></a><tt class="py-lineno">1158</tt> <tt class="py-line"> <tt id="link-424" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#rolesNotNull"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-424', 'rolesNotNull', 'link-424');">rolesNotNull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1159"></a><tt class="py-lineno">1159</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1160"></a><tt class="py-lineno">1160</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1161"></a><tt class="py-lineno">1161</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-425" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-425', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-426" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-426', 'rolesNotNull', 'link-424');">rolesNotNull</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1162"></a><tt class="py-lineno">1162</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"rolesNotNull-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1163"></a><tt class="py-lineno">1163</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1164"></a><tt class="py-lineno">1164</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1165"></a><tt class="py-lineno">1165</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1166"></a><tt class="py-lineno">1166</tt> <tt class="py-line"> </tt>
-<a name="L1167"></a><tt class="py-lineno">1167</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1168"></a><tt class="py-lineno">1168</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1169"></a><tt class="py-lineno">1169</tt> <tt class="py-line"> <tt id="link-427" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-427', 'rolesNotNull', 'link-424');">rolesNotNull</a></tt> <tt class="py-op">=</tt> <tt id="link-428" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-428', 'rolesNotNull', 'link-424');">rolesNotNull</a></tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L1170"></a><tt class="py-lineno">1170</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1171"></a><tt class="py-lineno">1171</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1172"></a><tt class="py-lineno">1172</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt id="link-429" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-429', 'rolesNotNull', 'link-424');">rolesNotNull</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1173"></a><tt class="py-lineno">1173</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Each device has a master"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1174"></a><tt class="py-lineno">1174</tt> <tt class="py-line"> <tt id="link-430" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-430', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Some devices don't have a master assigned"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1175"></a><tt class="py-lineno">1175</tt> <tt class="py-line"> </tt>
-<a name="L1176"></a><tt class="py-lineno">1176</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-431" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-431', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the Mastership of each switch from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1177"></a><tt class="py-lineno">1177</tt> <tt class="py-line"> <tt class="py-name">ONOSMastership</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1178"></a><tt class="py-lineno">1178</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1179"></a><tt class="py-lineno">1179</tt> <tt class="py-line"> <tt class="py-name">consistentMastership</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1180"></a><tt class="py-lineno">1180</tt> <tt class="py-line"> <tt class="py-name">rolesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1181"></a><tt class="py-lineno">1181</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1182"></a><tt class="py-lineno">1182</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1183"></a><tt class="py-lineno">1183</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-432" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-432', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-433" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.roles()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#roles"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.roles" class="py-name" href="#" onclick="return doclink('link-433', 'roles', 'link-433');">roles</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1184"></a><tt class="py-lineno">1184</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"roles-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1185"></a><tt class="py-lineno">1185</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1186"></a><tt class="py-lineno">1186</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1187"></a><tt class="py-lineno">1187</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1188"></a><tt class="py-lineno">1188</tt> <tt class="py-line"> </tt>
-<a name="L1189"></a><tt class="py-lineno">1189</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1190"></a><tt class="py-lineno">1190</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1191"></a><tt class="py-lineno">1191</tt> <tt class="py-line"> <tt class="py-name">ONOSMastership</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1192"></a><tt class="py-lineno">1192</tt> <tt class="py-line"> </tt>
-<a name="L1193"></a><tt class="py-lineno">1193</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1194"></a><tt class="py-lineno">1194</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1195"></a><tt class="py-lineno">1195</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-434" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-434', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-435" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-435', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1196"></a><tt class="py-lineno">1196</tt> <tt class="py-line"> <tt class="py-string">" roles"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1197"></a><tt class="py-lineno">1197</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-436" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-436', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1198"></a><tt class="py-lineno">1198</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" mastership response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1199"></a><tt class="py-lineno">1199</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1200"></a><tt class="py-lineno">1200</tt> <tt class="py-line"> <tt class="py-name">rolesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1201"></a><tt class="py-lineno">1201</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1202"></a><tt class="py-lineno">1202</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1203"></a><tt class="py-lineno">1203</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">rolesResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1204"></a><tt class="py-lineno">1204</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No error in reading roles output"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1205"></a><tt class="py-lineno">1205</tt> <tt class="py-line"> <tt id="link-437" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-437', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error in reading roles from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1206"></a><tt class="py-lineno">1206</tt> <tt class="py-line"> </tt>
-<a name="L1207"></a><tt class="py-lineno">1207</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-438" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-438', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check for consistency in roles from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1208"></a><tt class="py-lineno">1208</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSMastership</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1209"></a><tt class="py-lineno">1209</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-439" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-439', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L1210"></a><tt class="py-lineno">1210</tt> <tt class="py-line"> <tt class="py-string">"Switch roles are consistent across all ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1211"></a><tt class="py-lineno">1211</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1212"></a><tt class="py-lineno">1212</tt> <tt class="py-line"> <tt class="py-name">consistentMastership</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1213"></a><tt class="py-lineno">1213</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1214"></a><tt class="py-lineno">1214</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1215"></a><tt class="py-lineno">1215</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentMastership</tt><tt class="py-op">,</tt> </tt>
-<a name="L1216"></a><tt class="py-lineno">1216</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Switch roles are consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1217"></a><tt class="py-lineno">1217</tt> <tt class="py-line"> <tt id="link-440" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-440', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of switch roles"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1218"></a><tt class="py-lineno">1218</tt> <tt class="py-line"> </tt>
-<a name="L1219"></a><tt class="py-lineno">1219</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">rolesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentMastership</tt><tt class="py-op">:</tt> </tt>
-<a name="L1220"></a><tt class="py-lineno">1220</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1221"></a><tt class="py-lineno">1221</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1222"></a><tt class="py-lineno">1222</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-441" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-441', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1223"></a><tt class="py-lineno">1223</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" roles: "</tt><tt class="py-op">,</tt> </tt>
-<a name="L1224"></a><tt class="py-lineno">1224</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> </tt>
-<a name="L1225"></a><tt class="py-lineno">1225</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1226"></a><tt class="py-lineno">1226</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1227"></a><tt class="py-lineno">1227</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1228"></a><tt class="py-lineno">1228</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1229"></a><tt class="py-lineno">1229</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1230"></a><tt class="py-lineno">1230</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-442" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-442', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1231"></a><tt class="py-lineno">1231</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">rolesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentMastership</tt><tt class="py-op">:</tt> </tt>
-<a name="L1232"></a><tt class="py-lineno">1232</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1233"></a><tt class="py-lineno">1233</tt> <tt class="py-line"> <tt class="py-name">mastershipState</tt> <tt class="py-op">=</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1234"></a><tt class="py-lineno">1234</tt> <tt class="py-line"> </tt>
-<a name="L1235"></a><tt class="py-lineno">1235</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-443" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-443', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the intents from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1236"></a><tt class="py-lineno">1236</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">intentState</tt> </tt>
-<a name="L1237"></a><tt class="py-lineno">1237</tt> <tt class="py-line"> <tt class="py-name">intentState</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1238"></a><tt class="py-lineno">1238</tt> <tt class="py-line"> <tt class="py-name">ONOSIntents</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1239"></a><tt class="py-lineno">1239</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1240"></a><tt class="py-lineno">1240</tt> <tt class="py-line"> <tt class="py-name">consistentIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1241"></a><tt class="py-lineno">1241</tt> <tt class="py-line"> <tt class="py-name">intentsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1242"></a><tt class="py-lineno">1242</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1243"></a><tt class="py-lineno">1243</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1244"></a><tt class="py-lineno">1244</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-444" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-444', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-445" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-445', 'intents', 'link-176');">intents</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1245"></a><tt class="py-lineno">1245</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"intents-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1246"></a><tt class="py-lineno">1246</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1247"></a><tt class="py-lineno">1247</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">'jsonFormat'</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1248"></a><tt class="py-lineno">1248</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1249"></a><tt class="py-lineno">1249</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1250"></a><tt class="py-lineno">1250</tt> <tt class="py-line"> </tt>
-<a name="L1251"></a><tt class="py-lineno">1251</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1252"></a><tt class="py-lineno">1252</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1253"></a><tt class="py-lineno">1253</tt> <tt class="py-line"> <tt class="py-name">ONOSIntents</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1254"></a><tt class="py-lineno">1254</tt> <tt class="py-line"> </tt>
-<a name="L1255"></a><tt class="py-lineno">1255</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1256"></a><tt class="py-lineno">1256</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1257"></a><tt class="py-lineno">1257</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-446" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-446', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-447" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-447', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1258"></a><tt class="py-lineno">1258</tt> <tt class="py-line"> <tt class="py-string">" intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1259"></a><tt class="py-lineno">1259</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-448" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-448', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1260"></a><tt class="py-lineno">1260</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1261"></a><tt class="py-lineno">1261</tt> <tt class="py-line"> <tt class="py-name">intentsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1262"></a><tt class="py-lineno">1262</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1263"></a><tt class="py-lineno">1263</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1264"></a><tt class="py-lineno">1264</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">intentsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1265"></a><tt class="py-lineno">1265</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No error in reading intents output"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1266"></a><tt class="py-lineno">1266</tt> <tt class="py-line"> <tt id="link-449" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-449', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error in reading intents from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1267"></a><tt class="py-lineno">1267</tt> <tt class="py-line"> </tt>
-<a name="L1268"></a><tt class="py-lineno">1268</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-450" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-450', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check for consistency in Intents from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1269"></a><tt class="py-lineno">1269</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt><tt class="py-op">[</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1270"></a><tt class="py-lineno">1270</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-451" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-451', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents are consistent across all ONOS "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1271"></a><tt class="py-lineno">1271</tt> <tt class="py-line"> <tt class="py-string">"nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1272"></a><tt class="py-lineno">1272</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1273"></a><tt class="py-lineno">1273</tt> <tt class="py-line"> <tt class="py-name">consistentIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1274"></a><tt class="py-lineno">1274</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-452" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-452', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-453" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-453', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Intents not consistent"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1275"></a><tt class="py-lineno">1275</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1276"></a><tt class="py-lineno">1276</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1277"></a><tt class="py-lineno">1277</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentIntents</tt><tt class="py-op">,</tt> </tt>
-<a name="L1278"></a><tt class="py-lineno">1278</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents are consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1279"></a><tt class="py-lineno">1279</tt> <tt class="py-line"> <tt id="link-454" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-454', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1280"></a><tt class="py-lineno">1280</tt> <tt class="py-line"> </tt>
-<a name="L1281"></a><tt class="py-lineno">1281</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentsResults</tt><tt class="py-op">:</tt> </tt>
-<a name="L1282"></a><tt class="py-lineno">1282</tt> <tt class="py-line"> <tt class="py-comment"># Try to make it easy to figure out what is happening</tt> </tt>
-<a name="L1283"></a><tt class="py-lineno">1283</tt> <tt class="py-line"> <tt class="py-comment">#</tt> </tt>
-<a name="L1284"></a><tt class="py-lineno">1284</tt> <tt class="py-line"> <tt class="py-comment"># Intent ONOS1 ONOS2 ...</tt> </tt>
-<a name="L1285"></a><tt class="py-lineno">1285</tt> <tt class="py-line"> <tt class="py-comment"># 0x01 INSTALLED INSTALLING</tt> </tt>
-<a name="L1286"></a><tt class="py-lineno">1286</tt> <tt class="py-line"> <tt class="py-comment"># ... ... ...</tt> </tt>
-<a name="L1287"></a><tt class="py-lineno">1287</tt> <tt class="py-line"> <tt class="py-comment"># ... ... ...</tt> </tt>
-<a name="L1288"></a><tt class="py-lineno">1288</tt> <tt class="py-line"> <tt class="py-name">title</tt> <tt class="py-op">=</tt> <tt class="py-string">" Id"</tt> </tt>
-<a name="L1289"></a><tt class="py-lineno">1289</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">n</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1290"></a><tt class="py-lineno">1290</tt> <tt class="py-line"> <tt class="py-name">title</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">10</tt> <tt class="py-op">+</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1291"></a><tt class="py-lineno">1291</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-455" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-455', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">title</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1292"></a><tt class="py-lineno">1292</tt> <tt class="py-line"> <tt class="py-comment"># get all intent keys in the cluster</tt> </tt>
-<a name="L1293"></a><tt class="py-lineno">1293</tt> <tt class="py-line"> <tt class="py-name">keys</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1294"></a><tt class="py-lineno">1294</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">nodeStr</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1295"></a><tt class="py-lineno">1295</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1296"></a><tt class="py-lineno">1296</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-456" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-456', 'intent', 'link-174');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">:</tt> </tt>
-<a name="L1297"></a><tt class="py-lineno">1297</tt> <tt class="py-line"> <tt class="py-name">keys</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-457" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-457', 'intent', 'link-174');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1298"></a><tt class="py-lineno">1298</tt> <tt class="py-line"> <tt class="py-name">keys</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">keys</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1299"></a><tt class="py-lineno">1299</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">keys</tt><tt class="py-op">:</tt> </tt>
-<a name="L1300"></a><tt class="py-lineno">1300</tt> <tt class="py-line"> <tt class="py-name">row</tt> <tt class="py-op">=</tt> <tt class="py-string">"%-13s"</tt> <tt class="py-op">%</tt> <tt class="py-name">key</tt> </tt>
-<a name="L1301"></a><tt class="py-lineno">1301</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">nodeStr</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1302"></a><tt class="py-lineno">1302</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1303"></a><tt class="py-lineno">1303</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-458" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-458', 'intent', 'link-174');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">:</tt> </tt>
-<a name="L1304"></a><tt class="py-lineno">1304</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-459" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-459', 'intent', 'link-174');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-string">"Error"</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">key</tt><tt class="py-op">:</tt> </tt>
-<a name="L1305"></a><tt class="py-lineno">1305</tt> <tt class="py-line"> <tt class="py-name">row</tt> <tt class="py-op">+=</tt> <tt class="py-string">"%-15s"</tt> <tt class="py-op">%</tt> <tt id="link-460" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-460', 'intent', 'link-174');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1306"></a><tt class="py-lineno">1306</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-461" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-461', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">row</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1307"></a><tt class="py-lineno">1307</tt> <tt class="py-line"> <tt class="py-comment"># End table view</tt> </tt>
-<a name="L1308"></a><tt class="py-lineno">1308</tt> <tt class="py-line"> </tt>
-<a name="L1309"></a><tt class="py-lineno">1309</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1310"></a><tt class="py-lineno">1310</tt> <tt class="py-line"> <tt class="py-comment"># print the json objects</tt> </tt>
-<a name="L1311"></a><tt class="py-lineno">1311</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIntents</tt><tt class="py-op">)</tt> </tt>
-<a name="L1312"></a><tt class="py-lineno">1312</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-462" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-462', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1313"></a><tt class="py-lineno">1313</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-463" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-463', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1314"></a><tt class="py-lineno">1314</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1315"></a><tt class="py-lineno">1315</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1316"></a><tt class="py-lineno">1316</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1317"></a><tt class="py-lineno">1317</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1318"></a><tt class="py-lineno">1318</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1319"></a><tt class="py-lineno">1319</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-464" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-464', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1320"></a><tt class="py-lineno">1320</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-465" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-465', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1321"></a><tt class="py-lineno">1321</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1322"></a><tt class="py-lineno">1322</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1323"></a><tt class="py-lineno">1323</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1324"></a><tt class="py-lineno">1324</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1325"></a><tt class="py-lineno">1325</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-466" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-466', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-467" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-467', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents match ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1326"></a><tt class="py-lineno">1326</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1327"></a><tt class="py-lineno">1327</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">intentsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1328"></a><tt class="py-lineno">1328</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1329"></a><tt class="py-lineno">1329</tt> <tt class="py-line"> <tt class="py-name">intentState</tt> <tt class="py-op">=</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1330"></a><tt class="py-lineno">1330</tt> <tt class="py-line"> </tt>
-<a name="L1331"></a><tt class="py-lineno">1331</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-468" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-468', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the flows from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1332"></a><tt class="py-lineno">1332</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">flowState</tt> </tt>
-<a name="L1333"></a><tt class="py-lineno">1333</tt> <tt class="py-line"> <tt class="py-name">flowState</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1334"></a><tt class="py-lineno">1334</tt> <tt class="py-line"> <tt class="py-name">ONOSFlows</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1335"></a><tt class="py-lineno">1335</tt> <tt class="py-line"> <tt class="py-name">ONOSFlowsJson</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1336"></a><tt class="py-lineno">1336</tt> <tt class="py-line"> <tt class="py-name">flowCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1337"></a><tt class="py-lineno">1337</tt> <tt class="py-line"> <tt class="py-name">consistentFlows</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1338"></a><tt class="py-lineno">1338</tt> <tt class="py-line"> <tt class="py-name">flowsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1339"></a><tt class="py-lineno">1339</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1340"></a><tt class="py-lineno">1340</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1341"></a><tt class="py-lineno">1341</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-469" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-469', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-470" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-470', 'flows', 'link-409');">flows</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1342"></a><tt class="py-lineno">1342</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"flows-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1343"></a><tt class="py-lineno">1343</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1344"></a><tt class="py-lineno">1344</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">'jsonFormat'</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1345"></a><tt class="py-lineno">1345</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1346"></a><tt class="py-lineno">1346</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1347"></a><tt class="py-lineno">1347</tt> <tt class="py-line"> </tt>
-<a name="L1348"></a><tt class="py-lineno">1348</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Flows command can take some time to run</tt> </tt>
-<a name="L1349"></a><tt class="py-lineno">1349</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">30</tt><tt class="py-op">)</tt> </tt>
-<a name="L1350"></a><tt class="py-lineno">1350</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1351"></a><tt class="py-lineno">1351</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1352"></a><tt class="py-lineno">1352</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L1353"></a><tt class="py-lineno">1353</tt> <tt class="py-line"> <tt class="py-name">ONOSFlows</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1354"></a><tt class="py-lineno">1354</tt> <tt class="py-line"> </tt>
-<a name="L1355"></a><tt class="py-lineno">1355</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1356"></a><tt class="py-lineno">1356</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1357"></a><tt class="py-lineno">1357</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1358"></a><tt class="py-lineno">1358</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-471" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-471', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-472" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-472', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">num</tt> <tt class="py-op">+</tt> <tt class="py-string">" flows"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1359"></a><tt class="py-lineno">1359</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-473" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-473', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">num</tt> <tt class="py-op">+</tt> <tt class="py-string">" flows response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1360"></a><tt class="py-lineno">1360</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1361"></a><tt class="py-lineno">1361</tt> <tt class="py-line"> <tt class="py-name">flowsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1362"></a><tt class="py-lineno">1362</tt> <tt class="py-line"> <tt class="py-name">ONOSFlowsJson</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1363"></a><tt class="py-lineno">1363</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1364"></a><tt class="py-lineno">1364</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1365"></a><tt class="py-lineno">1365</tt> <tt class="py-line"> <tt class="py-name">ONOSFlowsJson</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1366"></a><tt class="py-lineno">1366</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1367"></a><tt class="py-lineno">1367</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: change this to log.error?</tt> </tt>
-<a name="L1368"></a><tt class="py-lineno">1368</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-474" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-474', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error in parsing ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">num</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1369"></a><tt class="py-lineno">1369</tt> <tt class="py-line"> <tt class="py-string">" response as json."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1370"></a><tt class="py-lineno">1370</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-475" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-475', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-476" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-476', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1371"></a><tt class="py-lineno">1371</tt> <tt class="py-line"> <tt class="py-name">ONOSFlowsJson</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1372"></a><tt class="py-lineno">1372</tt> <tt class="py-line"> <tt class="py-name">flowsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1373"></a><tt class="py-lineno">1373</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1374"></a><tt class="py-lineno">1374</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1375"></a><tt class="py-lineno">1375</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">flowsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1376"></a><tt class="py-lineno">1376</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No error in reading flows output"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1377"></a><tt class="py-lineno">1377</tt> <tt class="py-line"> <tt id="link-477" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-477', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error in reading flows from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1378"></a><tt class="py-lineno">1378</tt> <tt class="py-line"> </tt>
-<a name="L1379"></a><tt class="py-lineno">1379</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-478" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-478', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check for consistency in Flows from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1380"></a><tt class="py-lineno">1380</tt> <tt class="py-line"> <tt class="py-name">tmp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlowsJson</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSFlowsJson</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1381"></a><tt class="py-lineno">1381</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt> <tt class="py-name">tmp</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1382"></a><tt class="py-lineno">1382</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-479" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-479', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Flow count is consistent across all ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1383"></a><tt class="py-lineno">1383</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1384"></a><tt class="py-lineno">1384</tt> <tt class="py-line"> <tt class="py-name">consistentFlows</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1385"></a><tt class="py-lineno">1385</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1386"></a><tt class="py-lineno">1386</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1387"></a><tt class="py-lineno">1387</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentFlows</tt><tt class="py-op">,</tt> </tt>
-<a name="L1388"></a><tt class="py-lineno">1388</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"The flow count is consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1389"></a><tt class="py-lineno">1389</tt> <tt class="py-line"> <tt id="link-480" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-480', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different flow counts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1390"></a><tt class="py-lineno">1390</tt> <tt class="py-line"> </tt>
-<a name="L1391"></a><tt class="py-lineno">1391</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">flowsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentFlows</tt><tt class="py-op">:</tt> </tt>
-<a name="L1392"></a><tt class="py-lineno">1392</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1393"></a><tt class="py-lineno">1393</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1394"></a><tt class="py-lineno">1394</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-481" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-481', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1395"></a><tt class="py-lineno">1395</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" flows: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1396"></a><tt class="py-lineno">1396</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1397"></a><tt class="py-lineno">1397</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1398"></a><tt class="py-lineno">1398</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1399"></a><tt class="py-lineno">1399</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-482" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-482', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1400"></a><tt class="py-lineno">1400</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" flows: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1401"></a><tt class="py-lineno">1401</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1402"></a><tt class="py-lineno">1402</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">flowsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentFlows</tt><tt class="py-op">:</tt> </tt>
-<a name="L1403"></a><tt class="py-lineno">1403</tt> <tt class="py-line"> <tt class="py-name">flowCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1404"></a><tt class="py-lineno">1404</tt> <tt class="py-line"> <tt class="py-name">flowState</tt> <tt class="py-op">=</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1405"></a><tt class="py-lineno">1405</tt> <tt class="py-line"> </tt>
-<a name="L1406"></a><tt class="py-lineno">1406</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-483" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-483', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the OF Table entries"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1407"></a><tt class="py-lineno">1407</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt id="link-484" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-484', 'flows', 'link-409');">flows</a></tt> </tt>
-<a name="L1408"></a><tt class="py-lineno">1408</tt> <tt class="py-line"> <tt id="link-485" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-485', 'flows', 'link-409');">flows</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1409"></a><tt class="py-lineno">1409</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1410"></a><tt class="py-lineno">1410</tt> <tt class="py-line"> <tt id="link-486" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-486', 'flows', 'link-409');">flows</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-487" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getFlowTable()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getFlowTable"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getFlowTable" class="py-name" href="#" onclick="return doclink('link-487', 'getFlowTable', 'link-487');">getFlowTable</a></tt><tt class="py-op">(</tt> <tt class="py-number">1.3</tt><tt class="py-op">,</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1411"></a><tt class="py-lineno">1411</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">flowCheck</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1412"></a><tt class="py-lineno">1412</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">table</tt> <tt class="py-keyword">in</tt> <tt id="link-488" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-488', 'flows', 'link-409');">flows</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1413"></a><tt class="py-lineno">1413</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-489" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-489', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">table</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1414"></a><tt class="py-lineno">1414</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Compare switch flow tables with ONOS flow tables</tt> </tt>
-<a name="L1415"></a><tt class="py-lineno">1415</tt> <tt class="py-line"> </tt>
-<a name="L1416"></a><tt class="py-lineno">1416</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-490" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-490', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start continuous pings"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1417"></a><tt class="py-lineno">1417</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-491" class="py-name" targets="Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingLong"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-491', 'pingLong', 'link-491');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1418"></a><tt class="py-lineno">1418</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source1'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1419"></a><tt class="py-lineno">1419</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target1'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1420"></a><tt class="py-lineno">1420</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1421"></a><tt class="py-lineno">1421</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-492" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-492', 'pingLong', 'link-491');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1422"></a><tt class="py-lineno">1422</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source2'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1423"></a><tt class="py-lineno">1423</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target2'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1424"></a><tt class="py-lineno">1424</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1425"></a><tt class="py-lineno">1425</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-493" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-493', 'pingLong', 'link-491');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1426"></a><tt class="py-lineno">1426</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source3'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1427"></a><tt class="py-lineno">1427</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target3'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1428"></a><tt class="py-lineno">1428</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1429"></a><tt class="py-lineno">1429</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-494" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-494', 'pingLong', 'link-491');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1430"></a><tt class="py-lineno">1430</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source4'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1431"></a><tt class="py-lineno">1431</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target4'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1432"></a><tt class="py-lineno">1432</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1433"></a><tt class="py-lineno">1433</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-495" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-495', 'pingLong', 'link-491');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1434"></a><tt class="py-lineno">1434</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source5'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1435"></a><tt class="py-lineno">1435</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target5'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1436"></a><tt class="py-lineno">1436</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1437"></a><tt class="py-lineno">1437</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-496" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-496', 'pingLong', 'link-491');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1438"></a><tt class="py-lineno">1438</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source6'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1439"></a><tt class="py-lineno">1439</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target6'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1440"></a><tt class="py-lineno">1440</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1441"></a><tt class="py-lineno">1441</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-497" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-497', 'pingLong', 'link-491');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1442"></a><tt class="py-lineno">1442</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source7'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1443"></a><tt class="py-lineno">1443</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target7'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1444"></a><tt class="py-lineno">1444</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1445"></a><tt class="py-lineno">1445</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-498" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-498', 'pingLong', 'link-491');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1446"></a><tt class="py-lineno">1446</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source8'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1447"></a><tt class="py-lineno">1447</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target8'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1448"></a><tt class="py-lineno">1448</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1449"></a><tt class="py-lineno">1449</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-499" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-499', 'pingLong', 'link-491');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1450"></a><tt class="py-lineno">1450</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source9'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1451"></a><tt class="py-lineno">1451</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target9'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1452"></a><tt class="py-lineno">1452</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1453"></a><tt class="py-lineno">1453</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-500" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-500', 'pingLong', 'link-491');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1454"></a><tt class="py-lineno">1454</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source10'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1455"></a><tt class="py-lineno">1455</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target10'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1456"></a><tt class="py-lineno">1456</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1457"></a><tt class="py-lineno">1457</tt> <tt class="py-line"> </tt>
-<a name="L1458"></a><tt class="py-lineno">1458</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-501" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-501', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Collecting topology information from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1459"></a><tt class="py-lineno">1459</tt> <tt class="py-line"> <tt id="link-502" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-502', 'devices', 'link-114');">devices</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1460"></a><tt class="py-lineno">1460</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1461"></a><tt class="py-lineno">1461</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1462"></a><tt class="py-lineno">1462</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-503" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-503', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-504" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-504', 'devices', 'link-114');">devices</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1463"></a><tt class="py-lineno">1463</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"devices-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1464"></a><tt class="py-lineno">1464</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1465"></a><tt class="py-lineno">1465</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1466"></a><tt class="py-lineno">1466</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1467"></a><tt class="py-lineno">1467</tt> <tt class="py-line"> </tt>
-<a name="L1468"></a><tt class="py-lineno">1468</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1469"></a><tt class="py-lineno">1469</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1470"></a><tt class="py-lineno">1470</tt> <tt class="py-line"> <tt id="link-505" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-505', 'devices', 'link-114');">devices</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1471"></a><tt class="py-lineno">1471</tt> <tt class="py-line"> <tt id="link-506" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-506', 'hosts', 'link-163');">hosts</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1472"></a><tt class="py-lineno">1472</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1473"></a><tt class="py-lineno">1473</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1474"></a><tt class="py-lineno">1474</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-507" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-507', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-508" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-508', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1475"></a><tt class="py-lineno">1475</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"hosts-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1476"></a><tt class="py-lineno">1476</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1477"></a><tt class="py-lineno">1477</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1478"></a><tt class="py-lineno">1478</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1479"></a><tt class="py-lineno">1479</tt> <tt class="py-line"> </tt>
-<a name="L1480"></a><tt class="py-lineno">1480</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1481"></a><tt class="py-lineno">1481</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1482"></a><tt class="py-lineno">1482</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1483"></a><tt class="py-lineno">1483</tt> <tt class="py-line"> <tt id="link-509" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-509', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1484"></a><tt class="py-lineno">1484</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1485"></a><tt class="py-lineno">1485</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: better handling of this, print which node</tt> </tt>
-<a name="L1486"></a><tt class="py-lineno">1486</tt> <tt class="py-line"> <tt class="py-comment"># Maybe use thread name?</tt> </tt>
-<a name="L1487"></a><tt class="py-lineno">1487</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-510" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-510', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing json output of hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1488"></a><tt class="py-lineno">1488</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: should this be an empty json object instead?</tt> </tt>
-<a name="L1489"></a><tt class="py-lineno">1489</tt> <tt class="py-line"> <tt id="link-511" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-511', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1490"></a><tt class="py-lineno">1490</tt> <tt class="py-line"> </tt>
-<a name="L1491"></a><tt class="py-lineno">1491</tt> <tt class="py-line"> <tt id="link-512" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#ports"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-512', 'ports', 'link-512');">ports</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1492"></a><tt class="py-lineno">1492</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1493"></a><tt class="py-lineno">1493</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1494"></a><tt class="py-lineno">1494</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-513" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-513', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-514" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-514', 'ports', 'link-512');">ports</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1495"></a><tt class="py-lineno">1495</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"ports-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1496"></a><tt class="py-lineno">1496</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1497"></a><tt class="py-lineno">1497</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1498"></a><tt class="py-lineno">1498</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1499"></a><tt class="py-lineno">1499</tt> <tt class="py-line"> </tt>
-<a name="L1500"></a><tt class="py-lineno">1500</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1501"></a><tt class="py-lineno">1501</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1502"></a><tt class="py-lineno">1502</tt> <tt class="py-line"> <tt id="link-515" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-515', 'ports', 'link-512');">ports</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1503"></a><tt class="py-lineno">1503</tt> <tt class="py-line"> <tt id="link-516" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#links,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#links"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-516', 'links', 'link-516');">links</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1504"></a><tt class="py-lineno">1504</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1505"></a><tt class="py-lineno">1505</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1506"></a><tt class="py-lineno">1506</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-517" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-517', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-518" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-518', 'links', 'link-516');">links</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1507"></a><tt class="py-lineno">1507</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"links-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1508"></a><tt class="py-lineno">1508</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1509"></a><tt class="py-lineno">1509</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1510"></a><tt class="py-lineno">1510</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1511"></a><tt class="py-lineno">1511</tt> <tt class="py-line"> </tt>
-<a name="L1512"></a><tt class="py-lineno">1512</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1513"></a><tt class="py-lineno">1513</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1514"></a><tt class="py-lineno">1514</tt> <tt class="py-line"> <tt id="link-519" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-519', 'links', 'link-516');">links</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1515"></a><tt class="py-lineno">1515</tt> <tt class="py-line"> <tt id="link-520" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#clusters"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-520', 'clusters', 'link-520');">clusters</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1516"></a><tt class="py-lineno">1516</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1517"></a><tt class="py-lineno">1517</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1518"></a><tt class="py-lineno">1518</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-521" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-521', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-522" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-522', 'clusters', 'link-520');">clusters</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1519"></a><tt class="py-lineno">1519</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"clusters-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1520"></a><tt class="py-lineno">1520</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1521"></a><tt class="py-lineno">1521</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1522"></a><tt class="py-lineno">1522</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1523"></a><tt class="py-lineno">1523</tt> <tt class="py-line"> </tt>
-<a name="L1524"></a><tt class="py-lineno">1524</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1525"></a><tt class="py-lineno">1525</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1526"></a><tt class="py-lineno">1526</tt> <tt class="py-line"> <tt id="link-523" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-523', 'clusters', 'link-520');">clusters</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1527"></a><tt class="py-lineno">1527</tt> <tt class="py-line"> <tt class="py-comment"># Compare json objects for hosts and dataplane clusters</tt> </tt>
-<a name="L1528"></a><tt class="py-lineno">1528</tt> <tt class="py-line"> </tt>
-<a name="L1529"></a><tt class="py-lineno">1529</tt> <tt class="py-line"> <tt class="py-comment"># hosts</tt> </tt>
-<a name="L1530"></a><tt class="py-lineno">1530</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-524" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-524', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Host view is consistent across ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1531"></a><tt class="py-lineno">1531</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1532"></a><tt class="py-lineno">1532</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-525" class="py-name" targets="Package TestON.drivers.common.api.controller=TestON.drivers.common.api.controller-module.html"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-525', 'controller', 'link-525');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-526" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-526', 'hosts', 'link-163');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1533"></a><tt class="py-lineno">1533</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-527" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-527', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1534"></a><tt class="py-lineno">1534</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-528" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-528', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-529" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-529', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1535"></a><tt class="py-lineno">1535</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-530" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-530', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-531" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-531', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt id="link-532" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-532', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1536"></a><tt class="py-lineno">1536</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L1537"></a><tt class="py-lineno">1537</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># hosts not consistent</tt> </tt>
-<a name="L1538"></a><tt class="py-lineno">1538</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-533" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-533', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-534" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-534', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"hosts from ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1539"></a><tt class="py-lineno">1539</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1540"></a><tt class="py-lineno">1540</tt> <tt class="py-line"> <tt class="py-string">" is inconsistent with ONOS1"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1541"></a><tt class="py-lineno">1541</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-535" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-535', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-536" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-536', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-537" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-537', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1542"></a><tt class="py-lineno">1542</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1543"></a><tt class="py-lineno">1543</tt> <tt class="py-line"> </tt>
-<a name="L1544"></a><tt class="py-lineno">1544</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1545"></a><tt class="py-lineno">1545</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-538" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-538', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-539" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-539', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS hosts from ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1546"></a><tt class="py-lineno">1546</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1547"></a><tt class="py-lineno">1547</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1548"></a><tt class="py-lineno">1548</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-540" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-540', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1549"></a><tt class="py-lineno">1549</tt> <tt class="py-line"> <tt class="py-string">" hosts response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1550"></a><tt class="py-lineno">1550</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-541" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-541', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-542" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-542', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1551"></a><tt class="py-lineno">1551</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1552"></a><tt class="py-lineno">1552</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1553"></a><tt class="py-lineno">1553</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentHostsResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1554"></a><tt class="py-lineno">1554</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Hosts view is consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1555"></a><tt class="py-lineno">1555</tt> <tt class="py-line"> <tt id="link-543" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-543', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1556"></a><tt class="py-lineno">1556</tt> <tt class="py-line"> </tt>
-<a name="L1557"></a><tt class="py-lineno">1557</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-544" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-544', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Each host has an IP address"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1558"></a><tt class="py-lineno">1558</tt> <tt class="py-line"> <tt class="py-name">ipResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1559"></a><tt class="py-lineno">1559</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-545" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-545', 'controller', 'link-525');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-546" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-546', 'hosts', 'link-163');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1560"></a><tt class="py-lineno">1560</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-547" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-547', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1561"></a><tt class="py-lineno">1561</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt id="link-548" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-548', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-549" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-549', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1562"></a><tt class="py-lineno">1562</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'ipAddresses'</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1563"></a><tt class="py-lineno">1563</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-550" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-550', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-551" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-551', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"DEBUG:Error with host ips on controller"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1564"></a><tt class="py-lineno">1564</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1565"></a><tt class="py-lineno">1565</tt> <tt class="py-line"> <tt class="py-name">ipResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1566"></a><tt class="py-lineno">1566</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1567"></a><tt class="py-lineno">1567</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1568"></a><tt class="py-lineno">1568</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">ipResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1569"></a><tt class="py-lineno">1569</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"The ips of the hosts aren't empty"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1570"></a><tt class="py-lineno">1570</tt> <tt class="py-line"> <tt id="link-552" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-552', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"The ip of at least one host is missing"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1571"></a><tt class="py-lineno">1571</tt> <tt class="py-line"> </tt>
-<a name="L1572"></a><tt class="py-lineno">1572</tt> <tt class="py-line"> <tt class="py-comment"># Strongly connected clusters of devices</tt> </tt>
-<a name="L1573"></a><tt class="py-lineno">1573</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-553" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-553', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cluster view is consistent across ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1574"></a><tt class="py-lineno">1574</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1575"></a><tt class="py-lineno">1575</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-554" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-554', 'controller', 'link-525');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-555" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-555', 'clusters', 'link-520');">clusters</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1576"></a><tt class="py-lineno">1576</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-556" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-556', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1577"></a><tt class="py-lineno">1577</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-557" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-557', 'clusters', 'link-520');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-558" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-558', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1578"></a><tt class="py-lineno">1578</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-559" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-559', 'clusters', 'link-520');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-560" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-560', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt id="link-561" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-561', 'clusters', 'link-520');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1579"></a><tt class="py-lineno">1579</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L1580"></a><tt class="py-lineno">1580</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># clusters not consistent</tt> </tt>
-<a name="L1581"></a><tt class="py-lineno">1581</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-562" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-562', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-563" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-563', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"clusters from ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1582"></a><tt class="py-lineno">1582</tt> <tt class="py-line"> <tt class="py-string">" is inconsistent with ONOS1"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1583"></a><tt class="py-lineno">1583</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1584"></a><tt class="py-lineno">1584</tt> <tt class="py-line"> </tt>
-<a name="L1585"></a><tt class="py-lineno">1585</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1586"></a><tt class="py-lineno">1586</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-564" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-564', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-565" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-565', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting dataplane clusters "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1587"></a><tt class="py-lineno">1587</tt> <tt class="py-line"> <tt class="py-string">"from ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1588"></a><tt class="py-lineno">1588</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1589"></a><tt class="py-lineno">1589</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-566" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-566', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1590"></a><tt class="py-lineno">1590</tt> <tt class="py-line"> <tt class="py-string">" clusters response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1591"></a><tt class="py-lineno">1591</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-567" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-567', 'clusters', 'link-520');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-568" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-568', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1592"></a><tt class="py-lineno">1592</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1593"></a><tt class="py-lineno">1593</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1594"></a><tt class="py-lineno">1594</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentClustersResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1595"></a><tt class="py-lineno">1595</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Clusters view is consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1596"></a><tt class="py-lineno">1596</tt> <tt class="py-line"> <tt id="link-569" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-569', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of clusters"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1597"></a><tt class="py-lineno">1597</tt> <tt class="py-line"> <tt class="py-comment"># there should always only be one cluster</tt> </tt>
-<a name="L1598"></a><tt class="py-lineno">1598</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-570" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-570', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cluster view correct across ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1599"></a><tt class="py-lineno">1599</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1600"></a><tt class="py-lineno">1600</tt> <tt class="py-line"> <tt class="py-name">numClusters</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-571" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-571', 'clusters', 'link-520');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1601"></a><tt class="py-lineno">1601</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1602"></a><tt class="py-lineno">1602</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-572" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-572', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing clusters[0]: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1603"></a><tt class="py-lineno">1603</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-573" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-573', 'clusters', 'link-520');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1604"></a><tt class="py-lineno">1604</tt> <tt class="py-line"> <tt class="py-name">clusterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1605"></a><tt class="py-lineno">1605</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">numClusters</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1606"></a><tt class="py-lineno">1606</tt> <tt class="py-line"> <tt class="py-name">clusterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1607"></a><tt class="py-lineno">1607</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1608"></a><tt class="py-lineno">1608</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1609"></a><tt class="py-lineno">1609</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">numClusters</tt><tt class="py-op">,</tt> </tt>
-<a name="L1610"></a><tt class="py-lineno">1610</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS shows 1 SCC"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1611"></a><tt class="py-lineno">1611</tt> <tt class="py-line"> <tt id="link-574" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-574', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS shows "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">numClusters</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" SCCs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1612"></a><tt class="py-lineno">1612</tt> <tt class="py-line"> </tt>
-<a name="L1613"></a><tt class="py-lineno">1613</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-575" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-575', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Comparing ONOS topology to MN"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1614"></a><tt class="py-lineno">1614</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1615"></a><tt class="py-lineno">1615</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1616"></a><tt class="py-lineno">1616</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1617"></a><tt class="py-lineno">1617</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-576" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitches()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitches"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitches" class="py-name" href="#" onclick="return doclink('link-576', 'getSwitches', 'link-576');">getSwitches</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1618"></a><tt class="py-lineno">1618</tt> <tt class="py-line"> <tt class="py-name">mnLinks</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-577" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getLinks()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getLinks"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getLinks" class="py-name" href="#" onclick="return doclink('link-577', 'getLinks', 'link-577');">getLinks</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1619"></a><tt class="py-lineno">1619</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-578" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getHosts"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts" class="py-name" href="#" onclick="return doclink('link-578', 'getHosts', 'link-578');">getHosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1620"></a><tt class="py-lineno">1620</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-579" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-579', 'controller', 'link-525');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1621"></a><tt class="py-lineno">1621</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-580" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-580', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1622"></a><tt class="py-lineno">1622</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-581" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-581', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-582" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-582', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt id="link-583" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-583', 'ports', 'link-512');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-584" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-584', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L1623"></a><tt class="py-lineno">1623</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-585" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-585', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-586" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-586', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L1624"></a><tt class="py-lineno">1624</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-587" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-587', 'ports', 'link-512');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-588" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-588', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1625"></a><tt class="py-lineno">1625</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-589" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareSwitches()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareSwitches"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareSwitches" class="py-name" href="#" onclick="return doclink('link-589', 'compareSwitches', 'link-589');">compareSwitches</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1626"></a><tt class="py-lineno">1626</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> </tt>
-<a name="L1627"></a><tt class="py-lineno">1627</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-590" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-590', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-591" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-591', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1628"></a><tt class="py-lineno">1628</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-592" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-592', 'ports', 'link-512');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-593" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-593', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1629"></a><tt class="py-lineno">1629</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1630"></a><tt class="py-lineno">1630</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1631"></a><tt class="py-lineno">1631</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1632"></a><tt class="py-lineno">1632</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentDevicesResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1633"></a><tt class="py-lineno">1633</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1634"></a><tt class="py-lineno">1634</tt> <tt class="py-line"> <tt class="py-string">" Switches view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1635"></a><tt class="py-lineno">1635</tt> <tt class="py-line"> <tt id="link-594" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-594', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1636"></a><tt class="py-lineno">1636</tt> <tt class="py-line"> <tt class="py-string">" Switches view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1637"></a><tt class="py-lineno">1637</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-595" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-595', 'links', 'link-516');">links</a></tt><tt class="py-op">[</tt> <tt id="link-596" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-596', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-597" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-597', 'links', 'link-516');">links</a></tt><tt class="py-op">[</tt> <tt id="link-598" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-598', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1638"></a><tt class="py-lineno">1638</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-599" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareLinks()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareLinks"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareLinks" class="py-name" href="#" onclick="return doclink('link-599', 'compareLinks', 'link-599');">compareLinks</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1639"></a><tt class="py-lineno">1639</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> <tt class="py-name">mnLinks</tt><tt class="py-op">,</tt> </tt>
-<a name="L1640"></a><tt class="py-lineno">1640</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-600" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-600', 'links', 'link-516');">links</a></tt><tt class="py-op">[</tt> <tt id="link-601" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-601', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1641"></a><tt class="py-lineno">1641</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1642"></a><tt class="py-lineno">1642</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1643"></a><tt class="py-lineno">1643</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1644"></a><tt class="py-lineno">1644</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentLinksResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1645"></a><tt class="py-lineno">1645</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1646"></a><tt class="py-lineno">1646</tt> <tt class="py-line"> <tt class="py-string">" links view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1647"></a><tt class="py-lineno">1647</tt> <tt class="py-line"> <tt id="link-602" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-602', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1648"></a><tt class="py-lineno">1648</tt> <tt class="py-line"> <tt class="py-string">" links view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1649"></a><tt class="py-lineno">1649</tt> <tt class="py-line"> </tt>
-<a name="L1650"></a><tt class="py-lineno">1650</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-603" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-603', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-604" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-604', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-605" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-605', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-606" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-606', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1651"></a><tt class="py-lineno">1651</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-607" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareHosts()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareHosts"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareHosts" class="py-name" href="#" onclick="return doclink('link-607', 'compareHosts', 'link-607');">compareHosts</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1652"></a><tt class="py-lineno">1652</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt><tt class="py-op">,</tt> </tt>
-<a name="L1653"></a><tt class="py-lineno">1653</tt> <tt class="py-line"> <tt id="link-608" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-608', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-609" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-609', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1654"></a><tt class="py-lineno">1654</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1655"></a><tt class="py-lineno">1655</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1656"></a><tt class="py-lineno">1656</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1657"></a><tt class="py-lineno">1657</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentHostsResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1658"></a><tt class="py-lineno">1658</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1659"></a><tt class="py-lineno">1659</tt> <tt class="py-line"> <tt class="py-string">" hosts exist in Mininet"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1660"></a><tt class="py-lineno">1660</tt> <tt class="py-line"> <tt id="link-610" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-610', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1661"></a><tt class="py-lineno">1661</tt> <tt class="py-line"> <tt class="py-string">" hosts don't match Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1662"></a><tt class="py-lineno">1662</tt> <tt class="py-line"> </tt>
-<a name="L1663"></a><tt class="py-lineno">1663</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">devicesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentDevicesResult</tt> </tt>
-<a name="L1664"></a><tt class="py-lineno">1664</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">linksResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentLinksResult</tt> </tt>
-<a name="L1665"></a><tt class="py-lineno">1665</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentHostsResult</tt> </tt>
-<a name="L1666"></a><tt class="py-lineno">1666</tt> <tt class="py-line"> </tt>
-<a name="L1667"></a><tt class="py-lineno">1667</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-611" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-611', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Device information is correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1668"></a><tt class="py-lineno">1668</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1669"></a><tt class="py-lineno">1669</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1670"></a><tt class="py-lineno">1670</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">devicesResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1671"></a><tt class="py-lineno">1671</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Device information is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1672"></a><tt class="py-lineno">1672</tt> <tt class="py-line"> <tt id="link-612" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-612', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Device information is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1673"></a><tt class="py-lineno">1673</tt> <tt class="py-line"> </tt>
-<a name="L1674"></a><tt class="py-lineno">1674</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-613" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-613', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Links are correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1675"></a><tt class="py-lineno">1675</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1676"></a><tt class="py-lineno">1676</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1677"></a><tt class="py-lineno">1677</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linksResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1678"></a><tt class="py-lineno">1678</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1679"></a><tt class="py-lineno">1679</tt> <tt class="py-line"> <tt id="link-614" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-614', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Links are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1680"></a><tt class="py-lineno">1680</tt> <tt class="py-line"> </tt>
-<a name="L1681"></a><tt class="py-lineno">1681</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-615" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-615', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Hosts are correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1682"></a><tt class="py-lineno">1682</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1683"></a><tt class="py-lineno">1683</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1684"></a><tt class="py-lineno">1684</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">hostsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1685"></a><tt class="py-lineno">1685</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Hosts are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1686"></a><tt class="py-lineno">1686</tt> <tt class="py-line"> <tt id="link-616" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-616', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Hosts are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1687"></a><tt class="py-lineno">1687</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE6"></a><div id="HAclusterRestart.CASE6-def"><a name="L1688"></a><tt class="py-lineno">1688</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE6-toggle" onclick="return toggle('HAclusterRestart.CASE6');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE6">CASE6</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE6-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE6-expanded"><a name="L1689"></a><tt class="py-lineno">1689</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1690"></a><tt class="py-lineno">1690</tt> <tt class="py-line"><tt class="py-docstring"> The Failure case.</tt> </tt>
-<a name="L1691"></a><tt class="py-lineno">1691</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1692"></a><tt class="py-lineno">1692</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1693"></a><tt class="py-lineno">1693</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1694"></a><tt class="py-lineno">1694</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1695"></a><tt class="py-lineno">1695</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1696"></a><tt class="py-lineno">1696</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L1697"></a><tt class="py-lineno">1697</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-617" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-617', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L1698"></a><tt class="py-lineno">1698</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1699"></a><tt class="py-lineno">1699</tt> <tt class="py-line"> <tt class="py-name">labels</tt> </tt>
-<a name="L1700"></a><tt class="py-lineno">1700</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1701"></a><tt class="py-lineno">1701</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-618" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-618', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-619" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-619', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"labels not defined, setting to []"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1702"></a><tt class="py-lineno">1702</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">labels</tt> </tt>
-<a name="L1703"></a><tt class="py-lineno">1703</tt> <tt class="py-line"> <tt class="py-name">labels</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1704"></a><tt class="py-lineno">1704</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1705"></a><tt class="py-lineno">1705</tt> <tt class="py-line"> <tt class="py-name">data</tt> </tt>
-<a name="L1706"></a><tt class="py-lineno">1706</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1707"></a><tt class="py-lineno">1707</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-620" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-620', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-621" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-621', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"data not defined, setting to []"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1708"></a><tt class="py-lineno">1708</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">data</tt> </tt>
-<a name="L1709"></a><tt class="py-lineno">1709</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1710"></a><tt class="py-lineno">1710</tt> <tt class="py-line"> <tt class="py-comment"># Reset non-persistent variables</tt> </tt>
-<a name="L1711"></a><tt class="py-lineno">1711</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1712"></a><tt class="py-lineno">1712</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1713"></a><tt class="py-lineno">1713</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1714"></a><tt class="py-lineno">1714</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-622" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-622', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-623" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-623', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"iCounterValue not defined, setting to 0"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1715"></a><tt class="py-lineno">1715</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1716"></a><tt class="py-lineno">1716</tt> <tt class="py-line"> </tt>
-<a name="L1717"></a><tt class="py-lineno">1717</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-624" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-624', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Restart entire ONOS cluster"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1718"></a><tt class="py-lineno">1718</tt> <tt class="py-line"> </tt>
-<a name="L1719"></a><tt class="py-lineno">1719</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-625" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-625', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Killing ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1720"></a><tt class="py-lineno">1720</tt> <tt class="py-line"> <tt class="py-name">killResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1721"></a><tt class="py-lineno">1721</tt> <tt class="py-line"> <tt class="py-name">killTime</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1722"></a><tt class="py-lineno">1722</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-626" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-626', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1723"></a><tt class="py-lineno">1723</tt> <tt class="py-line"> <tt class="py-name">killed</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-627" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosKill" class="py-name" href="#" onclick="return doclink('link-627', 'onosKill', 'link-24');">onosKill</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1724"></a><tt class="py-lineno">1724</tt> <tt class="py-line"> <tt class="py-name">killResults</tt> <tt class="py-op">=</tt> <tt class="py-name">killResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">killed</tt> </tt>
-<a name="L1725"></a><tt class="py-lineno">1725</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">killResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1726"></a><tt class="py-lineno">1726</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes killed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1727"></a><tt class="py-lineno">1727</tt> <tt class="py-line"> <tt id="link-628" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-628', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS kill unsuccessful"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1728"></a><tt class="py-lineno">1728</tt> <tt class="py-line"> </tt>
-<a name="L1729"></a><tt class="py-lineno">1729</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-629" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-629', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Checking if ONOS is up yet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1730"></a><tt class="py-lineno">1730</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1731"></a><tt class="py-lineno">1731</tt> <tt class="py-line"> <tt class="py-name">onosIsupResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1732"></a><tt class="py-lineno">1732</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-630" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-630', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1733"></a><tt class="py-lineno">1733</tt> <tt class="py-line"> <tt class="py-name">started</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-631" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-631', 'isup', 'link-48');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1734"></a><tt class="py-lineno">1734</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">started</tt><tt class="py-op">:</tt> </tt>
-<a name="L1735"></a><tt class="py-lineno">1735</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-632" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-632', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-633" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-633', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" didn't start!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1736"></a><tt class="py-lineno">1736</tt> <tt class="py-line"> <tt class="py-name">onosIsupResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosIsupResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">started</tt> </tt>
-<a name="L1737"></a><tt class="py-lineno">1737</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosIsupResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1738"></a><tt class="py-lineno">1738</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L1739"></a><tt class="py-lineno">1739</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">onosIsupResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1740"></a><tt class="py-lineno">1740</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS restarted"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1741"></a><tt class="py-lineno">1741</tt> <tt class="py-line"> <tt id="link-634" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-634', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS restart NOT successful"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1742"></a><tt class="py-lineno">1742</tt> <tt class="py-line"> </tt>
-<a name="L1743"></a><tt class="py-lineno">1743</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-635" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-635', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-636" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-636', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting ONOS CLI sessions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1744"></a><tt class="py-lineno">1744</tt> <tt class="py-line"> <tt class="py-name">cliResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1745"></a><tt class="py-lineno">1745</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1746"></a><tt class="py-lineno">1746</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1747"></a><tt class="py-lineno">1747</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-637" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-637', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-638" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli" class="py-name" href="#" onclick="return doclink('link-638', 'startOnosCli', 'link-57');">startOnosCli</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1748"></a><tt class="py-lineno">1748</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"startOnosCli-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1749"></a><tt class="py-lineno">1749</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-639" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-639', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1750"></a><tt class="py-lineno">1750</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1751"></a><tt class="py-lineno">1751</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1752"></a><tt class="py-lineno">1752</tt> <tt class="py-line"> </tt>
-<a name="L1753"></a><tt class="py-lineno">1753</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1754"></a><tt class="py-lineno">1754</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1755"></a><tt class="py-lineno">1755</tt> <tt class="py-line"> <tt class="py-name">cliResults</tt> <tt class="py-op">=</tt> <tt class="py-name">cliResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L1756"></a><tt class="py-lineno">1756</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">cliResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1757"></a><tt class="py-lineno">1757</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS cli started"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1758"></a><tt class="py-lineno">1758</tt> <tt class="py-line"> <tt id="link-640" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-640', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS clis did not restart"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1759"></a><tt class="py-lineno">1759</tt> <tt class="py-line"> </tt>
-<a name="L1760"></a><tt class="py-lineno">1760</tt> <tt class="py-line"> <tt class="py-comment"># Grab the time of restart so we chan check how long the gossip</tt> </tt>
-<a name="L1761"></a><tt class="py-lineno">1761</tt> <tt class="py-line"> <tt class="py-comment"># protocol has had time to work</tt> </tt>
-<a name="L1762"></a><tt class="py-lineno">1762</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">restartTime</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">killTime</tt> </tt>
-<a name="L1763"></a><tt class="py-lineno">1763</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-641" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-641', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Restart time: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">restartTime</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1764"></a><tt class="py-lineno">1764</tt> <tt class="py-line"> <tt class="py-name">labels</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"Restart"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1765"></a><tt class="py-lineno">1765</tt> <tt class="py-line"> <tt class="py-name">data</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">restartTime</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1766"></a><tt class="py-lineno">1766</tt> <tt class="py-line"> </tt>
-<a name="L1767"></a><tt class="py-lineno">1767</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: revisit test plan for election with madan</tt> </tt>
-<a name="L1768"></a><tt class="py-lineno">1768</tt> <tt class="py-line"> <tt class="py-comment"># Rerun for election on restarted nodes</tt> </tt>
-<a name="L1769"></a><tt class="py-lineno">1769</tt> <tt class="py-line"> <tt class="py-name">runResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1770"></a><tt class="py-lineno">1770</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-642" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-642', 'cli', 'link-227');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L1771"></a><tt class="py-lineno">1771</tt> <tt class="py-line"> <tt id="link-643" class="py-name" targets="Method TestON.bin.cli.TestThread.run()=TestON.bin.cli.TestThread-class.html#run,Method TestON.core.Thread.Thread.run()=TestON.core.Thread.Thread-class.html#run,Method TestON.core.teston.TestON.run()=TestON.core.teston.TestON-class.html#run,Function TestON.tests.HAclusterRestart.dependencies.obelisk.run()=TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#run,Function TestON.tests.HAminorityRestart.dependencies.obelisk.run()=TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#run,Function TestON.tests.HAsanity.dependencies.obelisk.run()=TestON.tests.HAsanity.dependencies.obelisk-module.html#run,Function TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#run"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-643', 'run', 'link-643');">run</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-644" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestRun()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestRun"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestRun" class="py-name" href="#" onclick="return doclink('link-644', 'electionTestRun', 'link-644');">electionTestRun</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1772"></a><tt class="py-lineno">1772</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-645" class="py-name"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-645', 'run', 'link-643');">run</a></tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1773"></a><tt class="py-lineno">1773</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-646" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-646', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-647" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-647', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error running for election on "</tt> <tt class="py-op">+</tt> <tt id="link-648" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-648', 'cli', 'link-227');">cli</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1774"></a><tt class="py-lineno">1774</tt> <tt class="py-line"> <tt class="py-name">runResults</tt> <tt class="py-op">=</tt> <tt class="py-name">runResults</tt> <tt class="py-keyword">and</tt> <tt id="link-649" class="py-name"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-649', 'run', 'link-643');">run</a></tt> </tt>
-<a name="L1775"></a><tt class="py-lineno">1775</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">runResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1776"></a><tt class="py-lineno">1776</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Reran for election"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1777"></a><tt class="py-lineno">1777</tt> <tt class="py-line"> <tt id="link-650" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-650', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to rerun for election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1778"></a><tt class="py-lineno">1778</tt> <tt class="py-line"> </tt>
-<a name="L1779"></a><tt class="py-lineno">1779</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Make this configurable</tt> </tt>
-<a name="L1780"></a><tt class="py-lineno">1780</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1781"></a><tt class="py-lineno">1781</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-651" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-651', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-652" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-652', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1782"></a><tt class="py-lineno">1782</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-653" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-653', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-654" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-654', 'leaders', 'link-185');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1783"></a><tt class="py-lineno">1783</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-655" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-655', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-656" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-656', 'partitions', 'link-201');">partitions</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1784"></a><tt class="py-lineno">1784</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE7"></a><div id="HAclusterRestart.CASE7-def"><a name="L1785"></a><tt class="py-lineno">1785</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE7-toggle" onclick="return toggle('HAclusterRestart.CASE7');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE7">CASE7</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE7-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE7-expanded"><a name="L1786"></a><tt class="py-lineno">1786</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1787"></a><tt class="py-lineno">1787</tt> <tt class="py-line"><tt class="py-docstring"> Check state after ONOS failure</tt> </tt>
-<a name="L1788"></a><tt class="py-lineno">1788</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1789"></a><tt class="py-lineno">1789</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L1790"></a><tt class="py-lineno">1790</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1791"></a><tt class="py-lineno">1791</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1792"></a><tt class="py-lineno">1792</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1793"></a><tt class="py-lineno">1793</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L1794"></a><tt class="py-lineno">1794</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-657" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-657', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L1795"></a><tt class="py-lineno">1795</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-658" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-658', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Running ONOS Constant State Tests"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1796"></a><tt class="py-lineno">1796</tt> <tt class="py-line"> </tt>
-<a name="L1797"></a><tt class="py-lineno">1797</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-659" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-659', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check that each switch has a master"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1798"></a><tt class="py-lineno">1798</tt> <tt class="py-line"> <tt class="py-comment"># Assert that each device has a master</tt> </tt>
-<a name="L1799"></a><tt class="py-lineno">1799</tt> <tt class="py-line"> <tt id="link-660" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-660', 'rolesNotNull', 'link-424');">rolesNotNull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1800"></a><tt class="py-lineno">1800</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1801"></a><tt class="py-lineno">1801</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1802"></a><tt class="py-lineno">1802</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-661" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-661', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-662" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-662', 'rolesNotNull', 'link-424');">rolesNotNull</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1803"></a><tt class="py-lineno">1803</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"rolesNotNull-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1804"></a><tt class="py-lineno">1804</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1805"></a><tt class="py-lineno">1805</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1806"></a><tt class="py-lineno">1806</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1807"></a><tt class="py-lineno">1807</tt> <tt class="py-line"> </tt>
-<a name="L1808"></a><tt class="py-lineno">1808</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1809"></a><tt class="py-lineno">1809</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1810"></a><tt class="py-lineno">1810</tt> <tt class="py-line"> <tt id="link-663" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-663', 'rolesNotNull', 'link-424');">rolesNotNull</a></tt> <tt class="py-op">=</tt> <tt id="link-664" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-664', 'rolesNotNull', 'link-424');">rolesNotNull</a></tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L1811"></a><tt class="py-lineno">1811</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1812"></a><tt class="py-lineno">1812</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1813"></a><tt class="py-lineno">1813</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt id="link-665" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-665', 'rolesNotNull', 'link-424');">rolesNotNull</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1814"></a><tt class="py-lineno">1814</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Each device has a master"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1815"></a><tt class="py-lineno">1815</tt> <tt class="py-line"> <tt id="link-666" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-666', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Some devices don't have a master assigned"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1816"></a><tt class="py-lineno">1816</tt> <tt class="py-line"> </tt>
-<a name="L1817"></a><tt class="py-lineno">1817</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-667" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-667', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Read device roles from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1818"></a><tt class="py-lineno">1818</tt> <tt class="py-line"> <tt class="py-name">ONOSMastership</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1819"></a><tt class="py-lineno">1819</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1820"></a><tt class="py-lineno">1820</tt> <tt class="py-line"> <tt class="py-name">consistentMastership</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1821"></a><tt class="py-lineno">1821</tt> <tt class="py-line"> <tt class="py-name">rolesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1822"></a><tt class="py-lineno">1822</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1823"></a><tt class="py-lineno">1823</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1824"></a><tt class="py-lineno">1824</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-668" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-668', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-669" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.roles" class="py-name" href="#" onclick="return doclink('link-669', 'roles', 'link-433');">roles</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1825"></a><tt class="py-lineno">1825</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"roles-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1826"></a><tt class="py-lineno">1826</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1827"></a><tt class="py-lineno">1827</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1828"></a><tt class="py-lineno">1828</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1829"></a><tt class="py-lineno">1829</tt> <tt class="py-line"> </tt>
-<a name="L1830"></a><tt class="py-lineno">1830</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1831"></a><tt class="py-lineno">1831</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1832"></a><tt class="py-lineno">1832</tt> <tt class="py-line"> <tt class="py-name">ONOSMastership</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1833"></a><tt class="py-lineno">1833</tt> <tt class="py-line"> </tt>
-<a name="L1834"></a><tt class="py-lineno">1834</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1835"></a><tt class="py-lineno">1835</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1836"></a><tt class="py-lineno">1836</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-670" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-670', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-671" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-671', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1837"></a><tt class="py-lineno">1837</tt> <tt class="py-line"> <tt class="py-string">" roles"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1838"></a><tt class="py-lineno">1838</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-672" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-672', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1839"></a><tt class="py-lineno">1839</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" mastership response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1840"></a><tt class="py-lineno">1840</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1841"></a><tt class="py-lineno">1841</tt> <tt class="py-line"> <tt class="py-name">rolesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1842"></a><tt class="py-lineno">1842</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1843"></a><tt class="py-lineno">1843</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1844"></a><tt class="py-lineno">1844</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">rolesResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1845"></a><tt class="py-lineno">1845</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No error in reading roles output"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1846"></a><tt class="py-lineno">1846</tt> <tt class="py-line"> <tt id="link-673" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-673', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error in reading roles from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1847"></a><tt class="py-lineno">1847</tt> <tt class="py-line"> </tt>
-<a name="L1848"></a><tt class="py-lineno">1848</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-674" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-674', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check for consistency in roles from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1849"></a><tt class="py-lineno">1849</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSMastership</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1850"></a><tt class="py-lineno">1850</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-675" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-675', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L1851"></a><tt class="py-lineno">1851</tt> <tt class="py-line"> <tt class="py-string">"Switch roles are consistent across all ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1852"></a><tt class="py-lineno">1852</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1853"></a><tt class="py-lineno">1853</tt> <tt class="py-line"> <tt class="py-name">consistentMastership</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1854"></a><tt class="py-lineno">1854</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1855"></a><tt class="py-lineno">1855</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1856"></a><tt class="py-lineno">1856</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentMastership</tt><tt class="py-op">,</tt> </tt>
-<a name="L1857"></a><tt class="py-lineno">1857</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Switch roles are consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1858"></a><tt class="py-lineno">1858</tt> <tt class="py-line"> <tt id="link-676" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-676', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of switch roles"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1859"></a><tt class="py-lineno">1859</tt> <tt class="py-line"> </tt>
-<a name="L1860"></a><tt class="py-lineno">1860</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">rolesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentMastership</tt><tt class="py-op">:</tt> </tt>
-<a name="L1861"></a><tt class="py-lineno">1861</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1862"></a><tt class="py-lineno">1862</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-677" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-677', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1863"></a><tt class="py-lineno">1863</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" roles: "</tt><tt class="py-op">,</tt> </tt>
-<a name="L1864"></a><tt class="py-lineno">1864</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> </tt>
-<a name="L1865"></a><tt class="py-lineno">1865</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1866"></a><tt class="py-lineno">1866</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1867"></a><tt class="py-lineno">1867</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1868"></a><tt class="py-lineno">1868</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1869"></a><tt class="py-lineno">1869</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">rolesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentMastership</tt><tt class="py-op">:</tt> </tt>
-<a name="L1870"></a><tt class="py-lineno">1870</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1871"></a><tt class="py-lineno">1871</tt> <tt class="py-line"> </tt>
-<a name="L1872"></a><tt class="py-lineno">1872</tt> <tt class="py-line"> <tt class="py-string">'''</tt> </tt>
-<a name="L1873"></a><tt class="py-lineno">1873</tt> <tt class="py-line"><tt class="py-string"> description2 = "Compare switch roles from before failure"</tt> </tt>
-<a name="L1874"></a><tt class="py-lineno">1874</tt> <tt class="py-line"><tt class="py-string"> main.step( description2 )</tt> </tt>
-<a name="L1875"></a><tt class="py-lineno">1875</tt> <tt class="py-line"><tt class="py-string"> try:</tt> </tt>
-<a name="L1876"></a><tt class="py-lineno">1876</tt> <tt class="py-line"><tt class="py-string"> currentJson = json.loads( ONOSMastership[0] )</tt> </tt>
-<a name="L1877"></a><tt class="py-lineno">1877</tt> <tt class="py-line"><tt class="py-string"> oldJson = json.loads( mastershipState )</tt> </tt>
-<a name="L1878"></a><tt class="py-lineno">1878</tt> <tt class="py-line"><tt class="py-string"> except ( ValueError, TypeError ):</tt> </tt>
-<a name="L1879"></a><tt class="py-lineno">1879</tt> <tt class="py-line"><tt class="py-string"> main.log.exception( "Something is wrong with parsing " +</tt> </tt>
-<a name="L1880"></a><tt class="py-lineno">1880</tt> <tt class="py-line"><tt class="py-string"> "ONOSMastership[0] or mastershipState" )</tt> </tt>
-<a name="L1881"></a><tt class="py-lineno">1881</tt> <tt class="py-line"><tt class="py-string"> main.log.error( "ONOSMastership[0]: " + repr( ONOSMastership[0] ) )</tt> </tt>
-<a name="L1882"></a><tt class="py-lineno">1882</tt> <tt class="py-line"><tt class="py-string"> main.log.error( "mastershipState" + repr( mastershipState ) )</tt> </tt>
-<a name="L1883"></a><tt class="py-lineno">1883</tt> <tt class="py-line"><tt class="py-string"> main.cleanup()</tt> </tt>
-<a name="L1884"></a><tt class="py-lineno">1884</tt> <tt class="py-line"><tt class="py-string"> main.exit()</tt> </tt>
-<a name="L1885"></a><tt class="py-lineno">1885</tt> <tt class="py-line"><tt class="py-string"> mastershipCheck = main.TRUE</tt> </tt>
-<a name="L1886"></a><tt class="py-lineno">1886</tt> <tt class="py-line"><tt class="py-string"> for i in range( 1, 29 ):</tt> </tt>
-<a name="L1887"></a><tt class="py-lineno">1887</tt> <tt class="py-line"><tt class="py-string"> switchDPID = str(</tt> </tt>
-<a name="L1888"></a><tt class="py-lineno">1888</tt> <tt class="py-line"><tt class="py-string"> main.Mininet1.getSwitchDPID( switch="s" + str( i ) ) )</tt> </tt>
-<a name="L1889"></a><tt class="py-lineno">1889</tt> <tt class="py-line"><tt class="py-string"> current = [ switch[ 'master' ] for switch in currentJson</tt> </tt>
-<a name="L1890"></a><tt class="py-lineno">1890</tt> <tt class="py-line"><tt class="py-string"> if switchDPID in switch[ 'id' ] ]</tt> </tt>
-<a name="L1891"></a><tt class="py-lineno">1891</tt> <tt class="py-line"><tt class="py-string"> old = [ switch[ 'master' ] for switch in oldJson</tt> </tt>
-<a name="L1892"></a><tt class="py-lineno">1892</tt> <tt class="py-line"><tt class="py-string"> if switchDPID in switch[ 'id' ] ]</tt> </tt>
-<a name="L1893"></a><tt class="py-lineno">1893</tt> <tt class="py-line"><tt class="py-string"> if current == old:</tt> </tt>
-<a name="L1894"></a><tt class="py-lineno">1894</tt> <tt class="py-line"><tt class="py-string"> mastershipCheck = mastershipCheck and main.TRUE</tt> </tt>
-<a name="L1895"></a><tt class="py-lineno">1895</tt> <tt class="py-line"><tt class="py-string"> else:</tt> </tt>
-<a name="L1896"></a><tt class="py-lineno">1896</tt> <tt class="py-line"><tt class="py-string"> main.log.warn( "Mastership of switch %s changed" % switchDPID )</tt> </tt>
-<a name="L1897"></a><tt class="py-lineno">1897</tt> <tt class="py-line"><tt class="py-string"> mastershipCheck = main.FALSE</tt> </tt>
-<a name="L1898"></a><tt class="py-lineno">1898</tt> <tt class="py-line"><tt class="py-string"> utilities.assert_equals(</tt> </tt>
-<a name="L1899"></a><tt class="py-lineno">1899</tt> <tt class="py-line"><tt class="py-string"> expect=main.TRUE,</tt> </tt>
-<a name="L1900"></a><tt class="py-lineno">1900</tt> <tt class="py-line"><tt class="py-string"> actual=mastershipCheck,</tt> </tt>
-<a name="L1901"></a><tt class="py-lineno">1901</tt> <tt class="py-line"><tt class="py-string"> onpass="Mastership of Switches was not changed",</tt> </tt>
-<a name="L1902"></a><tt class="py-lineno">1902</tt> <tt class="py-line"><tt class="py-string"> onfail="Mastership of some switches changed" )</tt> </tt>
-<a name="L1903"></a><tt class="py-lineno">1903</tt> <tt class="py-line"><tt class="py-string"> '''</tt> </tt>
-<a name="L1904"></a><tt class="py-lineno">1904</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: we expect mastership to change on controller failure</tt> </tt>
-<a name="L1905"></a><tt class="py-lineno">1905</tt> <tt class="py-line"> </tt>
-<a name="L1906"></a><tt class="py-lineno">1906</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-678" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-678', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the intents and compare across all nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1907"></a><tt class="py-lineno">1907</tt> <tt class="py-line"> <tt class="py-name">ONOSIntents</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1908"></a><tt class="py-lineno">1908</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1909"></a><tt class="py-lineno">1909</tt> <tt class="py-line"> <tt class="py-name">consistentIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1910"></a><tt class="py-lineno">1910</tt> <tt class="py-line"> <tt class="py-name">intentsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1911"></a><tt class="py-lineno">1911</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1912"></a><tt class="py-lineno">1912</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1913"></a><tt class="py-lineno">1913</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-679" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-679', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-680" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-680', 'intents', 'link-176');">intents</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1914"></a><tt class="py-lineno">1914</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"intents-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1915"></a><tt class="py-lineno">1915</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1916"></a><tt class="py-lineno">1916</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">'jsonFormat'</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1917"></a><tt class="py-lineno">1917</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1918"></a><tt class="py-lineno">1918</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1919"></a><tt class="py-lineno">1919</tt> <tt class="py-line"> </tt>
-<a name="L1920"></a><tt class="py-lineno">1920</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1921"></a><tt class="py-lineno">1921</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1922"></a><tt class="py-lineno">1922</tt> <tt class="py-line"> <tt class="py-name">ONOSIntents</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1923"></a><tt class="py-lineno">1923</tt> <tt class="py-line"> </tt>
-<a name="L1924"></a><tt class="py-lineno">1924</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1925"></a><tt class="py-lineno">1925</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1926"></a><tt class="py-lineno">1926</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-681" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-681', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-682" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-682', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1927"></a><tt class="py-lineno">1927</tt> <tt class="py-line"> <tt class="py-string">" intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1928"></a><tt class="py-lineno">1928</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-683" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-683', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1929"></a><tt class="py-lineno">1929</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1930"></a><tt class="py-lineno">1930</tt> <tt class="py-line"> <tt class="py-name">intentsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1931"></a><tt class="py-lineno">1931</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1932"></a><tt class="py-lineno">1932</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1933"></a><tt class="py-lineno">1933</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">intentsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1934"></a><tt class="py-lineno">1934</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No error in reading intents output"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1935"></a><tt class="py-lineno">1935</tt> <tt class="py-line"> <tt id="link-684" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-684', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error in reading intents from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1936"></a><tt class="py-lineno">1936</tt> <tt class="py-line"> </tt>
-<a name="L1937"></a><tt class="py-lineno">1937</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-685" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-685', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check for consistency in Intents from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1938"></a><tt class="py-lineno">1938</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt><tt class="py-op">[</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1939"></a><tt class="py-lineno">1939</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-686" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-686', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents are consistent across all ONOS "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1940"></a><tt class="py-lineno">1940</tt> <tt class="py-line"> <tt class="py-string">"nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1941"></a><tt class="py-lineno">1941</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1942"></a><tt class="py-lineno">1942</tt> <tt class="py-line"> <tt class="py-name">consistentIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1943"></a><tt class="py-lineno">1943</tt> <tt class="py-line"> </tt>
-<a name="L1944"></a><tt class="py-lineno">1944</tt> <tt class="py-line"> <tt class="py-comment"># Try to make it easy to figure out what is happening</tt> </tt>
-<a name="L1945"></a><tt class="py-lineno">1945</tt> <tt class="py-line"> <tt class="py-comment">#</tt> </tt>
-<a name="L1946"></a><tt class="py-lineno">1946</tt> <tt class="py-line"> <tt class="py-comment"># Intent ONOS1 ONOS2 ...</tt> </tt>
-<a name="L1947"></a><tt class="py-lineno">1947</tt> <tt class="py-line"> <tt class="py-comment"># 0x01 INSTALLED INSTALLING</tt> </tt>
-<a name="L1948"></a><tt class="py-lineno">1948</tt> <tt class="py-line"> <tt class="py-comment"># ... ... ...</tt> </tt>
-<a name="L1949"></a><tt class="py-lineno">1949</tt> <tt class="py-line"> <tt class="py-comment"># ... ... ...</tt> </tt>
-<a name="L1950"></a><tt class="py-lineno">1950</tt> <tt class="py-line"> <tt class="py-name">title</tt> <tt class="py-op">=</tt> <tt class="py-string">" ID"</tt> </tt>
-<a name="L1951"></a><tt class="py-lineno">1951</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">n</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1952"></a><tt class="py-lineno">1952</tt> <tt class="py-line"> <tt class="py-name">title</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">10</tt> <tt class="py-op">+</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1953"></a><tt class="py-lineno">1953</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-687" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-687', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">title</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1954"></a><tt class="py-lineno">1954</tt> <tt class="py-line"> <tt class="py-comment"># get all intent keys in the cluster</tt> </tt>
-<a name="L1955"></a><tt class="py-lineno">1955</tt> <tt class="py-line"> <tt class="py-name">keys</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1956"></a><tt class="py-lineno">1956</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">nodeStr</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1957"></a><tt class="py-lineno">1957</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1958"></a><tt class="py-lineno">1958</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-688" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-688', 'intent', 'link-174');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">:</tt> </tt>
-<a name="L1959"></a><tt class="py-lineno">1959</tt> <tt class="py-line"> <tt class="py-name">keys</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-689" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-689', 'intent', 'link-174');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1960"></a><tt class="py-lineno">1960</tt> <tt class="py-line"> <tt class="py-name">keys</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">keys</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1961"></a><tt class="py-lineno">1961</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">keys</tt><tt class="py-op">:</tt> </tt>
-<a name="L1962"></a><tt class="py-lineno">1962</tt> <tt class="py-line"> <tt class="py-name">row</tt> <tt class="py-op">=</tt> <tt class="py-string">"%-13s"</tt> <tt class="py-op">%</tt> <tt class="py-name">key</tt> </tt>
-<a name="L1963"></a><tt class="py-lineno">1963</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">nodeStr</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1964"></a><tt class="py-lineno">1964</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1965"></a><tt class="py-lineno">1965</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-690" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-690', 'intent', 'link-174');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">:</tt> </tt>
-<a name="L1966"></a><tt class="py-lineno">1966</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-691" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-691', 'intent', 'link-174');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">key</tt><tt class="py-op">:</tt> </tt>
-<a name="L1967"></a><tt class="py-lineno">1967</tt> <tt class="py-line"> <tt class="py-name">row</tt> <tt class="py-op">+=</tt> <tt class="py-string">"%-15s"</tt> <tt class="py-op">%</tt> <tt id="link-692" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-692', 'intent', 'link-174');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1968"></a><tt class="py-lineno">1968</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-693" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-693', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">row</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1969"></a><tt class="py-lineno">1969</tt> <tt class="py-line"> <tt class="py-comment"># End table view</tt> </tt>
-<a name="L1970"></a><tt class="py-lineno">1970</tt> <tt class="py-line"> </tt>
-<a name="L1971"></a><tt class="py-lineno">1971</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1972"></a><tt class="py-lineno">1972</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1973"></a><tt class="py-lineno">1973</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentIntents</tt><tt class="py-op">,</tt> </tt>
-<a name="L1974"></a><tt class="py-lineno">1974</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents are consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1975"></a><tt class="py-lineno">1975</tt> <tt class="py-line"> <tt id="link-694" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-694', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1976"></a><tt class="py-lineno">1976</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1977"></a><tt class="py-lineno">1977</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">:</tt> <tt class="py-comment"># Iter through ONOS nodes</tt> </tt>
-<a name="L1978"></a><tt class="py-lineno">1978</tt> <tt class="py-line"> <tt class="py-name">nodeStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1979"></a><tt class="py-lineno">1979</tt> <tt class="py-line"> <tt class="py-comment"># Iter through intents of a node</tt> </tt>
-<a name="L1980"></a><tt class="py-lineno">1980</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1981"></a><tt class="py-lineno">1981</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-695" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-695', 'intent', 'link-174');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1982"></a><tt class="py-lineno">1982</tt> <tt class="py-line"> <tt class="py-name">nodeStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-696" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-696', 'intent', 'link-174');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1983"></a><tt class="py-lineno">1983</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1984"></a><tt class="py-lineno">1984</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-697" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-697', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error in parsing intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1985"></a><tt class="py-lineno">1985</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-698" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-698', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-699" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-699', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1986"></a><tt class="py-lineno">1986</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStates</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1987"></a><tt class="py-lineno">1987</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">nodeStates</tt><tt class="py-op">.</tt><tt class="py-name">count</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStates</tt> <tt class="py-op">)</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1988"></a><tt class="py-lineno">1988</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-700" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-700', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">dict</tt><tt class="py-op">(</tt> <tt class="py-name">out</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1989"></a><tt class="py-lineno">1989</tt> <tt class="py-line"> </tt>
-<a name="L1990"></a><tt class="py-lineno">1990</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1991"></a><tt class="py-lineno">1991</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1992"></a><tt class="py-lineno">1992</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-701" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-701', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1993"></a><tt class="py-lineno">1993</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-702" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-702', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> </tt>
-<a name="L1994"></a><tt class="py-lineno">1994</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1995"></a><tt class="py-lineno">1995</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1996"></a><tt class="py-lineno">1996</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1997"></a><tt class="py-lineno">1997</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1998"></a><tt class="py-lineno">1998</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">intentsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1999"></a><tt class="py-lineno">1999</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2000"></a><tt class="py-lineno">2000</tt> <tt class="py-line"> </tt>
-<a name="L2001"></a><tt class="py-lineno">2001</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Store has no durability, so intents are lost across system</tt> </tt>
-<a name="L2002"></a><tt class="py-lineno">2002</tt> <tt class="py-line"> <tt class="py-comment"># restarts</tt> </tt>
-<a name="L2003"></a><tt class="py-lineno">2003</tt> <tt class="py-line"> <tt class="py-string">"""</tt> </tt>
-<a name="L2004"></a><tt class="py-lineno">2004</tt> <tt class="py-line"><tt class="py-string"> main.step( "Compare current intents with intents before the failure" )</tt> </tt>
-<a name="L2005"></a><tt class="py-lineno">2005</tt> <tt class="py-line"><tt class="py-string"> # NOTE: this requires case 5 to pass for intentState to be set.</tt> </tt>
-<a name="L2006"></a><tt class="py-lineno">2006</tt> <tt class="py-line"><tt class="py-string"> # maybe we should stop the test if that fails?</tt> </tt>
-<a name="L2007"></a><tt class="py-lineno">2007</tt> <tt class="py-line"><tt class="py-string"> sameIntents = main.FALSE</tt> </tt>
-<a name="L2008"></a><tt class="py-lineno">2008</tt> <tt class="py-line"><tt class="py-string"> if intentState and intentState == ONOSIntents[ 0 ]:</tt> </tt>
-<a name="L2009"></a><tt class="py-lineno">2009</tt> <tt class="py-line"><tt class="py-string"> sameIntents = main.TRUE</tt> </tt>
-<a name="L2010"></a><tt class="py-lineno">2010</tt> <tt class="py-line"><tt class="py-string"> main.log.info( "Intents are consistent with before failure" )</tt> </tt>
-<a name="L2011"></a><tt class="py-lineno">2011</tt> <tt class="py-line"><tt class="py-string"> # TODO: possibly the states have changed? we may need to figure out</tt> </tt>
-<a name="L2012"></a><tt class="py-lineno">2012</tt> <tt class="py-line"><tt class="py-string"> # what the acceptable states are</tt> </tt>
-<a name="L2013"></a><tt class="py-lineno">2013</tt> <tt class="py-line"><tt class="py-string"> elif len( intentState ) == len( ONOSIntents[ 0 ] ):</tt> </tt>
-<a name="L2014"></a><tt class="py-lineno">2014</tt> <tt class="py-line"><tt class="py-string"> sameIntents = main.TRUE</tt> </tt>
-<a name="L2015"></a><tt class="py-lineno">2015</tt> <tt class="py-line"><tt class="py-string"> try:</tt> </tt>
-<a name="L2016"></a><tt class="py-lineno">2016</tt> <tt class="py-line"><tt class="py-string"> before = json.loads( intentState )</tt> </tt>
-<a name="L2017"></a><tt class="py-lineno">2017</tt> <tt class="py-line"><tt class="py-string"> after = json.loads( ONOSIntents[ 0 ] )</tt> </tt>
-<a name="L2018"></a><tt class="py-lineno">2018</tt> <tt class="py-line"><tt class="py-string"> for intent in before:</tt> </tt>
-<a name="L2019"></a><tt class="py-lineno">2019</tt> <tt class="py-line"><tt class="py-string"> if intent not in after:</tt> </tt>
-<a name="L2020"></a><tt class="py-lineno">2020</tt> <tt class="py-line"><tt class="py-string"> sameIntents = main.FALSE</tt> </tt>
-<a name="L2021"></a><tt class="py-lineno">2021</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( "Intent is not currently in ONOS " +</tt> </tt>
-<a name="L2022"></a><tt class="py-lineno">2022</tt> <tt class="py-line"><tt class="py-string"> "(at least in the same form):" )</tt> </tt>
-<a name="L2023"></a><tt class="py-lineno">2023</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( json.dumps( intent ) )</tt> </tt>
-<a name="L2024"></a><tt class="py-lineno">2024</tt> <tt class="py-line"><tt class="py-string"> except ( ValueError, TypeError ):</tt> </tt>
-<a name="L2025"></a><tt class="py-lineno">2025</tt> <tt class="py-line"><tt class="py-string"> main.log.exception( "Exception printing intents" )</tt> </tt>
-<a name="L2026"></a><tt class="py-lineno">2026</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( repr( ONOSIntents[0] ) )</tt> </tt>
-<a name="L2027"></a><tt class="py-lineno">2027</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( repr( intentState ) )</tt> </tt>
-<a name="L2028"></a><tt class="py-lineno">2028</tt> <tt class="py-line"><tt class="py-string"> if sameIntents == main.FALSE:</tt> </tt>
-<a name="L2029"></a><tt class="py-lineno">2029</tt> <tt class="py-line"><tt class="py-string"> try:</tt> </tt>
-<a name="L2030"></a><tt class="py-lineno">2030</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( "ONOS intents before: " )</tt> </tt>
-<a name="L2031"></a><tt class="py-lineno">2031</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( json.dumps( json.loads( intentState ),</tt> </tt>
-<a name="L2032"></a><tt class="py-lineno">2032</tt> <tt class="py-line"><tt class="py-string"> sort_keys=True, indent=4,</tt> </tt>
-<a name="L2033"></a><tt class="py-lineno">2033</tt> <tt class="py-line"><tt class="py-string"> separators=( ',', ': ' ) ) )</tt> </tt>
-<a name="L2034"></a><tt class="py-lineno">2034</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( "Current ONOS intents: " )</tt> </tt>
-<a name="L2035"></a><tt class="py-lineno">2035</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( json.dumps( json.loads( ONOSIntents[ 0 ] ),</tt> </tt>
-<a name="L2036"></a><tt class="py-lineno">2036</tt> <tt class="py-line"><tt class="py-string"> sort_keys=True, indent=4,</tt> </tt>
-<a name="L2037"></a><tt class="py-lineno">2037</tt> <tt class="py-line"><tt class="py-string"> separators=( ',', ': ' ) ) )</tt> </tt>
-<a name="L2038"></a><tt class="py-lineno">2038</tt> <tt class="py-line"><tt class="py-string"> except ( ValueError, TypeError ):</tt> </tt>
-<a name="L2039"></a><tt class="py-lineno">2039</tt> <tt class="py-line"><tt class="py-string"> main.log.exception( "Exception printing intents" )</tt> </tt>
-<a name="L2040"></a><tt class="py-lineno">2040</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( repr( ONOSIntents[0] ) )</tt> </tt>
-<a name="L2041"></a><tt class="py-lineno">2041</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( repr( intentState ) )</tt> </tt>
-<a name="L2042"></a><tt class="py-lineno">2042</tt> <tt class="py-line"><tt class="py-string"> utilities.assert_equals(</tt> </tt>
-<a name="L2043"></a><tt class="py-lineno">2043</tt> <tt class="py-line"><tt class="py-string"> expect=main.TRUE,</tt> </tt>
-<a name="L2044"></a><tt class="py-lineno">2044</tt> <tt class="py-line"><tt class="py-string"> actual=sameIntents,</tt> </tt>
-<a name="L2045"></a><tt class="py-lineno">2045</tt> <tt class="py-line"><tt class="py-string"> onpass="Intents are consistent with before failure",</tt> </tt>
-<a name="L2046"></a><tt class="py-lineno">2046</tt> <tt class="py-line"><tt class="py-string"> onfail="The Intents changed during failure" )</tt> </tt>
-<a name="L2047"></a><tt class="py-lineno">2047</tt> <tt class="py-line"><tt class="py-string"> intentCheck = intentCheck and sameIntents</tt> </tt>
-<a name="L2048"></a><tt class="py-lineno">2048</tt> <tt class="py-line"><tt class="py-string"> """</tt> </tt>
-<a name="L2049"></a><tt class="py-lineno">2049</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-703" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-703', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the OF Table entries and compare to before "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2050"></a><tt class="py-lineno">2050</tt> <tt class="py-line"> <tt class="py-string">"component failure"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2051"></a><tt class="py-lineno">2051</tt> <tt class="py-line"> <tt class="py-name">FlowTables</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2052"></a><tt class="py-lineno">2052</tt> <tt class="py-line"> <tt class="py-name">flows2</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2053"></a><tt class="py-lineno">2053</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">28</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2054"></a><tt class="py-lineno">2054</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-704" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-704', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Checking flow table on s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2055"></a><tt class="py-lineno">2055</tt> <tt class="py-line"> <tt class="py-name">tmpFlows</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-705" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getFlowTable" class="py-name" href="#" onclick="return doclink('link-705', 'getFlowTable', 'link-487');">getFlowTable</a></tt><tt class="py-op">(</tt> <tt class="py-number">1.3</tt><tt class="py-op">,</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2056"></a><tt class="py-lineno">2056</tt> <tt class="py-line"> <tt class="py-name">flows2</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">tmpFlows</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2057"></a><tt class="py-lineno">2057</tt> <tt class="py-line"> <tt class="py-name">tempResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-706" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.flowComp()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#flowComp"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.flowComp" class="py-name" href="#" onclick="return doclink('link-706', 'flowComp', 'link-706');">flowComp</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2058"></a><tt class="py-lineno">2058</tt> <tt class="py-line"> <tt class="py-name">flow1</tt><tt class="py-op">=</tt><tt id="link-707" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-707', 'flows', 'link-409');">flows</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L2059"></a><tt class="py-lineno">2059</tt> <tt class="py-line"> <tt class="py-name">flow2</tt><tt class="py-op">=</tt><tt class="py-name">tmpFlows</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2060"></a><tt class="py-lineno">2060</tt> <tt class="py-line"> <tt class="py-name">FlowTables</tt> <tt class="py-op">=</tt> <tt class="py-name">FlowTables</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tempResult</tt> </tt>
-<a name="L2061"></a><tt class="py-lineno">2061</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">FlowTables</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2062"></a><tt class="py-lineno">2062</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-708" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-708', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Differences in flow table for switch: s"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2063"></a><tt class="py-lineno">2063</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2064"></a><tt class="py-lineno">2064</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2065"></a><tt class="py-lineno">2065</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2066"></a><tt class="py-lineno">2066</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">FlowTables</tt><tt class="py-op">,</tt> </tt>
-<a name="L2067"></a><tt class="py-lineno">2067</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No changes were found in the flow tables"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2068"></a><tt class="py-lineno">2068</tt> <tt class="py-line"> <tt id="link-709" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-709', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Changes were found in the flow tables"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2069"></a><tt class="py-lineno">2069</tt> <tt class="py-line"> </tt>
-<a name="L2070"></a><tt class="py-lineno">2070</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-710" class="py-name" targets="Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLongKill()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingLongKill"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLongKill" class="py-name" href="#" onclick="return doclink('link-710', 'pingLongKill', 'link-710');">pingLongKill</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2071"></a><tt class="py-lineno">2071</tt> <tt class="py-line"> <tt class="py-string">'''</tt> </tt>
-<a name="L2072"></a><tt class="py-lineno">2072</tt> <tt class="py-line"><tt class="py-string"> # main.step( "Check the continuous pings to ensure that no packets " +</tt> </tt>
-<a name="L2073"></a><tt class="py-lineno">2073</tt> <tt class="py-line"><tt class="py-string"> # "were dropped during component failure" )</tt> </tt>
-<a name="L2074"></a><tt class="py-lineno">2074</tt> <tt class="py-line"><tt class="py-string"> main.Mininet2.pingKill( main.params[ 'TESTONUSER' ],</tt> </tt>
-<a name="L2075"></a><tt class="py-lineno">2075</tt> <tt class="py-line"><tt class="py-string"> main.params[ 'TESTONIP' ] )</tt> </tt>
-<a name="L2076"></a><tt class="py-lineno">2076</tt> <tt class="py-line"><tt class="py-string"> LossInPings = main.FALSE</tt> </tt>
-<a name="L2077"></a><tt class="py-lineno">2077</tt> <tt class="py-line"><tt class="py-string"> # NOTE: checkForLoss returns main.FALSE with 0% packet loss</tt> </tt>
-<a name="L2078"></a><tt class="py-lineno">2078</tt> <tt class="py-line"><tt class="py-string"> for i in range( 8, 18 ):</tt> </tt>
-<a name="L2079"></a><tt class="py-lineno">2079</tt> <tt class="py-line"><tt class="py-string"> main.log.info(</tt> </tt>
-<a name="L2080"></a><tt class="py-lineno">2080</tt> <tt class="py-line"><tt class="py-string"> "Checking for a loss in pings along flow from s" +</tt> </tt>
-<a name="L2081"></a><tt class="py-lineno">2081</tt> <tt class="py-line"><tt class="py-string"> str( i ) )</tt> </tt>
-<a name="L2082"></a><tt class="py-lineno">2082</tt> <tt class="py-line"><tt class="py-string"> LossInPings = main.Mininet2.checkForLoss(</tt> </tt>
-<a name="L2083"></a><tt class="py-lineno">2083</tt> <tt class="py-line"><tt class="py-string"> "/tmp/ping.h" +</tt> </tt>
-<a name="L2084"></a><tt class="py-lineno">2084</tt> <tt class="py-line"><tt class="py-string"> str( i ) ) or LossInPings</tt> </tt>
-<a name="L2085"></a><tt class="py-lineno">2085</tt> <tt class="py-line"><tt class="py-string"> if LossInPings == main.TRUE:</tt> </tt>
-<a name="L2086"></a><tt class="py-lineno">2086</tt> <tt class="py-line"><tt class="py-string"> main.log.info( "Loss in ping detected" )</tt> </tt>
-<a name="L2087"></a><tt class="py-lineno">2087</tt> <tt class="py-line"><tt class="py-string"> elif LossInPings == main.ERROR:</tt> </tt>
-<a name="L2088"></a><tt class="py-lineno">2088</tt> <tt class="py-line"><tt class="py-string"> main.log.info( "There are multiple mininet process running" )</tt> </tt>
-<a name="L2089"></a><tt class="py-lineno">2089</tt> <tt class="py-line"><tt class="py-string"> elif LossInPings == main.FALSE:</tt> </tt>
-<a name="L2090"></a><tt class="py-lineno">2090</tt> <tt class="py-line"><tt class="py-string"> main.log.info( "No Loss in the pings" )</tt> </tt>
-<a name="L2091"></a><tt class="py-lineno">2091</tt> <tt class="py-line"><tt class="py-string"> main.log.info( "No loss of dataplane connectivity" )</tt> </tt>
-<a name="L2092"></a><tt class="py-lineno">2092</tt> <tt class="py-line"><tt class="py-string"> # utilities.assert_equals(</tt> </tt>
-<a name="L2093"></a><tt class="py-lineno">2093</tt> <tt class="py-line"><tt class="py-string"> # expect=main.FALSE,</tt> </tt>
-<a name="L2094"></a><tt class="py-lineno">2094</tt> <tt class="py-line"><tt class="py-string"> # actual=LossInPings,</tt> </tt>
-<a name="L2095"></a><tt class="py-lineno">2095</tt> <tt class="py-line"><tt class="py-string"> # onpass="No Loss of connectivity",</tt> </tt>
-<a name="L2096"></a><tt class="py-lineno">2096</tt> <tt class="py-line"><tt class="py-string"> # onfail="Loss of dataplane connectivity detected" )</tt> </tt>
-<a name="L2097"></a><tt class="py-lineno">2097</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L2098"></a><tt class="py-lineno">2098</tt> <tt class="py-line"><tt class="py-string"> # NOTE: Since intents are not persisted with IntnentStore,</tt> </tt>
-<a name="L2099"></a><tt class="py-lineno">2099</tt> <tt class="py-line"><tt class="py-string"> # we expect loss in dataplane connectivity</tt> </tt>
-<a name="L2100"></a><tt class="py-lineno">2100</tt> <tt class="py-line"><tt class="py-string"> LossInPings = main.FALSE</tt> </tt>
-<a name="L2101"></a><tt class="py-lineno">2101</tt> <tt class="py-line"><tt class="py-string"> '''</tt> </tt>
-<a name="L2102"></a><tt class="py-lineno">2102</tt> <tt class="py-line"> </tt>
-<a name="L2103"></a><tt class="py-lineno">2103</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-711" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-711', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Leadership Election is still functional"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2104"></a><tt class="py-lineno">2104</tt> <tt class="py-line"> <tt class="py-comment"># Test of LeadershipElection</tt> </tt>
-<a name="L2105"></a><tt class="py-lineno">2105</tt> <tt class="py-line"> <tt class="py-name">leaderList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2106"></a><tt class="py-lineno">2106</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2107"></a><tt class="py-lineno">2107</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-712" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-712', 'cli', 'link-227');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2108"></a><tt class="py-lineno">2108</tt> <tt class="py-line"> <tt class="py-name">leaderN</tt> <tt class="py-op">=</tt> <tt id="link-713" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-713', 'cli', 'link-227');">cli</a></tt><tt class="py-op">.</tt><tt id="link-714" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestLeader"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-714', 'electionTestLeader', 'link-714');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2109"></a><tt class="py-lineno">2109</tt> <tt class="py-line"> <tt class="py-name">leaderList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2110"></a><tt class="py-lineno">2110</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2111"></a><tt class="py-lineno">2111</tt> <tt class="py-line"> <tt class="py-comment"># error in response</tt> </tt>
-<a name="L2112"></a><tt class="py-lineno">2112</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-715" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-715', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-716" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-716', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Something is wrong with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2113"></a><tt class="py-lineno">2113</tt> <tt class="py-line"> <tt class="py-string">"electionTestLeader function, check the"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2114"></a><tt class="py-lineno">2114</tt> <tt class="py-line"> <tt class="py-string">" error logs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2115"></a><tt class="py-lineno">2115</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2116"></a><tt class="py-lineno">2116</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leaderN</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L2117"></a><tt class="py-lineno">2117</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-717" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-717', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-718" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-718', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt id="link-719" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-719', 'cli', 'link-227');">cli</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2118"></a><tt class="py-lineno">2118</tt> <tt class="py-line"> <tt class="py-string">" shows no leader for the election-app."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2119"></a><tt class="py-lineno">2119</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2120"></a><tt class="py-lineno">2120</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">leaderList</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2121"></a><tt class="py-lineno">2121</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2122"></a><tt class="py-lineno">2122</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-720" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-720', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-721" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-721', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2123"></a><tt class="py-lineno">2123</tt> <tt class="py-line"> <tt class="py-string">"Inconsistent view of leader for the election test app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2124"></a><tt class="py-lineno">2124</tt> <tt class="py-line"> <tt class="py-comment"># TODO: print the list</tt> </tt>
-<a name="L2125"></a><tt class="py-lineno">2125</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2126"></a><tt class="py-lineno">2126</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2127"></a><tt class="py-lineno">2127</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">leaderResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2128"></a><tt class="py-lineno">2128</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Leadership election passed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2129"></a><tt class="py-lineno">2129</tt> <tt class="py-line"> <tt id="link-722" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-722', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something went wrong with Leadership election"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2130"></a><tt class="py-lineno">2130</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE8"></a><div id="HAclusterRestart.CASE8-def"><a name="L2131"></a><tt class="py-lineno">2131</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE8-toggle" onclick="return toggle('HAclusterRestart.CASE8');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE8">CASE8</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE8-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE8-expanded"><a name="L2132"></a><tt class="py-lineno">2132</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2133"></a><tt class="py-lineno">2133</tt> <tt class="py-line"><tt class="py-docstring"> Compare topo</tt> </tt>
-<a name="L2134"></a><tt class="py-lineno">2134</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2135"></a><tt class="py-lineno">2135</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L2136"></a><tt class="py-lineno">2136</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2137"></a><tt class="py-lineno">2137</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2138"></a><tt class="py-lineno">2138</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2139"></a><tt class="py-lineno">2139</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2140"></a><tt class="py-lineno">2140</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2141"></a><tt class="py-lineno">2141</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-723" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-723', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2142"></a><tt class="py-lineno">2142</tt> <tt class="py-line"> </tt>
-<a name="L2143"></a><tt class="py-lineno">2143</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-724" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-724', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Compare ONOS Topology view to Mininet topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2144"></a><tt class="py-lineno">2144</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Compare topology objects between Mininet"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2145"></a><tt class="py-lineno">2145</tt> <tt class="py-line"> <tt class="py-string">" and ONOS"</tt> </tt>
-<a name="L2146"></a><tt class="py-lineno">2146</tt> <tt class="py-line"> </tt>
-<a name="L2147"></a><tt class="py-lineno">2147</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-725" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-725', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Comparing ONOS topology to MN"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2148"></a><tt class="py-lineno">2148</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2149"></a><tt class="py-lineno">2149</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2150"></a><tt class="py-lineno">2150</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2151"></a><tt class="py-lineno">2151</tt> <tt class="py-line"> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2152"></a><tt class="py-lineno">2152</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2153"></a><tt class="py-lineno">2153</tt> <tt class="py-line"> <tt class="py-name">elapsed</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2154"></a><tt class="py-lineno">2154</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2155"></a><tt class="py-lineno">2155</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-726" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-726', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Collecting topology information from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2156"></a><tt class="py-lineno">2156</tt> <tt class="py-line"> <tt class="py-name">startTime</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2157"></a><tt class="py-lineno">2157</tt> <tt class="py-line"> <tt class="py-comment"># Give time for Gossip to work</tt> </tt>
-<a name="L2158"></a><tt class="py-lineno">2158</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">topoResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> <tt class="py-keyword">and</tt> <tt class="py-name">elapsed</tt> <tt class="py-op"><</tt> <tt class="py-number">60</tt><tt class="py-op">:</tt> </tt>
-<a name="L2159"></a><tt class="py-lineno">2159</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2160"></a><tt class="py-lineno">2160</tt> <tt class="py-line"> <tt class="py-name">cliStart</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2161"></a><tt class="py-lineno">2161</tt> <tt class="py-line"> <tt id="link-727" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-727', 'devices', 'link-114');">devices</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2162"></a><tt class="py-lineno">2162</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2163"></a><tt class="py-lineno">2163</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2164"></a><tt class="py-lineno">2164</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-728" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-728', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-729" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-729', 'devices', 'link-114');">devices</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2165"></a><tt class="py-lineno">2165</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"devices-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2166"></a><tt class="py-lineno">2166</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2167"></a><tt class="py-lineno">2167</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2168"></a><tt class="py-lineno">2168</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2169"></a><tt class="py-lineno">2169</tt> <tt class="py-line"> </tt>
-<a name="L2170"></a><tt class="py-lineno">2170</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2171"></a><tt class="py-lineno">2171</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2172"></a><tt class="py-lineno">2172</tt> <tt class="py-line"> <tt id="link-730" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-730', 'devices', 'link-114');">devices</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2173"></a><tt class="py-lineno">2173</tt> <tt class="py-line"> <tt id="link-731" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-731', 'hosts', 'link-163');">hosts</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2174"></a><tt class="py-lineno">2174</tt> <tt class="py-line"> <tt class="py-name">ipResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2175"></a><tt class="py-lineno">2175</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2176"></a><tt class="py-lineno">2176</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2177"></a><tt class="py-lineno">2177</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-732" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-732', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-733" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-733', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2178"></a><tt class="py-lineno">2178</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"hosts-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2179"></a><tt class="py-lineno">2179</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2180"></a><tt class="py-lineno">2180</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2181"></a><tt class="py-lineno">2181</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2182"></a><tt class="py-lineno">2182</tt> <tt class="py-line"> </tt>
-<a name="L2183"></a><tt class="py-lineno">2183</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2184"></a><tt class="py-lineno">2184</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2185"></a><tt class="py-lineno">2185</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2186"></a><tt class="py-lineno">2186</tt> <tt class="py-line"> <tt id="link-734" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-734', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2187"></a><tt class="py-lineno">2187</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2188"></a><tt class="py-lineno">2188</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-735" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-735', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing hosts results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2189"></a><tt class="py-lineno">2189</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-736" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-736', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-737" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-737', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2190"></a><tt class="py-lineno">2190</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-738" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-738', 'controller', 'link-525');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-739" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-739', 'hosts', 'link-163');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2191"></a><tt class="py-lineno">2191</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-740" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-740', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2192"></a><tt class="py-lineno">2192</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt id="link-741" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-741', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-742" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-742', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2193"></a><tt class="py-lineno">2193</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">host</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'ipAddresses'</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2194"></a><tt class="py-lineno">2194</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-743" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-743', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-744" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-744', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2195"></a><tt class="py-lineno">2195</tt> <tt class="py-line"> <tt class="py-string">"DEBUG:Error with host ipAddresses on controller"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2196"></a><tt class="py-lineno">2196</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2197"></a><tt class="py-lineno">2197</tt> <tt class="py-line"> <tt class="py-name">ipResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2198"></a><tt class="py-lineno">2198</tt> <tt class="py-line"> <tt id="link-745" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-745', 'ports', 'link-512');">ports</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2199"></a><tt class="py-lineno">2199</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2200"></a><tt class="py-lineno">2200</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2201"></a><tt class="py-lineno">2201</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-746" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-746', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-747" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-747', 'ports', 'link-512');">ports</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2202"></a><tt class="py-lineno">2202</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"ports-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2203"></a><tt class="py-lineno">2203</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2204"></a><tt class="py-lineno">2204</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2205"></a><tt class="py-lineno">2205</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2206"></a><tt class="py-lineno">2206</tt> <tt class="py-line"> </tt>
-<a name="L2207"></a><tt class="py-lineno">2207</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2208"></a><tt class="py-lineno">2208</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2209"></a><tt class="py-lineno">2209</tt> <tt class="py-line"> <tt id="link-748" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-748', 'ports', 'link-512');">ports</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2210"></a><tt class="py-lineno">2210</tt> <tt class="py-line"> <tt id="link-749" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-749', 'links', 'link-516');">links</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2211"></a><tt class="py-lineno">2211</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2212"></a><tt class="py-lineno">2212</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2213"></a><tt class="py-lineno">2213</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-750" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-750', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-751" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-751', 'links', 'link-516');">links</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2214"></a><tt class="py-lineno">2214</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"links-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2215"></a><tt class="py-lineno">2215</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2216"></a><tt class="py-lineno">2216</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2217"></a><tt class="py-lineno">2217</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2218"></a><tt class="py-lineno">2218</tt> <tt class="py-line"> </tt>
-<a name="L2219"></a><tt class="py-lineno">2219</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2220"></a><tt class="py-lineno">2220</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2221"></a><tt class="py-lineno">2221</tt> <tt class="py-line"> <tt id="link-752" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-752', 'links', 'link-516');">links</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2222"></a><tt class="py-lineno">2222</tt> <tt class="py-line"> <tt id="link-753" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-753', 'clusters', 'link-520');">clusters</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2223"></a><tt class="py-lineno">2223</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2224"></a><tt class="py-lineno">2224</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2225"></a><tt class="py-lineno">2225</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-754" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-754', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-755" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-755', 'clusters', 'link-520');">clusters</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2226"></a><tt class="py-lineno">2226</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"clusters-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2227"></a><tt class="py-lineno">2227</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2228"></a><tt class="py-lineno">2228</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2229"></a><tt class="py-lineno">2229</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2230"></a><tt class="py-lineno">2230</tt> <tt class="py-line"> </tt>
-<a name="L2231"></a><tt class="py-lineno">2231</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2232"></a><tt class="py-lineno">2232</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2233"></a><tt class="py-lineno">2233</tt> <tt class="py-line"> <tt id="link-756" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-756', 'clusters', 'link-520');">clusters</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2234"></a><tt class="py-lineno">2234</tt> <tt class="py-line"> </tt>
-<a name="L2235"></a><tt class="py-lineno">2235</tt> <tt class="py-line"> <tt class="py-name">elapsed</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">startTime</tt> </tt>
-<a name="L2236"></a><tt class="py-lineno">2236</tt> <tt class="py-line"> <tt class="py-name">cliTime</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">cliStart</tt> </tt>
-<a name="L2237"></a><tt class="py-lineno">2237</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Elapsed time: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">elapsed</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2238"></a><tt class="py-lineno">2238</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"CLI time: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">cliTime</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2239"></a><tt class="py-lineno">2239</tt> <tt class="py-line"> </tt>
-<a name="L2240"></a><tt class="py-lineno">2240</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-757" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitches" class="py-name" href="#" onclick="return doclink('link-757', 'getSwitches', 'link-576');">getSwitches</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2241"></a><tt class="py-lineno">2241</tt> <tt class="py-line"> <tt class="py-name">mnLinks</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-758" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getLinks" class="py-name" href="#" onclick="return doclink('link-758', 'getLinks', 'link-577');">getLinks</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2242"></a><tt class="py-lineno">2242</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-759" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts" class="py-name" href="#" onclick="return doclink('link-759', 'getHosts', 'link-578');">getHosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2243"></a><tt class="py-lineno">2243</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-760" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-760', 'controller', 'link-525');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2244"></a><tt class="py-lineno">2244</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-761" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-761', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2245"></a><tt class="py-lineno">2245</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-762" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-762', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-763" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-763', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt id="link-764" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-764', 'ports', 'link-512');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-765" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-765', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L2246"></a><tt class="py-lineno">2246</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-766" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-766', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-767" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-767', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L2247"></a><tt class="py-lineno">2247</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-768" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-768', 'ports', 'link-512');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-769" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-769', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2248"></a><tt class="py-lineno">2248</tt> <tt class="py-line"> </tt>
-<a name="L2249"></a><tt class="py-lineno">2249</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-770" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareSwitches" class="py-name" href="#" onclick="return doclink('link-770', 'compareSwitches', 'link-589');">compareSwitches</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2250"></a><tt class="py-lineno">2250</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> </tt>
-<a name="L2251"></a><tt class="py-lineno">2251</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-771" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-771', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-772" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-772', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2252"></a><tt class="py-lineno">2252</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-773" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-773', 'ports', 'link-512');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-774" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-774', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2253"></a><tt class="py-lineno">2253</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2254"></a><tt class="py-lineno">2254</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2255"></a><tt class="py-lineno">2255</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2256"></a><tt class="py-lineno">2256</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentDevicesResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2257"></a><tt class="py-lineno">2257</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2258"></a><tt class="py-lineno">2258</tt> <tt class="py-line"> <tt class="py-string">" Switches view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2259"></a><tt class="py-lineno">2259</tt> <tt class="py-line"> <tt id="link-775" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-775', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2260"></a><tt class="py-lineno">2260</tt> <tt class="py-line"> <tt class="py-string">" Switches view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2261"></a><tt class="py-lineno">2261</tt> <tt class="py-line"> </tt>
-<a name="L2262"></a><tt class="py-lineno">2262</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-776" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-776', 'links', 'link-516');">links</a></tt><tt class="py-op">[</tt> <tt id="link-777" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-777', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-778" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-778', 'links', 'link-516');">links</a></tt><tt class="py-op">[</tt> <tt id="link-779" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-779', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2263"></a><tt class="py-lineno">2263</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-780" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareLinks" class="py-name" href="#" onclick="return doclink('link-780', 'compareLinks', 'link-599');">compareLinks</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2264"></a><tt class="py-lineno">2264</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> <tt class="py-name">mnLinks</tt><tt class="py-op">,</tt> </tt>
-<a name="L2265"></a><tt class="py-lineno">2265</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-781" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-781', 'links', 'link-516');">links</a></tt><tt class="py-op">[</tt> <tt id="link-782" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-782', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2266"></a><tt class="py-lineno">2266</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2267"></a><tt class="py-lineno">2267</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2268"></a><tt class="py-lineno">2268</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2269"></a><tt class="py-lineno">2269</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentLinksResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2270"></a><tt class="py-lineno">2270</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2271"></a><tt class="py-lineno">2271</tt> <tt class="py-line"> <tt class="py-string">" links view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2272"></a><tt class="py-lineno">2272</tt> <tt class="py-line"> <tt id="link-783" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-783', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2273"></a><tt class="py-lineno">2273</tt> <tt class="py-line"> <tt class="py-string">" links view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2274"></a><tt class="py-lineno">2274</tt> <tt class="py-line"> </tt>
-<a name="L2275"></a><tt class="py-lineno">2275</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-784" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-784', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-785" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-785', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-786" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-786', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-787" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-787', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2276"></a><tt class="py-lineno">2276</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-788" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareHosts" class="py-name" href="#" onclick="return doclink('link-788', 'compareHosts', 'link-607');">compareHosts</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2277"></a><tt class="py-lineno">2277</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt><tt class="py-op">,</tt> </tt>
-<a name="L2278"></a><tt class="py-lineno">2278</tt> <tt class="py-line"> <tt id="link-789" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-789', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-790" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-790', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2279"></a><tt class="py-lineno">2279</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2280"></a><tt class="py-lineno">2280</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2281"></a><tt class="py-lineno">2281</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2282"></a><tt class="py-lineno">2282</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentHostsResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2283"></a><tt class="py-lineno">2283</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2284"></a><tt class="py-lineno">2284</tt> <tt class="py-line"> <tt class="py-string">" hosts exist in Mininet"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2285"></a><tt class="py-lineno">2285</tt> <tt class="py-line"> <tt id="link-791" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-791', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2286"></a><tt class="py-lineno">2286</tt> <tt class="py-line"> <tt class="py-string">" hosts don't match Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2287"></a><tt class="py-lineno">2287</tt> <tt class="py-line"> <tt class="py-comment"># CHECKING HOST ATTACHMENT POINTS</tt> </tt>
-<a name="L2288"></a><tt class="py-lineno">2288</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2289"></a><tt class="py-lineno">2289</tt> <tt class="py-line"> <tt class="py-name">noHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2290"></a><tt class="py-lineno">2290</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: topo-HA/obelisk specific mappings:</tt> </tt>
-<a name="L2291"></a><tt class="py-lineno">2291</tt> <tt class="py-line"> <tt class="py-comment"># key is mac and value is dpid</tt> </tt>
-<a name="L2292"></a><tt class="py-lineno">2292</tt> <tt class="py-line"> <tt class="py-name">mappings</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L2293"></a><tt class="py-lineno">2293</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># hosts 1 through 28</tt> </tt>
-<a name="L2294"></a><tt class="py-lineno">2294</tt> <tt class="py-line"> <tt class="py-comment"># set up correct variables:</tt> </tt>
-<a name="L2295"></a><tt class="py-lineno">2295</tt> <tt class="py-line"> <tt class="py-name">macId</tt> <tt class="py-op">=</tt> <tt class="py-string">"00:"</tt> <tt class="py-op">*</tt> <tt class="py-number">5</tt> <tt class="py-op">+</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"0x"</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L2296"></a><tt class="py-lineno">2296</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2297"></a><tt class="py-lineno">2297</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"1000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2298"></a><tt class="py-lineno">2298</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L2299"></a><tt class="py-lineno">2299</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"2000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2300"></a><tt class="py-lineno">2300</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L2301"></a><tt class="py-lineno">2301</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"3000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2302"></a><tt class="py-lineno">2302</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L2303"></a><tt class="py-lineno">2303</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"3004"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2304"></a><tt class="py-lineno">2304</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">5</tt><tt class="py-op">:</tt> </tt>
-<a name="L2305"></a><tt class="py-lineno">2305</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"5000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2306"></a><tt class="py-lineno">2306</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">6</tt><tt class="py-op">:</tt> </tt>
-<a name="L2307"></a><tt class="py-lineno">2307</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"6000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2308"></a><tt class="py-lineno">2308</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">7</tt><tt class="py-op">:</tt> </tt>
-<a name="L2309"></a><tt class="py-lineno">2309</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"6007"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2310"></a><tt class="py-lineno">2310</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">8</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-number">17</tt><tt class="py-op">:</tt> </tt>
-<a name="L2311"></a><tt class="py-lineno">2311</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'3'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2312"></a><tt class="py-lineno">2312</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">dpid</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2313"></a><tt class="py-lineno">2313</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">18</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-number">27</tt><tt class="py-op">:</tt> </tt>
-<a name="L2314"></a><tt class="py-lineno">2314</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'6'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2315"></a><tt class="py-lineno">2315</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">dpid</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2316"></a><tt class="py-lineno">2316</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">28</tt><tt class="py-op">:</tt> </tt>
-<a name="L2317"></a><tt class="py-lineno">2317</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"2800"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2318"></a><tt class="py-lineno">2318</tt> <tt class="py-line"> <tt class="py-name">mappings</tt><tt class="py-op">[</tt> <tt class="py-name">macId</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceId</tt> </tt>
-<a name="L2319"></a><tt class="py-lineno">2319</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-792" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-792', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-793" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-793', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-794" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-794', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-795" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-795', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2320"></a><tt class="py-lineno">2320</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-796" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-796', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-797" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-797', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2321"></a><tt class="py-lineno">2321</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-798" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-798', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"There are no hosts discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2322"></a><tt class="py-lineno">2322</tt> <tt class="py-line"> <tt class="py-name">noHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2323"></a><tt class="py-lineno">2323</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2324"></a><tt class="py-lineno">2324</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt id="link-799" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-799', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-800" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-800', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2325"></a><tt class="py-lineno">2325</tt> <tt class="py-line"> <tt class="py-name">mac</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2326"></a><tt class="py-lineno">2326</tt> <tt class="py-line"> <tt id="link-801" class="py-name" targets="Variable TestON.bin.cli.location=TestON.bin.cli-module.html#location,Variable TestON.core.teston.location=TestON.core.teston-module.html#location"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-801', 'location', 'link-801');">location</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2327"></a><tt class="py-lineno">2327</tt> <tt class="py-line"> <tt class="py-name">device</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2328"></a><tt class="py-lineno">2328</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2329"></a><tt class="py-lineno">2329</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2330"></a><tt class="py-lineno">2330</tt> <tt class="py-line"> <tt class="py-name">mac</tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'mac'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2331"></a><tt class="py-lineno">2331</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">mac</tt><tt class="py-op">,</tt> <tt class="py-string">"mac field could not be found for this host object"</tt> </tt>
-<a name="L2332"></a><tt class="py-lineno">2332</tt> <tt class="py-line"> </tt>
-<a name="L2333"></a><tt class="py-lineno">2333</tt> <tt class="py-line"> <tt id="link-802" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-802', 'location', 'link-801');">location</a></tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'location'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2334"></a><tt class="py-lineno">2334</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt id="link-803" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-803', 'location', 'link-801');">location</a></tt><tt class="py-op">,</tt> <tt class="py-string">"location field could not be found for this host object"</tt> </tt>
-<a name="L2335"></a><tt class="py-lineno">2335</tt> <tt class="py-line"> </tt>
-<a name="L2336"></a><tt class="py-lineno">2336</tt> <tt class="py-line"> <tt class="py-comment"># Trim the protocol identifier off deviceId</tt> </tt>
-<a name="L2337"></a><tt class="py-lineno">2337</tt> <tt class="py-line"> <tt class="py-name">device</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-804" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-804', 'location', 'link-801');">location</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'elementId'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">':'</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L2338"></a><tt class="py-lineno">2338</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">device</tt><tt class="py-op">,</tt> <tt class="py-string">"elementId field could not be found for this host location object"</tt> </tt>
-<a name="L2339"></a><tt class="py-lineno">2339</tt> <tt class="py-line"> </tt>
-<a name="L2340"></a><tt class="py-lineno">2340</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt id="link-805" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-805', 'location', 'link-801');">location</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'port'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2341"></a><tt class="py-lineno">2341</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-string">"port field could not be found for this host location object"</tt> </tt>
-<a name="L2342"></a><tt class="py-lineno">2342</tt> <tt class="py-line"> </tt>
-<a name="L2343"></a><tt class="py-lineno">2343</tt> <tt class="py-line"> <tt class="py-comment"># Now check if this matches where they should be</tt> </tt>
-<a name="L2344"></a><tt class="py-lineno">2344</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">mac</tt> <tt class="py-keyword">and</tt> <tt class="py-name">device</tt> <tt class="py-keyword">and</tt> <tt class="py-name">port</tt><tt class="py-op">:</tt> </tt>
-<a name="L2345"></a><tt class="py-lineno">2345</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-string">"1"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2346"></a><tt class="py-lineno">2346</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-806" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-806', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-807" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-807', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"The attachment port is incorrect for "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2347"></a><tt class="py-lineno">2347</tt> <tt class="py-line"> <tt class="py-string">"host "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2348"></a><tt class="py-lineno">2348</tt> <tt class="py-line"> <tt class="py-string">". Expected: 1 Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2349"></a><tt class="py-lineno">2349</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2350"></a><tt class="py-lineno">2350</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">device</tt> <tt class="py-op">!=</tt> <tt class="py-name">mappings</tt><tt class="py-op">[</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2351"></a><tt class="py-lineno">2351</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-808" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-808', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-809" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-809', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"The attachment device is incorrect for "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2352"></a><tt class="py-lineno">2352</tt> <tt class="py-line"> <tt class="py-string">"host "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2353"></a><tt class="py-lineno">2353</tt> <tt class="py-line"> <tt class="py-string">". Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">mappings</tt><tt class="py-op">[</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2354"></a><tt class="py-lineno">2354</tt> <tt class="py-line"> <tt class="py-string">" Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">device</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2355"></a><tt class="py-lineno">2355</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2356"></a><tt class="py-lineno">2356</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2357"></a><tt class="py-lineno">2357</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2358"></a><tt class="py-lineno">2358</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2359"></a><tt class="py-lineno">2359</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-810" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-810', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Json object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2360"></a><tt class="py-lineno">2360</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-811" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-811', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-812" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-812', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2361"></a><tt class="py-lineno">2361</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2362"></a><tt class="py-lineno">2362</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2363"></a><tt class="py-lineno">2363</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-813" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-813', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-814" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-814', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"No hosts json output or \"Error\""</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2364"></a><tt class="py-lineno">2364</tt> <tt class="py-line"> <tt class="py-string">" in output. hosts = "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2365"></a><tt class="py-lineno">2365</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-815" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-815', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-816" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-816', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2366"></a><tt class="py-lineno">2366</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">noHosts</tt> <tt class="py-keyword">is</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L2367"></a><tt class="py-lineno">2367</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Find a way to know if there should be hosts in a</tt> </tt>
-<a name="L2368"></a><tt class="py-lineno">2368</tt> <tt class="py-line"> <tt class="py-comment"># given point of the test</tt> </tt>
-<a name="L2369"></a><tt class="py-lineno">2369</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2370"></a><tt class="py-lineno">2370</tt> <tt class="py-line"> </tt>
-<a name="L2371"></a><tt class="py-lineno">2371</tt> <tt class="py-line"> <tt class="py-comment"># END CHECKING HOST ATTACHMENT POINTS</tt> </tt>
-<a name="L2372"></a><tt class="py-lineno">2372</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">devicesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentDevicesResult</tt> </tt>
-<a name="L2373"></a><tt class="py-lineno">2373</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">linksResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentLinksResult</tt> </tt>
-<a name="L2374"></a><tt class="py-lineno">2374</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentHostsResult</tt> </tt>
-<a name="L2375"></a><tt class="py-lineno">2375</tt> <tt class="py-line"> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L2376"></a><tt class="py-lineno">2376</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> </tt>
-<a name="L2377"></a><tt class="py-lineno">2377</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">devicesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">linksResults</tt> </tt>
-<a name="L2378"></a><tt class="py-lineno">2378</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ipResult</tt> <tt class="py-keyword">and</tt> </tt>
-<a name="L2379"></a><tt class="py-lineno">2379</tt> <tt class="py-line"> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2380"></a><tt class="py-lineno">2380</tt> <tt class="py-line"> </tt>
-<a name="L2381"></a><tt class="py-lineno">2381</tt> <tt class="py-line"> <tt class="py-comment"># Compare json objects for hosts and dataplane clusters</tt> </tt>
-<a name="L2382"></a><tt class="py-lineno">2382</tt> <tt class="py-line"> </tt>
-<a name="L2383"></a><tt class="py-lineno">2383</tt> <tt class="py-line"> <tt class="py-comment"># hosts</tt> </tt>
-<a name="L2384"></a><tt class="py-lineno">2384</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-817" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-817', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Hosts view is consistent across all ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2385"></a><tt class="py-lineno">2385</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2386"></a><tt class="py-lineno">2386</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-818" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-818', 'controller', 'link-525');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-819" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-819', 'hosts', 'link-163');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2387"></a><tt class="py-lineno">2387</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-820" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-820', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2388"></a><tt class="py-lineno">2388</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-821" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-821', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-822" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-822', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2389"></a><tt class="py-lineno">2389</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-823" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-823', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-824" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-824', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt id="link-825" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-825', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2390"></a><tt class="py-lineno">2390</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L2391"></a><tt class="py-lineno">2391</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># hosts not consistent</tt> </tt>
-<a name="L2392"></a><tt class="py-lineno">2392</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-826" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-826', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-827" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-827', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"hosts from ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2393"></a><tt class="py-lineno">2393</tt> <tt class="py-line"> <tt class="py-string">" is inconsistent with ONOS1"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2394"></a><tt class="py-lineno">2394</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-828" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-828', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-829" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-829', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-830" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-830', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2395"></a><tt class="py-lineno">2395</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2396"></a><tt class="py-lineno">2396</tt> <tt class="py-line"> </tt>
-<a name="L2397"></a><tt class="py-lineno">2397</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2398"></a><tt class="py-lineno">2398</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-831" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-831', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-832" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-832', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS hosts from ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2399"></a><tt class="py-lineno">2399</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2400"></a><tt class="py-lineno">2400</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2401"></a><tt class="py-lineno">2401</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-833" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-833', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2402"></a><tt class="py-lineno">2402</tt> <tt class="py-line"> <tt class="py-string">" hosts response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2403"></a><tt class="py-lineno">2403</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-834" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-834', 'hosts', 'link-163');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-835" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-835', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2404"></a><tt class="py-lineno">2404</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2405"></a><tt class="py-lineno">2405</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2406"></a><tt class="py-lineno">2406</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentHostsResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2407"></a><tt class="py-lineno">2407</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Hosts view is consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2408"></a><tt class="py-lineno">2408</tt> <tt class="py-line"> <tt id="link-836" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-836', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2409"></a><tt class="py-lineno">2409</tt> <tt class="py-line"> </tt>
-<a name="L2410"></a><tt class="py-lineno">2410</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-837" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-837', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Hosts information is correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2411"></a><tt class="py-lineno">2411</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ipResult</tt> </tt>
-<a name="L2412"></a><tt class="py-lineno">2412</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2413"></a><tt class="py-lineno">2413</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2414"></a><tt class="py-lineno">2414</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">hostsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2415"></a><tt class="py-lineno">2415</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Host information is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2416"></a><tt class="py-lineno">2416</tt> <tt class="py-line"> <tt id="link-838" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-838', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Host information is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2417"></a><tt class="py-lineno">2417</tt> <tt class="py-line"> </tt>
-<a name="L2418"></a><tt class="py-lineno">2418</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-839" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-839', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Host attachment points to the network"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2419"></a><tt class="py-lineno">2419</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2420"></a><tt class="py-lineno">2420</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2421"></a><tt class="py-lineno">2421</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">hostAttachmentResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2422"></a><tt class="py-lineno">2422</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Hosts are correctly attached to the network"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2423"></a><tt class="py-lineno">2423</tt> <tt class="py-line"> <tt id="link-840" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-840', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS did not correctly attach hosts to the network"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2424"></a><tt class="py-lineno">2424</tt> <tt class="py-line"> </tt>
-<a name="L2425"></a><tt class="py-lineno">2425</tt> <tt class="py-line"> <tt class="py-comment"># Strongly connected clusters of devices</tt> </tt>
-<a name="L2426"></a><tt class="py-lineno">2426</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-841" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-841', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Clusters view is consistent across all ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2427"></a><tt class="py-lineno">2427</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2428"></a><tt class="py-lineno">2428</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-842" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-842', 'controller', 'link-525');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-843" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-843', 'clusters', 'link-520');">clusters</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2429"></a><tt class="py-lineno">2429</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-844" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-844', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2430"></a><tt class="py-lineno">2430</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-845" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-845', 'clusters', 'link-520');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-846" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-846', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2431"></a><tt class="py-lineno">2431</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-847" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-847', 'clusters', 'link-520');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-848" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-848', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt id="link-849" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-849', 'clusters', 'link-520');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2432"></a><tt class="py-lineno">2432</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L2433"></a><tt class="py-lineno">2433</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># clusters not consistent</tt> </tt>
-<a name="L2434"></a><tt class="py-lineno">2434</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-850" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-850', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-851" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-851', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"clusters from ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2435"></a><tt class="py-lineno">2435</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2436"></a><tt class="py-lineno">2436</tt> <tt class="py-line"> <tt class="py-string">" is inconsistent with ONOS1"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2437"></a><tt class="py-lineno">2437</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2438"></a><tt class="py-lineno">2438</tt> <tt class="py-line"> </tt>
-<a name="L2439"></a><tt class="py-lineno">2439</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2440"></a><tt class="py-lineno">2440</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-852" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-852', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-853" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-853', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting dataplane clusters "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2441"></a><tt class="py-lineno">2441</tt> <tt class="py-line"> <tt class="py-string">"from ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2442"></a><tt class="py-lineno">2442</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2443"></a><tt class="py-lineno">2443</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-854" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-854', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2444"></a><tt class="py-lineno">2444</tt> <tt class="py-line"> <tt class="py-string">" clusters response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2445"></a><tt class="py-lineno">2445</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-855" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-855', 'clusters', 'link-520');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-856" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-856', 'controller', 'link-525');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2446"></a><tt class="py-lineno">2446</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2447"></a><tt class="py-lineno">2447</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2448"></a><tt class="py-lineno">2448</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentClustersResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2449"></a><tt class="py-lineno">2449</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Clusters view is consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2450"></a><tt class="py-lineno">2450</tt> <tt class="py-line"> <tt id="link-857" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-857', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of clusters"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2451"></a><tt class="py-lineno">2451</tt> <tt class="py-line"> </tt>
-<a name="L2452"></a><tt class="py-lineno">2452</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-858" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-858', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"There is only one SCC"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2453"></a><tt class="py-lineno">2453</tt> <tt class="py-line"> <tt class="py-comment"># there should always only be one cluster</tt> </tt>
-<a name="L2454"></a><tt class="py-lineno">2454</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2455"></a><tt class="py-lineno">2455</tt> <tt class="py-line"> <tt class="py-name">numClusters</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-859" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-859', 'clusters', 'link-520');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2456"></a><tt class="py-lineno">2456</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2457"></a><tt class="py-lineno">2457</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-860" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-860', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing clusters[0]: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2458"></a><tt class="py-lineno">2458</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-861" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-861', 'clusters', 'link-520');">clusters</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2459"></a><tt class="py-lineno">2459</tt> <tt class="py-line"> <tt class="py-name">clusterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2460"></a><tt class="py-lineno">2460</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">numClusters</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2461"></a><tt class="py-lineno">2461</tt> <tt class="py-line"> <tt class="py-name">clusterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2462"></a><tt class="py-lineno">2462</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2463"></a><tt class="py-lineno">2463</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> </tt>
-<a name="L2464"></a><tt class="py-lineno">2464</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">numClusters</tt><tt class="py-op">,</tt> </tt>
-<a name="L2465"></a><tt class="py-lineno">2465</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS shows 1 SCC"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2466"></a><tt class="py-lineno">2466</tt> <tt class="py-line"> <tt id="link-862" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-862', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS shows "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">numClusters</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" SCCs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2467"></a><tt class="py-lineno">2467</tt> <tt class="py-line"> </tt>
-<a name="L2468"></a><tt class="py-lineno">2468</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">devicesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">linksResults</tt> </tt>
-<a name="L2469"></a><tt class="py-lineno">2469</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentHostsResult</tt> </tt>
-<a name="L2470"></a><tt class="py-lineno">2470</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-name">consistentClustersResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">clusterResults</tt> </tt>
-<a name="L2471"></a><tt class="py-lineno">2471</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-name">ipResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2472"></a><tt class="py-lineno">2472</tt> <tt class="py-line"> </tt>
-<a name="L2473"></a><tt class="py-lineno">2473</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-name">topoResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op"><=</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2474"></a><tt class="py-lineno">2474</tt> <tt class="py-line"> <tt class="py-name">note</tt> <tt class="py-op">=</tt> <tt class="py-string">"note it takes about "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">cliTime</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L2475"></a><tt class="py-lineno">2475</tt> <tt class="py-line"> <tt class="py-string">" seconds for the test to make all the cli calls to fetch "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2476"></a><tt class="py-lineno">2476</tt> <tt class="py-line"> <tt class="py-string">"the topology from each ONOS instance"</tt> </tt>
-<a name="L2477"></a><tt class="py-lineno">2477</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-863" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-863', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L2478"></a><tt class="py-lineno">2478</tt> <tt class="py-line"> <tt class="py-string">"Very crass estimate for topology discovery/convergence( "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2479"></a><tt class="py-lineno">2479</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">note</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ): "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">elapsed</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" seconds, "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2480"></a><tt class="py-lineno">2480</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" tries"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2481"></a><tt class="py-lineno">2481</tt> <tt class="py-line"> </tt>
-<a name="L2482"></a><tt class="py-lineno">2482</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-864" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-864', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Device information is correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2483"></a><tt class="py-lineno">2483</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2484"></a><tt class="py-lineno">2484</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2485"></a><tt class="py-lineno">2485</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">devicesResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2486"></a><tt class="py-lineno">2486</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Device information is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2487"></a><tt class="py-lineno">2487</tt> <tt class="py-line"> <tt id="link-865" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-865', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Device information is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2488"></a><tt class="py-lineno">2488</tt> <tt class="py-line"> </tt>
-<a name="L2489"></a><tt class="py-lineno">2489</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-866" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-866', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Links are correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2490"></a><tt class="py-lineno">2490</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2491"></a><tt class="py-lineno">2491</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2492"></a><tt class="py-lineno">2492</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linksResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2493"></a><tt class="py-lineno">2493</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2494"></a><tt class="py-lineno">2494</tt> <tt class="py-line"> <tt id="link-867" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-867', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Links are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2495"></a><tt class="py-lineno">2495</tt> <tt class="py-line"> </tt>
-<a name="L2496"></a><tt class="py-lineno">2496</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: move this to an ONOS state case</tt> </tt>
-<a name="L2497"></a><tt class="py-lineno">2497</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-868" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-868', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Checking ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2498"></a><tt class="py-lineno">2498</tt> <tt class="py-line"> <tt class="py-name">nodesOutput</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2499"></a><tt class="py-lineno">2499</tt> <tt class="py-line"> <tt class="py-name">nodeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2500"></a><tt class="py-lineno">2500</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2501"></a><tt class="py-lineno">2501</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2502"></a><tt class="py-lineno">2502</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-869" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-869', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-870" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-870', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2503"></a><tt class="py-lineno">2503</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"nodes-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2504"></a><tt class="py-lineno">2504</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2505"></a><tt class="py-lineno">2505</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2506"></a><tt class="py-lineno">2506</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2507"></a><tt class="py-lineno">2507</tt> <tt class="py-line"> </tt>
-<a name="L2508"></a><tt class="py-lineno">2508</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2509"></a><tt class="py-lineno">2509</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2510"></a><tt class="py-lineno">2510</tt> <tt class="py-line"> <tt class="py-name">nodesOutput</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2511"></a><tt class="py-lineno">2511</tt> <tt class="py-line"> <tt class="py-name">ips</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-871" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-871', 'nodes', 'link-9');">nodes</a></tt> <tt class="py-op">]</tt> </tt>
-<a name="L2512"></a><tt class="py-lineno">2512</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">nodesOutput</tt><tt class="py-op">:</tt> </tt>
-<a name="L2513"></a><tt class="py-lineno">2513</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2514"></a><tt class="py-lineno">2514</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2515"></a><tt class="py-lineno">2515</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L2516"></a><tt class="py-lineno">2516</tt> <tt class="py-line"> <tt class="py-name">currentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2517"></a><tt class="py-lineno">2517</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">node</tt><tt class="py-op">[</tt><tt class="py-string">'ip'</tt><tt class="py-op">]</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ips</tt><tt class="py-op">:</tt> <tt class="py-comment"># node in nodes() output is in cell</tt> </tt>
-<a name="L2518"></a><tt class="py-lineno">2518</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">node</tt><tt class="py-op">[</tt><tt class="py-string">'state'</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'ACTIVE'</tt><tt class="py-op">:</tt> </tt>
-<a name="L2519"></a><tt class="py-lineno">2519</tt> <tt class="py-line"> <tt class="py-name">currentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2520"></a><tt class="py-lineno">2520</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2521"></a><tt class="py-lineno">2521</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-872" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-872', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-873" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-873', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in ONOS node availability"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2522"></a><tt class="py-lineno">2522</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-874" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-874', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-875" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-875', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2523"></a><tt class="py-lineno">2523</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt><tt class="py-op">,</tt> </tt>
-<a name="L2524"></a><tt class="py-lineno">2524</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2525"></a><tt class="py-lineno">2525</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L2526"></a><tt class="py-lineno">2526</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2527"></a><tt class="py-lineno">2527</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2528"></a><tt class="py-lineno">2528</tt> <tt class="py-line"> <tt class="py-name">nodeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">nodeResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentResult</tt> </tt>
-<a name="L2529"></a><tt class="py-lineno">2529</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2530"></a><tt class="py-lineno">2530</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-876" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-876', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-877" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-877', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing nodes output"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2531"></a><tt class="py-lineno">2531</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-878" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-878', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2532"></a><tt class="py-lineno">2532</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">nodeResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2533"></a><tt class="py-lineno">2533</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Nodes check successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2534"></a><tt class="py-lineno">2534</tt> <tt class="py-line"> <tt id="link-879" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-879', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Nodes check NOT successful"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2535"></a><tt class="py-lineno">2535</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE9"></a><div id="HAclusterRestart.CASE9-def"><a name="L2536"></a><tt class="py-lineno">2536</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE9-toggle" onclick="return toggle('HAclusterRestart.CASE9');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE9">CASE9</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE9-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE9-expanded"><a name="L2537"></a><tt class="py-lineno">2537</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2538"></a><tt class="py-lineno">2538</tt> <tt class="py-line"><tt class="py-docstring"> Link s3-s28 down</tt> </tt>
-<a name="L2539"></a><tt class="py-lineno">2539</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2540"></a><tt class="py-lineno">2540</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2541"></a><tt class="py-lineno">2541</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2542"></a><tt class="py-lineno">2542</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2543"></a><tt class="py-lineno">2543</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2544"></a><tt class="py-lineno">2544</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2545"></a><tt class="py-lineno">2545</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-880" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-880', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2546"></a><tt class="py-lineno">2546</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: You should probably run a topology check after this</tt> </tt>
-<a name="L2547"></a><tt class="py-lineno">2547</tt> <tt class="py-line"> </tt>
-<a name="L2548"></a><tt class="py-lineno">2548</tt> <tt class="py-line"> <tt class="py-name">linkSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2549"></a><tt class="py-lineno">2549</tt> <tt class="py-line"> </tt>
-<a name="L2550"></a><tt class="py-lineno">2550</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Turn off a link to ensure that Link Discovery "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2551"></a><tt class="py-lineno">2551</tt> <tt class="py-line"> <tt class="py-string">"is working properly"</tt> </tt>
-<a name="L2552"></a><tt class="py-lineno">2552</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-881" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-881', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2553"></a><tt class="py-lineno">2553</tt> <tt class="py-line"> </tt>
-<a name="L2554"></a><tt class="py-lineno">2554</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-882" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-882', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Kill Link between s3 and s28"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2555"></a><tt class="py-lineno">2555</tt> <tt class="py-line"> <tt class="py-name">LinkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-883" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#link"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-883', 'link', 'link-883');">link</a></tt><tt class="py-op">(</tt> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-string">"s3"</tt><tt class="py-op">,</tt> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-string">"s28"</tt><tt class="py-op">,</tt> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"down"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2556"></a><tt class="py-lineno">2556</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-884" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-884', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">linkSleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2557"></a><tt class="py-lineno">2557</tt> <tt class="py-line"> <tt class="py-string">" seconds for link down to be discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2558"></a><tt class="py-lineno">2558</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">linkSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2559"></a><tt class="py-lineno">2559</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">LinkDown</tt><tt class="py-op">,</tt> </tt>
-<a name="L2560"></a><tt class="py-lineno">2560</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link down successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2561"></a><tt class="py-lineno">2561</tt> <tt class="py-line"> <tt id="link-885" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-885', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to bring link down"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2562"></a><tt class="py-lineno">2562</tt> <tt class="py-line"> <tt class="py-comment"># TODO do some sort of check here</tt> </tt>
-<a name="L2563"></a><tt class="py-lineno">2563</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE10"></a><div id="HAclusterRestart.CASE10-def"><a name="L2564"></a><tt class="py-lineno">2564</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE10-toggle" onclick="return toggle('HAclusterRestart.CASE10');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE10">CASE10</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE10-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE10-expanded"><a name="L2565"></a><tt class="py-lineno">2565</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2566"></a><tt class="py-lineno">2566</tt> <tt class="py-line"><tt class="py-docstring"> Link s3-s28 up</tt> </tt>
-<a name="L2567"></a><tt class="py-lineno">2567</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2568"></a><tt class="py-lineno">2568</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2569"></a><tt class="py-lineno">2569</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2570"></a><tt class="py-lineno">2570</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2571"></a><tt class="py-lineno">2571</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2572"></a><tt class="py-lineno">2572</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2573"></a><tt class="py-lineno">2573</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-886" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-886', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2574"></a><tt class="py-lineno">2574</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: You should probably run a topology check after this</tt> </tt>
-<a name="L2575"></a><tt class="py-lineno">2575</tt> <tt class="py-line"> </tt>
-<a name="L2576"></a><tt class="py-lineno">2576</tt> <tt class="py-line"> <tt class="py-name">linkSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2577"></a><tt class="py-lineno">2577</tt> <tt class="py-line"> </tt>
-<a name="L2578"></a><tt class="py-lineno">2578</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Restore a link to ensure that Link Discovery is "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L2579"></a><tt class="py-lineno">2579</tt> <tt class="py-line"> <tt class="py-string">"working properly"</tt> </tt>
-<a name="L2580"></a><tt class="py-lineno">2580</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-887" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-887', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2581"></a><tt class="py-lineno">2581</tt> <tt class="py-line"> </tt>
-<a name="L2582"></a><tt class="py-lineno">2582</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-888" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-888', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Bring link between s3 and s28 back up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2583"></a><tt class="py-lineno">2583</tt> <tt class="py-line"> <tt class="py-name">LinkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-889" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-889', 'link', 'link-883');">link</a></tt><tt class="py-op">(</tt> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-string">"s3"</tt><tt class="py-op">,</tt> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-string">"s28"</tt><tt class="py-op">,</tt> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2584"></a><tt class="py-lineno">2584</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-890" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-890', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">linkSleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2585"></a><tt class="py-lineno">2585</tt> <tt class="py-line"> <tt class="py-string">" seconds for link up to be discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2586"></a><tt class="py-lineno">2586</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">linkSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2587"></a><tt class="py-lineno">2587</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">LinkUp</tt><tt class="py-op">,</tt> </tt>
-<a name="L2588"></a><tt class="py-lineno">2588</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link up successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2589"></a><tt class="py-lineno">2589</tt> <tt class="py-line"> <tt id="link-891" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-891', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to bring link up"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2590"></a><tt class="py-lineno">2590</tt> <tt class="py-line"> <tt class="py-comment"># TODO do some sort of check here</tt> </tt>
-<a name="L2591"></a><tt class="py-lineno">2591</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE11"></a><div id="HAclusterRestart.CASE11-def"><a name="L2592"></a><tt class="py-lineno">2592</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE11-toggle" onclick="return toggle('HAclusterRestart.CASE11');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE11">CASE11</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE11-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE11-expanded"><a name="L2593"></a><tt class="py-lineno">2593</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2594"></a><tt class="py-lineno">2594</tt> <tt class="py-line"><tt class="py-docstring"> Switch Down</tt> </tt>
-<a name="L2595"></a><tt class="py-lineno">2595</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2596"></a><tt class="py-lineno">2596</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: You should probably run a topology check after this</tt> </tt>
-<a name="L2597"></a><tt class="py-lineno">2597</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2598"></a><tt class="py-lineno">2598</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2599"></a><tt class="py-lineno">2599</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2600"></a><tt class="py-lineno">2600</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2601"></a><tt class="py-lineno">2601</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2602"></a><tt class="py-lineno">2602</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-892" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-892', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2603"></a><tt class="py-lineno">2603</tt> <tt class="py-line"> </tt>
-<a name="L2604"></a><tt class="py-lineno">2604</tt> <tt class="py-line"> <tt class="py-name">switchSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'SwitchDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2605"></a><tt class="py-lineno">2605</tt> <tt class="py-line"> </tt>
-<a name="L2606"></a><tt class="py-lineno">2606</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Killing a switch to ensure it is discovered correctly"</tt> </tt>
-<a name="L2607"></a><tt class="py-lineno">2607</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-893" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-893', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2608"></a><tt class="py-lineno">2608</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'switch'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2609"></a><tt class="py-lineno">2609</tt> <tt class="py-line"> <tt class="py-name">switchDPID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'dpid'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2610"></a><tt class="py-lineno">2610</tt> <tt class="py-line"> </tt>
-<a name="L2611"></a><tt class="py-lineno">2611</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Make this switch parameterizable</tt> </tt>
-<a name="L2612"></a><tt class="py-lineno">2612</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-894" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-894', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Kill "</tt> <tt class="py-op">+</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2613"></a><tt class="py-lineno">2613</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-895" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-895', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Deleting "</tt> <tt class="py-op">+</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2614"></a><tt class="py-lineno">2614</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-896" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.delSwitch()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delSwitch"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.delSwitch" class="py-name" href="#" onclick="return doclink('link-896', 'delSwitch', 'link-896');">delSwitch</a></tt><tt class="py-op">(</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2615"></a><tt class="py-lineno">2615</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-897" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-897', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">switchSleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2616"></a><tt class="py-lineno">2616</tt> <tt class="py-line"> <tt class="py-string">" seconds for switch down to be discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2617"></a><tt class="py-lineno">2617</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">switchSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2618"></a><tt class="py-lineno">2618</tt> <tt class="py-line"> <tt class="py-name">device</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-898" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-898', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-name">switchDPID</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2619"></a><tt class="py-lineno">2619</tt> <tt class="py-line"> <tt class="py-comment"># Peek at the deleted switch</tt> </tt>
-<a name="L2620"></a><tt class="py-lineno">2620</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-899" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-899', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">device</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2621"></a><tt class="py-lineno">2621</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2622"></a><tt class="py-lineno">2622</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">device</tt> <tt class="py-keyword">and</tt> <tt class="py-name">device</tt><tt class="py-op">[</tt> <tt class="py-string">'available'</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L2623"></a><tt class="py-lineno">2623</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2624"></a><tt class="py-lineno">2624</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">result</tt><tt class="py-op">,</tt> </tt>
-<a name="L2625"></a><tt class="py-lineno">2625</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Kill switch successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2626"></a><tt class="py-lineno">2626</tt> <tt class="py-line"> <tt id="link-900" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-900', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to kill switch?"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2627"></a><tt class="py-lineno">2627</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE12"></a><div id="HAclusterRestart.CASE12-def"><a name="L2628"></a><tt class="py-lineno">2628</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE12-toggle" onclick="return toggle('HAclusterRestart.CASE12');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE12">CASE12</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE12-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE12-expanded"><a name="L2629"></a><tt class="py-lineno">2629</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2630"></a><tt class="py-lineno">2630</tt> <tt class="py-line"><tt class="py-docstring"> Switch Up</tt> </tt>
-<a name="L2631"></a><tt class="py-lineno">2631</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2632"></a><tt class="py-lineno">2632</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: You should probably run a topology check after this</tt> </tt>
-<a name="L2633"></a><tt class="py-lineno">2633</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2634"></a><tt class="py-lineno">2634</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2635"></a><tt class="py-lineno">2635</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2636"></a><tt class="py-lineno">2636</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2637"></a><tt class="py-lineno">2637</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2638"></a><tt class="py-lineno">2638</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-901" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-901', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2639"></a><tt class="py-lineno">2639</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS1Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS1Port not defined"</tt> </tt>
-<a name="L2640"></a><tt class="py-lineno">2640</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS2Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS2Port not defined"</tt> </tt>
-<a name="L2641"></a><tt class="py-lineno">2641</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS3Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS3Port not defined"</tt> </tt>
-<a name="L2642"></a><tt class="py-lineno">2642</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS4Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS4Port not defined"</tt> </tt>
-<a name="L2643"></a><tt class="py-lineno">2643</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS5Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS5Port not defined"</tt> </tt>
-<a name="L2644"></a><tt class="py-lineno">2644</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS6Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS6Port not defined"</tt> </tt>
-<a name="L2645"></a><tt class="py-lineno">2645</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS7Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS7Port not defined"</tt> </tt>
-<a name="L2646"></a><tt class="py-lineno">2646</tt> <tt class="py-line"> </tt>
-<a name="L2647"></a><tt class="py-lineno">2647</tt> <tt class="py-line"> <tt class="py-name">switchSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'SwitchDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2648"></a><tt class="py-lineno">2648</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'switch'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2649"></a><tt class="py-lineno">2649</tt> <tt class="py-line"> <tt class="py-name">switchDPID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'dpid'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2650"></a><tt class="py-lineno">2650</tt> <tt class="py-line"> <tt id="link-902" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-902', 'links', 'link-516');">links</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'links'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2651"></a><tt class="py-lineno">2651</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Adding a switch to ensure it is discovered correctly"</tt> </tt>
-<a name="L2652"></a><tt class="py-lineno">2652</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-903" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-903', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2653"></a><tt class="py-lineno">2653</tt> <tt class="py-line"> </tt>
-<a name="L2654"></a><tt class="py-lineno">2654</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-904" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-904', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add back "</tt> <tt class="py-op">+</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2655"></a><tt class="py-lineno">2655</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-905" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addSwitch"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-905', 'addSwitch', 'link-905');">addSwitch</a></tt><tt class="py-op">(</tt> <tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-name">switchDPID</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2656"></a><tt class="py-lineno">2656</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">peer</tt> <tt class="py-keyword">in</tt> <tt id="link-906" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-906', 'links', 'link-516');">links</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2657"></a><tt class="py-lineno">2657</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-907" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addLink"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-907', 'addLink', 'link-907');">addLink</a></tt><tt class="py-op">(</tt> <tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">peer</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2658"></a><tt class="py-lineno">2658</tt> <tt class="py-line"> <tt class="py-name">ipList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2659"></a><tt class="py-lineno">2659</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2660"></a><tt class="py-lineno">2660</tt> <tt class="py-line"> <tt class="py-name">ipList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-908" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-908', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2661"></a><tt class="py-lineno">2661</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-909" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController" class="py-name" href="#" onclick="return doclink('link-909', 'assignSwController', 'link-78');">assignSwController</a></tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt><tt class="py-op">=</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">ipList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2662"></a><tt class="py-lineno">2662</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-910" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-910', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">switchSleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2663"></a><tt class="py-lineno">2663</tt> <tt class="py-line"> <tt class="py-string">" seconds for switch up to be discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2664"></a><tt class="py-lineno">2664</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">switchSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2665"></a><tt class="py-lineno">2665</tt> <tt class="py-line"> <tt class="py-name">device</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-911" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-911', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-name">switchDPID</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2666"></a><tt class="py-lineno">2666</tt> <tt class="py-line"> <tt class="py-comment"># Peek at the deleted switch</tt> </tt>
-<a name="L2667"></a><tt class="py-lineno">2667</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-912" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-912', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">device</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2668"></a><tt class="py-lineno">2668</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2669"></a><tt class="py-lineno">2669</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">device</tt> <tt class="py-keyword">and</tt> <tt class="py-name">device</tt><tt class="py-op">[</tt> <tt class="py-string">'available'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2670"></a><tt class="py-lineno">2670</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2671"></a><tt class="py-lineno">2671</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">result</tt><tt class="py-op">,</tt> </tt>
-<a name="L2672"></a><tt class="py-lineno">2672</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"add switch successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2673"></a><tt class="py-lineno">2673</tt> <tt class="py-line"> <tt id="link-913" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-913', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to add switch?"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2674"></a><tt class="py-lineno">2674</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE13"></a><div id="HAclusterRestart.CASE13-def"><a name="L2675"></a><tt class="py-lineno">2675</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE13-toggle" onclick="return toggle('HAclusterRestart.CASE13');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE13">CASE13</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE13-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE13-expanded"><a name="L2676"></a><tt class="py-lineno">2676</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2677"></a><tt class="py-lineno">2677</tt> <tt class="py-line"><tt class="py-docstring"> Clean up</tt> </tt>
-<a name="L2678"></a><tt class="py-lineno">2678</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2679"></a><tt class="py-lineno">2679</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L2680"></a><tt class="py-lineno">2680</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2681"></a><tt class="py-lineno">2681</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2682"></a><tt class="py-lineno">2682</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2683"></a><tt class="py-lineno">2683</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2684"></a><tt class="py-lineno">2684</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2685"></a><tt class="py-lineno">2685</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-914" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-914', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2686"></a><tt class="py-lineno">2686</tt> <tt class="py-line"> </tt>
-<a name="L2687"></a><tt class="py-lineno">2687</tt> <tt class="py-line"> <tt class="py-comment"># printing colors to terminal</tt> </tt>
-<a name="L2688"></a><tt class="py-lineno">2688</tt> <tt class="py-line"> <tt class="py-name">colors</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-string">'cyan'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[96m'</tt><tt class="py-op">,</tt> <tt class="py-string">'purple'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[95m'</tt><tt class="py-op">,</tt> </tt>
-<a name="L2689"></a><tt class="py-lineno">2689</tt> <tt class="py-line"> <tt class="py-string">'blue'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[94m'</tt><tt class="py-op">,</tt> <tt class="py-string">'green'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[92m'</tt><tt class="py-op">,</tt> </tt>
-<a name="L2690"></a><tt class="py-lineno">2690</tt> <tt class="py-line"> <tt class="py-string">'yellow'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[93m'</tt><tt class="py-op">,</tt> <tt class="py-string">'red'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[91m'</tt><tt class="py-op">,</tt> <tt class="py-string">'end'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[0m'</tt> <tt class="py-op">}</tt> </tt>
-<a name="L2691"></a><tt class="py-lineno">2691</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-915" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-915', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Test Cleanup"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2692"></a><tt class="py-lineno">2692</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-916" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-916', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Killing tcpdumps"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2693"></a><tt class="py-lineno">2693</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-917" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopTcpdump()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopTcpdump,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.stopTcpdump()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#stopTcpdump"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopTcpdump
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.stopTcpdump" class="py-name" href="#" onclick="return doclink('link-917', 'stopTcpdump', 'link-917');">stopTcpdump</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2694"></a><tt class="py-lineno">2694</tt> <tt class="py-line"> </tt>
-<a name="L2695"></a><tt class="py-lineno">2695</tt> <tt class="py-line"> <tt class="py-name">testname</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> </tt>
-<a name="L2696"></a><tt class="py-lineno">2696</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BACKUP'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"True"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2697"></a><tt class="py-lineno">2697</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-918" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-918', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Copying MN pcap and ONOS log files to test station"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2698"></a><tt class="py-lineno">2698</tt> <tt class="py-line"> <tt class="py-name">teststationUser</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BACKUP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'TESTONUSER'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2699"></a><tt class="py-lineno">2699</tt> <tt class="py-line"> <tt class="py-name">teststationIP</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BACKUP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'TESTONIP'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2700"></a><tt class="py-lineno">2700</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: MN Pcap file is being saved to ~/packet_captures</tt> </tt>
-<a name="L2701"></a><tt class="py-lineno">2701</tt> <tt class="py-line"> <tt class="py-comment"># scp this file as MN and TestON aren't necessarily the same vm</tt> </tt>
-<a name="L2702"></a><tt class="py-lineno">2702</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: scp</tt> </tt>
-<a name="L2703"></a><tt class="py-lineno">2703</tt> <tt class="py-line"> <tt class="py-comment"># mn files</tt> </tt>
-<a name="L2704"></a><tt class="py-lineno">2704</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Load these from params</tt> </tt>
-<a name="L2705"></a><tt class="py-lineno">2705</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: must end in /</tt> </tt>
-<a name="L2706"></a><tt class="py-lineno">2706</tt> <tt class="py-line"> <tt class="py-name">logFolder</tt> <tt class="py-op">=</tt> <tt class="py-string">"/opt/onos/log/"</tt> </tt>
-<a name="L2707"></a><tt class="py-lineno">2707</tt> <tt class="py-line"> <tt class="py-name">logFiles</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">"karaf.log"</tt><tt class="py-op">,</tt> <tt class="py-string">"karaf.log.1"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2708"></a><tt class="py-lineno">2708</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: must end in /</tt> </tt>
-<a name="L2709"></a><tt class="py-lineno">2709</tt> <tt class="py-line"> <tt class="py-name">dstDir</tt> <tt class="py-op">=</tt> <tt class="py-string">"~/packet_captures/"</tt> </tt>
-<a name="L2710"></a><tt class="py-lineno">2710</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">f</tt> <tt class="py-keyword">in</tt> <tt class="py-name">logFiles</tt><tt class="py-op">:</tt> </tt>
-<a name="L2711"></a><tt class="py-lineno">2711</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-919" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-919', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2712"></a><tt class="py-lineno">2712</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-920" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-920', 'sendline', 'link-920');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"scp sdn@"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2713"></a><tt class="py-lineno">2713</tt> <tt class="py-line"> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">logFolder</tt> <tt class="py-op">+</tt> <tt class="py-name">f</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2714"></a><tt class="py-lineno">2714</tt> <tt class="py-line"> <tt class="py-name">teststationUser</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2715"></a><tt class="py-lineno">2715</tt> <tt class="py-line"> <tt class="py-name">teststationIP</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2716"></a><tt class="py-lineno">2716</tt> <tt class="py-line"> <tt class="py-name">dstDir</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">testname</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2717"></a><tt class="py-lineno">2717</tt> <tt class="py-line"> <tt class="py-string">"-"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">"-"</tt> <tt class="py-op">+</tt> <tt class="py-name">f</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2718"></a><tt class="py-lineno">2718</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2719"></a><tt class="py-lineno">2719</tt> <tt class="py-line"> </tt>
-<a name="L2720"></a><tt class="py-lineno">2720</tt> <tt class="py-line"> <tt class="py-comment"># std*.log's</tt> </tt>
-<a name="L2721"></a><tt class="py-lineno">2721</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: must end in /</tt> </tt>
-<a name="L2722"></a><tt class="py-lineno">2722</tt> <tt class="py-line"> <tt class="py-name">logFolder</tt> <tt class="py-op">=</tt> <tt class="py-string">"/opt/onos/var/"</tt> </tt>
-<a name="L2723"></a><tt class="py-lineno">2723</tt> <tt class="py-line"> <tt class="py-name">logFiles</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">"stderr.log"</tt><tt class="py-op">,</tt> <tt class="py-string">"stdout.log"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2724"></a><tt class="py-lineno">2724</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: must end in /</tt> </tt>
-<a name="L2725"></a><tt class="py-lineno">2725</tt> <tt class="py-line"> <tt class="py-name">dstDir</tt> <tt class="py-op">=</tt> <tt class="py-string">"~/packet_captures/"</tt> </tt>
-<a name="L2726"></a><tt class="py-lineno">2726</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">f</tt> <tt class="py-keyword">in</tt> <tt class="py-name">logFiles</tt><tt class="py-op">:</tt> </tt>
-<a name="L2727"></a><tt class="py-lineno">2727</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-921" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-921', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2728"></a><tt class="py-lineno">2728</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-922" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-922', 'sendline', 'link-920');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"scp sdn@"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2729"></a><tt class="py-lineno">2729</tt> <tt class="py-line"> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">logFolder</tt> <tt class="py-op">+</tt> <tt class="py-name">f</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2730"></a><tt class="py-lineno">2730</tt> <tt class="py-line"> <tt class="py-name">teststationUser</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2731"></a><tt class="py-lineno">2731</tt> <tt class="py-line"> <tt class="py-name">teststationIP</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2732"></a><tt class="py-lineno">2732</tt> <tt class="py-line"> <tt class="py-name">dstDir</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">testname</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2733"></a><tt class="py-lineno">2733</tt> <tt class="py-line"> <tt class="py-string">"-"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">"-"</tt> <tt class="py-op">+</tt> <tt class="py-name">f</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2734"></a><tt class="py-lineno">2734</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2735"></a><tt class="py-lineno">2735</tt> <tt class="py-line"> <tt class="py-comment"># sleep so scp can finish</tt> </tt>
-<a name="L2736"></a><tt class="py-lineno">2736</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2737"></a><tt class="py-lineno">2737</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-923" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-923', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Packing and rotating pcap archives"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2738"></a><tt class="py-lineno">2738</tt> <tt class="py-line"> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">system</tt><tt class="py-op">(</tt> <tt class="py-string">"~/TestON/dependencies/rotate.sh "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">testname</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2739"></a><tt class="py-lineno">2739</tt> <tt class="py-line"> </tt>
-<a name="L2740"></a><tt class="py-lineno">2740</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-924" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-924', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Stopping Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2741"></a><tt class="py-lineno">2741</tt> <tt class="py-line"> <tt class="py-name">mnResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-925" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet" class="py-name" href="#" onclick="return doclink('link-925', 'stopNet', 'link-925');">stopNet</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2742"></a><tt class="py-lineno">2742</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">mnResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2743"></a><tt class="py-lineno">2743</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Mininet stopped"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2744"></a><tt class="py-lineno">2744</tt> <tt class="py-line"> <tt id="link-926" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-926', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"MN cleanup NOT successful"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2745"></a><tt class="py-lineno">2745</tt> <tt class="py-line"> </tt>
-<a name="L2746"></a><tt class="py-lineno">2746</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-927" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-927', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Checking ONOS Logs for errors"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2747"></a><tt class="py-lineno">2747</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-928" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-928', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2748"></a><tt class="py-lineno">2748</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">colors</tt><tt class="py-op">[</tt> <tt class="py-string">'purple'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">"Checking logs for errors on "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L2749"></a><tt class="py-lineno">2749</tt> <tt class="py-line"> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">colors</tt><tt class="py-op">[</tt> <tt class="py-string">'end'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2750"></a><tt class="py-lineno">2750</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-929" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.checkLogs()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#checkLogs"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.checkLogs" class="py-name" href="#" onclick="return doclink('link-929', 'checkLogs', 'link-929');">checkLogs</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-name">restart</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2751"></a><tt class="py-lineno">2751</tt> <tt class="py-line"> </tt>
-<a name="L2752"></a><tt class="py-lineno">2752</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2753"></a><tt class="py-lineno">2753</tt> <tt class="py-line"> <tt class="py-name">timerLog</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt> <tt class="py-op">+</tt> <tt class="py-string">"/Timers.csv"</tt><tt class="py-op">,</tt> <tt class="py-string">'w'</tt><tt class="py-op">)</tt> </tt>
-<a name="L2754"></a><tt class="py-lineno">2754</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-930" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-930', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-931" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-931', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">", "</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt> <tt class="py-name">labels</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-string">", "</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt> <tt class="py-name">data</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2755"></a><tt class="py-lineno">2755</tt> <tt class="py-line"> <tt class="py-name">timerLog</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt> <tt class="py-string">", "</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt> <tt class="py-name">labels</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-string">", "</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt> <tt class="py-name">data</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2756"></a><tt class="py-lineno">2756</tt> <tt class="py-line"> <tt class="py-name">timerLog</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2757"></a><tt class="py-lineno">2757</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L2758"></a><tt class="py-lineno">2758</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-932" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-932', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2759"></a><tt class="py-lineno">2759</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE14"></a><div id="HAclusterRestart.CASE14-def"><a name="L2760"></a><tt class="py-lineno">2760</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE14-toggle" onclick="return toggle('HAclusterRestart.CASE14');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE14">CASE14</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE14-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE14-expanded"><a name="L2761"></a><tt class="py-lineno">2761</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2762"></a><tt class="py-lineno">2762</tt> <tt class="py-line"><tt class="py-docstring"> start election app on all onos nodes</tt> </tt>
-<a name="L2763"></a><tt class="py-lineno">2763</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2764"></a><tt class="py-lineno">2764</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2765"></a><tt class="py-lineno">2765</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2766"></a><tt class="py-lineno">2766</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2767"></a><tt class="py-lineno">2767</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2768"></a><tt class="py-lineno">2768</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-933" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-933', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2769"></a><tt class="py-lineno">2769</tt> <tt class="py-line"> </tt>
-<a name="L2770"></a><tt class="py-lineno">2770</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-934" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-934', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt><tt class="py-string">"Start Leadership Election app"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2771"></a><tt class="py-lineno">2771</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-935" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-935', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install leadership election app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2772"></a><tt class="py-lineno">2772</tt> <tt class="py-line"> <tt class="py-name">appResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-936" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-936', 'activateApp', 'link-128');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2773"></a><tt class="py-lineno">2773</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2774"></a><tt class="py-lineno">2774</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2775"></a><tt class="py-lineno">2775</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2776"></a><tt class="py-lineno">2776</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Election app installed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2777"></a><tt class="py-lineno">2777</tt> <tt class="py-line"> <tt id="link-937" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-937', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something went wrong with installing Leadership election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2778"></a><tt class="py-lineno">2778</tt> <tt class="py-line"> </tt>
-<a name="L2779"></a><tt class="py-lineno">2779</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-938" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-938', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Run for election on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2780"></a><tt class="py-lineno">2780</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2781"></a><tt class="py-lineno">2781</tt> <tt class="py-line"> <tt id="link-939" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-939', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2782"></a><tt class="py-lineno">2782</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-940" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-940', 'cli', 'link-227');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2783"></a><tt class="py-lineno">2783</tt> <tt class="py-line"> <tt id="link-941" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-941', 'cli', 'link-227');">cli</a></tt><tt class="py-op">.</tt><tt id="link-942" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestRun" class="py-name" href="#" onclick="return doclink('link-942', 'electionTestRun', 'link-644');">electionTestRun</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2784"></a><tt class="py-lineno">2784</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-943" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-943', 'cli', 'link-227');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2785"></a><tt class="py-lineno">2785</tt> <tt class="py-line"> <tt class="py-name">leader</tt> <tt class="py-op">=</tt> <tt id="link-944" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-944', 'cli', 'link-227');">cli</a></tt><tt class="py-op">.</tt><tt id="link-945" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-945', 'electionTestLeader', 'link-714');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2786"></a><tt class="py-lineno">2786</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leader</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">leader</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2787"></a><tt class="py-lineno">2787</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-946" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-946', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-947" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-947', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt id="link-948" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-948', 'cli', 'link-227');">cli</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Leader for the election app "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2788"></a><tt class="py-lineno">2788</tt> <tt class="py-line"> <tt class="py-string">"should be an ONOS node, instead got '"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2789"></a><tt class="py-lineno">2789</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"'"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2790"></a><tt class="py-lineno">2790</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2791"></a><tt class="py-lineno">2791</tt> <tt class="py-line"> <tt id="link-949" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-949', 'leaders', 'link-185');">leaders</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2792"></a><tt class="py-lineno">2792</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2793"></a><tt class="py-lineno">2793</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2794"></a><tt class="py-lineno">2794</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">leaderResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2795"></a><tt class="py-lineno">2795</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully ran for leadership"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2796"></a><tt class="py-lineno">2796</tt> <tt class="py-line"> <tt id="link-950" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-950', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to run for leadership"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2797"></a><tt class="py-lineno">2797</tt> <tt class="py-line"> </tt>
-<a name="L2798"></a><tt class="py-lineno">2798</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-951" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-951', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check that each node shows the same leader"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2799"></a><tt class="py-lineno">2799</tt> <tt class="py-line"> <tt class="py-name">sameLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2800"></a><tt class="py-lineno">2800</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt id="link-952" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-952', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2801"></a><tt class="py-lineno">2801</tt> <tt class="py-line"> <tt class="py-name">sameLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2802"></a><tt class="py-lineno">2802</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-953" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-953', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-954" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-954', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Results of electionTestLeader is order of CLIs:"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2803"></a><tt class="py-lineno">2803</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-955" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-955', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2804"></a><tt class="py-lineno">2804</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2805"></a><tt class="py-lineno">2805</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2806"></a><tt class="py-lineno">2806</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">sameLeader</tt><tt class="py-op">,</tt> </tt>
-<a name="L2807"></a><tt class="py-lineno">2807</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Leadership is consistent for the election topic"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2808"></a><tt class="py-lineno">2808</tt> <tt class="py-line"> <tt id="link-956" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-956', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Nodes have different leaders"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2809"></a><tt class="py-lineno">2809</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE15"></a><div id="HAclusterRestart.CASE15-def"><a name="L2810"></a><tt class="py-lineno">2810</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE15-toggle" onclick="return toggle('HAclusterRestart.CASE15');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE15">CASE15</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE15-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE15-expanded"><a name="L2811"></a><tt class="py-lineno">2811</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2812"></a><tt class="py-lineno">2812</tt> <tt class="py-line"><tt class="py-docstring"> Check that Leadership Election is still functional</tt> </tt>
-<a name="L2813"></a><tt class="py-lineno">2813</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2814"></a><tt class="py-lineno">2814</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2815"></a><tt class="py-lineno">2815</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2816"></a><tt class="py-lineno">2816</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2817"></a><tt class="py-lineno">2817</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2818"></a><tt class="py-lineno">2818</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2819"></a><tt class="py-lineno">2819</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-957" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-957', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2820"></a><tt class="py-lineno">2820</tt> <tt class="py-line"> </tt>
-<a name="L2821"></a><tt class="py-lineno">2821</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2822"></a><tt class="py-lineno">2822</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Check that Leadership Election is still functional"</tt> </tt>
-<a name="L2823"></a><tt class="py-lineno">2823</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-958" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-958', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2824"></a><tt class="py-lineno">2824</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Need to re-run since being a canidate is not persistant</tt> </tt>
-<a name="L2825"></a><tt class="py-lineno">2825</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-959" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-959', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Run for election on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2826"></a><tt class="py-lineno">2826</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2827"></a><tt class="py-lineno">2827</tt> <tt class="py-line"> <tt id="link-960" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-960', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2828"></a><tt class="py-lineno">2828</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-961" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-961', 'cli', 'link-227');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2829"></a><tt class="py-lineno">2829</tt> <tt class="py-line"> <tt id="link-962" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-962', 'cli', 'link-227');">cli</a></tt><tt class="py-op">.</tt><tt id="link-963" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestRun" class="py-name" href="#" onclick="return doclink('link-963', 'electionTestRun', 'link-644');">electionTestRun</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2830"></a><tt class="py-lineno">2830</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-964" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-964', 'cli', 'link-227');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2831"></a><tt class="py-lineno">2831</tt> <tt class="py-line"> <tt class="py-name">leader</tt> <tt class="py-op">=</tt> <tt id="link-965" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-965', 'cli', 'link-227');">cli</a></tt><tt class="py-op">.</tt><tt id="link-966" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-966', 'electionTestLeader', 'link-714');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2832"></a><tt class="py-lineno">2832</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leader</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">leader</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2833"></a><tt class="py-lineno">2833</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-967" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-967', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-968" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-968', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt id="link-969" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-969', 'cli', 'link-227');">cli</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Leader for the election app "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2834"></a><tt class="py-lineno">2834</tt> <tt class="py-line"> <tt class="py-string">"should be an ONOS node, instead got '"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2835"></a><tt class="py-lineno">2835</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"'"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2836"></a><tt class="py-lineno">2836</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2837"></a><tt class="py-lineno">2837</tt> <tt class="py-line"> <tt id="link-970" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-970', 'leaders', 'link-185');">leaders</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2838"></a><tt class="py-lineno">2838</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2839"></a><tt class="py-lineno">2839</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2840"></a><tt class="py-lineno">2840</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">leaderResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2841"></a><tt class="py-lineno">2841</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully ran for leadership"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2842"></a><tt class="py-lineno">2842</tt> <tt class="py-line"> <tt id="link-971" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-971', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to run for leadership"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2843"></a><tt class="py-lineno">2843</tt> <tt class="py-line"> </tt>
-<a name="L2844"></a><tt class="py-lineno">2844</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-972" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-972', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check that each node shows the same leader"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2845"></a><tt class="py-lineno">2845</tt> <tt class="py-line"> <tt class="py-name">sameLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2846"></a><tt class="py-lineno">2846</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt id="link-973" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-973', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2847"></a><tt class="py-lineno">2847</tt> <tt class="py-line"> <tt class="py-name">sameLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2848"></a><tt class="py-lineno">2848</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-974" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-974', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-975" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-975', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Results of electionTestLeader is order of main.CLIs:"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2849"></a><tt class="py-lineno">2849</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-976" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-976', 'leaders', 'link-185');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2850"></a><tt class="py-lineno">2850</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2851"></a><tt class="py-lineno">2851</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2852"></a><tt class="py-lineno">2852</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">sameLeader</tt><tt class="py-op">,</tt> </tt>
-<a name="L2853"></a><tt class="py-lineno">2853</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Leadership is consistent for the election topic"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2854"></a><tt class="py-lineno">2854</tt> <tt class="py-line"> <tt id="link-977" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-977', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Nodes have different leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2855"></a><tt class="py-lineno">2855</tt> <tt class="py-line"> </tt>
-<a name="L2856"></a><tt class="py-lineno">2856</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-978" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-978', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Find current leader and withdraw"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2857"></a><tt class="py-lineno">2857</tt> <tt class="py-line"> <tt class="py-name">leader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-979" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-979', 'electionTestLeader', 'link-714');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2858"></a><tt class="py-lineno">2858</tt> <tt class="py-line"> <tt class="py-comment"># do some sanity checking on leader before using it</tt> </tt>
-<a name="L2859"></a><tt class="py-lineno">2859</tt> <tt class="py-line"> <tt class="py-name">withdrawResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2860"></a><tt class="py-lineno">2860</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leader</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">leader</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2861"></a><tt class="py-lineno">2861</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-980" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-980', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-981" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-981', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2862"></a><tt class="py-lineno">2862</tt> <tt class="py-line"> <tt class="py-string">"Leader for the election app should be an ONOS node,"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2863"></a><tt class="py-lineno">2863</tt> <tt class="py-line"> <tt class="py-string">"instead got '"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"'"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2864"></a><tt class="py-lineno">2864</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2865"></a><tt class="py-lineno">2865</tt> <tt class="py-line"> <tt class="py-name">oldLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2866"></a><tt class="py-lineno">2866</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2867"></a><tt class="py-lineno">2867</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leader</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-982" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-982', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">:</tt> </tt>
-<a name="L2868"></a><tt class="py-lineno">2868</tt> <tt class="py-line"> <tt class="py-name">oldLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2869"></a><tt class="py-lineno">2869</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2870"></a><tt class="py-lineno">2870</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># FOR/ELSE statement</tt> </tt>
-<a name="L2871"></a><tt class="py-lineno">2871</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-983" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-983', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-984" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-984', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Leader election, could not find current leader"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2872"></a><tt class="py-lineno">2872</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">oldLeader</tt><tt class="py-op">:</tt> </tt>
-<a name="L2873"></a><tt class="py-lineno">2873</tt> <tt class="py-line"> <tt class="py-name">withdrawResult</tt> <tt class="py-op">=</tt> <tt class="py-name">oldLeader</tt><tt class="py-op">.</tt><tt id="link-985" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestWithdraw()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestWithdraw"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestWithdraw" class="py-name" href="#" onclick="return doclink('link-985', 'electionTestWithdraw', 'link-985');">electionTestWithdraw</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2874"></a><tt class="py-lineno">2874</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2875"></a><tt class="py-lineno">2875</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2876"></a><tt class="py-lineno">2876</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">withdrawResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2877"></a><tt class="py-lineno">2877</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Node was withdrawn from election"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2878"></a><tt class="py-lineno">2878</tt> <tt class="py-line"> <tt id="link-986" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-986', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Node was not withdrawn from election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2879"></a><tt class="py-lineno">2879</tt> <tt class="py-line"> </tt>
-<a name="L2880"></a><tt class="py-lineno">2880</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-987" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-987', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Make sure new leader is elected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2881"></a><tt class="py-lineno">2881</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: use threads</tt> </tt>
-<a name="L2882"></a><tt class="py-lineno">2882</tt> <tt class="py-line"> <tt class="py-name">leaderList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2883"></a><tt class="py-lineno">2883</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-988" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-988', 'cli', 'link-227');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2884"></a><tt class="py-lineno">2884</tt> <tt class="py-line"> <tt class="py-name">leaderN</tt> <tt class="py-op">=</tt> <tt id="link-989" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-989', 'cli', 'link-227');">cli</a></tt><tt class="py-op">.</tt><tt id="link-990" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-990', 'electionTestLeader', 'link-714');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2885"></a><tt class="py-lineno">2885</tt> <tt class="py-line"> <tt class="py-name">leaderList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2886"></a><tt class="py-lineno">2886</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">==</tt> <tt class="py-name">leader</tt><tt class="py-op">:</tt> </tt>
-<a name="L2887"></a><tt class="py-lineno">2887</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-991" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-991', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-992" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-992', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt id="link-993" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-993', 'cli', 'link-227');">cli</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" still sees "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2888"></a><tt class="py-lineno">2888</tt> <tt class="py-line"> <tt class="py-string">" as leader after they withdrew"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2889"></a><tt class="py-lineno">2889</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2890"></a><tt class="py-lineno">2890</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2891"></a><tt class="py-lineno">2891</tt> <tt class="py-line"> <tt class="py-comment"># error in response</tt> </tt>
-<a name="L2892"></a><tt class="py-lineno">2892</tt> <tt class="py-line"> <tt class="py-comment"># TODO: add check for "Command not found:" in the driver, this</tt> </tt>
-<a name="L2893"></a><tt class="py-lineno">2893</tt> <tt class="py-line"> <tt class="py-comment"># means the app isn't loaded</tt> </tt>
-<a name="L2894"></a><tt class="py-lineno">2894</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-994" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-994', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-995" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-995', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Something is wrong with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2895"></a><tt class="py-lineno">2895</tt> <tt class="py-line"> <tt class="py-string">"electionTestLeader function, "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2896"></a><tt class="py-lineno">2896</tt> <tt class="py-line"> <tt class="py-string">"check the error logs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2897"></a><tt class="py-lineno">2897</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2898"></a><tt class="py-lineno">2898</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leaderN</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L2899"></a><tt class="py-lineno">2899</tt> <tt class="py-line"> <tt class="py-comment"># node may not have recieved the event yet</tt> </tt>
-<a name="L2900"></a><tt class="py-lineno">2900</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">7</tt><tt class="py-op">)</tt> </tt>
-<a name="L2901"></a><tt class="py-lineno">2901</tt> <tt class="py-line"> <tt class="py-name">leaderN</tt> <tt class="py-op">=</tt> <tt id="link-996" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-996', 'cli', 'link-227');">cli</a></tt><tt class="py-op">.</tt><tt id="link-997" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-997', 'electionTestLeader', 'link-714');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2902"></a><tt class="py-lineno">2902</tt> <tt class="py-line"> <tt class="py-name">leaderList</tt><tt class="py-op">.</tt><tt class="py-name">pop</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2903"></a><tt class="py-lineno">2903</tt> <tt class="py-line"> <tt class="py-name">leaderList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2904"></a><tt class="py-lineno">2904</tt> <tt class="py-line"> <tt class="py-name">consistentLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2905"></a><tt class="py-lineno">2905</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">leaderList</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2906"></a><tt class="py-lineno">2906</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-998" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-998', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Each Election-app sees '"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2907"></a><tt class="py-lineno">2907</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leaderList</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2908"></a><tt class="py-lineno">2908</tt> <tt class="py-line"> <tt class="py-string">"' as the leader"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2909"></a><tt class="py-lineno">2909</tt> <tt class="py-line"> <tt class="py-name">consistentLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2910"></a><tt class="py-lineno">2910</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2911"></a><tt class="py-lineno">2911</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-999" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-999', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1000" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1000', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2912"></a><tt class="py-lineno">2912</tt> <tt class="py-line"> <tt class="py-string">"Inconsistent responses for leader of Election-app:"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2913"></a><tt class="py-lineno">2913</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">n</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">leaderList</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2914"></a><tt class="py-lineno">2914</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1001" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1001', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1002" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1002', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2915"></a><tt class="py-lineno">2915</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leaderList</tt><tt class="py-op">[</tt> <tt class="py-name">n</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2916"></a><tt class="py-lineno">2916</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">leaderResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentLeader</tt> </tt>
-<a name="L2917"></a><tt class="py-lineno">2917</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2918"></a><tt class="py-lineno">2918</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2919"></a><tt class="py-lineno">2919</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">leaderResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2920"></a><tt class="py-lineno">2920</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Leadership election passed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2921"></a><tt class="py-lineno">2921</tt> <tt class="py-line"> <tt id="link-1003" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1003', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something went wrong with Leadership election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2922"></a><tt class="py-lineno">2922</tt> <tt class="py-line"> </tt>
-<a name="L2923"></a><tt class="py-lineno">2923</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1004" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1004', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Run for election on old leader( just so everyone "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2924"></a><tt class="py-lineno">2924</tt> <tt class="py-line"> <tt class="py-string">"is in the hat )"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2925"></a><tt class="py-lineno">2925</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">oldLeader</tt><tt class="py-op">:</tt> </tt>
-<a name="L2926"></a><tt class="py-lineno">2926</tt> <tt class="py-line"> <tt class="py-name">runResult</tt> <tt class="py-op">=</tt> <tt class="py-name">oldLeader</tt><tt class="py-op">.</tt><tt id="link-1005" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestRun" class="py-name" href="#" onclick="return doclink('link-1005', 'electionTestRun', 'link-644');">electionTestRun</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2927"></a><tt class="py-lineno">2927</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2928"></a><tt class="py-lineno">2928</tt> <tt class="py-line"> <tt class="py-name">runResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2929"></a><tt class="py-lineno">2929</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2930"></a><tt class="py-lineno">2930</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2931"></a><tt class="py-lineno">2931</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">runResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2932"></a><tt class="py-lineno">2932</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App re-ran for election"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2933"></a><tt class="py-lineno">2933</tt> <tt class="py-line"> <tt id="link-1006" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1006', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"App failed to run for election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2934"></a><tt class="py-lineno">2934</tt> <tt class="py-line"> </tt>
-<a name="L2935"></a><tt class="py-lineno">2935</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1007" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1007', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Leader did not change when old leader re-ran"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2936"></a><tt class="py-lineno">2936</tt> <tt class="py-line"> <tt class="py-name">afterRun</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-1008" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-1008', 'electionTestLeader', 'link-714');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2937"></a><tt class="py-lineno">2937</tt> <tt class="py-line"> <tt class="py-comment"># verify leader didn't just change</tt> </tt>
-<a name="L2938"></a><tt class="py-lineno">2938</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">afterRun</tt> <tt class="py-op">==</tt> <tt class="py-name">leaderList</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2939"></a><tt class="py-lineno">2939</tt> <tt class="py-line"> <tt class="py-name">afterResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2940"></a><tt class="py-lineno">2940</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2941"></a><tt class="py-lineno">2941</tt> <tt class="py-line"> <tt class="py-name">afterResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2942"></a><tt class="py-lineno">2942</tt> <tt class="py-line"> </tt>
-<a name="L2943"></a><tt class="py-lineno">2943</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2944"></a><tt class="py-lineno">2944</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2945"></a><tt class="py-lineno">2945</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">afterResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2946"></a><tt class="py-lineno">2946</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Old leader successfully re-ran for election"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2947"></a><tt class="py-lineno">2947</tt> <tt class="py-line"> <tt id="link-1009" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1009', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something went wrong with Leadership election after "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2948"></a><tt class="py-lineno">2948</tt> <tt class="py-line"> <tt class="py-string">"the old leader re-ran for election"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2949"></a><tt class="py-lineno">2949</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE16"></a><div id="HAclusterRestart.CASE16-def"><a name="L2950"></a><tt class="py-lineno">2950</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE16-toggle" onclick="return toggle('HAclusterRestart.CASE16');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE16">CASE16</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE16-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE16-expanded"><a name="L2951"></a><tt class="py-lineno">2951</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2952"></a><tt class="py-lineno">2952</tt> <tt class="py-line"><tt class="py-docstring"> Install Distributed Primitives app</tt> </tt>
-<a name="L2953"></a><tt class="py-lineno">2953</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2954"></a><tt class="py-lineno">2954</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2955"></a><tt class="py-lineno">2955</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2956"></a><tt class="py-lineno">2956</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2957"></a><tt class="py-lineno">2957</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2958"></a><tt class="py-lineno">2958</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2959"></a><tt class="py-lineno">2959</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1010" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-1010', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2960"></a><tt class="py-lineno">2960</tt> <tt class="py-line"> </tt>
-<a name="L2961"></a><tt class="py-lineno">2961</tt> <tt class="py-line"> <tt class="py-comment"># Variables for the distributed primitives tests</tt> </tt>
-<a name="L2962"></a><tt class="py-lineno">2962</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">pCounterName</tt> </tt>
-<a name="L2963"></a><tt class="py-lineno">2963</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">iCounterName</tt> </tt>
-<a name="L2964"></a><tt class="py-lineno">2964</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">pCounterValue</tt> </tt>
-<a name="L2965"></a><tt class="py-lineno">2965</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">iCounterValue</tt> </tt>
-<a name="L2966"></a><tt class="py-lineno">2966</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">onosSet</tt> </tt>
-<a name="L2967"></a><tt class="py-lineno">2967</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">onosSetName</tt> </tt>
-<a name="L2968"></a><tt class="py-lineno">2968</tt> <tt class="py-line"> <tt class="py-name">pCounterName</tt> <tt class="py-op">=</tt> <tt class="py-string">"TestON-Partitions"</tt> </tt>
-<a name="L2969"></a><tt class="py-lineno">2969</tt> <tt class="py-line"> <tt class="py-name">iCounterName</tt> <tt class="py-op">=</tt> <tt class="py-string">"TestON-inMemory"</tt> </tt>
-<a name="L2970"></a><tt class="py-lineno">2970</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2971"></a><tt class="py-lineno">2971</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2972"></a><tt class="py-lineno">2972</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L2973"></a><tt class="py-lineno">2973</tt> <tt class="py-line"> <tt class="py-name">onosSetName</tt> <tt class="py-op">=</tt> <tt class="py-string">"TestON-set"</tt> </tt>
-<a name="L2974"></a><tt class="py-lineno">2974</tt> <tt class="py-line"> </tt>
-<a name="L2975"></a><tt class="py-lineno">2975</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Install Primitives app"</tt> </tt>
-<a name="L2976"></a><tt class="py-lineno">2976</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1011" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-1011', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2977"></a><tt class="py-lineno">2977</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1012" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1012', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install Primitives app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2978"></a><tt class="py-lineno">2978</tt> <tt class="py-line"> <tt class="py-name">appName</tt> <tt class="py-op">=</tt> <tt class="py-string">"org.onosproject.distributedprimitives"</tt> </tt>
-<a name="L2979"></a><tt class="py-lineno">2979</tt> <tt class="py-line"> <tt class="py-name">appResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1013" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-1013', 'activateApp', 'link-128');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2980"></a><tt class="py-lineno">2980</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2981"></a><tt class="py-lineno">2981</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2982"></a><tt class="py-lineno">2982</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Primitives app activated"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2983"></a><tt class="py-lineno">2983</tt> <tt class="py-line"> <tt id="link-1014" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1014', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Primitives app not activated"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2984"></a><tt class="py-lineno">2984</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt> <tt class="py-comment"># To allow all nodes to activate</tt> </tt>
-</div><a name="L2985"></a><tt class="py-lineno">2985</tt> <tt class="py-line"> </tt>
-<a name="HAclusterRestart.CASE17"></a><div id="HAclusterRestart.CASE17-def"><a name="L2986"></a><tt class="py-lineno">2986</tt> <a class="py-toggle" href="#" id="HAclusterRestart.CASE17-toggle" onclick="return toggle('HAclusterRestart.CASE17');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE17">CASE17</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAclusterRestart.CASE17-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAclusterRestart.CASE17-expanded"><a name="L2987"></a><tt class="py-lineno">2987</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2988"></a><tt class="py-lineno">2988</tt> <tt class="py-line"><tt class="py-docstring"> Check for basic functionality with distributed primitives</tt> </tt>
-<a name="L2989"></a><tt class="py-lineno">2989</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2990"></a><tt class="py-lineno">2990</tt> <tt class="py-line"> <tt class="py-comment"># Make sure variables are defined/set</tt> </tt>
-<a name="L2991"></a><tt class="py-lineno">2991</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2992"></a><tt class="py-lineno">2992</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2993"></a><tt class="py-lineno">2993</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2994"></a><tt class="py-lineno">2994</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2995"></a><tt class="py-lineno">2995</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1015" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-1015', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2996"></a><tt class="py-lineno">2996</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">pCounterName</tt><tt class="py-op">,</tt> <tt class="py-string">"pCounterName not defined"</tt> </tt>
-<a name="L2997"></a><tt class="py-lineno">2997</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-string">"iCounterName not defined"</tt> </tt>
-<a name="L2998"></a><tt class="py-lineno">2998</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-string">"onosSetName not defined"</tt> </tt>
-<a name="L2999"></a><tt class="py-lineno">2999</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: assert fails if value is 0/None/Empty/False</tt> </tt>
-<a name="L3000"></a><tt class="py-lineno">3000</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3001"></a><tt class="py-lineno">3001</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> </tt>
-<a name="L3002"></a><tt class="py-lineno">3002</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3003"></a><tt class="py-lineno">3003</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1016" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1016', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1017" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1017', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pCounterValue not defined, setting to 0"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3004"></a><tt class="py-lineno">3004</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L3005"></a><tt class="py-lineno">3005</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3006"></a><tt class="py-lineno">3006</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> </tt>
-<a name="L3007"></a><tt class="py-lineno">3007</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3008"></a><tt class="py-lineno">3008</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1018" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1018', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1019" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1019', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"iCounterValue not defined, setting to 0"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3009"></a><tt class="py-lineno">3009</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L3010"></a><tt class="py-lineno">3010</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3011"></a><tt class="py-lineno">3011</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt> </tt>
-<a name="L3012"></a><tt class="py-lineno">3012</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L3013"></a><tt class="py-lineno">3013</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1020" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1020', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1021" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1021', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onosSet not defined, setting to empty Set"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3014"></a><tt class="py-lineno">3014</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L3015"></a><tt class="py-lineno">3015</tt> <tt class="py-line"> <tt class="py-comment"># Variables for the distributed primitives tests. These are local only</tt> </tt>
-<a name="L3016"></a><tt class="py-lineno">3016</tt> <tt class="py-line"> <tt class="py-name">addValue</tt> <tt class="py-op">=</tt> <tt class="py-string">"a"</tt> </tt>
-<a name="L3017"></a><tt class="py-lineno">3017</tt> <tt class="py-line"> <tt class="py-name">addAllValue</tt> <tt class="py-op">=</tt> <tt class="py-string">"a b c d e f"</tt> </tt>
-<a name="L3018"></a><tt class="py-lineno">3018</tt> <tt class="py-line"> <tt class="py-name">retainValue</tt> <tt class="py-op">=</tt> <tt class="py-string">"c d e f"</tt> </tt>
-<a name="L3019"></a><tt class="py-lineno">3019</tt> <tt class="py-line"> </tt>
-<a name="L3020"></a><tt class="py-lineno">3020</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Check for basic functionality with distributed "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L3021"></a><tt class="py-lineno">3021</tt> <tt class="py-line"> <tt class="py-string">"primitives"</tt> </tt>
-<a name="L3022"></a><tt class="py-lineno">3022</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1022" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-1022', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3023"></a><tt class="py-lineno">3023</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Test the methods of the distributed "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L3024"></a><tt class="py-lineno">3024</tt> <tt class="py-line"> <tt class="py-string">"primitives (counters and sets) throught the cli"</tt> </tt>
-<a name="L3025"></a><tt class="py-lineno">3025</tt> <tt class="py-line"> <tt class="py-comment"># DISTRIBUTED ATOMIC COUNTERS</tt> </tt>
-<a name="L3026"></a><tt class="py-lineno">3026</tt> <tt class="py-line"> <tt class="py-comment"># Partitioned counters</tt> </tt>
-<a name="L3027"></a><tt class="py-lineno">3027</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1023" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1023', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Increment then get a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3028"></a><tt class="py-lineno">3028</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3029"></a><tt class="py-lineno">3029</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3030"></a><tt class="py-lineno">3030</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3031"></a><tt class="py-lineno">3031</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3032"></a><tt class="py-lineno">3032</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1024" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1024', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1025" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counterTestAddAndGet"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1025', 'counterTestAddAndGet', 'link-1025');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3033"></a><tt class="py-lineno">3033</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterAddAndGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3034"></a><tt class="py-lineno">3034</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3035"></a><tt class="py-lineno">3035</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L3036"></a><tt class="py-lineno">3036</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3037"></a><tt class="py-lineno">3037</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3038"></a><tt class="py-lineno">3038</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3039"></a><tt class="py-lineno">3039</tt> <tt class="py-line"> </tt>
-<a name="L3040"></a><tt class="py-lineno">3040</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3041"></a><tt class="py-lineno">3041</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3042"></a><tt class="py-lineno">3042</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3043"></a><tt class="py-lineno">3043</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3044"></a><tt class="py-lineno">3044</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3045"></a><tt class="py-lineno">3045</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3046"></a><tt class="py-lineno">3046</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L3047"></a><tt class="py-lineno">3047</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3048"></a><tt class="py-lineno">3048</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3049"></a><tt class="py-lineno">3049</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1026" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1026', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1027" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1027', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L3050"></a><tt class="py-lineno">3050</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3051"></a><tt class="py-lineno">3051</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3052"></a><tt class="py-lineno">3052</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3053"></a><tt class="py-lineno">3053</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3054"></a><tt class="py-lineno">3054</tt> <tt class="py-line"> <tt id="link-1028" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1028', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3055"></a><tt class="py-lineno">3055</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3056"></a><tt class="py-lineno">3056</tt> <tt class="py-line"> </tt>
-<a name="L3057"></a><tt class="py-lineno">3057</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1029" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1029', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get then Increment a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3058"></a><tt class="py-lineno">3058</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3059"></a><tt class="py-lineno">3059</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3060"></a><tt class="py-lineno">3060</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3061"></a><tt class="py-lineno">3061</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3062"></a><tt class="py-lineno">3062</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1030" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1030', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1031" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counterTestGetAndAdd"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd" class="py-name" href="#" onclick="return doclink('link-1031', 'counterTestGetAndAdd', 'link-1031');">counterTestGetAndAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3063"></a><tt class="py-lineno">3063</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterGetAndAdd-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3064"></a><tt class="py-lineno">3064</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3065"></a><tt class="py-lineno">3065</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3066"></a><tt class="py-lineno">3066</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L3067"></a><tt class="py-lineno">3067</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3068"></a><tt class="py-lineno">3068</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3069"></a><tt class="py-lineno">3069</tt> <tt class="py-line"> </tt>
-<a name="L3070"></a><tt class="py-lineno">3070</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3071"></a><tt class="py-lineno">3071</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3072"></a><tt class="py-lineno">3072</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3073"></a><tt class="py-lineno">3073</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3074"></a><tt class="py-lineno">3074</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3075"></a><tt class="py-lineno">3075</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3076"></a><tt class="py-lineno">3076</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L3077"></a><tt class="py-lineno">3077</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3078"></a><tt class="py-lineno">3078</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3079"></a><tt class="py-lineno">3079</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1032" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1032', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1033" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1033', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L3080"></a><tt class="py-lineno">3080</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3081"></a><tt class="py-lineno">3081</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3082"></a><tt class="py-lineno">3082</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3083"></a><tt class="py-lineno">3083</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3084"></a><tt class="py-lineno">3084</tt> <tt class="py-line"> <tt id="link-1034" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1034', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3085"></a><tt class="py-lineno">3085</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3086"></a><tt class="py-lineno">3086</tt> <tt class="py-line"> </tt>
-<a name="L3087"></a><tt class="py-lineno">3087</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1035" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1035', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3088"></a><tt class="py-lineno">3088</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1036" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1036', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1037" class="py-name" targets="Function TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#counterCheck,Function TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#counterCheck,Function TestON.tests.HAsanity.dependencies.Counters.counterCheck()=TestON.tests.HAsanity.dependencies.Counters-module.html#counterCheck,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#counterCheck"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1037', 'counterCheck', 'link-1037');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">pCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3089"></a><tt class="py-lineno">3089</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3090"></a><tt class="py-lineno">3090</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L3091"></a><tt class="py-lineno">3091</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3092"></a><tt class="py-lineno">3092</tt> <tt class="py-line"> <tt id="link-1038" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1038', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3093"></a><tt class="py-lineno">3093</tt> <tt class="py-line"> </tt>
-<a name="L3094"></a><tt class="py-lineno">3094</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1039" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1039', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add -8 to then get a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3095"></a><tt class="py-lineno">3095</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3096"></a><tt class="py-lineno">3096</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3097"></a><tt class="py-lineno">3097</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3098"></a><tt class="py-lineno">3098</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3099"></a><tt class="py-lineno">3099</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1040" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1040', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1041" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1041', 'counterTestAddAndGet', 'link-1025');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3100"></a><tt class="py-lineno">3100</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3101"></a><tt class="py-lineno">3101</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3102"></a><tt class="py-lineno">3102</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-op">-</tt><tt class="py-number">8</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3103"></a><tt class="py-lineno">3103</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-op">-</tt><tt class="py-number">8</tt> </tt>
-<a name="L3104"></a><tt class="py-lineno">3104</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3105"></a><tt class="py-lineno">3105</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3106"></a><tt class="py-lineno">3106</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3107"></a><tt class="py-lineno">3107</tt> <tt class="py-line"> </tt>
-<a name="L3108"></a><tt class="py-lineno">3108</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3109"></a><tt class="py-lineno">3109</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3110"></a><tt class="py-lineno">3110</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3111"></a><tt class="py-lineno">3111</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3112"></a><tt class="py-lineno">3112</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3113"></a><tt class="py-lineno">3113</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3114"></a><tt class="py-lineno">3114</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L3115"></a><tt class="py-lineno">3115</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3116"></a><tt class="py-lineno">3116</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3117"></a><tt class="py-lineno">3117</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1042" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1042', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1043" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1043', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L3118"></a><tt class="py-lineno">3118</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3119"></a><tt class="py-lineno">3119</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3120"></a><tt class="py-lineno">3120</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3121"></a><tt class="py-lineno">3121</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3122"></a><tt class="py-lineno">3122</tt> <tt class="py-line"> <tt id="link-1044" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1044', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3123"></a><tt class="py-lineno">3123</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3124"></a><tt class="py-lineno">3124</tt> <tt class="py-line"> </tt>
-<a name="L3125"></a><tt class="py-lineno">3125</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1045" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1045', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add 5 to then get a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3126"></a><tt class="py-lineno">3126</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3127"></a><tt class="py-lineno">3127</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3128"></a><tt class="py-lineno">3128</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3129"></a><tt class="py-lineno">3129</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3130"></a><tt class="py-lineno">3130</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1046" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1046', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1047" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1047', 'counterTestAddAndGet', 'link-1025');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3131"></a><tt class="py-lineno">3131</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3132"></a><tt class="py-lineno">3132</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3133"></a><tt class="py-lineno">3133</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-number">5</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3134"></a><tt class="py-lineno">3134</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L3135"></a><tt class="py-lineno">3135</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3136"></a><tt class="py-lineno">3136</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3137"></a><tt class="py-lineno">3137</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3138"></a><tt class="py-lineno">3138</tt> <tt class="py-line"> </tt>
-<a name="L3139"></a><tt class="py-lineno">3139</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3140"></a><tt class="py-lineno">3140</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3141"></a><tt class="py-lineno">3141</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3142"></a><tt class="py-lineno">3142</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3143"></a><tt class="py-lineno">3143</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3144"></a><tt class="py-lineno">3144</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3145"></a><tt class="py-lineno">3145</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L3146"></a><tt class="py-lineno">3146</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3147"></a><tt class="py-lineno">3147</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3148"></a><tt class="py-lineno">3148</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1048" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1048', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1049" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1049', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L3149"></a><tt class="py-lineno">3149</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3150"></a><tt class="py-lineno">3150</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3151"></a><tt class="py-lineno">3151</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3152"></a><tt class="py-lineno">3152</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3153"></a><tt class="py-lineno">3153</tt> <tt class="py-line"> <tt id="link-1050" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1050', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3154"></a><tt class="py-lineno">3154</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3155"></a><tt class="py-lineno">3155</tt> <tt class="py-line"> </tt>
-<a name="L3156"></a><tt class="py-lineno">3156</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1051" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1051', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get then add 5 to a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3157"></a><tt class="py-lineno">3157</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3158"></a><tt class="py-lineno">3158</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3159"></a><tt class="py-lineno">3159</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3160"></a><tt class="py-lineno">3160</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3161"></a><tt class="py-lineno">3161</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1052" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1052', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1053" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd" class="py-name" href="#" onclick="return doclink('link-1053', 'counterTestGetAndAdd', 'link-1031');">counterTestGetAndAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3162"></a><tt class="py-lineno">3162</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3163"></a><tt class="py-lineno">3163</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3164"></a><tt class="py-lineno">3164</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-number">5</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3165"></a><tt class="py-lineno">3165</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3166"></a><tt class="py-lineno">3166</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L3167"></a><tt class="py-lineno">3167</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3168"></a><tt class="py-lineno">3168</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3169"></a><tt class="py-lineno">3169</tt> <tt class="py-line"> </tt>
-<a name="L3170"></a><tt class="py-lineno">3170</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3171"></a><tt class="py-lineno">3171</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3172"></a><tt class="py-lineno">3172</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3173"></a><tt class="py-lineno">3173</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3174"></a><tt class="py-lineno">3174</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3175"></a><tt class="py-lineno">3175</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3176"></a><tt class="py-lineno">3176</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L3177"></a><tt class="py-lineno">3177</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3178"></a><tt class="py-lineno">3178</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3179"></a><tt class="py-lineno">3179</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1054" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1054', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1055" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1055', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L3180"></a><tt class="py-lineno">3180</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3181"></a><tt class="py-lineno">3181</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3182"></a><tt class="py-lineno">3182</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3183"></a><tt class="py-lineno">3183</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3184"></a><tt class="py-lineno">3184</tt> <tt class="py-line"> <tt id="link-1056" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1056', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3185"></a><tt class="py-lineno">3185</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3186"></a><tt class="py-lineno">3186</tt> <tt class="py-line"> </tt>
-<a name="L3187"></a><tt class="py-lineno">3187</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1057" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1057', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3188"></a><tt class="py-lineno">3188</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1058" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1058', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1059" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1059', 'counterCheck', 'link-1037');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">pCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3189"></a><tt class="py-lineno">3189</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3190"></a><tt class="py-lineno">3190</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L3191"></a><tt class="py-lineno">3191</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3192"></a><tt class="py-lineno">3192</tt> <tt class="py-line"> <tt id="link-1060" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1060', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3193"></a><tt class="py-lineno">3193</tt> <tt class="py-line"> </tt>
-<a name="L3194"></a><tt class="py-lineno">3194</tt> <tt class="py-line"> <tt class="py-comment"># In-Memory counters</tt> </tt>
-<a name="L3195"></a><tt class="py-lineno">3195</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1061" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1061', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Increment and get an in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3196"></a><tt class="py-lineno">3196</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3197"></a><tt class="py-lineno">3197</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3198"></a><tt class="py-lineno">3198</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3199"></a><tt class="py-lineno">3199</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3200"></a><tt class="py-lineno">3200</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1062" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1062', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1063" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1063', 'counterTestAddAndGet', 'link-1025');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3201"></a><tt class="py-lineno">3201</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"icounterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3202"></a><tt class="py-lineno">3202</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3203"></a><tt class="py-lineno">3203</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3204"></a><tt class="py-lineno">3204</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L3205"></a><tt class="py-lineno">3205</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3206"></a><tt class="py-lineno">3206</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3207"></a><tt class="py-lineno">3207</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3208"></a><tt class="py-lineno">3208</tt> <tt class="py-line"> </tt>
-<a name="L3209"></a><tt class="py-lineno">3209</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3210"></a><tt class="py-lineno">3210</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3211"></a><tt class="py-lineno">3211</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3212"></a><tt class="py-lineno">3212</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3213"></a><tt class="py-lineno">3213</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3214"></a><tt class="py-lineno">3214</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3215"></a><tt class="py-lineno">3215</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L3216"></a><tt class="py-lineno">3216</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3217"></a><tt class="py-lineno">3217</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3218"></a><tt class="py-lineno">3218</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1064" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1064', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1065" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1065', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in the in-memory "</tt> </tt>
-<a name="L3219"></a><tt class="py-lineno">3219</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3220"></a><tt class="py-lineno">3220</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3221"></a><tt class="py-lineno">3221</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">iCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3222"></a><tt class="py-lineno">3222</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3223"></a><tt class="py-lineno">3223</tt> <tt class="py-line"> <tt id="link-1066" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1066', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3224"></a><tt class="py-lineno">3224</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3225"></a><tt class="py-lineno">3225</tt> <tt class="py-line"> </tt>
-<a name="L3226"></a><tt class="py-lineno">3226</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1067" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1067', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get then Increment a in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3227"></a><tt class="py-lineno">3227</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3228"></a><tt class="py-lineno">3228</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3229"></a><tt class="py-lineno">3229</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3230"></a><tt class="py-lineno">3230</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3231"></a><tt class="py-lineno">3231</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1068" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1068', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1069" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd" class="py-name" href="#" onclick="return doclink('link-1069', 'counterTestGetAndAdd', 'link-1031');">counterTestGetAndAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3232"></a><tt class="py-lineno">3232</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterGetAndAdd-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3233"></a><tt class="py-lineno">3233</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3234"></a><tt class="py-lineno">3234</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3235"></a><tt class="py-lineno">3235</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3236"></a><tt class="py-lineno">3236</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L3237"></a><tt class="py-lineno">3237</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3238"></a><tt class="py-lineno">3238</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3239"></a><tt class="py-lineno">3239</tt> <tt class="py-line"> </tt>
-<a name="L3240"></a><tt class="py-lineno">3240</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3241"></a><tt class="py-lineno">3241</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3242"></a><tt class="py-lineno">3242</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3243"></a><tt class="py-lineno">3243</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3244"></a><tt class="py-lineno">3244</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3245"></a><tt class="py-lineno">3245</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3246"></a><tt class="py-lineno">3246</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L3247"></a><tt class="py-lineno">3247</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3248"></a><tt class="py-lineno">3248</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3249"></a><tt class="py-lineno">3249</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1070" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1070', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1071" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1071', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in in-memory "</tt> </tt>
-<a name="L3250"></a><tt class="py-lineno">3250</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3251"></a><tt class="py-lineno">3251</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3252"></a><tt class="py-lineno">3252</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">iCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3253"></a><tt class="py-lineno">3253</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3254"></a><tt class="py-lineno">3254</tt> <tt class="py-line"> <tt id="link-1072" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1072', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3255"></a><tt class="py-lineno">3255</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3256"></a><tt class="py-lineno">3256</tt> <tt class="py-line"> </tt>
-<a name="L3257"></a><tt class="py-lineno">3257</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1073" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1073', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3258"></a><tt class="py-lineno">3258</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1074" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1074', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1075" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1075', 'counterCheck', 'link-1037');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3259"></a><tt class="py-lineno">3259</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3260"></a><tt class="py-lineno">3260</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L3261"></a><tt class="py-lineno">3261</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3262"></a><tt class="py-lineno">3262</tt> <tt class="py-line"> <tt id="link-1076" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1076', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3263"></a><tt class="py-lineno">3263</tt> <tt class="py-line"> </tt>
-<a name="L3264"></a><tt class="py-lineno">3264</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1077" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1077', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add -8 to then get a in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3265"></a><tt class="py-lineno">3265</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3266"></a><tt class="py-lineno">3266</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3267"></a><tt class="py-lineno">3267</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3268"></a><tt class="py-lineno">3268</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3269"></a><tt class="py-lineno">3269</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1078" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1078', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1079" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1079', 'counterTestAddAndGet', 'link-1025');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3270"></a><tt class="py-lineno">3270</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3271"></a><tt class="py-lineno">3271</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3272"></a><tt class="py-lineno">3272</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-op">-</tt><tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3273"></a><tt class="py-lineno">3273</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-op">-</tt><tt class="py-number">8</tt> </tt>
-<a name="L3274"></a><tt class="py-lineno">3274</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3275"></a><tt class="py-lineno">3275</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3276"></a><tt class="py-lineno">3276</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3277"></a><tt class="py-lineno">3277</tt> <tt class="py-line"> </tt>
-<a name="L3278"></a><tt class="py-lineno">3278</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3279"></a><tt class="py-lineno">3279</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3280"></a><tt class="py-lineno">3280</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3281"></a><tt class="py-lineno">3281</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3282"></a><tt class="py-lineno">3282</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3283"></a><tt class="py-lineno">3283</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3284"></a><tt class="py-lineno">3284</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L3285"></a><tt class="py-lineno">3285</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3286"></a><tt class="py-lineno">3286</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3287"></a><tt class="py-lineno">3287</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1080" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1080', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1081" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1081', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in in-memory "</tt> </tt>
-<a name="L3288"></a><tt class="py-lineno">3288</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3289"></a><tt class="py-lineno">3289</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3290"></a><tt class="py-lineno">3290</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3291"></a><tt class="py-lineno">3291</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3292"></a><tt class="py-lineno">3292</tt> <tt class="py-line"> <tt id="link-1082" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1082', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3293"></a><tt class="py-lineno">3293</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3294"></a><tt class="py-lineno">3294</tt> <tt class="py-line"> </tt>
-<a name="L3295"></a><tt class="py-lineno">3295</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1083" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1083', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add 5 to then get a in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3296"></a><tt class="py-lineno">3296</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3297"></a><tt class="py-lineno">3297</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3298"></a><tt class="py-lineno">3298</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3299"></a><tt class="py-lineno">3299</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3300"></a><tt class="py-lineno">3300</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1084" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1084', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1085" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1085', 'counterTestAddAndGet', 'link-1025');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3301"></a><tt class="py-lineno">3301</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3302"></a><tt class="py-lineno">3302</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3303"></a><tt class="py-lineno">3303</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-number">5</tt><tt class="py-op">,</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3304"></a><tt class="py-lineno">3304</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L3305"></a><tt class="py-lineno">3305</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3306"></a><tt class="py-lineno">3306</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3307"></a><tt class="py-lineno">3307</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3308"></a><tt class="py-lineno">3308</tt> <tt class="py-line"> </tt>
-<a name="L3309"></a><tt class="py-lineno">3309</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3310"></a><tt class="py-lineno">3310</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3311"></a><tt class="py-lineno">3311</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3312"></a><tt class="py-lineno">3312</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3313"></a><tt class="py-lineno">3313</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3314"></a><tt class="py-lineno">3314</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3315"></a><tt class="py-lineno">3315</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L3316"></a><tt class="py-lineno">3316</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3317"></a><tt class="py-lineno">3317</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3318"></a><tt class="py-lineno">3318</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1086" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1086', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1087" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1087', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in in-memory "</tt> </tt>
-<a name="L3319"></a><tt class="py-lineno">3319</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3320"></a><tt class="py-lineno">3320</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3321"></a><tt class="py-lineno">3321</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3322"></a><tt class="py-lineno">3322</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3323"></a><tt class="py-lineno">3323</tt> <tt class="py-line"> <tt id="link-1088" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1088', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3324"></a><tt class="py-lineno">3324</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3325"></a><tt class="py-lineno">3325</tt> <tt class="py-line"> </tt>
-<a name="L3326"></a><tt class="py-lineno">3326</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1089" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1089', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get then add 5 to a in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3327"></a><tt class="py-lineno">3327</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3328"></a><tt class="py-lineno">3328</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3329"></a><tt class="py-lineno">3329</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3330"></a><tt class="py-lineno">3330</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3331"></a><tt class="py-lineno">3331</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1090" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1090', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1091" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd" class="py-name" href="#" onclick="return doclink('link-1091', 'counterTestGetAndAdd', 'link-1031');">counterTestGetAndAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3332"></a><tt class="py-lineno">3332</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3333"></a><tt class="py-lineno">3333</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3334"></a><tt class="py-lineno">3334</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-number">5</tt><tt class="py-op">,</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3335"></a><tt class="py-lineno">3335</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3336"></a><tt class="py-lineno">3336</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L3337"></a><tt class="py-lineno">3337</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3338"></a><tt class="py-lineno">3338</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3339"></a><tt class="py-lineno">3339</tt> <tt class="py-line"> </tt>
-<a name="L3340"></a><tt class="py-lineno">3340</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3341"></a><tt class="py-lineno">3341</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3342"></a><tt class="py-lineno">3342</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3343"></a><tt class="py-lineno">3343</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3344"></a><tt class="py-lineno">3344</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3345"></a><tt class="py-lineno">3345</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3346"></a><tt class="py-lineno">3346</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L3347"></a><tt class="py-lineno">3347</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3348"></a><tt class="py-lineno">3348</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3349"></a><tt class="py-lineno">3349</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1092" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1092', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1093" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1093', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in in-memory "</tt> </tt>
-<a name="L3350"></a><tt class="py-lineno">3350</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3351"></a><tt class="py-lineno">3351</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3352"></a><tt class="py-lineno">3352</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">iCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3353"></a><tt class="py-lineno">3353</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3354"></a><tt class="py-lineno">3354</tt> <tt class="py-line"> <tt id="link-1094" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1094', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3355"></a><tt class="py-lineno">3355</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3356"></a><tt class="py-lineno">3356</tt> <tt class="py-line"> </tt>
-<a name="L3357"></a><tt class="py-lineno">3357</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1095" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1095', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3358"></a><tt class="py-lineno">3358</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1096" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1096', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1097" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1097', 'counterCheck', 'link-1037');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3359"></a><tt class="py-lineno">3359</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3360"></a><tt class="py-lineno">3360</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L3361"></a><tt class="py-lineno">3361</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3362"></a><tt class="py-lineno">3362</tt> <tt class="py-line"> <tt id="link-1098" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1098', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3363"></a><tt class="py-lineno">3363</tt> <tt class="py-line"> </tt>
-<a name="L3364"></a><tt class="py-lineno">3364</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1099" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1099', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check counters are consistant across nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3365"></a><tt class="py-lineno">3365</tt> <tt class="py-line"> <tt class="py-name">onosCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3366"></a><tt class="py-lineno">3366</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3367"></a><tt class="py-lineno">3367</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3368"></a><tt class="py-lineno">3368</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1100" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1100', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1101" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counters"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters" class="py-name" href="#" onclick="return doclink('link-1101', 'counters', 'link-1101');">counters</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3369"></a><tt class="py-lineno">3369</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counters-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3370"></a><tt class="py-lineno">3370</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3371"></a><tt class="py-lineno">3371</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3372"></a><tt class="py-lineno">3372</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3373"></a><tt class="py-lineno">3373</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3374"></a><tt class="py-lineno">3374</tt> <tt class="py-line"> <tt class="py-name">onosCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3375"></a><tt class="py-lineno">3375</tt> <tt class="py-line"> <tt class="py-name">tmp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosCounters</tt> <tt class="py-op">]</tt> </tt>
-<a name="L3376"></a><tt class="py-lineno">3376</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt> <tt class="py-name">tmp</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3377"></a><tt class="py-lineno">3377</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1102" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1102', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Counters are consistent across all nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3378"></a><tt class="py-lineno">3378</tt> <tt class="py-line"> <tt class="py-name">consistentCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3379"></a><tt class="py-lineno">3379</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3380"></a><tt class="py-lineno">3380</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1103" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1103', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1104" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1104', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters are not consistent across all nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3381"></a><tt class="py-lineno">3381</tt> <tt class="py-line"> <tt class="py-name">consistentCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3382"></a><tt class="py-lineno">3382</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3383"></a><tt class="py-lineno">3383</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3384"></a><tt class="py-lineno">3384</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS counters are consistent "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3385"></a><tt class="py-lineno">3385</tt> <tt class="py-line"> <tt class="py-string">"across nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3386"></a><tt class="py-lineno">3386</tt> <tt class="py-line"> <tt id="link-1105" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1105', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS Counters are inconsistent "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3387"></a><tt class="py-lineno">3387</tt> <tt class="py-line"> <tt class="py-string">"across nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3388"></a><tt class="py-lineno">3388</tt> <tt class="py-line"> </tt>
-<a name="L3389"></a><tt class="py-lineno">3389</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1106" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1106', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3390"></a><tt class="py-lineno">3390</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1107" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1107', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1108" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1108', 'counterCheck', 'link-1037');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3391"></a><tt class="py-lineno">3391</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">incrementCheck</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L3392"></a><tt class="py-lineno">3392</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1109" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1109', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1110" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1110', 'counterCheck', 'link-1037');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3393"></a><tt class="py-lineno">3393</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3394"></a><tt class="py-lineno">3394</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L3395"></a><tt class="py-lineno">3395</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3396"></a><tt class="py-lineno">3396</tt> <tt class="py-line"> <tt id="link-1111" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1111', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3397"></a><tt class="py-lineno">3397</tt> <tt class="py-line"> </tt>
-<a name="L3398"></a><tt class="py-lineno">3398</tt> <tt class="py-line"> <tt class="py-comment"># DISTRIBUTED SETS</tt> </tt>
-<a name="L3399"></a><tt class="py-lineno">3399</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1112" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1112', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set get"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3400"></a><tt class="py-lineno">3400</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3401"></a><tt class="py-lineno">3401</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3402"></a><tt class="py-lineno">3402</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3403"></a><tt class="py-lineno">3403</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3404"></a><tt class="py-lineno">3404</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1113" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1113', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1114" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestGet"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1114', 'setTestGet', 'link-1114');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3405"></a><tt class="py-lineno">3405</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3406"></a><tt class="py-lineno">3406</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3407"></a><tt class="py-lineno">3407</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3408"></a><tt class="py-lineno">3408</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3409"></a><tt class="py-lineno">3409</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3410"></a><tt class="py-lineno">3410</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3411"></a><tt class="py-lineno">3411</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3412"></a><tt class="py-lineno">3412</tt> <tt class="py-line"> </tt>
-<a name="L3413"></a><tt class="py-lineno">3413</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3414"></a><tt class="py-lineno">3414</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3415"></a><tt class="py-lineno">3415</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3416"></a><tt class="py-lineno">3416</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3417"></a><tt class="py-lineno">3417</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3418"></a><tt class="py-lineno">3418</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3419"></a><tt class="py-lineno">3419</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3420"></a><tt class="py-lineno">3420</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1115" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1115', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1116" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1116', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3421"></a><tt class="py-lineno">3421</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3422"></a><tt class="py-lineno">3422</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3423"></a><tt class="py-lineno">3423</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3424"></a><tt class="py-lineno">3424</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1117" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1117', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3425"></a><tt class="py-lineno">3425</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1118" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1118', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3426"></a><tt class="py-lineno">3426</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3427"></a><tt class="py-lineno">3427</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3428"></a><tt class="py-lineno">3428</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3429"></a><tt class="py-lineno">3429</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1119" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1119', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1120" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1120', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3430"></a><tt class="py-lineno">3430</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3431"></a><tt class="py-lineno">3431</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3432"></a><tt class="py-lineno">3432</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3433"></a><tt class="py-lineno">3433</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3434"></a><tt class="py-lineno">3434</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3435"></a><tt class="py-lineno">3435</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3436"></a><tt class="py-lineno">3436</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3437"></a><tt class="py-lineno">3437</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">getResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3438"></a><tt class="py-lineno">3438</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set elements are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3439"></a><tt class="py-lineno">3439</tt> <tt class="py-line"> <tt id="link-1121" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1121', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set elements are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3440"></a><tt class="py-lineno">3440</tt> <tt class="py-line"> </tt>
-<a name="L3441"></a><tt class="py-lineno">3441</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1122" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1122', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set size"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3442"></a><tt class="py-lineno">3442</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3443"></a><tt class="py-lineno">3443</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3444"></a><tt class="py-lineno">3444</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3445"></a><tt class="py-lineno">3445</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1123" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1123', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1124" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestSize"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1124', 'setTestSize', 'link-1124');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3446"></a><tt class="py-lineno">3446</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3447"></a><tt class="py-lineno">3447</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3448"></a><tt class="py-lineno">3448</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3449"></a><tt class="py-lineno">3449</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3450"></a><tt class="py-lineno">3450</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3451"></a><tt class="py-lineno">3451</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3452"></a><tt class="py-lineno">3452</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3453"></a><tt class="py-lineno">3453</tt> <tt class="py-line"> </tt>
-<a name="L3454"></a><tt class="py-lineno">3454</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3455"></a><tt class="py-lineno">3455</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3456"></a><tt class="py-lineno">3456</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3457"></a><tt class="py-lineno">3457</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3458"></a><tt class="py-lineno">3458</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1125" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1125', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1126" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1126', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3459"></a><tt class="py-lineno">3459</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3460"></a><tt class="py-lineno">3460</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3461"></a><tt class="py-lineno">3461</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3462"></a><tt class="py-lineno">3462</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3463"></a><tt class="py-lineno">3463</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">sizeResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3464"></a><tt class="py-lineno">3464</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set sizes are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3465"></a><tt class="py-lineno">3465</tt> <tt class="py-line"> <tt id="link-1127" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1127', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set sizes are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3466"></a><tt class="py-lineno">3466</tt> <tt class="py-line"> </tt>
-<a name="L3467"></a><tt class="py-lineno">3467</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1128" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1128', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set add()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3468"></a><tt class="py-lineno">3468</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">add</tt><tt class="py-op">(</tt> <tt class="py-name">addValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3469"></a><tt class="py-lineno">3469</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3470"></a><tt class="py-lineno">3470</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3471"></a><tt class="py-lineno">3471</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3472"></a><tt class="py-lineno">3472</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1129" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1129', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1130" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestAdd"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd" class="py-name" href="#" onclick="return doclink('link-1130', 'setTestAdd', 'link-1130');">setTestAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3473"></a><tt class="py-lineno">3473</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestAdd-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3474"></a><tt class="py-lineno">3474</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3475"></a><tt class="py-lineno">3475</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3476"></a><tt class="py-lineno">3476</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3477"></a><tt class="py-lineno">3477</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3478"></a><tt class="py-lineno">3478</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3479"></a><tt class="py-lineno">3479</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3480"></a><tt class="py-lineno">3480</tt> <tt class="py-line"> </tt>
-<a name="L3481"></a><tt class="py-lineno">3481</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3482"></a><tt class="py-lineno">3482</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3483"></a><tt class="py-lineno">3483</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3484"></a><tt class="py-lineno">3484</tt> <tt class="py-line"> <tt class="py-name">addResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3485"></a><tt class="py-lineno">3485</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3486"></a><tt class="py-lineno">3486</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3487"></a><tt class="py-lineno">3487</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3488"></a><tt class="py-lineno">3488</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3489"></a><tt class="py-lineno">3489</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3490"></a><tt class="py-lineno">3490</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L3491"></a><tt class="py-lineno">3491</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3492"></a><tt class="py-lineno">3492</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3493"></a><tt class="py-lineno">3493</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3494"></a><tt class="py-lineno">3494</tt> <tt class="py-line"> <tt class="py-name">addResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3495"></a><tt class="py-lineno">3495</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3496"></a><tt class="py-lineno">3496</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3497"></a><tt class="py-lineno">3497</tt> <tt class="py-line"> <tt class="py-name">addResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3498"></a><tt class="py-lineno">3498</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3499"></a><tt class="py-lineno">3499</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1131" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1131', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1132" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1132', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set add"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3500"></a><tt class="py-lineno">3500</tt> <tt class="py-line"> </tt>
-<a name="L3501"></a><tt class="py-lineno">3501</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3502"></a><tt class="py-lineno">3502</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3503"></a><tt class="py-lineno">3503</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3504"></a><tt class="py-lineno">3504</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3505"></a><tt class="py-lineno">3505</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3506"></a><tt class="py-lineno">3506</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1133" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1133', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1134" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1134', 'setTestGet', 'link-1114');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3507"></a><tt class="py-lineno">3507</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3508"></a><tt class="py-lineno">3508</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3509"></a><tt class="py-lineno">3509</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3510"></a><tt class="py-lineno">3510</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3511"></a><tt class="py-lineno">3511</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3512"></a><tt class="py-lineno">3512</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3513"></a><tt class="py-lineno">3513</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3514"></a><tt class="py-lineno">3514</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3515"></a><tt class="py-lineno">3515</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3516"></a><tt class="py-lineno">3516</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3517"></a><tt class="py-lineno">3517</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3518"></a><tt class="py-lineno">3518</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3519"></a><tt class="py-lineno">3519</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3520"></a><tt class="py-lineno">3520</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3521"></a><tt class="py-lineno">3521</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1135" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1135', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1136" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1136', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3522"></a><tt class="py-lineno">3522</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3523"></a><tt class="py-lineno">3523</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3524"></a><tt class="py-lineno">3524</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3525"></a><tt class="py-lineno">3525</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1137" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1137', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3526"></a><tt class="py-lineno">3526</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1138" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1138', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3527"></a><tt class="py-lineno">3527</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3528"></a><tt class="py-lineno">3528</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3529"></a><tt class="py-lineno">3529</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3530"></a><tt class="py-lineno">3530</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1139" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1139', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1140" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1140', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3531"></a><tt class="py-lineno">3531</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3532"></a><tt class="py-lineno">3532</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3533"></a><tt class="py-lineno">3533</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3534"></a><tt class="py-lineno">3534</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3535"></a><tt class="py-lineno">3535</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3536"></a><tt class="py-lineno">3536</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3537"></a><tt class="py-lineno">3537</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3538"></a><tt class="py-lineno">3538</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3539"></a><tt class="py-lineno">3539</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3540"></a><tt class="py-lineno">3540</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1141" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1141', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1142" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1142', 'setTestSize', 'link-1124');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3541"></a><tt class="py-lineno">3541</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3542"></a><tt class="py-lineno">3542</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3543"></a><tt class="py-lineno">3543</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3544"></a><tt class="py-lineno">3544</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3545"></a><tt class="py-lineno">3545</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3546"></a><tt class="py-lineno">3546</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3547"></a><tt class="py-lineno">3547</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3548"></a><tt class="py-lineno">3548</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3549"></a><tt class="py-lineno">3549</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3550"></a><tt class="py-lineno">3550</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3551"></a><tt class="py-lineno">3551</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3552"></a><tt class="py-lineno">3552</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1143" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1143', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1144" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1144', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3553"></a><tt class="py-lineno">3553</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3554"></a><tt class="py-lineno">3554</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3555"></a><tt class="py-lineno">3555</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3556"></a><tt class="py-lineno">3556</tt> <tt class="py-line"> <tt class="py-name">addResults</tt> <tt class="py-op">=</tt> <tt class="py-name">addResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3557"></a><tt class="py-lineno">3557</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3558"></a><tt class="py-lineno">3558</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">addResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3559"></a><tt class="py-lineno">3559</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set add correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3560"></a><tt class="py-lineno">3560</tt> <tt class="py-line"> <tt id="link-1145" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1145', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set add was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3561"></a><tt class="py-lineno">3561</tt> <tt class="py-line"> </tt>
-<a name="L3562"></a><tt class="py-lineno">3562</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1146" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1146', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set addAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3563"></a><tt class="py-lineno">3563</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt id="link-1147" class="py-name" targets="Method TestON.core.dicttoobject.DictToObject.update()=TestON.core.dicttoobject.DictToObject-class.html#update,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#update"><a title="TestON.core.dicttoobject.DictToObject.update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update" class="py-name" href="#" onclick="return doclink('link-1147', 'update', 'link-1147');">update</a></tt><tt class="py-op">(</tt> <tt class="py-name">addAllValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3564"></a><tt class="py-lineno">3564</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3565"></a><tt class="py-lineno">3565</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3566"></a><tt class="py-lineno">3566</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3567"></a><tt class="py-lineno">3567</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1148" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1148', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1149" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd" class="py-name" href="#" onclick="return doclink('link-1149', 'setTestAdd', 'link-1130');">setTestAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3568"></a><tt class="py-lineno">3568</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestAddAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3569"></a><tt class="py-lineno">3569</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3570"></a><tt class="py-lineno">3570</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3571"></a><tt class="py-lineno">3571</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3572"></a><tt class="py-lineno">3572</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3573"></a><tt class="py-lineno">3573</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3574"></a><tt class="py-lineno">3574</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3575"></a><tt class="py-lineno">3575</tt> <tt class="py-line"> </tt>
-<a name="L3576"></a><tt class="py-lineno">3576</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3577"></a><tt class="py-lineno">3577</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3578"></a><tt class="py-lineno">3578</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3579"></a><tt class="py-lineno">3579</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3580"></a><tt class="py-lineno">3580</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3581"></a><tt class="py-lineno">3581</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3582"></a><tt class="py-lineno">3582</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3583"></a><tt class="py-lineno">3583</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3584"></a><tt class="py-lineno">3584</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3585"></a><tt class="py-lineno">3585</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L3586"></a><tt class="py-lineno">3586</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3587"></a><tt class="py-lineno">3587</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3588"></a><tt class="py-lineno">3588</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3589"></a><tt class="py-lineno">3589</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3590"></a><tt class="py-lineno">3590</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3591"></a><tt class="py-lineno">3591</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3592"></a><tt class="py-lineno">3592</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3593"></a><tt class="py-lineno">3593</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addAllResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3594"></a><tt class="py-lineno">3594</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1150" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1150', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1151" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1151', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set addAll"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3595"></a><tt class="py-lineno">3595</tt> <tt class="py-line"> </tt>
-<a name="L3596"></a><tt class="py-lineno">3596</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3597"></a><tt class="py-lineno">3597</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3598"></a><tt class="py-lineno">3598</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3599"></a><tt class="py-lineno">3599</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3600"></a><tt class="py-lineno">3600</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3601"></a><tt class="py-lineno">3601</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1152" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1152', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1153" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1153', 'setTestGet', 'link-1114');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3602"></a><tt class="py-lineno">3602</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3603"></a><tt class="py-lineno">3603</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3604"></a><tt class="py-lineno">3604</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3605"></a><tt class="py-lineno">3605</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3606"></a><tt class="py-lineno">3606</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3607"></a><tt class="py-lineno">3607</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3608"></a><tt class="py-lineno">3608</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3609"></a><tt class="py-lineno">3609</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3610"></a><tt class="py-lineno">3610</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3611"></a><tt class="py-lineno">3611</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3612"></a><tt class="py-lineno">3612</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3613"></a><tt class="py-lineno">3613</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3614"></a><tt class="py-lineno">3614</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3615"></a><tt class="py-lineno">3615</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3616"></a><tt class="py-lineno">3616</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1154" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1154', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1155" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1155', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3617"></a><tt class="py-lineno">3617</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3618"></a><tt class="py-lineno">3618</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3619"></a><tt class="py-lineno">3619</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3620"></a><tt class="py-lineno">3620</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1156" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1156', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3621"></a><tt class="py-lineno">3621</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1157" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1157', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3622"></a><tt class="py-lineno">3622</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3623"></a><tt class="py-lineno">3623</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3624"></a><tt class="py-lineno">3624</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3625"></a><tt class="py-lineno">3625</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1158" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1158', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1159" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1159', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3626"></a><tt class="py-lineno">3626</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3627"></a><tt class="py-lineno">3627</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3628"></a><tt class="py-lineno">3628</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3629"></a><tt class="py-lineno">3629</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3630"></a><tt class="py-lineno">3630</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3631"></a><tt class="py-lineno">3631</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3632"></a><tt class="py-lineno">3632</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3633"></a><tt class="py-lineno">3633</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3634"></a><tt class="py-lineno">3634</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3635"></a><tt class="py-lineno">3635</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1160" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1160', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1161" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1161', 'setTestSize', 'link-1124');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3636"></a><tt class="py-lineno">3636</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3637"></a><tt class="py-lineno">3637</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3638"></a><tt class="py-lineno">3638</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3639"></a><tt class="py-lineno">3639</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3640"></a><tt class="py-lineno">3640</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3641"></a><tt class="py-lineno">3641</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3642"></a><tt class="py-lineno">3642</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3643"></a><tt class="py-lineno">3643</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3644"></a><tt class="py-lineno">3644</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3645"></a><tt class="py-lineno">3645</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3646"></a><tt class="py-lineno">3646</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3647"></a><tt class="py-lineno">3647</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1162" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1162', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1163" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1163', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3648"></a><tt class="py-lineno">3648</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3649"></a><tt class="py-lineno">3649</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3650"></a><tt class="py-lineno">3650</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3651"></a><tt class="py-lineno">3651</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">addAllResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3652"></a><tt class="py-lineno">3652</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3653"></a><tt class="py-lineno">3653</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">addAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3654"></a><tt class="py-lineno">3654</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3655"></a><tt class="py-lineno">3655</tt> <tt class="py-line"> <tt id="link-1164" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1164', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3656"></a><tt class="py-lineno">3656</tt> <tt class="py-line"> </tt>
-<a name="L3657"></a><tt class="py-lineno">3657</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1165" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1165', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set contains()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3658"></a><tt class="py-lineno">3658</tt> <tt class="py-line"> <tt class="py-name">containsResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3659"></a><tt class="py-lineno">3659</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3660"></a><tt class="py-lineno">3660</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3661"></a><tt class="py-lineno">3661</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1166" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1166', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1167" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1167', 'setTestGet', 'link-1114');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3662"></a><tt class="py-lineno">3662</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setContains-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3663"></a><tt class="py-lineno">3663</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3664"></a><tt class="py-lineno">3664</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"values"</tt><tt class="py-op">:</tt> <tt class="py-name">addValue</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3665"></a><tt class="py-lineno">3665</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3666"></a><tt class="py-lineno">3666</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3667"></a><tt class="py-lineno">3667</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3668"></a><tt class="py-lineno">3668</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3669"></a><tt class="py-lineno">3669</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: This is the tuple</tt> </tt>
-<a name="L3670"></a><tt class="py-lineno">3670</tt> <tt class="py-line"> <tt class="py-name">containsResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3671"></a><tt class="py-lineno">3671</tt> <tt class="py-line"> </tt>
-<a name="L3672"></a><tt class="py-lineno">3672</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3673"></a><tt class="py-lineno">3673</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3674"></a><tt class="py-lineno">3674</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">containsResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3675"></a><tt class="py-lineno">3675</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3676"></a><tt class="py-lineno">3676</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3677"></a><tt class="py-lineno">3677</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">containsResults</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L3678"></a><tt class="py-lineno">3678</tt> <tt class="py-line"> <tt class="py-name">containsResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L3679"></a><tt class="py-lineno">3679</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3680"></a><tt class="py-lineno">3680</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">containsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3681"></a><tt class="py-lineno">3681</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set contains is functional"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3682"></a><tt class="py-lineno">3682</tt> <tt class="py-line"> <tt id="link-1168" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1168', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set contains failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3683"></a><tt class="py-lineno">3683</tt> <tt class="py-line"> </tt>
-<a name="L3684"></a><tt class="py-lineno">3684</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1169" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1169', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set containsAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3685"></a><tt class="py-lineno">3685</tt> <tt class="py-line"> <tt class="py-name">containsAllResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3686"></a><tt class="py-lineno">3686</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3687"></a><tt class="py-lineno">3687</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3688"></a><tt class="py-lineno">3688</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1170" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1170', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1171" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1171', 'setTestGet', 'link-1114');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3689"></a><tt class="py-lineno">3689</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setContainsAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3690"></a><tt class="py-lineno">3690</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3691"></a><tt class="py-lineno">3691</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"values"</tt><tt class="py-op">:</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3692"></a><tt class="py-lineno">3692</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3693"></a><tt class="py-lineno">3693</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3694"></a><tt class="py-lineno">3694</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3695"></a><tt class="py-lineno">3695</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3696"></a><tt class="py-lineno">3696</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: This is the tuple</tt> </tt>
-<a name="L3697"></a><tt class="py-lineno">3697</tt> <tt class="py-line"> <tt class="py-name">containsAllResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3698"></a><tt class="py-lineno">3698</tt> <tt class="py-line"> </tt>
-<a name="L3699"></a><tt class="py-lineno">3699</tt> <tt class="py-line"> <tt class="py-name">containsAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3700"></a><tt class="py-lineno">3700</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3701"></a><tt class="py-lineno">3701</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">containsResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3702"></a><tt class="py-lineno">3702</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3703"></a><tt class="py-lineno">3703</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3704"></a><tt class="py-lineno">3704</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">containsResults</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L3705"></a><tt class="py-lineno">3705</tt> <tt class="py-line"> <tt class="py-name">containsResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L3706"></a><tt class="py-lineno">3706</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3707"></a><tt class="py-lineno">3707</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">containsAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3708"></a><tt class="py-lineno">3708</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set containsAll is functional"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3709"></a><tt class="py-lineno">3709</tt> <tt class="py-line"> <tt id="link-1172" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1172', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set containsAll failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3710"></a><tt class="py-lineno">3710</tt> <tt class="py-line"> </tt>
-<a name="L3711"></a><tt class="py-lineno">3711</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1173" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1173', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set remove()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3712"></a><tt class="py-lineno">3712</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt> <tt class="py-name">addValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3713"></a><tt class="py-lineno">3713</tt> <tt class="py-line"> <tt class="py-name">removeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3714"></a><tt class="py-lineno">3714</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3715"></a><tt class="py-lineno">3715</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3716"></a><tt class="py-lineno">3716</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1174" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1174', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1175" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestRemove"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove" class="py-name" href="#" onclick="return doclink('link-1175', 'setTestRemove', 'link-1175');">setTestRemove</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3717"></a><tt class="py-lineno">3717</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestRemove-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3718"></a><tt class="py-lineno">3718</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3719"></a><tt class="py-lineno">3719</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3720"></a><tt class="py-lineno">3720</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3721"></a><tt class="py-lineno">3721</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3722"></a><tt class="py-lineno">3722</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3723"></a><tt class="py-lineno">3723</tt> <tt class="py-line"> <tt class="py-name">removeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3724"></a><tt class="py-lineno">3724</tt> <tt class="py-line"> </tt>
-<a name="L3725"></a><tt class="py-lineno">3725</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3726"></a><tt class="py-lineno">3726</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3727"></a><tt class="py-lineno">3727</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3728"></a><tt class="py-lineno">3728</tt> <tt class="py-line"> <tt class="py-name">removeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3729"></a><tt class="py-lineno">3729</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3730"></a><tt class="py-lineno">3730</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3731"></a><tt class="py-lineno">3731</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3732"></a><tt class="py-lineno">3732</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3733"></a><tt class="py-lineno">3733</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">removeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3734"></a><tt class="py-lineno">3734</tt> <tt class="py-line"> <tt class="py-comment"># not in set, probably fine</tt> </tt>
-<a name="L3735"></a><tt class="py-lineno">3735</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3736"></a><tt class="py-lineno">3736</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">removeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3737"></a><tt class="py-lineno">3737</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3738"></a><tt class="py-lineno">3738</tt> <tt class="py-line"> <tt class="py-name">removeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3739"></a><tt class="py-lineno">3739</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3740"></a><tt class="py-lineno">3740</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3741"></a><tt class="py-lineno">3741</tt> <tt class="py-line"> <tt class="py-name">removeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3742"></a><tt class="py-lineno">3742</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3743"></a><tt class="py-lineno">3743</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1176" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1176', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1177" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1177', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set remove"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3744"></a><tt class="py-lineno">3744</tt> <tt class="py-line"> </tt>
-<a name="L3745"></a><tt class="py-lineno">3745</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3746"></a><tt class="py-lineno">3746</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3747"></a><tt class="py-lineno">3747</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3748"></a><tt class="py-lineno">3748</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3749"></a><tt class="py-lineno">3749</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3750"></a><tt class="py-lineno">3750</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1178" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1178', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1179" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1179', 'setTestGet', 'link-1114');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3751"></a><tt class="py-lineno">3751</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3752"></a><tt class="py-lineno">3752</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3753"></a><tt class="py-lineno">3753</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3754"></a><tt class="py-lineno">3754</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3755"></a><tt class="py-lineno">3755</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3756"></a><tt class="py-lineno">3756</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3757"></a><tt class="py-lineno">3757</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3758"></a><tt class="py-lineno">3758</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3759"></a><tt class="py-lineno">3759</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3760"></a><tt class="py-lineno">3760</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3761"></a><tt class="py-lineno">3761</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3762"></a><tt class="py-lineno">3762</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3763"></a><tt class="py-lineno">3763</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3764"></a><tt class="py-lineno">3764</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3765"></a><tt class="py-lineno">3765</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1180" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1180', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1181" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1181', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3766"></a><tt class="py-lineno">3766</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3767"></a><tt class="py-lineno">3767</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3768"></a><tt class="py-lineno">3768</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3769"></a><tt class="py-lineno">3769</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1182" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1182', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3770"></a><tt class="py-lineno">3770</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1183" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1183', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3771"></a><tt class="py-lineno">3771</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3772"></a><tt class="py-lineno">3772</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3773"></a><tt class="py-lineno">3773</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3774"></a><tt class="py-lineno">3774</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1184" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1184', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1185" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1185', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3775"></a><tt class="py-lineno">3775</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3776"></a><tt class="py-lineno">3776</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3777"></a><tt class="py-lineno">3777</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3778"></a><tt class="py-lineno">3778</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3779"></a><tt class="py-lineno">3779</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3780"></a><tt class="py-lineno">3780</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3781"></a><tt class="py-lineno">3781</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3782"></a><tt class="py-lineno">3782</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3783"></a><tt class="py-lineno">3783</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3784"></a><tt class="py-lineno">3784</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1186" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1186', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1187" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1187', 'setTestSize', 'link-1124');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3785"></a><tt class="py-lineno">3785</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3786"></a><tt class="py-lineno">3786</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3787"></a><tt class="py-lineno">3787</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3788"></a><tt class="py-lineno">3788</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3789"></a><tt class="py-lineno">3789</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3790"></a><tt class="py-lineno">3790</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3791"></a><tt class="py-lineno">3791</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3792"></a><tt class="py-lineno">3792</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3793"></a><tt class="py-lineno">3793</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3794"></a><tt class="py-lineno">3794</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3795"></a><tt class="py-lineno">3795</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3796"></a><tt class="py-lineno">3796</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1188" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1188', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1189" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1189', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3797"></a><tt class="py-lineno">3797</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3798"></a><tt class="py-lineno">3798</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3799"></a><tt class="py-lineno">3799</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3800"></a><tt class="py-lineno">3800</tt> <tt class="py-line"> <tt class="py-name">removeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">removeResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3801"></a><tt class="py-lineno">3801</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3802"></a><tt class="py-lineno">3802</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">removeResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3803"></a><tt class="py-lineno">3803</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set remove correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3804"></a><tt class="py-lineno">3804</tt> <tt class="py-line"> <tt id="link-1190" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1190', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set remove was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3805"></a><tt class="py-lineno">3805</tt> <tt class="py-line"> </tt>
-<a name="L3806"></a><tt class="py-lineno">3806</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1191" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1191', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set removeAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3807"></a><tt class="py-lineno">3807</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">difference_update</tt><tt class="py-op">(</tt> <tt class="py-name">addAllValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3808"></a><tt class="py-lineno">3808</tt> <tt class="py-line"> <tt class="py-name">removeAllResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3809"></a><tt class="py-lineno">3809</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3810"></a><tt class="py-lineno">3810</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3811"></a><tt class="py-lineno">3811</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3812"></a><tt class="py-lineno">3812</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1192" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1192', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1193" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove" class="py-name" href="#" onclick="return doclink('link-1193', 'setTestRemove', 'link-1175');">setTestRemove</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3813"></a><tt class="py-lineno">3813</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestRemoveAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3814"></a><tt class="py-lineno">3814</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3815"></a><tt class="py-lineno">3815</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3816"></a><tt class="py-lineno">3816</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3817"></a><tt class="py-lineno">3817</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3818"></a><tt class="py-lineno">3818</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3819"></a><tt class="py-lineno">3819</tt> <tt class="py-line"> <tt class="py-name">removeAllResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3820"></a><tt class="py-lineno">3820</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L3821"></a><tt class="py-lineno">3821</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1194" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1194', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L3822"></a><tt class="py-lineno">3822</tt> <tt class="py-line"> </tt>
-<a name="L3823"></a><tt class="py-lineno">3823</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3824"></a><tt class="py-lineno">3824</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3825"></a><tt class="py-lineno">3825</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3826"></a><tt class="py-lineno">3826</tt> <tt class="py-line"> <tt class="py-name">removeAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3827"></a><tt class="py-lineno">3827</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3828"></a><tt class="py-lineno">3828</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeAllResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3829"></a><tt class="py-lineno">3829</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3830"></a><tt class="py-lineno">3830</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3831"></a><tt class="py-lineno">3831</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">removeAllResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3832"></a><tt class="py-lineno">3832</tt> <tt class="py-line"> <tt class="py-comment"># not in set, probably fine</tt> </tt>
-<a name="L3833"></a><tt class="py-lineno">3833</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3834"></a><tt class="py-lineno">3834</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">removeAllResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3835"></a><tt class="py-lineno">3835</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3836"></a><tt class="py-lineno">3836</tt> <tt class="py-line"> <tt class="py-name">removeAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3837"></a><tt class="py-lineno">3837</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3838"></a><tt class="py-lineno">3838</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3839"></a><tt class="py-lineno">3839</tt> <tt class="py-line"> <tt class="py-name">removeAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3840"></a><tt class="py-lineno">3840</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeAllResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3841"></a><tt class="py-lineno">3841</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1195" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1195', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1196" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1196', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set removeAll"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3842"></a><tt class="py-lineno">3842</tt> <tt class="py-line"> </tt>
-<a name="L3843"></a><tt class="py-lineno">3843</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3844"></a><tt class="py-lineno">3844</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3845"></a><tt class="py-lineno">3845</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3846"></a><tt class="py-lineno">3846</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3847"></a><tt class="py-lineno">3847</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3848"></a><tt class="py-lineno">3848</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1197" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1197', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1198" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1198', 'setTestGet', 'link-1114');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3849"></a><tt class="py-lineno">3849</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3850"></a><tt class="py-lineno">3850</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3851"></a><tt class="py-lineno">3851</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3852"></a><tt class="py-lineno">3852</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3853"></a><tt class="py-lineno">3853</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3854"></a><tt class="py-lineno">3854</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3855"></a><tt class="py-lineno">3855</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3856"></a><tt class="py-lineno">3856</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3857"></a><tt class="py-lineno">3857</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3858"></a><tt class="py-lineno">3858</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3859"></a><tt class="py-lineno">3859</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3860"></a><tt class="py-lineno">3860</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3861"></a><tt class="py-lineno">3861</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3862"></a><tt class="py-lineno">3862</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3863"></a><tt class="py-lineno">3863</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1199" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1199', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1200" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1200', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3864"></a><tt class="py-lineno">3864</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3865"></a><tt class="py-lineno">3865</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3866"></a><tt class="py-lineno">3866</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3867"></a><tt class="py-lineno">3867</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1201" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1201', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3868"></a><tt class="py-lineno">3868</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1202" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1202', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3869"></a><tt class="py-lineno">3869</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3870"></a><tt class="py-lineno">3870</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3871"></a><tt class="py-lineno">3871</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3872"></a><tt class="py-lineno">3872</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1203" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1203', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1204" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1204', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3873"></a><tt class="py-lineno">3873</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3874"></a><tt class="py-lineno">3874</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3875"></a><tt class="py-lineno">3875</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3876"></a><tt class="py-lineno">3876</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3877"></a><tt class="py-lineno">3877</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3878"></a><tt class="py-lineno">3878</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3879"></a><tt class="py-lineno">3879</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3880"></a><tt class="py-lineno">3880</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3881"></a><tt class="py-lineno">3881</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3882"></a><tt class="py-lineno">3882</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1205" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1205', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1206" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1206', 'setTestSize', 'link-1124');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3883"></a><tt class="py-lineno">3883</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3884"></a><tt class="py-lineno">3884</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3885"></a><tt class="py-lineno">3885</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3886"></a><tt class="py-lineno">3886</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3887"></a><tt class="py-lineno">3887</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3888"></a><tt class="py-lineno">3888</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3889"></a><tt class="py-lineno">3889</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3890"></a><tt class="py-lineno">3890</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3891"></a><tt class="py-lineno">3891</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3892"></a><tt class="py-lineno">3892</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3893"></a><tt class="py-lineno">3893</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3894"></a><tt class="py-lineno">3894</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1207" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1207', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1208" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1208', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3895"></a><tt class="py-lineno">3895</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3896"></a><tt class="py-lineno">3896</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3897"></a><tt class="py-lineno">3897</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3898"></a><tt class="py-lineno">3898</tt> <tt class="py-line"> <tt class="py-name">removeAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">removeAllResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3899"></a><tt class="py-lineno">3899</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3900"></a><tt class="py-lineno">3900</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">removeAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3901"></a><tt class="py-lineno">3901</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set removeAll correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3902"></a><tt class="py-lineno">3902</tt> <tt class="py-line"> <tt id="link-1209" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1209', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set removeAll was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3903"></a><tt class="py-lineno">3903</tt> <tt class="py-line"> </tt>
-<a name="L3904"></a><tt class="py-lineno">3904</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1210" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1210', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set addAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3905"></a><tt class="py-lineno">3905</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt id="link-1211" class="py-name"><a title="TestON.core.dicttoobject.DictToObject.update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update" class="py-name" href="#" onclick="return doclink('link-1211', 'update', 'link-1147');">update</a></tt><tt class="py-op">(</tt> <tt class="py-name">addAllValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3906"></a><tt class="py-lineno">3906</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3907"></a><tt class="py-lineno">3907</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3908"></a><tt class="py-lineno">3908</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3909"></a><tt class="py-lineno">3909</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1212" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1212', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1213" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd" class="py-name" href="#" onclick="return doclink('link-1213', 'setTestAdd', 'link-1130');">setTestAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3910"></a><tt class="py-lineno">3910</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestAddAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3911"></a><tt class="py-lineno">3911</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3912"></a><tt class="py-lineno">3912</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3913"></a><tt class="py-lineno">3913</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3914"></a><tt class="py-lineno">3914</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3915"></a><tt class="py-lineno">3915</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3916"></a><tt class="py-lineno">3916</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3917"></a><tt class="py-lineno">3917</tt> <tt class="py-line"> </tt>
-<a name="L3918"></a><tt class="py-lineno">3918</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3919"></a><tt class="py-lineno">3919</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3920"></a><tt class="py-lineno">3920</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3921"></a><tt class="py-lineno">3921</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3922"></a><tt class="py-lineno">3922</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3923"></a><tt class="py-lineno">3923</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3924"></a><tt class="py-lineno">3924</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3925"></a><tt class="py-lineno">3925</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3926"></a><tt class="py-lineno">3926</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3927"></a><tt class="py-lineno">3927</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L3928"></a><tt class="py-lineno">3928</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3929"></a><tt class="py-lineno">3929</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3930"></a><tt class="py-lineno">3930</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3931"></a><tt class="py-lineno">3931</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3932"></a><tt class="py-lineno">3932</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3933"></a><tt class="py-lineno">3933</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3934"></a><tt class="py-lineno">3934</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3935"></a><tt class="py-lineno">3935</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addAllResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3936"></a><tt class="py-lineno">3936</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1214" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1214', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1215" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1215', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set addAll"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3937"></a><tt class="py-lineno">3937</tt> <tt class="py-line"> </tt>
-<a name="L3938"></a><tt class="py-lineno">3938</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3939"></a><tt class="py-lineno">3939</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3940"></a><tt class="py-lineno">3940</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3941"></a><tt class="py-lineno">3941</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3942"></a><tt class="py-lineno">3942</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3943"></a><tt class="py-lineno">3943</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1216" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1216', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1217" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1217', 'setTestGet', 'link-1114');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3944"></a><tt class="py-lineno">3944</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3945"></a><tt class="py-lineno">3945</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3946"></a><tt class="py-lineno">3946</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3947"></a><tt class="py-lineno">3947</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3948"></a><tt class="py-lineno">3948</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3949"></a><tt class="py-lineno">3949</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3950"></a><tt class="py-lineno">3950</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3951"></a><tt class="py-lineno">3951</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3952"></a><tt class="py-lineno">3952</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3953"></a><tt class="py-lineno">3953</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3954"></a><tt class="py-lineno">3954</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3955"></a><tt class="py-lineno">3955</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3956"></a><tt class="py-lineno">3956</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3957"></a><tt class="py-lineno">3957</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3958"></a><tt class="py-lineno">3958</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1218" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1218', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1219" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1219', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3959"></a><tt class="py-lineno">3959</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3960"></a><tt class="py-lineno">3960</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3961"></a><tt class="py-lineno">3961</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3962"></a><tt class="py-lineno">3962</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1220" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1220', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3963"></a><tt class="py-lineno">3963</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1221" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1221', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3964"></a><tt class="py-lineno">3964</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3965"></a><tt class="py-lineno">3965</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3966"></a><tt class="py-lineno">3966</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3967"></a><tt class="py-lineno">3967</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1222" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1222', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1223" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1223', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3968"></a><tt class="py-lineno">3968</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3969"></a><tt class="py-lineno">3969</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3970"></a><tt class="py-lineno">3970</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3971"></a><tt class="py-lineno">3971</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3972"></a><tt class="py-lineno">3972</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3973"></a><tt class="py-lineno">3973</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3974"></a><tt class="py-lineno">3974</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3975"></a><tt class="py-lineno">3975</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3976"></a><tt class="py-lineno">3976</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3977"></a><tt class="py-lineno">3977</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1224" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1224', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1225" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1225', 'setTestSize', 'link-1124');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3978"></a><tt class="py-lineno">3978</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3979"></a><tt class="py-lineno">3979</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3980"></a><tt class="py-lineno">3980</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3981"></a><tt class="py-lineno">3981</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3982"></a><tt class="py-lineno">3982</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3983"></a><tt class="py-lineno">3983</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3984"></a><tt class="py-lineno">3984</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3985"></a><tt class="py-lineno">3985</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3986"></a><tt class="py-lineno">3986</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3987"></a><tt class="py-lineno">3987</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3988"></a><tt class="py-lineno">3988</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3989"></a><tt class="py-lineno">3989</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1226" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1226', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1227" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1227', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3990"></a><tt class="py-lineno">3990</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3991"></a><tt class="py-lineno">3991</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3992"></a><tt class="py-lineno">3992</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3993"></a><tt class="py-lineno">3993</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">addAllResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3994"></a><tt class="py-lineno">3994</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3995"></a><tt class="py-lineno">3995</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">addAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3996"></a><tt class="py-lineno">3996</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3997"></a><tt class="py-lineno">3997</tt> <tt class="py-line"> <tt id="link-1228" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1228', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3998"></a><tt class="py-lineno">3998</tt> <tt class="py-line"> </tt>
-<a name="L3999"></a><tt class="py-lineno">3999</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1229" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1229', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set clear()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4000"></a><tt class="py-lineno">4000</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">clear</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4001"></a><tt class="py-lineno">4001</tt> <tt class="py-line"> <tt class="py-name">clearResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4002"></a><tt class="py-lineno">4002</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4003"></a><tt class="py-lineno">4003</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4004"></a><tt class="py-lineno">4004</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1230" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1230', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1231" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove" class="py-name" href="#" onclick="return doclink('link-1231', 'setTestRemove', 'link-1175');">setTestRemove</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4005"></a><tt class="py-lineno">4005</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestClear-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4006"></a><tt class="py-lineno">4006</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-string">" "</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-comment"># Values doesn't matter</tt> </tt>
-<a name="L4007"></a><tt class="py-lineno">4007</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"clear"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4008"></a><tt class="py-lineno">4008</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4009"></a><tt class="py-lineno">4009</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4010"></a><tt class="py-lineno">4010</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4011"></a><tt class="py-lineno">4011</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4012"></a><tt class="py-lineno">4012</tt> <tt class="py-line"> <tt class="py-name">clearResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4013"></a><tt class="py-lineno">4013</tt> <tt class="py-line"> </tt>
-<a name="L4014"></a><tt class="py-lineno">4014</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L4015"></a><tt class="py-lineno">4015</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L4016"></a><tt class="py-lineno">4016</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L4017"></a><tt class="py-lineno">4017</tt> <tt class="py-line"> <tt class="py-name">clearResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4018"></a><tt class="py-lineno">4018</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4019"></a><tt class="py-lineno">4019</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">clearResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4020"></a><tt class="py-lineno">4020</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L4021"></a><tt class="py-lineno">4021</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L4022"></a><tt class="py-lineno">4022</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">clearResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4023"></a><tt class="py-lineno">4023</tt> <tt class="py-line"> <tt class="py-comment"># Nothing set, probably fine</tt> </tt>
-<a name="L4024"></a><tt class="py-lineno">4024</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L4025"></a><tt class="py-lineno">4025</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">clearResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L4026"></a><tt class="py-lineno">4026</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L4027"></a><tt class="py-lineno">4027</tt> <tt class="py-line"> <tt class="py-name">clearResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4028"></a><tt class="py-lineno">4028</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L4029"></a><tt class="py-lineno">4029</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L4030"></a><tt class="py-lineno">4030</tt> <tt class="py-line"> <tt class="py-name">clearResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4031"></a><tt class="py-lineno">4031</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">clearResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4032"></a><tt class="py-lineno">4032</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1232" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1232', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1233" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1233', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set clear"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4033"></a><tt class="py-lineno">4033</tt> <tt class="py-line"> </tt>
-<a name="L4034"></a><tt class="py-lineno">4034</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L4035"></a><tt class="py-lineno">4035</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4036"></a><tt class="py-lineno">4036</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4037"></a><tt class="py-lineno">4037</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4038"></a><tt class="py-lineno">4038</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4039"></a><tt class="py-lineno">4039</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1234" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1234', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1235" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1235', 'setTestGet', 'link-1114');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4040"></a><tt class="py-lineno">4040</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4041"></a><tt class="py-lineno">4041</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4042"></a><tt class="py-lineno">4042</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4043"></a><tt class="py-lineno">4043</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4044"></a><tt class="py-lineno">4044</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4045"></a><tt class="py-lineno">4045</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4046"></a><tt class="py-lineno">4046</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4047"></a><tt class="py-lineno">4047</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4048"></a><tt class="py-lineno">4048</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4049"></a><tt class="py-lineno">4049</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4050"></a><tt class="py-lineno">4050</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4051"></a><tt class="py-lineno">4051</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4052"></a><tt class="py-lineno">4052</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L4053"></a><tt class="py-lineno">4053</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L4054"></a><tt class="py-lineno">4054</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1236" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1236', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1237" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1237', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4055"></a><tt class="py-lineno">4055</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4056"></a><tt class="py-lineno">4056</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4057"></a><tt class="py-lineno">4057</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4058"></a><tt class="py-lineno">4058</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1238" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1238', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4059"></a><tt class="py-lineno">4059</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1239" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1239', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4060"></a><tt class="py-lineno">4060</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4061"></a><tt class="py-lineno">4061</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L4062"></a><tt class="py-lineno">4062</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L4063"></a><tt class="py-lineno">4063</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1240" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1240', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1241" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1241', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4064"></a><tt class="py-lineno">4064</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4065"></a><tt class="py-lineno">4065</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4066"></a><tt class="py-lineno">4066</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4067"></a><tt class="py-lineno">4067</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4068"></a><tt class="py-lineno">4068</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L4069"></a><tt class="py-lineno">4069</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4070"></a><tt class="py-lineno">4070</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4071"></a><tt class="py-lineno">4071</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4072"></a><tt class="py-lineno">4072</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4073"></a><tt class="py-lineno">4073</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1242" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1242', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1243" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1243', 'setTestSize', 'link-1124');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4074"></a><tt class="py-lineno">4074</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4075"></a><tt class="py-lineno">4075</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4076"></a><tt class="py-lineno">4076</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4077"></a><tt class="py-lineno">4077</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4078"></a><tt class="py-lineno">4078</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4079"></a><tt class="py-lineno">4079</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4080"></a><tt class="py-lineno">4080</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4081"></a><tt class="py-lineno">4081</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4082"></a><tt class="py-lineno">4082</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4083"></a><tt class="py-lineno">4083</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L4084"></a><tt class="py-lineno">4084</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4085"></a><tt class="py-lineno">4085</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1244" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1244', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1245" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1245', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4086"></a><tt class="py-lineno">4086</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4087"></a><tt class="py-lineno">4087</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4088"></a><tt class="py-lineno">4088</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4089"></a><tt class="py-lineno">4089</tt> <tt class="py-line"> <tt class="py-name">clearResults</tt> <tt class="py-op">=</tt> <tt class="py-name">clearResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L4090"></a><tt class="py-lineno">4090</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L4091"></a><tt class="py-lineno">4091</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">clearResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L4092"></a><tt class="py-lineno">4092</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set clear correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L4093"></a><tt class="py-lineno">4093</tt> <tt class="py-line"> <tt id="link-1246" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1246', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set clear was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4094"></a><tt class="py-lineno">4094</tt> <tt class="py-line"> </tt>
-<a name="L4095"></a><tt class="py-lineno">4095</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1247" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1247', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set addAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4096"></a><tt class="py-lineno">4096</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt id="link-1248" class="py-name"><a title="TestON.core.dicttoobject.DictToObject.update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update" class="py-name" href="#" onclick="return doclink('link-1248', 'update', 'link-1147');">update</a></tt><tt class="py-op">(</tt> <tt class="py-name">addAllValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4097"></a><tt class="py-lineno">4097</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4098"></a><tt class="py-lineno">4098</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4099"></a><tt class="py-lineno">4099</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4100"></a><tt class="py-lineno">4100</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1249" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1249', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1250" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd" class="py-name" href="#" onclick="return doclink('link-1250', 'setTestAdd', 'link-1130');">setTestAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4101"></a><tt class="py-lineno">4101</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestAddAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4102"></a><tt class="py-lineno">4102</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4103"></a><tt class="py-lineno">4103</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4104"></a><tt class="py-lineno">4104</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4105"></a><tt class="py-lineno">4105</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4106"></a><tt class="py-lineno">4106</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4107"></a><tt class="py-lineno">4107</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4108"></a><tt class="py-lineno">4108</tt> <tt class="py-line"> </tt>
-<a name="L4109"></a><tt class="py-lineno">4109</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L4110"></a><tt class="py-lineno">4110</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L4111"></a><tt class="py-lineno">4111</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L4112"></a><tt class="py-lineno">4112</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4113"></a><tt class="py-lineno">4113</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4114"></a><tt class="py-lineno">4114</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4115"></a><tt class="py-lineno">4115</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L4116"></a><tt class="py-lineno">4116</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L4117"></a><tt class="py-lineno">4117</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4118"></a><tt class="py-lineno">4118</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L4119"></a><tt class="py-lineno">4119</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L4120"></a><tt class="py-lineno">4120</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L4121"></a><tt class="py-lineno">4121</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L4122"></a><tt class="py-lineno">4122</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4123"></a><tt class="py-lineno">4123</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L4124"></a><tt class="py-lineno">4124</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L4125"></a><tt class="py-lineno">4125</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4126"></a><tt class="py-lineno">4126</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addAllResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4127"></a><tt class="py-lineno">4127</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1251" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1251', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1252" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1252', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set addAll"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4128"></a><tt class="py-lineno">4128</tt> <tt class="py-line"> </tt>
-<a name="L4129"></a><tt class="py-lineno">4129</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L4130"></a><tt class="py-lineno">4130</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4131"></a><tt class="py-lineno">4131</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4132"></a><tt class="py-lineno">4132</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4133"></a><tt class="py-lineno">4133</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4134"></a><tt class="py-lineno">4134</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1253" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1253', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1254" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1254', 'setTestGet', 'link-1114');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4135"></a><tt class="py-lineno">4135</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4136"></a><tt class="py-lineno">4136</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4137"></a><tt class="py-lineno">4137</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4138"></a><tt class="py-lineno">4138</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4139"></a><tt class="py-lineno">4139</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4140"></a><tt class="py-lineno">4140</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4141"></a><tt class="py-lineno">4141</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4142"></a><tt class="py-lineno">4142</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4143"></a><tt class="py-lineno">4143</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4144"></a><tt class="py-lineno">4144</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4145"></a><tt class="py-lineno">4145</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4146"></a><tt class="py-lineno">4146</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4147"></a><tt class="py-lineno">4147</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L4148"></a><tt class="py-lineno">4148</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L4149"></a><tt class="py-lineno">4149</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1255" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1255', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1256" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1256', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4150"></a><tt class="py-lineno">4150</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4151"></a><tt class="py-lineno">4151</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4152"></a><tt class="py-lineno">4152</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4153"></a><tt class="py-lineno">4153</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1257" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1257', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4154"></a><tt class="py-lineno">4154</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1258" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1258', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4155"></a><tt class="py-lineno">4155</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4156"></a><tt class="py-lineno">4156</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L4157"></a><tt class="py-lineno">4157</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L4158"></a><tt class="py-lineno">4158</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1259" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1259', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1260" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1260', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4159"></a><tt class="py-lineno">4159</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4160"></a><tt class="py-lineno">4160</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4161"></a><tt class="py-lineno">4161</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4162"></a><tt class="py-lineno">4162</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4163"></a><tt class="py-lineno">4163</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L4164"></a><tt class="py-lineno">4164</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4165"></a><tt class="py-lineno">4165</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4166"></a><tt class="py-lineno">4166</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4167"></a><tt class="py-lineno">4167</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4168"></a><tt class="py-lineno">4168</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1261" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1261', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1262" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1262', 'setTestSize', 'link-1124');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4169"></a><tt class="py-lineno">4169</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4170"></a><tt class="py-lineno">4170</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4171"></a><tt class="py-lineno">4171</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4172"></a><tt class="py-lineno">4172</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4173"></a><tt class="py-lineno">4173</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4174"></a><tt class="py-lineno">4174</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4175"></a><tt class="py-lineno">4175</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4176"></a><tt class="py-lineno">4176</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4177"></a><tt class="py-lineno">4177</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4178"></a><tt class="py-lineno">4178</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L4179"></a><tt class="py-lineno">4179</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4180"></a><tt class="py-lineno">4180</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1263" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1263', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1264" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1264', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4181"></a><tt class="py-lineno">4181</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4182"></a><tt class="py-lineno">4182</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4183"></a><tt class="py-lineno">4183</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4184"></a><tt class="py-lineno">4184</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">addAllResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L4185"></a><tt class="py-lineno">4185</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L4186"></a><tt class="py-lineno">4186</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">addAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L4187"></a><tt class="py-lineno">4187</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L4188"></a><tt class="py-lineno">4188</tt> <tt class="py-line"> <tt id="link-1265" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1265', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4189"></a><tt class="py-lineno">4189</tt> <tt class="py-line"> </tt>
-<a name="L4190"></a><tt class="py-lineno">4190</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1266" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1266', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set retain()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4191"></a><tt class="py-lineno">4191</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">intersection_update</tt><tt class="py-op">(</tt> <tt class="py-name">retainValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4192"></a><tt class="py-lineno">4192</tt> <tt class="py-line"> <tt class="py-name">retainResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4193"></a><tt class="py-lineno">4193</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4194"></a><tt class="py-lineno">4194</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4195"></a><tt class="py-lineno">4195</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1267" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1267', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1268" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove" class="py-name" href="#" onclick="return doclink('link-1268', 'setTestRemove', 'link-1175');">setTestRemove</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4196"></a><tt class="py-lineno">4196</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestRetain-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4197"></a><tt class="py-lineno">4197</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">retainValue</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L4198"></a><tt class="py-lineno">4198</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"retain"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4199"></a><tt class="py-lineno">4199</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4200"></a><tt class="py-lineno">4200</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4201"></a><tt class="py-lineno">4201</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4202"></a><tt class="py-lineno">4202</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4203"></a><tt class="py-lineno">4203</tt> <tt class="py-line"> <tt class="py-name">retainResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4204"></a><tt class="py-lineno">4204</tt> <tt class="py-line"> </tt>
-<a name="L4205"></a><tt class="py-lineno">4205</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L4206"></a><tt class="py-lineno">4206</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L4207"></a><tt class="py-lineno">4207</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L4208"></a><tt class="py-lineno">4208</tt> <tt class="py-line"> <tt class="py-name">retainResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4209"></a><tt class="py-lineno">4209</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4210"></a><tt class="py-lineno">4210</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">retainResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4211"></a><tt class="py-lineno">4211</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L4212"></a><tt class="py-lineno">4212</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L4213"></a><tt class="py-lineno">4213</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">retainResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4214"></a><tt class="py-lineno">4214</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L4215"></a><tt class="py-lineno">4215</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L4216"></a><tt class="py-lineno">4216</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">retainResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L4217"></a><tt class="py-lineno">4217</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L4218"></a><tt class="py-lineno">4218</tt> <tt class="py-line"> <tt class="py-name">retainResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4219"></a><tt class="py-lineno">4219</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L4220"></a><tt class="py-lineno">4220</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L4221"></a><tt class="py-lineno">4221</tt> <tt class="py-line"> <tt class="py-name">retainResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4222"></a><tt class="py-lineno">4222</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">retainResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4223"></a><tt class="py-lineno">4223</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1269" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1269', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1270" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1270', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set retain"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4224"></a><tt class="py-lineno">4224</tt> <tt class="py-line"> </tt>
-<a name="L4225"></a><tt class="py-lineno">4225</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L4226"></a><tt class="py-lineno">4226</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4227"></a><tt class="py-lineno">4227</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4228"></a><tt class="py-lineno">4228</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4229"></a><tt class="py-lineno">4229</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4230"></a><tt class="py-lineno">4230</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1271" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1271', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1272" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1272', 'setTestGet', 'link-1114');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4231"></a><tt class="py-lineno">4231</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4232"></a><tt class="py-lineno">4232</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4233"></a><tt class="py-lineno">4233</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4234"></a><tt class="py-lineno">4234</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4235"></a><tt class="py-lineno">4235</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4236"></a><tt class="py-lineno">4236</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4237"></a><tt class="py-lineno">4237</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4238"></a><tt class="py-lineno">4238</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4239"></a><tt class="py-lineno">4239</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4240"></a><tt class="py-lineno">4240</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4241"></a><tt class="py-lineno">4241</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4242"></a><tt class="py-lineno">4242</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4243"></a><tt class="py-lineno">4243</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L4244"></a><tt class="py-lineno">4244</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L4245"></a><tt class="py-lineno">4245</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1273" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1273', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1274" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1274', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4246"></a><tt class="py-lineno">4246</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4247"></a><tt class="py-lineno">4247</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4248"></a><tt class="py-lineno">4248</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4249"></a><tt class="py-lineno">4249</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1275" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1275', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4250"></a><tt class="py-lineno">4250</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1276" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1276', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4251"></a><tt class="py-lineno">4251</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4252"></a><tt class="py-lineno">4252</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L4253"></a><tt class="py-lineno">4253</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L4254"></a><tt class="py-lineno">4254</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1277" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1277', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1278" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1278', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4255"></a><tt class="py-lineno">4255</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4256"></a><tt class="py-lineno">4256</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4257"></a><tt class="py-lineno">4257</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4258"></a><tt class="py-lineno">4258</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4259"></a><tt class="py-lineno">4259</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L4260"></a><tt class="py-lineno">4260</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4261"></a><tt class="py-lineno">4261</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4262"></a><tt class="py-lineno">4262</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4263"></a><tt class="py-lineno">4263</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4264"></a><tt class="py-lineno">4264</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1279" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1279', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1280" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1280', 'setTestSize', 'link-1124');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4265"></a><tt class="py-lineno">4265</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4266"></a><tt class="py-lineno">4266</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4267"></a><tt class="py-lineno">4267</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4268"></a><tt class="py-lineno">4268</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4269"></a><tt class="py-lineno">4269</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4270"></a><tt class="py-lineno">4270</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4271"></a><tt class="py-lineno">4271</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4272"></a><tt class="py-lineno">4272</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4273"></a><tt class="py-lineno">4273</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4274"></a><tt class="py-lineno">4274</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L4275"></a><tt class="py-lineno">4275</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4276"></a><tt class="py-lineno">4276</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1281" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1281', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1282" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1282', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4277"></a><tt class="py-lineno">4277</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4278"></a><tt class="py-lineno">4278</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4279"></a><tt class="py-lineno">4279</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4280"></a><tt class="py-lineno">4280</tt> <tt class="py-line"> <tt class="py-name">retainResults</tt> <tt class="py-op">=</tt> <tt class="py-name">retainResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L4281"></a><tt class="py-lineno">4281</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L4282"></a><tt class="py-lineno">4282</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">retainResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L4283"></a><tt class="py-lineno">4283</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set retain correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L4284"></a><tt class="py-lineno">4284</tt> <tt class="py-line"> <tt id="link-1283" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1283', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set retain was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-</div></div><a name="L4285"></a><tt class="py-lineno">4285</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html b/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html
deleted file mode 100644
index 02c488d..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html
+++ /dev/null
@@ -1,518 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAclusterRestart-module.html">Package HAclusterRestart</a> ::
- <a href="TestON.tests.HAclusterRestart.HAclusterRestart-module.html">Module HAclusterRestart</a> ::
- Class HAclusterRestart
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class HAclusterRestart</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE1" class="summary-sig-name">CASE1</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- CASE1 is to compile ONOS and push it to the test machines</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE2"></a><span class="summary-sig-name">CASE2</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Assign devices to controllers</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE21"></a><span class="summary-sig-name">CASE21</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Assign mastership to controllers</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE21">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE3"></a><span class="summary-sig-name">CASE3</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Assign intents</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE3">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE4"></a><span class="summary-sig-name">CASE4</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Ping across added host intents</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE4">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE5"></a><span class="summary-sig-name">CASE5</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Reading state of ONOS</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE5">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE6"></a><span class="summary-sig-name">CASE6</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- The Failure case.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE6">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE7"></a><span class="summary-sig-name">CASE7</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Check state after ONOS failure</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE7">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE8"></a><span class="summary-sig-name">CASE8</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Compare topo</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE8">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE9"></a><span class="summary-sig-name">CASE9</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Link s3-s28 down</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE9">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE10"></a><span class="summary-sig-name">CASE10</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Link s3-s28 up</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE10">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE11"></a><span class="summary-sig-name">CASE11</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Switch Down</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE11">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE12"></a><span class="summary-sig-name">CASE12</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Switch Up</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE12">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE13"></a><span class="summary-sig-name">CASE13</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Clean up</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE13">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE14"></a><span class="summary-sig-name">CASE14</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- start election app on all onos nodes</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE14">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE15"></a><span class="summary-sig-name">CASE15</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Check that Leadership Election is still functional</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE15">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE16"></a><span class="summary-sig-name">CASE16</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Install Distributed Primitives app</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE16">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE17"></a><span class="summary-sig-name">CASE17</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Check for basic functionality with distributed primitives</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE17">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="CASE1"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">CASE1</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">main</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-pysrc.html#HAclusterRestart.CASE1">source code</a></span>
- </td>
- </tr></table>
-
- <p>CASE1 is to compile ONOS and push it to the test machines</p>
- <p>Startup sequence: cell <name> onos-verify-cell NOTE: temporary -
- onos-remove-raft-logs onos-uninstall start mininet git pull mvn clean
- install onos-package onos-install -f onos-wait-for-start start cli
- sessions start tcpdump</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies-module.html
deleted file mode 100644
index 07f76b2..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies-module.html
+++ /dev/null
@@ -1,167 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAclusterRestart.dependencies</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAclusterRestart-module.html">Package HAclusterRestart</a> ::
- Package dependencies
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAclusterRestart.dependencies-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package dependencies</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAclusterRestart.dependencies-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html">TestON.tests.HAclusterRestart.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html">TestON.tests.HAclusterRestart.dependencies.obelisk</a></strong> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies-pysrc.html
deleted file mode 100644
index b8143eb..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies-pysrc.html
+++ /dev/null
@@ -1,124 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAclusterRestart.dependencies</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAclusterRestart-module.html">Package HAclusterRestart</a> ::
- Package dependencies
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAclusterRestart.dependencies-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAclusterRestart.dependencies-module.html">Package TestON.tests.HAclusterRestart.dependencies</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies.Counters-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies.Counters-module.html
deleted file mode 100644
index 0db610c..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies.Counters-module.html
+++ /dev/null
@@ -1,195 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAclusterRestart.dependencies.Counters</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAclusterRestart-module.html">Package HAclusterRestart</a> ::
- <a href="TestON.tests.HAclusterRestart.dependencies-module.html">Package dependencies</a> ::
- Module Counters
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module Counters</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAclusterRestart.dependencies.Counters-pysrc.html">source code</a></span></p>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Functions</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Functions"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.dependencies.Counters-pysrc.html#__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="counterCheck"></a><span class="summary-sig-name">counterCheck</span>(<span class="summary-sig-arg">counterName</span>,
- <span class="summary-sig-arg">counterValue</span>)</span><br />
- Add Text here</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.dependencies.Counters-pysrc.html#counterCheck">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies.Counters-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies.Counters-pysrc.html
deleted file mode 100644
index 4787c9d..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies.Counters-pysrc.html
+++ /dev/null
@@ -1,182 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAclusterRestart.dependencies.Counters</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAclusterRestart-module.html">Package HAclusterRestart</a> ::
- <a href="TestON.tests.HAclusterRestart.dependencies-module.html">Package dependencies</a> ::
- Module Counters
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAclusterRestart.dependencies.Counters-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html">Module TestON.tests.HAclusterRestart.dependencies.Counters</a></h1>
-<pre class="py-src">
-<a name="__init__"></a><div id="__init__-def"><a name="L1"></a><tt class="py-lineno"> 1</tt> <a class="py-toggle" href="#" id="__init__-toggle" onclick="return toggle('__init__');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="__init__-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="__init__-expanded"><a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"> </tt>
-<a name="counterCheck"></a><div id="counterCheck-def"><a name="L4"></a><tt class="py-lineno"> 4</tt> <a class="py-toggle" href="#" id="counterCheck-toggle" onclick="return toggle('counterCheck');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html#counterCheck">counterCheck</a><tt class="py-op">(</tt> <tt class="py-param">counterName</tt><tt class="py-op">,</tt> <tt class="py-param">counterValue</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="counterCheck-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="counterCheck-expanded"><a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"> Add Text here</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> <tt class="py-name">correctResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"> <tt class="py-comment"># Get onos counters results</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"> <tt class="py-name">onosCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module TestON.core.Thread=TestON.core.Thread-module.html,Class TestON.core.Thread.Thread=TestON.core.Thread.Thread-class.html"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1', 'Thread', 'link-1');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counters"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters" class="py-name" href="#" onclick="return doclink('link-2', 'counters', 'link-2');">counters</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counters-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"> <tt class="py-name">onosCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"> <tt class="py-name">tmp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosCounters</tt> <tt class="py-op">]</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt> <tt class="py-name">tmp</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> <tt class="py-name">consistent</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> <tt class="py-name">consistent</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-3', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-4', 'error', 'link-4');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS nodes have different values for counters"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">:</tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-5', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt> <tt class="py-op">)</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> <tt class="py-comment"># Check for correct values</tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-6', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-7" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-7', 'error', 'link-4');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Could not parse counters response from ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-8', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-name">onosValue</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">database</tt> <tt class="py-keyword">in</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-name">database</tt> <tt class="py-op">=</tt> <tt class="py-name">database</tt><tt class="py-op">.</tt><tt class="py-name">values</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">counter</tt> <tt class="py-keyword">in</tt> <tt class="py-name">database</tt><tt class="py-op">:</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">counter</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'name'</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">counterName</tt><tt class="py-op">:</tt> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-name">onosValue</tt> <tt class="py-op">=</tt> <tt class="py-name">counter</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'value'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-10', 'error', 'link-4');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" counters result "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> <tt class="py-string">"is not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> <tt class="py-name">correctResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosValue</tt> <tt class="py-op">==</tt> <tt class="py-name">counterValue</tt><tt class="py-op">:</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-11', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">counterName</tt> <tt class="py-op">+</tt> <tt class="py-string">" counter value is correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-12', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-13', 'error', 'link-4');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">counterName</tt> <tt class="py-op">+</tt> <tt class="py-string">" counter value is incorrect,"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-string">" expected value: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">counterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" current value: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosValue</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt class="py-name">correctResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">consistent</tt> <tt class="py-keyword">and</tt> <tt class="py-name">correctResults</tt> </tt>
-</div><a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies.obelisk-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies.obelisk-module.html
deleted file mode 100644
index eb68f8d..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies.obelisk-module.html
+++ /dev/null
@@ -1,208 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAclusterRestart.dependencies.obelisk</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAclusterRestart-module.html">Package HAclusterRestart</a> ::
- <a href="TestON.tests.HAclusterRestart.dependencies-module.html">Package dependencies</a> ::
- Module obelisk
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module obelisk</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html" class="summary-name">ObeliskTopo</a>
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Functions</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Functions"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="run"></a><span class="summary-sig-name">run</span>()</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk-pysrc.html#run">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="topos"></a><span class="summary-name">topos</span> = <code title="{'obelisk':(lambda: ObeliskTopo())}">{'obelisk':(lambda: ObeliskTopo())}</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.tests.HAclusterRestart.dependencies'"><code class="variable-quote">'</code><code class="variable-string">TestON.tests.HAclusterRestart.dependencies</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies.obelisk-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies.obelisk-pysrc.html
deleted file mode 100644
index 6ff8f43..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies.obelisk-pysrc.html
+++ /dev/null
@@ -1,273 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAclusterRestart.dependencies.obelisk</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAclusterRestart-module.html">Package HAclusterRestart</a> ::
- <a href="TestON.tests.HAclusterRestart.dependencies-module.html">Package dependencies</a> ::
- Module obelisk
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAclusterRestart.dependencies.obelisk-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html">Module TestON.tests.HAclusterRestart.dependencies.obelisk</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">mininet</tt><tt class="py-op">.</tt><tt class="py-name">topo</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Topo</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"> </tt>
-<a name="ObeliskTopo"></a><div id="ObeliskTopo-def"><a name="L5"></a><tt class="py-lineno"> 5</tt> <a class="py-toggle" href="#" id="ObeliskTopo-toggle" onclick="return toggle('ObeliskTopo');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html">ObeliskTopo</a><tt class="py-op">(</tt> <tt class="py-base-class">Topo</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ObeliskTopo-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="ObeliskTopo-expanded"><a name="ObeliskTopo.__init__"></a><div id="ObeliskTopo.__init__-def"><a name="L6"></a><tt class="py-lineno"> 6</tt> <a class="py-toggle" href="#" id="ObeliskTopo.__init__-toggle" onclick="return toggle('ObeliskTopo.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ObeliskTopo.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="ObeliskTopo.__init__-expanded"><a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"> <tt class="py-name">Topo</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-0', '__init__', 'link-0');">__init__</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> <tt class="py-name">topSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addSwitch"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-1', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s1'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'1000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> <tt class="py-name">leftTopSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-2', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s2'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'2000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"> <tt class="py-name">rightTopSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-3', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s5'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'5000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"> <tt class="py-name">leftBotSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-4', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s3'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'3000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"> <tt class="py-name">rightBotSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-5', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s6'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'6000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"> <tt class="py-name">midBotSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-6', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s28'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'2800'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"> <tt class="py-name">topHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addHost"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-7', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt> <tt class="py-string">'h1'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"> <tt class="py-name">leftTopHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-8', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h2'</tt><tt class="py-op">)</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"> <tt class="py-name">rightTopHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-9', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h5'</tt><tt class="py-op">)</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"> <tt class="py-name">leftBotHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-10', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h3'</tt><tt class="py-op">)</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"> <tt class="py-name">rightBotHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-11', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h6'</tt><tt class="py-op">)</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"> <tt class="py-name">midBotHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-12', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h28'</tt><tt class="py-op">)</tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addLink"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-13', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">topSwitch</tt><tt class="py-op">,</tt><tt class="py-name">topHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-14', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">leftTopHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-15', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">rightTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightTopHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-16', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">leftBotHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-17', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">rightBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightBotHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-18', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">midBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">midBotHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-19', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightTopSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-20', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">topSwitch</tt><tt class="py-op">,</tt><tt class="py-name">leftTopSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-21', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">topSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightTopSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-22', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">leftBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-23', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">rightTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-24', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">midBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-25', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">midBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> <tt class="py-name">agg1Switch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-26', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s4'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'3004'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> <tt class="py-name">agg2Switch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-27', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s7'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'6007'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-name">agg1Host</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-28', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h4'</tt><tt class="py-op">)</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-name">agg2Host</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-29', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h7'</tt><tt class="py-op">)</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-30', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">agg1Switch</tt><tt class="py-op">,</tt><tt class="py-name">agg1Host</tt><tt class="py-op">)</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-31', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">agg2Switch</tt><tt class="py-op">,</tt><tt class="py-name">agg2Host</tt><tt class="py-op">)</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-32', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">agg1Switch</tt><tt class="py-op">,</tt> <tt class="py-name">leftBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-33', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">agg2Switch</tt><tt class="py-op">,</tt> <tt class="py-name">rightBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">8</tt><tt class="py-op">)</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-34', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-string">'30'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-name">host</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-35', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">)</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-36', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">host</tt><tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-37', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">agg1Switch</tt><tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">18</tt><tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-38', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-string">'60'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-name">host</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-39', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-40', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">host</tt><tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-41', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">agg2Switch</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> </tt>
-<a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"><tt id="link-42" class="py-name" targets="Variable TestON.tests.HAclusterRestart.dependencies.obelisk.topos=TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#topos,Variable TestON.tests.HAminorityRestart.dependencies.obelisk.topos=TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#topos,Variable TestON.tests.HAsanity.dependencies.obelisk.topos=TestON.tests.HAsanity.dependencies.obelisk-module.html#topos,Variable TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.topos=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#topos"><a title="TestON.tests.HAclusterRestart.dependencies.obelisk.topos
-TestON.tests.HAminorityRestart.dependencies.obelisk.topos
-TestON.tests.HAsanity.dependencies.obelisk.topos
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.topos" class="py-name" href="#" onclick="return doclink('link-42', 'topos', 'link-42');">topos</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-string">'obelisk'</tt><tt class="py-op">:</tt> <tt class="py-op">(</tt><tt class="py-keyword">lambda</tt><tt class="py-op">:</tt> <tt id="link-43" class="py-name" targets="Class TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html,Class TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html,Class TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html,Class TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html"><a title="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo" class="py-name" href="#" onclick="return doclink('link-43', 'ObeliskTopo', 'link-43');">ObeliskTopo</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">}</tt> </tt>
-<a name="L59"></a><tt class="py-lineno">59</tt> <tt class="py-line"> </tt>
-<a name="run"></a><div id="run-def"><a name="L60"></a><tt class="py-lineno">60</tt> <a class="py-toggle" href="#" id="run-toggle" onclick="return toggle('run');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#run">run</a><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="run-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="run-expanded"><a name="L61"></a><tt class="py-lineno">61</tt> <tt class="py-line"> <tt class="py-name">topo</tt> <tt class="py-op">=</tt> <tt id="link-44" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo" class="py-name" href="#" onclick="return doclink('link-44', 'ObeliskTopo', 'link-43');">ObeliskTopo</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno">62</tt> <tt class="py-line"> <tt id="link-45" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#net"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-45', 'net', 'link-45');">net</a></tt> <tt class="py-op">=</tt> <tt class="py-name">Mininet</tt><tt class="py-op">(</tt> <tt class="py-name">topo</tt><tt class="py-op">=</tt><tt class="py-name">topo</tt><tt class="py-op">,</tt> <tt id="link-46" class="py-name" targets="Package TestON.drivers.common.api.controller=TestON.drivers.common.api.controller-module.html"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-46', 'controller', 'link-46');">controller</a></tt><tt class="py-op">=</tt><tt class="py-name">RemoteController</tt><tt class="py-op">,</tt> <tt class="py-name">autoSetMacs</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno">63</tt> <tt class="py-line"> <tt id="link-47" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-47', 'net', 'link-45');">net</a></tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno">64</tt> <tt class="py-line"> <tt id="link-48" class="py-name" targets="Class TestON.bin.cli.CLI=TestON.bin.cli.CLI-class.html,Class TestON.drivers.common.clidriver.CLI=TestON.drivers.common.clidriver.CLI-class.html"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-48', 'CLI', 'link-48');">CLI</a></tt><tt class="py-op">(</tt> <tt id="link-49" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-49', 'net', 'link-45');">net</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno">65</tt> <tt class="py-line"> <tt id="link-50" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-50', 'net', 'link-45');">net</a></tt><tt class="py-op">.</tt><tt id="link-51" class="py-name" targets="Method TestON.bin.cli.TestThread.stop()=TestON.bin.cli.TestThread-class.html#stop"><a title="TestON.bin.cli.TestThread.stop" class="py-name" href="#" onclick="return doclink('link-51', 'stop', 'link-51');">stop</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L66"></a><tt class="py-lineno">66</tt> <tt class="py-line"> </tt>
-<a name="L67"></a><tt class="py-lineno">67</tt> <tt class="py-line"><tt class="py-keyword">if</tt> <tt class="py-name">__name__</tt> <tt class="py-op">==</tt> <tt class="py-string">'__main__'</tt><tt class="py-op">:</tt> </tt>
-<a name="L68"></a><tt class="py-lineno">68</tt> <tt class="py-line"> <tt class="py-name">setLogLevel</tt><tt class="py-op">(</tt> <tt class="py-string">'info'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno">69</tt> <tt class="py-line"> <tt id="link-52" class="py-name" targets="Method TestON.bin.cli.TestThread.run()=TestON.bin.cli.TestThread-class.html#run,Method TestON.core.Thread.Thread.run()=TestON.core.Thread.Thread-class.html#run,Method TestON.core.teston.TestON.run()=TestON.core.teston.TestON-class.html#run,Function TestON.tests.HAclusterRestart.dependencies.obelisk.run()=TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#run,Function TestON.tests.HAminorityRestart.dependencies.obelisk.run()=TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#run,Function TestON.tests.HAsanity.dependencies.obelisk.run()=TestON.tests.HAsanity.dependencies.obelisk-module.html#run,Function TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#run"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-52', 'run', 'link-52');">run</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno">70</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html b/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html
deleted file mode 100644
index 8f4ffcd..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html
+++ /dev/null
@@ -1,298 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAclusterRestart-module.html">Package HAclusterRestart</a> ::
- <a href="TestON.tests.HAclusterRestart.dependencies-module.html">Package dependencies</a> ::
- <a href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html">Module obelisk</a> ::
- Class ObeliskTopo
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ObeliskTopo</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk-pysrc.html#ObeliskTopo">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_obelisktop" name="class_hierarchy_for_obelisktop">
-<area shape="rect" id="node1" href="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html" title="ObeliskTopo" alt="" coords="21,62,115,87"/>
-<area shape="rect" id="node2" href="javascript:void(0);" title="mininet.topo.Topo" alt="" coords="5,6,131,31"/>
-</map>
- <img src="class_hierarchy_for_obelisktop.gif" alt='' usemap="#class_hierarchy_for_obelisktop" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Topo object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk-pysrc.html#ObeliskTopo.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>mininet.topo.Topo</code></b>:
- <code>addHost</code>,
- <code>addLink</code>,
- <code>addNode</code>,
- <code>addPort</code>,
- <code>addSwitch</code>,
- <code>build</code>,
- <code>convertTo</code>,
- <code>hosts</code>,
- <code>isSwitch</code>,
- <code>iterLinks</code>,
- <code>linkInfo</code>,
- <code>links</code>,
- <code>nodeInfo</code>,
- <code>nodes</code>,
- <code>port</code>,
- <code>setNodeInfo</code>,
- <code>setlinkInfo</code>,
- <code>switches</code>
- </p>
- <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code>mininet.topo.Topo</code></b> (private):
- <code>_linkEntry</code>
- </p></div>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== STATIC METHODS ==================== -->
-<a name="section-StaticMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Static Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-StaticMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>mininet.topo.Topo</code></b>:
- <code>sorted</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk-pysrc.html#ObeliskTopo.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>Topo object. Optional named parameters: hinfo: default host options
- sopts: default switch options lopts: default link options calls
- build()</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart-module.html
deleted file mode 100644
index 053dd59..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart-module.html
+++ /dev/null
@@ -1,172 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAminorityRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package HAminorityRestart
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAminorityRestart-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package HAminorityRestart</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAminorityRestart-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-module.html">TestON.tests.HAminorityRestart.HAminorityRestart</a></strong>: <em class="summary">Description: This test is to determine if ONOS can handle
- a minority of it's nodes restarting</em> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.dependencies-module.html">TestON.tests.HAminorityRestart.dependencies</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html">TestON.tests.HAminorityRestart.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html">TestON.tests.HAminorityRestart.dependencies.obelisk</a></strong> </li>
- </ul>
- </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart-pysrc.html
deleted file mode 100644
index 3a08161..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAminorityRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package HAminorityRestart
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAminorityRestart-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAminorityRestart-module.html">Package TestON.tests.HAminorityRestart</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.HAminorityRestart-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.HAminorityRestart-module.html
deleted file mode 100644
index 94a2ac9..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.HAminorityRestart-module.html
+++ /dev/null
@@ -1,194 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAminorityRestart.HAminorityRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAminorityRestart-module.html">Package HAminorityRestart</a> ::
- Module HAminorityRestart
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAminorityRestart.HAminorityRestart-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module HAminorityRestart</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Description: This test is to determine if ONOS can handle
- a minority of it's nodes restarting
-
-List of test cases:
-CASE1: Compile ONOS and push it to the test machines
-CASE2: Assign devices to controllers
-CASE21: Assign mastership to controllers
-CASE3: Assign intents
-CASE4: Ping across added host intents
-CASE5: Reading state of ONOS
-CASE6: The Failure case.
-CASE7: Check state after control plane failure
-CASE8: Compare topo
-CASE9: Link s3-s28 down
-CASE10: Link s3-s28 up
-CASE11: Switch down
-CASE12: Switch up
-CASE13: Clean up
-CASE14: start election app on all onos nodes
-CASE15: Check that Leadership Election is still functional
-CASE16: Install Distributed Primitives app
-CASE17: Check for basic functionality with distributed primitives
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html" class="summary-name">HAminorityRestart</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html
deleted file mode 100644
index 4fe36e4..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html
+++ /dev/null
@@ -1,4722 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAminorityRestart.HAminorityRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAminorityRestart-module.html">Package HAminorityRestart</a> ::
- Module HAminorityRestart
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAminorityRestart.HAminorityRestart-module.html">Module TestON.tests.HAminorityRestart.HAminorityRestart</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">Description: This test is to determine if ONOS can handle</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring"> a minority of it's nodes restarting</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">List of test cases:</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring">CASE1: Compile ONOS and push it to the test machines</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring">CASE2: Assign devices to controllers</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring">CASE21: Assign mastership to controllers</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring">CASE3: Assign intents</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring">CASE4: Ping across added host intents</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring">CASE5: Reading state of ONOS</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring">CASE6: The Failure case.</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring">CASE7: Check state after control plane failure</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring">CASE8: Compare topo</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring">CASE9: Link s3-s28 down</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring">CASE10: Link s3-s28 up</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring">CASE11: Switch down</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring">CASE12: Switch up</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">CASE13: Clean up</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">CASE14: start election app on all onos nodes</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">CASE15: Check that Leadership Election is still functional</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">CASE16: Install Distributed Primitives app</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">CASE17: Check for basic functionality with distributed primitives</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart"></a><div id="HAminorityRestart-def"><a name="L27"></a><tt class="py-lineno"> 27</tt> <a class="py-toggle" href="#" id="HAminorityRestart-toggle" onclick="return toggle('HAminorityRestart');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="HAminorityRestart-expanded"><a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.__init__"></a><div id="HAminorityRestart.__init__-def"><a name="L29"></a><tt class="py-lineno"> 29</tt> <a class="py-toggle" href="#" id="HAminorityRestart.__init__-toggle" onclick="return toggle('HAminorityRestart.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.__init__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.__init__-expanded"><a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE1"></a><div id="HAminorityRestart.CASE1-def"><a name="L32"></a><tt class="py-lineno"> 32</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE1-toggle" onclick="return toggle('HAminorityRestart.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE1">CASE1</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE1-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE1-expanded"><a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-docstring"> CASE1 is to compile ONOS and push it to the test machines</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> Startup sequence:</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> cell <name></tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"> onos-verify-cell</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: temporary - onos-remove-raft-logs</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring"> onos-uninstall</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring"> start mininet</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring"> git pull</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-docstring"> mvn clean install</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring"> onos-package</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> onos-install -f</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> onos-wait-for-start</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-docstring"> start cli sessions</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-docstring"> start tcpdump</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">imp</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS HA test: Restart minority of ONOS nodes - "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-string">"initialization"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-2', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Setting up test environment"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Setup the test environment including "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-string">"installing ONOS, starting Mininet and ONOS"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-string">"cli sessions."</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-comment"># TODO: save all the timers and output them for plotting</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-comment"># load some variables from the params file</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">PULLCODE</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'Git'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'True'</tt><tt class="py-op">:</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">PULLCODE</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">gitBranch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'branch'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'num_controllers'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt><tt class="py-op">:</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op"><</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">:</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-comment"># set global variables</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS1Port</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS2Port</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS3Port</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS4Port</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS5Port</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS6Port</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS7Port</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: just get controller port from params?</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-comment"># TODO: do we really need all these?</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">ONOS1Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">ONOS2Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port2'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">ONOS3Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port3'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">ONOS4Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port4'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">ONOS5Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port5'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">ONOS6Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port6'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">ONOS7Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port7'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">fileName</tt> <tt class="py-op">=</tt> <tt class="py-string">"Counters"</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Maybe make a library folder somewhere?</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt id="link-3" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-3', 'path', 'link-3');">path</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'imports'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'path'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Module TestON.tests.HAclusterRestart.dependencies.Counters=TestON.tests.HAclusterRestart.dependencies.Counters-module.html,Module TestON.tests.HAminorityRestart.dependencies.Counters=TestON.tests.HAminorityRestart.dependencies.Counters-module.html,Module TestON.tests.HAsanity.dependencies.Counters=TestON.tests.HAsanity.dependencies.Counters-module.html,Module TestON.tests.HAsingleInstanceRestart.dependencies.Counters=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-4', 'Counters', 'link-4');">Counters</a></tt> <tt class="py-op">=</tt> <tt class="py-name">imp</tt><tt class="py-op">.</tt><tt class="py-name">load_source</tt><tt class="py-op">(</tt> <tt class="py-name">fileName</tt><tt class="py-op">,</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt id="link-5" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-5', 'path', 'link-3');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt> <tt class="py-op">+</tt> <tt class="py-string">".py"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-6', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.core.teston.TestON.cleanup()=TestON.core.teston.TestON-class.html#cleanup"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-7', 'cleanup', 'link-7');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-8', 'exit', 'link-8');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> </tt>
-<a name="L100"></a><tt class="py-lineno"> 100</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L101"></a><tt class="py-lineno"> 101</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#nodes,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#nodes"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-9', 'nodes', 'link-9');">nodes</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L102"></a><tt class="py-lineno"> 102</tt> <tt class="py-line"> <tt class="py-name">ipList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L103"></a><tt class="py-lineno"> 103</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L104"></a><tt class="py-lineno"> 104</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L105"></a><tt class="py-lineno"> 105</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">'ONOScli'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno"> 106</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-10', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">'ONOS'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno"> 107</tt> <tt class="py-line"> <tt class="py-name">ipList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-11', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno"> 108</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L109"></a><tt class="py-lineno"> 109</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L110"></a><tt class="py-lineno"> 110</tt> <tt class="py-line"> </tt>
-<a name="L111"></a><tt class="py-lineno"> 111</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-12', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Create cell file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno"> 112</tt> <tt class="py-line"> <tt class="py-name">cellAppString</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'appString'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L113"></a><tt class="py-lineno"> 113</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile" class="py-name" href="#" onclick="return doclink('link-13', 'createCellFile', 'link-13');">createCellFile</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-name">cellName</tt><tt class="py-op">,</tt> </tt>
-<a name="L114"></a><tt class="py-lineno"> 114</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L115"></a><tt class="py-lineno"> 115</tt> <tt class="py-line"> <tt class="py-name">cellAppString</tt><tt class="py-op">,</tt> <tt class="py-name">ipList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno"> 116</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-14', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Applying cell variable to environment"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno"> 117</tt> <tt class="py-line"> <tt class="py-name">cellResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell,Method TestON.drivers.common.cli.onosdriver.OnosDriver.setCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell" class="py-name" href="#" onclick="return doclink('link-15', 'setCell', 'link-15');">setCell</a></tt><tt class="py-op">(</tt> <tt class="py-name">cellName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno"> 118</tt> <tt class="py-line"> <tt class="py-name">verifyResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell" class="py-name" href="#" onclick="return doclink('link-16', 'verifyCell', 'link-16');">verifyCell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L119"></a><tt class="py-lineno"> 119</tt> <tt class="py-line"> </tt>
-<a name="L120"></a><tt class="py-lineno"> 120</tt> <tt class="py-line"> <tt class="py-comment"># FIXME:this is short term fix</tt> </tt>
-<a name="L121"></a><tt class="py-lineno"> 121</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-17', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Removing raft logs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno"> 122</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosRemoveRaftLogs()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosRemoveRaftLogs"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosRemoveRaftLogs" class="py-name" href="#" onclick="return doclink('link-18', 'onosRemoveRaftLogs', 'link-18');">onosRemoveRaftLogs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L123"></a><tt class="py-lineno"> 123</tt> <tt class="py-line"> </tt>
-<a name="L124"></a><tt class="py-lineno"> 124</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-19', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Uninstalling ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L125"></a><tt class="py-lineno"> 125</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-20', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L126"></a><tt class="py-lineno"> 126</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall" class="py-name" href="#" onclick="return doclink('link-21', 'onosUninstall', 'link-21');">onosUninstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L127"></a><tt class="py-lineno"> 127</tt> <tt class="py-line"> </tt>
-<a name="L128"></a><tt class="py-lineno"> 128</tt> <tt class="py-line"> <tt class="py-comment"># Make sure ONOS is DEAD</tt> </tt>
-<a name="L129"></a><tt class="py-lineno"> 129</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-22', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Killing any ONOS processes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L130"></a><tt class="py-lineno"> 130</tt> <tt class="py-line"> <tt class="py-name">killResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L131"></a><tt class="py-lineno"> 131</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-23', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L132"></a><tt class="py-lineno"> 132</tt> <tt class="py-line"> <tt class="py-name">killed</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosKill()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosKill"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosKill" class="py-name" href="#" onclick="return doclink('link-24', 'onosKill', 'link-24');">onosKill</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno"> 133</tt> <tt class="py-line"> <tt class="py-name">killResults</tt> <tt class="py-op">=</tt> <tt class="py-name">killResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">killed</tt> </tt>
-<a name="L134"></a><tt class="py-lineno"> 134</tt> <tt class="py-line"> </tt>
-<a name="L135"></a><tt class="py-lineno"> 135</tt> <tt class="py-line"> <tt class="py-name">cleanInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L136"></a><tt class="py-lineno"> 136</tt> <tt class="py-line"> <tt class="py-name">gitPullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L137"></a><tt class="py-lineno"> 137</tt> <tt class="py-line"> </tt>
-<a name="L138"></a><tt class="py-lineno"> 138</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-25', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L139"></a><tt class="py-lineno"> 139</tt> <tt class="py-line"> <tt class="py-comment"># scp topo file to mininet</tt> </tt>
-<a name="L140"></a><tt class="py-lineno"> 140</tt> <tt class="py-line"> <tt class="py-comment"># TODO: move to params?</tt> </tt>
-<a name="L141"></a><tt class="py-lineno"> 141</tt> <tt class="py-line"> <tt class="py-name">topoName</tt> <tt class="py-op">=</tt> <tt class="py-string">"obelisk.py"</tt> </tt>
-<a name="L142"></a><tt class="py-lineno"> 142</tt> <tt class="py-line"> <tt class="py-name">filePath</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"/tools/test/topos/"</tt> </tt>
-<a name="L143"></a><tt class="py-lineno"> 143</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#copyMininetFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile" class="py-name" href="#" onclick="return doclink('link-26', 'copyMininetFile', 'link-26');">copyMininetFile</a></tt><tt class="py-op">(</tt> <tt class="py-name">topoName</tt><tt class="py-op">,</tt> <tt class="py-name">filePath</tt><tt class="py-op">,</tt> </tt>
-<a name="L144"></a><tt class="py-lineno"> 144</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L145"></a><tt class="py-lineno"> 145</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno"> 146</tt> <tt class="py-line"> <tt class="py-name">mnResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet" class="py-name" href="#" onclick="return doclink('link-27', 'startNet', 'link-27');">startNet</a></tt><tt class="py-op">(</tt> <tt class="py-op">)</tt> </tt>
-<a name="L147"></a><tt class="py-lineno"> 147</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">mnResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L148"></a><tt class="py-lineno"> 148</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Mininet Started"</tt><tt class="py-op">,</tt> </tt>
-<a name="L149"></a><tt class="py-lineno"> 149</tt> <tt class="py-line"> <tt id="link-28" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-28', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error starting Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno"> 150</tt> <tt class="py-line"> </tt>
-<a name="L151"></a><tt class="py-lineno"> 151</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-29', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Git checkout and pull "</tt> <tt class="py-op">+</tt> <tt class="py-name">gitBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno"> 152</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">PULLCODE</tt><tt class="py-op">:</tt> </tt>
-<a name="L153"></a><tt class="py-lineno"> 153</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitCheckout"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout" class="py-name" href="#" onclick="return doclink('link-30', 'gitCheckout', 'link-30');">gitCheckout</a></tt><tt class="py-op">(</tt> <tt class="py-name">gitBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno"> 154</tt> <tt class="py-line"> <tt class="py-name">gitPullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-31', 'gitPull', 'link-31');">gitPull</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L155"></a><tt class="py-lineno"> 155</tt> <tt class="py-line"> <tt class="py-comment"># values of 1 or 3 are good</tt> </tt>
-<a name="L156"></a><tt class="py-lineno"> 156</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_lesser</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">gitPullResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L157"></a><tt class="py-lineno"> 157</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Git pull successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L158"></a><tt class="py-lineno"> 158</tt> <tt class="py-line"> <tt id="link-32" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-32', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Git pull failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L159"></a><tt class="py-lineno"> 159</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion,Method TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion
-TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion" class="py-name" href="#" onclick="return doclink('link-33', 'getVersion', 'link-33');">getVersion</a></tt><tt class="py-op">(</tt> <tt class="py-name">report</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno"> 160</tt> <tt class="py-line"> </tt>
-<a name="L161"></a><tt class="py-lineno"> 161</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-34', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Using mvn clean install"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L162"></a><tt class="py-lineno"> 162</tt> <tt class="py-line"> <tt class="py-name">cleanInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L163"></a><tt class="py-lineno"> 163</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">PULLCODE</tt> <tt class="py-keyword">and</tt> <tt class="py-name">gitPullResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L164"></a><tt class="py-lineno"> 164</tt> <tt class="py-line"> <tt class="py-name">cleanInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cleanInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall" class="py-name" href="#" onclick="return doclink('link-35', 'cleanInstall', 'link-35');">cleanInstall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L165"></a><tt class="py-lineno"> 165</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L166"></a><tt class="py-lineno"> 166</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-36', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Did not pull new code so skipping mvn "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L167"></a><tt class="py-lineno"> 167</tt> <tt class="py-line"> <tt class="py-string">"clean install"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L168"></a><tt class="py-lineno"> 168</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L169"></a><tt class="py-lineno"> 169</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">cleanInstallResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L170"></a><tt class="py-lineno"> 170</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"MCI successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L171"></a><tt class="py-lineno"> 171</tt> <tt class="py-line"> <tt id="link-37" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-37', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"MCI failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L172"></a><tt class="py-lineno"> 172</tt> <tt class="py-line"> <tt class="py-comment"># GRAPHS</tt> </tt>
-<a name="L173"></a><tt class="py-lineno"> 173</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: important params here:</tt> </tt>
-<a name="L174"></a><tt class="py-lineno"> 174</tt> <tt class="py-line"> <tt class="py-comment"># job = name of Jenkins job</tt> </tt>
-<a name="L175"></a><tt class="py-lineno"> 175</tt> <tt class="py-line"> <tt class="py-comment"># Plot Name = Plot-HA, only can be used if multiple plots</tt> </tt>
-<a name="L176"></a><tt class="py-lineno"> 176</tt> <tt class="py-line"> <tt class="py-comment"># index = The number of the graph under plot name</tt> </tt>
-<a name="L177"></a><tt class="py-lineno"> 177</tt> <tt class="py-line"> <tt class="py-name">job</tt> <tt class="py-op">=</tt> <tt class="py-string">"HAminorityRestart"</tt> </tt>
-<a name="L178"></a><tt class="py-lineno"> 178</tt> <tt class="py-line"> <tt class="py-name">plotName</tt> <tt class="py-op">=</tt> <tt class="py-string">"Plot-HA"</tt> </tt>
-<a name="L179"></a><tt class="py-lineno"> 179</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">=</tt> <tt class="py-string">'<ac:structured-macro ac:name="html">\n'</tt> </tt>
-<a name="L180"></a><tt class="py-lineno"> 180</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">+=</tt> <tt class="py-string">'<ac:plain-text-body><![CDATA[\n'</tt> </tt>
-<a name="L181"></a><tt class="py-lineno"> 181</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">+=</tt> <tt class="py-string">'<iframe src="https://onos-jenkins.onlab.us/job/'</tt> <tt class="py-op">+</tt> <tt class="py-name">job</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L182"></a><tt class="py-lineno"> 182</tt> <tt class="py-line"> <tt class="py-string">'/plot/'</tt> <tt class="py-op">+</tt> <tt class="py-name">plotName</tt> <tt class="py-op">+</tt> <tt class="py-string">'/getPlot?index=0'</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L183"></a><tt class="py-lineno"> 183</tt> <tt class="py-line"> <tt class="py-string">'&width=500&height=300"'</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L184"></a><tt class="py-lineno"> 184</tt> <tt class="py-line"> <tt class="py-string">'noborder="0" width="500" height="300" scrolling="yes" '</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L185"></a><tt class="py-lineno"> 185</tt> <tt class="py-line"> <tt class="py-string">'seamless="seamless"></iframe>\n'</tt> </tt>
-<a name="L186"></a><tt class="py-lineno"> 186</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">+=</tt> <tt class="py-string">']]></ac:plain-text-body>\n'</tt> </tt>
-<a name="L187"></a><tt class="py-lineno"> 187</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">+=</tt> <tt class="py-string">'</ac:structured-macro>\n'</tt> </tt>
-<a name="L188"></a><tt class="py-lineno"> 188</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-38', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt><tt class="py-name">graphs</tt><tt class="py-op">)</tt> </tt>
-<a name="L189"></a><tt class="py-lineno"> 189</tt> <tt class="py-line"> </tt>
-<a name="L190"></a><tt class="py-lineno"> 190</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-39', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Creating ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno"> 191</tt> <tt class="py-line"> <tt class="py-name">packageResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage" class="py-name" href="#" onclick="return doclink('link-40', 'onosPackage', 'link-40');">onosPackage</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L192"></a><tt class="py-lineno"> 192</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">packageResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L193"></a><tt class="py-lineno"> 193</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS package successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L194"></a><tt class="py-lineno"> 194</tt> <tt class="py-line"> <tt id="link-41" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-41', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS package failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L195"></a><tt class="py-lineno"> 195</tt> <tt class="py-line"> </tt>
-<a name="L196"></a><tt class="py-lineno"> 196</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-42', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Installing ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L197"></a><tt class="py-lineno"> 197</tt> <tt class="py-line"> <tt class="py-name">onosInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L198"></a><tt class="py-lineno"> 198</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-43', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L199"></a><tt class="py-lineno"> 199</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall" class="py-name" href="#" onclick="return doclink('link-44', 'onosInstall', 'link-44');">onosInstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">options</tt><tt class="py-op">=</tt><tt class="py-string">"-f"</tt><tt class="py-op">,</tt> </tt>
-<a name="L200"></a><tt class="py-lineno"> 200</tt> <tt class="py-line"> <tt class="py-name">node</tt><tt class="py-op">=</tt><tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L201"></a><tt class="py-lineno"> 201</tt> <tt class="py-line"> <tt class="py-name">onosInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosInstallResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L202"></a><tt class="py-lineno"> 202</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">onosInstallResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L203"></a><tt class="py-lineno"> 203</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS install successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L204"></a><tt class="py-lineno"> 204</tt> <tt class="py-line"> <tt id="link-45" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-45', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS install failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno"> 205</tt> <tt class="py-line"> </tt>
-<a name="L206"></a><tt class="py-lineno"> 206</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-46', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Checking if ONOS is up yet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L207"></a><tt class="py-lineno"> 207</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L208"></a><tt class="py-lineno"> 208</tt> <tt class="py-line"> <tt class="py-name">onosIsupResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L209"></a><tt class="py-lineno"> 209</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-47', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L210"></a><tt class="py-lineno"> 210</tt> <tt class="py-line"> <tt class="py-name">started</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.isup()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-48', 'isup', 'link-48');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno"> 211</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">started</tt><tt class="py-op">:</tt> </tt>
-<a name="L212"></a><tt class="py-lineno"> 212</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-49', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-50" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-50', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" didn't start!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L213"></a><tt class="py-lineno"> 213</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosStop()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStop"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosStop" class="py-name" href="#" onclick="return doclink('link-51', 'onosStop', 'link-51');">onosStop</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L214"></a><tt class="py-lineno"> 214</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosStart()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStart"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosStart" class="py-name" href="#" onclick="return doclink('link-52', 'onosStart', 'link-52');">onosStart</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L215"></a><tt class="py-lineno"> 215</tt> <tt class="py-line"> <tt class="py-name">onosIsupResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosIsupResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">started</tt> </tt>
-<a name="L216"></a><tt class="py-lineno"> 216</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosIsupResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L217"></a><tt class="py-lineno"> 217</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L218"></a><tt class="py-lineno"> 218</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">onosIsupResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L219"></a><tt class="py-lineno"> 219</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS startup successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L220"></a><tt class="py-lineno"> 220</tt> <tt class="py-line"> <tt id="link-53" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-53', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS startup failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L221"></a><tt class="py-lineno"> 221</tt> <tt class="py-line"> </tt>
-<a name="L222"></a><tt class="py-lineno"> 222</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-54', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-55', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting ONOS CLI sessions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L223"></a><tt class="py-lineno"> 223</tt> <tt class="py-line"> <tt class="py-name">cliResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L224"></a><tt class="py-lineno"> 224</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L225"></a><tt class="py-lineno"> 225</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L226"></a><tt class="py-lineno"> 226</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name" targets="Module TestON.core.Thread=TestON.core.Thread-module.html,Class TestON.core.Thread.Thread=TestON.core.Thread.Thread-class.html"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-56', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#startOnosCli"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli" class="py-name" href="#" onclick="return doclink('link-57', 'startOnosCli', 'link-57');">startOnosCli</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L227"></a><tt class="py-lineno"> 227</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"startOnosCli-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L228"></a><tt class="py-lineno"> 228</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-58', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L229"></a><tt class="py-lineno"> 229</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L230"></a><tt class="py-lineno"> 230</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L231"></a><tt class="py-lineno"> 231</tt> <tt class="py-line"> </tt>
-<a name="L232"></a><tt class="py-lineno"> 232</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L233"></a><tt class="py-lineno"> 233</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L234"></a><tt class="py-lineno"> 234</tt> <tt class="py-line"> <tt class="py-name">cliResults</tt> <tt class="py-op">=</tt> <tt class="py-name">cliResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L235"></a><tt class="py-lineno"> 235</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">cliResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L236"></a><tt class="py-lineno"> 236</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS cli startup successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L237"></a><tt class="py-lineno"> 237</tt> <tt class="py-line"> <tt id="link-59" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-59', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS cli startup failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L238"></a><tt class="py-lineno"> 238</tt> <tt class="py-line"> </tt>
-<a name="L239"></a><tt class="py-lineno"> 239</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'tcpdump'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-string">"true"</tt><tt class="py-op">:</tt> </tt>
-<a name="L240"></a><tt class="py-lineno"> 240</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-60', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start Packet Capture MN"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L241"></a><tt class="py-lineno"> 241</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startTcpdump()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startTcpdump,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.startTcpdump()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#startTcpdump"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startTcpdump
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.startTcpdump" class="py-name" href="#" onclick="return doclink('link-61', 'startTcpdump', 'link-61');">startTcpdump</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L242"></a><tt class="py-lineno"> 242</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MNtcpdump'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'folder'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">)</tt> </tt>
-<a name="L243"></a><tt class="py-lineno"> 243</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">"-MN.pcap"</tt><tt class="py-op">,</tt> </tt>
-<a name="L244"></a><tt class="py-lineno"> 244</tt> <tt class="py-line"> <tt class="py-name">intf</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MNtcpdump'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'intf'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L245"></a><tt class="py-lineno"> 245</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MNtcpdump'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L246"></a><tt class="py-lineno"> 246</tt> <tt class="py-line"> </tt>
-<a name="L247"></a><tt class="py-lineno"> 247</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-62', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"App Ids check"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L248"></a><tt class="py-lineno"> 248</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L249"></a><tt class="py-lineno"> 249</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L250"></a><tt class="py-lineno"> 250</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L251"></a><tt class="py-lineno"> 251</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-63', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appToIDCheck"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-64', 'appToIDCheck', 'link-64');">appToIDCheck</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L252"></a><tt class="py-lineno"> 252</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"appToIDCheck-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L253"></a><tt class="py-lineno"> 253</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L254"></a><tt class="py-lineno"> 254</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L255"></a><tt class="py-lineno"> 255</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L256"></a><tt class="py-lineno"> 256</tt> <tt class="py-line"> </tt>
-<a name="L257"></a><tt class="py-lineno"> 257</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L258"></a><tt class="py-lineno"> 258</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L259"></a><tt class="py-lineno"> 259</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">appCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L260"></a><tt class="py-lineno"> 260</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L261"></a><tt class="py-lineno"> 261</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-65', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#apps,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#apps"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-66', 'apps', 'link-66');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno"> 262</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-67', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appIDs"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-68', 'appIDs', 'link-68');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L263"></a><tt class="py-lineno"> 263</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L264"></a><tt class="py-lineno"> 264</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L265"></a><tt class="py-lineno"> 265</tt> <tt class="py-line"> <tt id="link-69" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-69', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L266"></a><tt class="py-lineno"> 266</tt> <tt class="py-line"> </tt>
-<a name="L267"></a><tt class="py-lineno"> 267</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">cliResults</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L268"></a><tt class="py-lineno"> 268</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-70', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-71', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to start ONOS, stopping test"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L269"></a><tt class="py-lineno"> 269</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-72', 'cleanup', 'link-7');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L270"></a><tt class="py-lineno"> 270</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-73', 'exit', 'link-8');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L271"></a><tt class="py-lineno"> 271</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE2"></a><div id="HAminorityRestart.CASE2-def"><a name="L272"></a><tt class="py-lineno"> 272</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE2-toggle" onclick="return toggle('HAminorityRestart.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE2">CASE2</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE2-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE2-expanded"><a name="L273"></a><tt class="py-lineno"> 273</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L274"></a><tt class="py-lineno"> 274</tt> <tt class="py-line"><tt class="py-docstring"> Assign devices to controllers</tt> </tt>
-<a name="L275"></a><tt class="py-lineno"> 275</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L276"></a><tt class="py-lineno"> 276</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L277"></a><tt class="py-lineno"> 277</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L278"></a><tt class="py-lineno"> 278</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L279"></a><tt class="py-lineno"> 279</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L280"></a><tt class="py-lineno"> 280</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L281"></a><tt class="py-lineno"> 281</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-74', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L282"></a><tt class="py-lineno"> 282</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS1Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS1Port not defined"</tt> </tt>
-<a name="L283"></a><tt class="py-lineno"> 283</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS2Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS2Port not defined"</tt> </tt>
-<a name="L284"></a><tt class="py-lineno"> 284</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS3Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS3Port not defined"</tt> </tt>
-<a name="L285"></a><tt class="py-lineno"> 285</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS4Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS4Port not defined"</tt> </tt>
-<a name="L286"></a><tt class="py-lineno"> 286</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS5Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS5Port not defined"</tt> </tt>
-<a name="L287"></a><tt class="py-lineno"> 287</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS6Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS6Port not defined"</tt> </tt>
-<a name="L288"></a><tt class="py-lineno"> 288</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS7Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS7Port not defined"</tt> </tt>
-<a name="L289"></a><tt class="py-lineno"> 289</tt> <tt class="py-line"> </tt>
-<a name="L290"></a><tt class="py-lineno"> 290</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-75', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assigning devices to controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L291"></a><tt class="py-lineno"> 291</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Assign switches to ONOS using 'ovs-vsctl' "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L292"></a><tt class="py-lineno"> 292</tt> <tt class="py-line"> <tt class="py-string">"and check that an ONOS node becomes the "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L293"></a><tt class="py-lineno"> 293</tt> <tt class="py-line"> <tt class="py-string">"master of the device."</tt> </tt>
-<a name="L294"></a><tt class="py-lineno"> 294</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-76', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assign switches to controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L295"></a><tt class="py-lineno"> 295</tt> <tt class="py-line"> </tt>
-<a name="L296"></a><tt class="py-lineno"> 296</tt> <tt class="py-line"> <tt class="py-name">ipList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L297"></a><tt class="py-lineno"> 297</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L298"></a><tt class="py-lineno"> 298</tt> <tt class="py-line"> <tt class="py-name">ipList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-77', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L299"></a><tt class="py-lineno"> 299</tt> <tt class="py-line"> <tt class="py-name">swList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L300"></a><tt class="py-lineno"> 300</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L301"></a><tt class="py-lineno"> 301</tt> <tt class="py-line"> <tt class="py-name">swList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L302"></a><tt class="py-lineno"> 302</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignSwController"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController" class="py-name" href="#" onclick="return doclink('link-78', 'assignSwController', 'link-78');">assignSwController</a></tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt><tt class="py-op">=</tt><tt class="py-name">swList</tt><tt class="py-op">,</tt> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">ipList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L303"></a><tt class="py-lineno"> 303</tt> <tt class="py-line"> </tt>
-<a name="L304"></a><tt class="py-lineno"> 304</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L305"></a><tt class="py-lineno"> 305</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L306"></a><tt class="py-lineno"> 306</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwController()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwController"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwController" class="py-name" href="#" onclick="return doclink('link-79', 'getSwController', 'link-79');">getSwController</a></tt><tt class="py-op">(</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L307"></a><tt class="py-lineno"> 307</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L308"></a><tt class="py-lineno"> 308</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-80', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L309"></a><tt class="py-lineno"> 309</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L310"></a><tt class="py-lineno"> 310</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-81', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno"> 311</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-82', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L312"></a><tt class="py-lineno"> 312</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"tcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L313"></a><tt class="py-lineno"> 313</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">mastershipCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L314"></a><tt class="py-lineno"> 314</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L315"></a><tt class="py-lineno"> 315</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-83', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-84', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, node "</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> <tt class="py-string">" is "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L316"></a><tt class="py-lineno"> 316</tt> <tt class="py-line"> <tt class="py-string">"not in the list of controllers s"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L317"></a><tt class="py-lineno"> 317</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is connecting to."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L318"></a><tt class="py-lineno"> 318</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L319"></a><tt class="py-lineno"> 319</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L320"></a><tt class="py-lineno"> 320</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L321"></a><tt class="py-lineno"> 321</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">mastershipCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L322"></a><tt class="py-lineno"> 322</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Switch mastership assigned correctly"</tt><tt class="py-op">,</tt> </tt>
-<a name="L323"></a><tt class="py-lineno"> 323</tt> <tt class="py-line"> <tt id="link-85" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-85', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Switches not assigned correctly to controllers"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L324"></a><tt class="py-lineno"> 324</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE21"></a><div id="HAminorityRestart.CASE21-def"><a name="L325"></a><tt class="py-lineno"> 325</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE21-toggle" onclick="return toggle('HAminorityRestart.CASE21');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE21">CASE21</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE21-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE21-expanded"><a name="L326"></a><tt class="py-lineno"> 326</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L327"></a><tt class="py-lineno"> 327</tt> <tt class="py-line"><tt class="py-docstring"> Assign mastership to controllers</tt> </tt>
-<a name="L328"></a><tt class="py-lineno"> 328</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L329"></a><tt class="py-lineno"> 329</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L330"></a><tt class="py-lineno"> 330</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L331"></a><tt class="py-lineno"> 331</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L332"></a><tt class="py-lineno"> 332</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L333"></a><tt class="py-lineno"> 333</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L334"></a><tt class="py-lineno"> 334</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-86', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L335"></a><tt class="py-lineno"> 335</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS1Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS1Port not defined"</tt> </tt>
-<a name="L336"></a><tt class="py-lineno"> 336</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS2Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS2Port not defined"</tt> </tt>
-<a name="L337"></a><tt class="py-lineno"> 337</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS3Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS3Port not defined"</tt> </tt>
-<a name="L338"></a><tt class="py-lineno"> 338</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS4Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS4Port not defined"</tt> </tt>
-<a name="L339"></a><tt class="py-lineno"> 339</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS5Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS5Port not defined"</tt> </tt>
-<a name="L340"></a><tt class="py-lineno"> 340</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS6Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS6Port not defined"</tt> </tt>
-<a name="L341"></a><tt class="py-lineno"> 341</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS7Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS7Port not defined"</tt> </tt>
-<a name="L342"></a><tt class="py-lineno"> 342</tt> <tt class="py-line"> </tt>
-<a name="L343"></a><tt class="py-lineno"> 343</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-87', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assigning Controller roles for switches"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L344"></a><tt class="py-lineno"> 344</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Check that ONOS is connected to each "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L345"></a><tt class="py-lineno"> 345</tt> <tt class="py-line"> <tt class="py-string">"device. Then manually assign"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L346"></a><tt class="py-lineno"> 346</tt> <tt class="py-line"> <tt class="py-string">" mastership to specific ONOS nodes using"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L347"></a><tt class="py-lineno"> 347</tt> <tt class="py-line"> <tt class="py-string">" 'device-role'"</tt> </tt>
-<a name="L348"></a><tt class="py-lineno"> 348</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-88', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assign mastership of switches to specific controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L349"></a><tt class="py-lineno"> 349</tt> <tt class="py-line"> <tt class="py-comment"># Manually assign mastership to the controller we want</tt> </tt>
-<a name="L350"></a><tt class="py-lineno"> 350</tt> <tt class="py-line"> <tt class="py-name">roleCall</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L351"></a><tt class="py-lineno"> 351</tt> <tt class="py-line"> </tt>
-<a name="L352"></a><tt class="py-lineno"> 352</tt> <tt class="py-line"> <tt class="py-name">ipList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-op">]</tt> </tt>
-<a name="L353"></a><tt class="py-lineno"> 353</tt> <tt class="py-line"> <tt class="py-name">deviceList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L354"></a><tt class="py-lineno"> 354</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L355"></a><tt class="py-lineno"> 355</tt> <tt class="py-line"> <tt class="py-comment"># Assign mastership to specific controllers. This assignment was</tt> </tt>
-<a name="L356"></a><tt class="py-lineno"> 356</tt> <tt class="py-line"> <tt class="py-comment"># determined for a 7 node cluser, but will work with any sized</tt> </tt>
-<a name="L357"></a><tt class="py-lineno"> 357</tt> <tt class="py-line"> <tt class="py-comment"># cluster</tt> </tt>
-<a name="L358"></a><tt class="py-lineno"> 358</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># switches 1 through 28</tt> </tt>
-<a name="L359"></a><tt class="py-lineno"> 359</tt> <tt class="py-line"> <tt class="py-comment"># set up correct variables:</tt> </tt>
-<a name="L360"></a><tt class="py-lineno"> 360</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L361"></a><tt class="py-lineno"> 361</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L362"></a><tt class="py-lineno"> 362</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-89', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS1</tt> </tt>
-<a name="L363"></a><tt class="py-lineno"> 363</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getDevice"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-90', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"1000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L364"></a><tt class="py-lineno"> 364</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L365"></a><tt class="py-lineno"> 365</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L366"></a><tt class="py-lineno"> 366</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-91', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS2</tt> </tt>
-<a name="L367"></a><tt class="py-lineno"> 367</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-92', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"2000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L368"></a><tt class="py-lineno"> 368</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L369"></a><tt class="py-lineno"> 369</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L370"></a><tt class="py-lineno"> 370</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-93', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS2</tt> </tt>
-<a name="L371"></a><tt class="py-lineno"> 371</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-94', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"3000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L372"></a><tt class="py-lineno"> 372</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L373"></a><tt class="py-lineno"> 373</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">3</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L374"></a><tt class="py-lineno"> 374</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-95', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS4</tt> </tt>
-<a name="L375"></a><tt class="py-lineno"> 375</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-96', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"3004"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L376"></a><tt class="py-lineno"> 376</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">5</tt><tt class="py-op">:</tt> </tt>
-<a name="L377"></a><tt class="py-lineno"> 377</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">2</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L378"></a><tt class="py-lineno"> 378</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-97', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS3</tt> </tt>
-<a name="L379"></a><tt class="py-lineno"> 379</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-98', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"5000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L380"></a><tt class="py-lineno"> 380</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">6</tt><tt class="py-op">:</tt> </tt>
-<a name="L381"></a><tt class="py-lineno"> 381</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">2</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L382"></a><tt class="py-lineno"> 382</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-99', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS3</tt> </tt>
-<a name="L383"></a><tt class="py-lineno"> 383</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-100', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"6000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L384"></a><tt class="py-lineno"> 384</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">7</tt><tt class="py-op">:</tt> </tt>
-<a name="L385"></a><tt class="py-lineno"> 385</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">5</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L386"></a><tt class="py-lineno"> 386</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-101', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS6</tt> </tt>
-<a name="L387"></a><tt class="py-lineno"> 387</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-102', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"6007"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L388"></a><tt class="py-lineno"> 388</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">8</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-number">17</tt><tt class="py-op">:</tt> </tt>
-<a name="L389"></a><tt class="py-lineno"> 389</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">4</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L390"></a><tt class="py-lineno"> 390</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-103', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS5</tt> </tt>
-<a name="L391"></a><tt class="py-lineno"> 391</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'3'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L392"></a><tt class="py-lineno"> 392</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-104', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L393"></a><tt class="py-lineno"> 393</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">18</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-number">27</tt><tt class="py-op">:</tt> </tt>
-<a name="L394"></a><tt class="py-lineno"> 394</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">6</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L395"></a><tt class="py-lineno"> 395</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-105', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS7</tt> </tt>
-<a name="L396"></a><tt class="py-lineno"> 396</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'6'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L397"></a><tt class="py-lineno"> 397</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-106" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-106', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L398"></a><tt class="py-lineno"> 398</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">28</tt><tt class="py-op">:</tt> </tt>
-<a name="L399"></a><tt class="py-lineno"> 399</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L400"></a><tt class="py-lineno"> 400</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-107', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS1</tt> </tt>
-<a name="L401"></a><tt class="py-lineno"> 401</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-108', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"2800"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L402"></a><tt class="py-lineno"> 402</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L403"></a><tt class="py-lineno"> 403</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-109', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-110', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"You didn't write an else statement for "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L404"></a><tt class="py-lineno"> 404</tt> <tt class="py-line"> <tt class="py-string">"switch s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L405"></a><tt class="py-lineno"> 405</tt> <tt class="py-line"> <tt class="py-name">roleCall</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L406"></a><tt class="py-lineno"> 406</tt> <tt class="py-line"> <tt class="py-comment"># Assign switch</tt> </tt>
-<a name="L407"></a><tt class="py-lineno"> 407</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">deviceId</tt><tt class="py-op">,</tt> <tt class="py-string">"No device id for s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" in ONOS"</tt> </tt>
-<a name="L408"></a><tt class="py-lineno"> 408</tt> <tt class="py-line"> <tt class="py-comment"># TODO: make this controller dynamic</tt> </tt>
-<a name="L409"></a><tt class="py-lineno"> 409</tt> <tt class="py-line"> <tt class="py-name">roleCall</tt> <tt class="py-op">=</tt> <tt class="py-name">roleCall</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deviceRole()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deviceRole"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deviceRole" class="py-name" href="#" onclick="return doclink('link-111', 'deviceRole', 'link-111');">deviceRole</a></tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt><tt class="py-op">,</tt> </tt>
-<a name="L410"></a><tt class="py-lineno"> 410</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> </tt>
-<a name="L411"></a><tt class="py-lineno"> 411</tt> <tt class="py-line"> <tt class="py-name">ipList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> </tt>
-<a name="L412"></a><tt class="py-lineno"> 412</tt> <tt class="py-line"> <tt class="py-name">deviceList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L413"></a><tt class="py-lineno"> 413</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">,</tt> <tt class="py-name">AssertionError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L414"></a><tt class="py-lineno"> 414</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-112', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Something is wrong with ONOS device view"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L415"></a><tt class="py-lineno"> 415</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-113', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#devices"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-114', 'devices', 'link-114');">devices</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L416"></a><tt class="py-lineno"> 416</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L417"></a><tt class="py-lineno"> 417</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L418"></a><tt class="py-lineno"> 418</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">roleCall</tt><tt class="py-op">,</tt> </tt>
-<a name="L419"></a><tt class="py-lineno"> 419</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Re-assigned switch mastership to designated controller"</tt><tt class="py-op">,</tt> </tt>
-<a name="L420"></a><tt class="py-lineno"> 420</tt> <tt class="py-line"> <tt id="link-115" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-115', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something wrong with deviceRole calls"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L421"></a><tt class="py-lineno"> 421</tt> <tt class="py-line"> </tt>
-<a name="L422"></a><tt class="py-lineno"> 422</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-116', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check mastership was correctly assigned"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L423"></a><tt class="py-lineno"> 423</tt> <tt class="py-line"> <tt class="py-name">roleCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L424"></a><tt class="py-lineno"> 424</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: This is due to the fact that device mastership change is not</tt> </tt>
-<a name="L425"></a><tt class="py-lineno"> 425</tt> <tt class="py-line"> <tt class="py-comment"># atomic and is actually a multi step process</tt> </tt>
-<a name="L426"></a><tt class="py-lineno"> 426</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L427"></a><tt class="py-lineno"> 427</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">ipList</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L428"></a><tt class="py-lineno"> 428</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">ipList</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> </tt>
-<a name="L429"></a><tt class="py-lineno"> 429</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceList</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> </tt>
-<a name="L430"></a><tt class="py-lineno"> 430</tt> <tt class="py-line"> <tt class="py-comment"># Check assignment</tt> </tt>
-<a name="L431"></a><tt class="py-lineno"> 431</tt> <tt class="py-line"> <tt class="py-name">master</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getRole()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getRole"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getRole" class="py-name" href="#" onclick="return doclink('link-117', 'getRole', 'link-117');">getRole</a></tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'master'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L432"></a><tt class="py-lineno"> 432</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-keyword">in</tt> <tt class="py-name">master</tt><tt class="py-op">:</tt> </tt>
-<a name="L433"></a><tt class="py-lineno"> 433</tt> <tt class="py-line"> <tt class="py-name">roleCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">roleCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L434"></a><tt class="py-lineno"> 434</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L435"></a><tt class="py-lineno"> 435</tt> <tt class="py-line"> <tt class="py-name">roleCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">roleCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L436"></a><tt class="py-lineno"> 436</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-118', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-119', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, controller "</tt> <tt class="py-op">+</tt> <tt class="py-name">ip</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L437"></a><tt class="py-lineno"> 437</tt> <tt class="py-line"> <tt class="py-string">" master "</tt> <tt class="py-op">+</tt> <tt class="py-string">"of device "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L438"></a><tt class="py-lineno"> 438</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">". Master is "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L439"></a><tt class="py-lineno"> 439</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">master</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L440"></a><tt class="py-lineno"> 440</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L441"></a><tt class="py-lineno"> 441</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L442"></a><tt class="py-lineno"> 442</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">roleCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L443"></a><tt class="py-lineno"> 443</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Switches were successfully reassigned to designated "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L444"></a><tt class="py-lineno"> 444</tt> <tt class="py-line"> <tt class="py-string">"controller"</tt><tt class="py-op">,</tt> </tt>
-<a name="L445"></a><tt class="py-lineno"> 445</tt> <tt class="py-line"> <tt id="link-120" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-120', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Switches were not successfully reassigned"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L446"></a><tt class="py-lineno"> 446</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE3"></a><div id="HAminorityRestart.CASE3-def"><a name="L447"></a><tt class="py-lineno"> 447</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE3-toggle" onclick="return toggle('HAminorityRestart.CASE3');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE3">CASE3</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE3-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE3-expanded"><a name="L448"></a><tt class="py-lineno"> 448</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L449"></a><tt class="py-lineno"> 449</tt> <tt class="py-line"><tt class="py-docstring"> Assign intents</tt> </tt>
-<a name="L450"></a><tt class="py-lineno"> 450</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L451"></a><tt class="py-lineno"> 451</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L452"></a><tt class="py-lineno"> 452</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L453"></a><tt class="py-lineno"> 453</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L454"></a><tt class="py-lineno"> 454</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L455"></a><tt class="py-lineno"> 455</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L456"></a><tt class="py-lineno"> 456</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L457"></a><tt class="py-lineno"> 457</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-121" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-121', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L458"></a><tt class="py-lineno"> 458</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-122', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Adding host Intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L459"></a><tt class="py-lineno"> 459</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Discover hosts by using pingall then "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L460"></a><tt class="py-lineno"> 460</tt> <tt class="py-line"> <tt class="py-string">"assign predetermined host-to-host intents."</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L461"></a><tt class="py-lineno"> 461</tt> <tt class="py-line"> <tt class="py-string">" After installation, check that the intent"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L462"></a><tt class="py-lineno"> 462</tt> <tt class="py-line"> <tt class="py-string">" is distributed to all nodes and the state"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L463"></a><tt class="py-lineno"> 463</tt> <tt class="py-line"> <tt class="py-string">" is INSTALLED"</tt> </tt>
-<a name="L464"></a><tt class="py-lineno"> 464</tt> <tt class="py-line"> </tt>
-<a name="L465"></a><tt class="py-lineno"> 465</tt> <tt class="py-line"> <tt class="py-comment"># install onos-app-fwd</tt> </tt>
-<a name="L466"></a><tt class="py-lineno"> 466</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-123', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install reactive forwarding app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L467"></a><tt class="py-lineno"> 467</tt> <tt class="py-line"> <tt class="py-name">installResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-124" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#activateApp,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#activateApp"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-124', 'activateApp', 'link-124');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.fwd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L468"></a><tt class="py-lineno"> 468</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">installResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L469"></a><tt class="py-lineno"> 469</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Install fwd successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L470"></a><tt class="py-lineno"> 470</tt> <tt class="py-line"> <tt id="link-125" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-125', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Install fwd failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L471"></a><tt class="py-lineno"> 471</tt> <tt class="py-line"> </tt>
-<a name="L472"></a><tt class="py-lineno"> 472</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-126', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check app ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L473"></a><tt class="py-lineno"> 473</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L474"></a><tt class="py-lineno"> 474</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L475"></a><tt class="py-lineno"> 475</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L476"></a><tt class="py-lineno"> 476</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-127', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-128', 'appToIDCheck', 'link-64');">appToIDCheck</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L477"></a><tt class="py-lineno"> 477</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"appToIDCheck-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L478"></a><tt class="py-lineno"> 478</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L479"></a><tt class="py-lineno"> 479</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L480"></a><tt class="py-lineno"> 480</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L481"></a><tt class="py-lineno"> 481</tt> <tt class="py-line"> </tt>
-<a name="L482"></a><tt class="py-lineno"> 482</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L483"></a><tt class="py-lineno"> 483</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L484"></a><tt class="py-lineno"> 484</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">appCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L485"></a><tt class="py-lineno"> 485</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L486"></a><tt class="py-lineno"> 486</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-129', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-130" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-130', 'apps', 'link-66');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L487"></a><tt class="py-lineno"> 487</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-131', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-132', 'appIDs', 'link-68');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L488"></a><tt class="py-lineno"> 488</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L489"></a><tt class="py-lineno"> 489</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L490"></a><tt class="py-lineno"> 490</tt> <tt class="py-line"> <tt id="link-133" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-133', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L491"></a><tt class="py-lineno"> 491</tt> <tt class="py-line"> </tt>
-<a name="L492"></a><tt class="py-lineno"> 492</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-134" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-134', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Discovering Hosts( Via pingall for now )"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L493"></a><tt class="py-lineno"> 493</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: Once we have a host discovery mechanism, use that instead</tt> </tt>
-<a name="L494"></a><tt class="py-lineno"> 494</tt> <tt class="py-line"> <tt class="py-comment"># REACTIVE FWD test</tt> </tt>
-<a name="L495"></a><tt class="py-lineno"> 495</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L496"></a><tt class="py-lineno"> 496</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># Retry if pingall fails first time</tt> </tt>
-<a name="L497"></a><tt class="py-lineno"> 497</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L498"></a><tt class="py-lineno"> 498</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingall"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-135', 'pingall', 'link-135');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L499"></a><tt class="py-lineno"> 499</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L500"></a><tt class="py-lineno"> 500</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L501"></a><tt class="py-lineno"> 501</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L502"></a><tt class="py-lineno"> 502</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L503"></a><tt class="py-lineno"> 503</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Reactive Pingall test passed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L504"></a><tt class="py-lineno"> 504</tt> <tt class="py-line"> <tt id="link-136" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-136', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Reactive Pingall failed, "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L505"></a><tt class="py-lineno"> 505</tt> <tt class="py-line"> <tt class="py-string">"one or more ping pairs failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L506"></a><tt class="py-lineno"> 506</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L507"></a><tt class="py-lineno"> 507</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-137', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Time for pingall: %2f seconds"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L508"></a><tt class="py-lineno"> 508</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L509"></a><tt class="py-lineno"> 509</tt> <tt class="py-line"> <tt class="py-comment"># timeout for fwd flows</tt> </tt>
-<a name="L510"></a><tt class="py-lineno"> 510</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">11</tt> <tt class="py-op">)</tt> </tt>
-<a name="L511"></a><tt class="py-lineno"> 511</tt> <tt class="py-line"> <tt class="py-comment"># uninstall onos-app-fwd</tt> </tt>
-<a name="L512"></a><tt class="py-lineno"> 512</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-138', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Uninstall reactive forwarding app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L513"></a><tt class="py-lineno"> 513</tt> <tt class="py-line"> <tt class="py-name">uninstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-139" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.deactivateApp()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#deactivateApp,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deactivateApp()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deactivateApp"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.deactivateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deactivateApp" class="py-name" href="#" onclick="return doclink('link-139', 'deactivateApp', 'link-139');">deactivateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.fwd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L514"></a><tt class="py-lineno"> 514</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">uninstallResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L515"></a><tt class="py-lineno"> 515</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Uninstall fwd successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L516"></a><tt class="py-lineno"> 516</tt> <tt class="py-line"> <tt id="link-140" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-140', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Uninstall fwd failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L517"></a><tt class="py-lineno"> 517</tt> <tt class="py-line"> </tt>
-<a name="L518"></a><tt class="py-lineno"> 518</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-141" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-141', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check app ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L519"></a><tt class="py-lineno"> 519</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L520"></a><tt class="py-lineno"> 520</tt> <tt class="py-line"> <tt class="py-name">appCheck2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L521"></a><tt class="py-lineno"> 521</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L522"></a><tt class="py-lineno"> 522</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-142', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-143', 'appToIDCheck', 'link-64');">appToIDCheck</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L523"></a><tt class="py-lineno"> 523</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"appToIDCheck-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L524"></a><tt class="py-lineno"> 524</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L525"></a><tt class="py-lineno"> 525</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L526"></a><tt class="py-lineno"> 526</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L527"></a><tt class="py-lineno"> 527</tt> <tt class="py-line"> </tt>
-<a name="L528"></a><tt class="py-lineno"> 528</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L529"></a><tt class="py-lineno"> 529</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L530"></a><tt class="py-lineno"> 530</tt> <tt class="py-line"> <tt class="py-name">appCheck2</tt> <tt class="py-op">=</tt> <tt class="py-name">appCheck2</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L531"></a><tt class="py-lineno"> 531</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck2</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L532"></a><tt class="py-lineno"> 532</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-144" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-144', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-145" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-145', 'apps', 'link-66');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L533"></a><tt class="py-lineno"> 533</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-146" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-146', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-147', 'appIDs', 'link-68');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L534"></a><tt class="py-lineno"> 534</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck2</tt><tt class="py-op">,</tt> </tt>
-<a name="L535"></a><tt class="py-lineno"> 535</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L536"></a><tt class="py-lineno"> 536</tt> <tt class="py-line"> <tt id="link-148" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-148', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L537"></a><tt class="py-lineno"> 537</tt> <tt class="py-line"> </tt>
-<a name="L538"></a><tt class="py-lineno"> 538</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-149" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-149', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add host intents via cli"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L539"></a><tt class="py-lineno"> 539</tt> <tt class="py-line"> <tt class="py-name">intentIds</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L540"></a><tt class="py-lineno"> 540</tt> <tt class="py-line"> <tt class="py-comment"># TODO: move the host numbers to params</tt> </tt>
-<a name="L541"></a><tt class="py-lineno"> 541</tt> <tt class="py-line"> <tt class="py-comment"># Maybe look at all the paths we ping?</tt> </tt>
-<a name="L542"></a><tt class="py-lineno"> 542</tt> <tt class="py-line"> <tt class="py-name">intentAddResult</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L543"></a><tt class="py-lineno"> 543</tt> <tt class="py-line"> <tt class="py-name">hostResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L544"></a><tt class="py-lineno"> 544</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-number">18</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L545"></a><tt class="py-lineno"> 545</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-150" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-150', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Adding host intent between h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L546"></a><tt class="py-lineno"> 546</tt> <tt class="py-line"> <tt class="py-string">" and h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L547"></a><tt class="py-lineno"> 547</tt> <tt class="py-line"> <tt class="py-name">host1</tt> <tt class="py-op">=</tt> <tt class="py-string">"00:00:00:00:00:"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L548"></a><tt class="py-lineno"> 548</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L549"></a><tt class="py-lineno"> 549</tt> <tt class="py-line"> <tt class="py-name">host2</tt> <tt class="py-op">=</tt> <tt class="py-string">"00:00:00:00:00:"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L550"></a><tt class="py-lineno"> 550</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L551"></a><tt class="py-lineno"> 551</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: getHost can return None</tt> </tt>
-<a name="L552"></a><tt class="py-lineno"> 552</tt> <tt class="py-line"> <tt class="py-name">host1Dict</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-151" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getHost()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getHost,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getHost()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getHost"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getHost
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getHost" class="py-name" href="#" onclick="return doclink('link-151', 'getHost', 'link-151');">getHost</a></tt><tt class="py-op">(</tt> <tt class="py-name">host1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L553"></a><tt class="py-lineno"> 553</tt> <tt class="py-line"> <tt class="py-name">host2Dict</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getHost
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getHost" class="py-name" href="#" onclick="return doclink('link-152', 'getHost', 'link-151');">getHost</a></tt><tt class="py-op">(</tt> <tt class="py-name">host2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L554"></a><tt class="py-lineno"> 554</tt> <tt class="py-line"> <tt class="py-name">host1Id</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L555"></a><tt class="py-lineno"> 555</tt> <tt class="py-line"> <tt class="py-name">host2Id</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L556"></a><tt class="py-lineno"> 556</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">host1Dict</tt> <tt class="py-keyword">and</tt> <tt class="py-name">host2Dict</tt><tt class="py-op">:</tt> </tt>
-<a name="L557"></a><tt class="py-lineno"> 557</tt> <tt class="py-line"> <tt class="py-name">host1Id</tt> <tt class="py-op">=</tt> <tt class="py-name">host1Dict</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L558"></a><tt class="py-lineno"> 558</tt> <tt class="py-line"> <tt class="py-name">host2Id</tt> <tt class="py-op">=</tt> <tt class="py-name">host2Dict</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L559"></a><tt class="py-lineno"> 559</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">host1Id</tt> <tt class="py-keyword">and</tt> <tt class="py-name">host2Id</tt><tt class="py-op">:</tt> </tt>
-<a name="L560"></a><tt class="py-lineno"> 560</tt> <tt class="py-line"> <tt class="py-name">nodeNum</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> </tt>
-<a name="L561"></a><tt class="py-lineno"> 561</tt> <tt class="py-line"> <tt class="py-name">tmpId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt> <tt class="py-name">nodeNum</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addHostIntent()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addHostIntent,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addHostIntent()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addHostIntent"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addHostIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addHostIntent" class="py-name" href="#" onclick="return doclink('link-153', 'addHostIntent', 'link-153');">addHostIntent</a></tt><tt class="py-op">(</tt> <tt class="py-name">host1Id</tt><tt class="py-op">,</tt> <tt class="py-name">host2Id</tt> <tt class="py-op">)</tt> </tt>
-<a name="L562"></a><tt class="py-lineno"> 562</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tmpId</tt><tt class="py-op">:</tt> </tt>
-<a name="L563"></a><tt class="py-lineno"> 563</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-154" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-154', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Added intent with id: "</tt> <tt class="py-op">+</tt> <tt class="py-name">tmpId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L564"></a><tt class="py-lineno"> 564</tt> <tt class="py-line"> <tt class="py-name">intentIds</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">tmpId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L565"></a><tt class="py-lineno"> 565</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L566"></a><tt class="py-lineno"> 566</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-155', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-156" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-156', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"addHostIntent returned: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L567"></a><tt class="py-lineno"> 567</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">tmpId</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L568"></a><tt class="py-lineno"> 568</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L569"></a><tt class="py-lineno"> 569</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-157', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-158" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-158', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, getHost() failed for h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L570"></a><tt class="py-lineno"> 570</tt> <tt class="py-line"> <tt class="py-string">" and/or h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L571"></a><tt class="py-lineno"> 571</tt> <tt class="py-line"> <tt id="link-159" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#hosts,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#hosts"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-159', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-160" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-160', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L572"></a><tt class="py-lineno"> 572</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-161" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-161', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Hosts output: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L573"></a><tt class="py-lineno"> 573</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L574"></a><tt class="py-lineno"> 574</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-162', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-163" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-163', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L575"></a><tt class="py-lineno"> 575</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L576"></a><tt class="py-lineno"> 576</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L577"></a><tt class="py-lineno"> 577</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L578"></a><tt class="py-lineno"> 578</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L579"></a><tt class="py-lineno"> 579</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-164" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-164', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-165" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-165', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L580"></a><tt class="py-lineno"> 580</tt> <tt class="py-line"> <tt class="py-name">hostResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L581"></a><tt class="py-lineno"> 581</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">hostResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L582"></a><tt class="py-lineno"> 582</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Found a host id for each host"</tt><tt class="py-op">,</tt> </tt>
-<a name="L583"></a><tt class="py-lineno"> 583</tt> <tt class="py-line"> <tt id="link-166" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-166', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error looking up host ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L584"></a><tt class="py-lineno"> 584</tt> <tt class="py-line"> </tt>
-<a name="L585"></a><tt class="py-lineno"> 585</tt> <tt class="py-line"> <tt class="py-name">intentStart</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L586"></a><tt class="py-lineno"> 586</tt> <tt class="py-line"> <tt class="py-name">onosIds</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllIntentsId"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId" class="py-name" href="#" onclick="return doclink('link-167', 'getAllIntentsId', 'link-167');">getAllIntentsId</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L587"></a><tt class="py-lineno"> 587</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-168', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Submitted intents: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">intentIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L588"></a><tt class="py-lineno"> 588</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-169" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-169', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents in ONOS: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L589"></a><tt class="py-lineno"> 589</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-170" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intent"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-170', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentIds</tt><tt class="py-op">:</tt> </tt>
-<a name="L590"></a><tt class="py-lineno"> 590</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-171" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-171', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosIds</tt><tt class="py-op">:</tt> </tt>
-<a name="L591"></a><tt class="py-lineno"> 591</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> <tt class="py-comment"># intent submitted is in onos</tt> </tt>
-<a name="L592"></a><tt class="py-lineno"> 592</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L593"></a><tt class="py-lineno"> 593</tt> <tt class="py-line"> <tt class="py-name">intentAddResult</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L594"></a><tt class="py-lineno"> 594</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentAddResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L595"></a><tt class="py-lineno"> 595</tt> <tt class="py-line"> <tt class="py-name">intentStop</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L596"></a><tt class="py-lineno"> 596</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L597"></a><tt class="py-lineno"> 597</tt> <tt class="py-line"> <tt class="py-name">intentStop</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L598"></a><tt class="py-lineno"> 598</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L599"></a><tt class="py-lineno"> 599</tt> <tt class="py-line"> <tt id="link-172" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intents,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intents"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-172', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-173', 'intents', 'link-172');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L600"></a><tt class="py-lineno"> 600</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L601"></a><tt class="py-lineno"> 601</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L602"></a><tt class="py-lineno"> 602</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-174" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-174', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-string">'Count'</tt><tt class="py-op">,</tt> <tt class="py-string">'ID'</tt><tt class="py-op">,</tt> <tt class="py-string">'State'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L603"></a><tt class="py-lineno"> 603</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L604"></a><tt class="py-lineno"> 604</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L605"></a><tt class="py-lineno"> 605</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-175" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-175', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-176" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-176', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L606"></a><tt class="py-lineno"> 606</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-177" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-177', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L607"></a><tt class="py-lineno"> 607</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"INSTALLED"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L608"></a><tt class="py-lineno"> 608</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L609"></a><tt class="py-lineno"> 609</tt> <tt class="py-line"> <tt class="py-name">intentId</tt> <tt class="py-op">=</tt> <tt id="link-178" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-178', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L610"></a><tt class="py-lineno"> 610</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L611"></a><tt class="py-lineno"> 611</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L612"></a><tt class="py-lineno"> 612</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-179" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-179', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L613"></a><tt class="py-lineno"> 613</tt> <tt class="py-line"> <tt class="py-comment"># add submitted intents not in the store</tt> </tt>
-<a name="L614"></a><tt class="py-lineno"> 614</tt> <tt class="py-line"> <tt class="py-name">tmplist</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt> <tt class="py-op">]</tt> </tt>
-<a name="L615"></a><tt class="py-lineno"> 615</tt> <tt class="py-line"> <tt class="py-name">missingIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L616"></a><tt class="py-lineno"> 616</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentIds</tt><tt class="py-op">:</tt> </tt>
-<a name="L617"></a><tt class="py-lineno"> 617</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">tmplist</tt><tt class="py-op">:</tt> </tt>
-<a name="L618"></a><tt class="py-lineno"> 618</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-string">" - "</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L619"></a><tt class="py-lineno"> 619</tt> <tt class="py-line"> <tt class="py-name">missingIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L620"></a><tt class="py-lineno"> 620</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L621"></a><tt class="py-lineno"> 621</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt><tt class="py-op">:</tt> </tt>
-<a name="L622"></a><tt class="py-lineno"> 622</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L623"></a><tt class="py-lineno"> 623</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-180" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-180', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L624"></a><tt class="py-lineno"> 624</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">s</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L625"></a><tt class="py-lineno"> 625</tt> <tt class="py-line"> <tt id="link-181" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#leaders"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-181', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-182" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-182', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L626"></a><tt class="py-lineno"> 626</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L627"></a><tt class="py-lineno"> 627</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L628"></a><tt class="py-lineno"> 628</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-183" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-183', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L629"></a><tt class="py-lineno"> 629</tt> <tt class="py-line"> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-184" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-184', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L630"></a><tt class="py-lineno"> 630</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-185" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-185', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedLeaders</tt><tt class="py-op">,</tt> </tt>
-<a name="L631"></a><tt class="py-lineno"> 631</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L632"></a><tt class="py-lineno"> 632</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L633"></a><tt class="py-lineno"> 633</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L634"></a><tt class="py-lineno"> 634</tt> <tt class="py-line"> <tt class="py-comment"># check for all intent partitions</tt> </tt>
-<a name="L635"></a><tt class="py-lineno"> 635</tt> <tt class="py-line"> <tt class="py-name">topics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L636"></a><tt class="py-lineno"> 636</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">14</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L637"></a><tt class="py-lineno"> 637</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"intent-partition-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L638"></a><tt class="py-lineno"> 638</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-186" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-186', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">topics</tt> <tt class="py-op">)</tt> </tt>
-<a name="L639"></a><tt class="py-lineno"> 639</tt> <tt class="py-line"> <tt class="py-name">ONOStopics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-string">'topic'</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">]</tt> </tt>
-<a name="L640"></a><tt class="py-lineno"> 640</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">in</tt> <tt class="py-name">topics</tt><tt class="py-op">:</tt> </tt>
-<a name="L641"></a><tt class="py-lineno"> 641</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOStopics</tt><tt class="py-op">:</tt> </tt>
-<a name="L642"></a><tt class="py-lineno"> 642</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-187" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-187', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-188" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-188', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error: "</tt> <tt class="py-op">+</tt> <tt class="py-name">topic</tt> <tt class="py-op">+</tt> </tt>
-<a name="L643"></a><tt class="py-lineno"> 643</tt> <tt class="py-line"> <tt class="py-string">" not in leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L644"></a><tt class="py-lineno"> 644</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L645"></a><tt class="py-lineno"> 645</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L646"></a><tt class="py-lineno"> 646</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-189" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-189', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-190" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-190', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"leaders() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L647"></a><tt class="py-lineno"> 647</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L648"></a><tt class="py-lineno"> 648</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-191" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-191', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L649"></a><tt class="py-lineno"> 649</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-192" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-192', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-193" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-193', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-194" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-194', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L650"></a><tt class="py-lineno"> 650</tt> <tt class="py-line"> <tt class="py-comment"># Check all nodes</tt> </tt>
-<a name="L651"></a><tt class="py-lineno"> 651</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">missing</tt><tt class="py-op">:</tt> </tt>
-<a name="L652"></a><tt class="py-lineno"> 652</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L653"></a><tt class="py-lineno"> 653</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt id="link-195" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-195', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L654"></a><tt class="py-lineno"> 654</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-196" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-196', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" leaders output: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L655"></a><tt class="py-lineno"> 655</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L656"></a><tt class="py-lineno"> 656</tt> <tt class="py-line"> </tt>
-<a name="L657"></a><tt class="py-lineno"> 657</tt> <tt class="py-line"> <tt id="link-197" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#partitions"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-197', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-198" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-198', 'partitions', 'link-197');">partitions</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L658"></a><tt class="py-lineno"> 658</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L659"></a><tt class="py-lineno"> 659</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-199" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-199', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L660"></a><tt class="py-lineno"> 660</tt> <tt class="py-line"> <tt class="py-name">parsedPartitions</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-200" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-200', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L661"></a><tt class="py-lineno"> 661</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-201" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-201', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPartitions</tt><tt class="py-op">,</tt> </tt>
-<a name="L662"></a><tt class="py-lineno"> 662</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L663"></a><tt class="py-lineno"> 663</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L664"></a><tt class="py-lineno"> 664</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L665"></a><tt class="py-lineno"> 665</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for a leader in all paritions</tt> </tt>
-<a name="L666"></a><tt class="py-lineno"> 666</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for consistency among nodes</tt> </tt>
-<a name="L667"></a><tt class="py-lineno"> 667</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L668"></a><tt class="py-lineno"> 668</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-202" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-202', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-203" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-203', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"partitions() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L669"></a><tt class="py-lineno"> 669</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L670"></a><tt class="py-lineno"> 670</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-204" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-204', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing partitions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L671"></a><tt class="py-lineno"> 671</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-205" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-205', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-206" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-206', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-207" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-207', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L672"></a><tt class="py-lineno"> 672</tt> <tt class="py-line"> <tt id="link-208" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#pendingMap"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-208', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-209" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-209', 'pendingMap', 'link-208');">pendingMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L673"></a><tt class="py-lineno"> 673</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L674"></a><tt class="py-lineno"> 674</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-210" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-210', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L675"></a><tt class="py-lineno"> 675</tt> <tt class="py-line"> <tt class="py-name">parsedPending</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-211" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-211', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L676"></a><tt class="py-lineno"> 676</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-212" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-212', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPending</tt><tt class="py-op">,</tt> </tt>
-<a name="L677"></a><tt class="py-lineno"> 677</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L678"></a><tt class="py-lineno"> 678</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L679"></a><tt class="py-lineno"> 679</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L680"></a><tt class="py-lineno"> 680</tt> <tt class="py-line"> <tt class="py-comment"># TODO check something here?</tt> </tt>
-<a name="L681"></a><tt class="py-lineno"> 681</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L682"></a><tt class="py-lineno"> 682</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-213" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-213', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-214" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-214', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pendingMap() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L683"></a><tt class="py-lineno"> 683</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L684"></a><tt class="py-lineno"> 684</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-215" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-215', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing pending map"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L685"></a><tt class="py-lineno"> 685</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-216" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-216', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-217" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-217', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-218" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-218', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L686"></a><tt class="py-lineno"> 686</tt> <tt class="py-line"> </tt>
-<a name="L687"></a><tt class="py-lineno"> 687</tt> <tt class="py-line"> <tt class="py-name">intentAddResult</tt> <tt class="py-op">=</tt> <tt class="py-name">bool</tt><tt class="py-op">(</tt> <tt class="py-name">intentAddResult</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">missingIntents</tt> <tt class="py-keyword">and</tt> </tt>
-<a name="L688"></a><tt class="py-lineno"> 688</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">)</tt> </tt>
-<a name="L689"></a><tt class="py-lineno"> 689</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">intentAddResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L690"></a><tt class="py-lineno"> 690</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-219" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-219', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-220" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-220', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in pushing host intents to ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L691"></a><tt class="py-lineno"> 691</tt> <tt class="py-line"> </tt>
-<a name="L692"></a><tt class="py-lineno"> 692</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-221" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-221', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Intent Anti-Entropy dispersion"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L693"></a><tt class="py-lineno"> 693</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">100</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L694"></a><tt class="py-lineno"> 694</tt> <tt class="py-line"> <tt class="py-name">correct</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L695"></a><tt class="py-lineno"> 695</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-222" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-222', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Submitted intents: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">intentIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L696"></a><tt class="py-lineno"> 696</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-223" class="py-name" targets="Module TestON.bin.cli=TestON.bin.cli-module.html,Package TestON.drivers.common.cli=TestON.drivers.common.cli-module.html"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-223', 'cli', 'link-223');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L697"></a><tt class="py-lineno"> 697</tt> <tt class="py-line"> <tt class="py-name">onosIds</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L698"></a><tt class="py-lineno"> 698</tt> <tt class="py-line"> <tt class="py-name">ids</tt> <tt class="py-op">=</tt> <tt id="link-224" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-224', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt id="link-225" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId" class="py-name" href="#" onclick="return doclink('link-225', 'getAllIntentsId', 'link-167');">getAllIntentsId</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L699"></a><tt class="py-lineno"> 699</tt> <tt class="py-line"> <tt class="py-name">onosIds</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">ids</tt> <tt class="py-op">)</tt> </tt>
-<a name="L700"></a><tt class="py-lineno"> 700</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-226" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-226', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents in "</tt> <tt class="py-op">+</tt> <tt id="link-227" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-227', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L701"></a><tt class="py-lineno"> 701</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">onosIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L702"></a><tt class="py-lineno"> 702</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">ids</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">intentIds</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L703"></a><tt class="py-lineno"> 703</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-228" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-228', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Set of intent IDs doesn't match"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L704"></a><tt class="py-lineno"> 704</tt> <tt class="py-line"> <tt class="py-name">correct</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L705"></a><tt class="py-lineno"> 705</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L706"></a><tt class="py-lineno"> 706</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L707"></a><tt class="py-lineno"> 707</tt> <tt class="py-line"> <tt id="link-229" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-229', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-230" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-230', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt id="link-231" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-231', 'intents', 'link-172');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L708"></a><tt class="py-lineno"> 708</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-232" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-232', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt id="link-233" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-233', 'intents', 'link-172');">intents</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L709"></a><tt class="py-lineno"> 709</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-234" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-234', 'intent', 'link-170');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">"INSTALLED"</tt><tt class="py-op">:</tt> </tt>
-<a name="L710"></a><tt class="py-lineno"> 710</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-235" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-235', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Intent "</tt> <tt class="py-op">+</tt> <tt id="link-236" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-236', 'intent', 'link-170');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> </tt>
-<a name="L711"></a><tt class="py-lineno"> 711</tt> <tt class="py-line"> <tt class="py-string">" is "</tt> <tt class="py-op">+</tt> <tt id="link-237" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-237', 'intent', 'link-170');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L712"></a><tt class="py-lineno"> 712</tt> <tt class="py-line"> <tt class="py-name">correct</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L713"></a><tt class="py-lineno"> 713</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L714"></a><tt class="py-lineno"> 714</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">correct</tt><tt class="py-op">:</tt> </tt>
-<a name="L715"></a><tt class="py-lineno"> 715</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L716"></a><tt class="py-lineno"> 716</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L717"></a><tt class="py-lineno"> 717</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L718"></a><tt class="py-lineno"> 718</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">intentStop</tt><tt class="py-op">:</tt> </tt>
-<a name="L719"></a><tt class="py-lineno"> 719</tt> <tt class="py-line"> <tt class="py-name">intentStop</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L720"></a><tt class="py-lineno"> 720</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">gossipTime</tt> </tt>
-<a name="L721"></a><tt class="py-lineno"> 721</tt> <tt class="py-line"> <tt class="py-name">gossipTime</tt> <tt class="py-op">=</tt> <tt class="py-name">intentStop</tt> <tt class="py-op">-</tt> <tt class="py-name">intentStart</tt> </tt>
-<a name="L722"></a><tt class="py-lineno"> 722</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-238" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-238', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"It took about "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">gossipTime</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L723"></a><tt class="py-lineno"> 723</tt> <tt class="py-line"> <tt class="py-string">" seconds for all intents to appear in each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L724"></a><tt class="py-lineno"> 724</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: make this time configurable/calculate based off of number of</tt> </tt>
-<a name="L725"></a><tt class="py-lineno"> 725</tt> <tt class="py-line"> <tt class="py-comment"># nodes and gossip rounds</tt> </tt>
-<a name="L726"></a><tt class="py-lineno"> 726</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_greater_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L727"></a><tt class="py-lineno"> 727</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-number">40</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">gossipTime</tt><tt class="py-op">,</tt> </tt>
-<a name="L728"></a><tt class="py-lineno"> 728</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ECM anti-entropy for intents worked within "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L729"></a><tt class="py-lineno"> 729</tt> <tt class="py-line"> <tt class="py-string">"expected time"</tt><tt class="py-op">,</tt> </tt>
-<a name="L730"></a><tt class="py-lineno"> 730</tt> <tt class="py-line"> <tt id="link-239" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-239', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intent ECM anti-entropy took too long"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L731"></a><tt class="py-lineno"> 731</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">gossipTime</tt> <tt class="py-op"><=</tt> <tt class="py-number">40</tt><tt class="py-op">:</tt> </tt>
-<a name="L732"></a><tt class="py-lineno"> 732</tt> <tt class="py-line"> <tt class="py-name">intentAddResult</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L733"></a><tt class="py-lineno"> 733</tt> <tt class="py-line"> </tt>
-<a name="L734"></a><tt class="py-lineno"> 734</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">intentAddResult</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"key"</tt> <tt class="py-keyword">in</tt> <tt id="link-240" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-240', 'pendingMap', 'link-208');">pendingMap</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L735"></a><tt class="py-lineno"> 735</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L736"></a><tt class="py-lineno"> 736</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L737"></a><tt class="py-lineno"> 737</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-241" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-241', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Sleeping 60 seconds to see if intents are found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L738"></a><tt class="py-lineno"> 738</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L739"></a><tt class="py-lineno"> 739</tt> <tt class="py-line"> <tt class="py-name">onosIds</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-242" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId" class="py-name" href="#" onclick="return doclink('link-242', 'getAllIntentsId', 'link-167');">getAllIntentsId</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L740"></a><tt class="py-lineno"> 740</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-243" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-243', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Submitted intents: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">intentIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L741"></a><tt class="py-lineno"> 741</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-244" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-244', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents in ONOS: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L742"></a><tt class="py-lineno"> 742</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L743"></a><tt class="py-lineno"> 743</tt> <tt class="py-line"> <tt id="link-245" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-245', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-246" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-246', 'intents', 'link-172');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L744"></a><tt class="py-lineno"> 744</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L745"></a><tt class="py-lineno"> 745</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-247" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-247', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-string">'Count'</tt><tt class="py-op">,</tt> <tt class="py-string">'ID'</tt><tt class="py-op">,</tt> <tt class="py-string">'State'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L746"></a><tt class="py-lineno"> 746</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L747"></a><tt class="py-lineno"> 747</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L748"></a><tt class="py-lineno"> 748</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-248" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-248', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-249" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-249', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L749"></a><tt class="py-lineno"> 749</tt> <tt class="py-line"> <tt class="py-comment"># Iter through intents of a node</tt> </tt>
-<a name="L750"></a><tt class="py-lineno"> 750</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-250" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-250', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L751"></a><tt class="py-lineno"> 751</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"INSTALLED"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L752"></a><tt class="py-lineno"> 752</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L753"></a><tt class="py-lineno"> 753</tt> <tt class="py-line"> <tt class="py-name">intentId</tt> <tt class="py-op">=</tt> <tt id="link-251" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-251', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L754"></a><tt class="py-lineno"> 754</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L755"></a><tt class="py-lineno"> 755</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L756"></a><tt class="py-lineno"> 756</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-252" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-252', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L757"></a><tt class="py-lineno"> 757</tt> <tt class="py-line"> <tt class="py-comment"># add submitted intents not in the store</tt> </tt>
-<a name="L758"></a><tt class="py-lineno"> 758</tt> <tt class="py-line"> <tt class="py-name">tmplist</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt> <tt class="py-op">]</tt> </tt>
-<a name="L759"></a><tt class="py-lineno"> 759</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentIds</tt><tt class="py-op">:</tt> </tt>
-<a name="L760"></a><tt class="py-lineno"> 760</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">tmplist</tt><tt class="py-op">:</tt> </tt>
-<a name="L761"></a><tt class="py-lineno"> 761</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-string">" - "</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L762"></a><tt class="py-lineno"> 762</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L763"></a><tt class="py-lineno"> 763</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt><tt class="py-op">:</tt> </tt>
-<a name="L764"></a><tt class="py-lineno"> 764</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L765"></a><tt class="py-lineno"> 765</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-253" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-253', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L766"></a><tt class="py-lineno"> 766</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">s</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L767"></a><tt class="py-lineno"> 767</tt> <tt class="py-line"> <tt id="link-254" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-254', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-255" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-255', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L768"></a><tt class="py-lineno"> 768</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L769"></a><tt class="py-lineno"> 769</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L770"></a><tt class="py-lineno"> 770</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-256" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-256', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L771"></a><tt class="py-lineno"> 771</tt> <tt class="py-line"> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-257" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-257', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L772"></a><tt class="py-lineno"> 772</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-258" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-258', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedLeaders</tt><tt class="py-op">,</tt> </tt>
-<a name="L773"></a><tt class="py-lineno"> 773</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L774"></a><tt class="py-lineno"> 774</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L775"></a><tt class="py-lineno"> 775</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L776"></a><tt class="py-lineno"> 776</tt> <tt class="py-line"> <tt class="py-comment"># check for all intent partitions</tt> </tt>
-<a name="L777"></a><tt class="py-lineno"> 777</tt> <tt class="py-line"> <tt class="py-comment"># check for election</tt> </tt>
-<a name="L778"></a><tt class="py-lineno"> 778</tt> <tt class="py-line"> <tt class="py-name">topics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L779"></a><tt class="py-lineno"> 779</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">14</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L780"></a><tt class="py-lineno"> 780</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"intent-partition-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L781"></a><tt class="py-lineno"> 781</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: this should only be after we start the app</tt> </tt>
-<a name="L782"></a><tt class="py-lineno"> 782</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L783"></a><tt class="py-lineno"> 783</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-259" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-259', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">topics</tt> <tt class="py-op">)</tt> </tt>
-<a name="L784"></a><tt class="py-lineno"> 784</tt> <tt class="py-line"> <tt class="py-name">ONOStopics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-string">'topic'</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">]</tt> </tt>
-<a name="L785"></a><tt class="py-lineno"> 785</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">in</tt> <tt class="py-name">topics</tt><tt class="py-op">:</tt> </tt>
-<a name="L786"></a><tt class="py-lineno"> 786</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOStopics</tt><tt class="py-op">:</tt> </tt>
-<a name="L787"></a><tt class="py-lineno"> 787</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-260" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-260', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-261" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-261', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error: "</tt> <tt class="py-op">+</tt> <tt class="py-name">topic</tt> <tt class="py-op">+</tt> </tt>
-<a name="L788"></a><tt class="py-lineno"> 788</tt> <tt class="py-line"> <tt class="py-string">" not in leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L789"></a><tt class="py-lineno"> 789</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L790"></a><tt class="py-lineno"> 790</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L791"></a><tt class="py-lineno"> 791</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-262" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-262', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-263" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-263', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"leaders() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L792"></a><tt class="py-lineno"> 792</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L793"></a><tt class="py-lineno"> 793</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-264" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-264', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L794"></a><tt class="py-lineno"> 794</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-265" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-265', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-266" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-266', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-267" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-267', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L795"></a><tt class="py-lineno"> 795</tt> <tt class="py-line"> <tt class="py-comment"># Check all nodes</tt> </tt>
-<a name="L796"></a><tt class="py-lineno"> 796</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">missing</tt><tt class="py-op">:</tt> </tt>
-<a name="L797"></a><tt class="py-lineno"> 797</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L798"></a><tt class="py-lineno"> 798</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt id="link-268" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-268', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L799"></a><tt class="py-lineno"> 799</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-269" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-269', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" leaders output: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L800"></a><tt class="py-lineno"> 800</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L801"></a><tt class="py-lineno"> 801</tt> <tt class="py-line"> </tt>
-<a name="L802"></a><tt class="py-lineno"> 802</tt> <tt class="py-line"> <tt id="link-270" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-270', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-271" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-271', 'partitions', 'link-197');">partitions</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L803"></a><tt class="py-lineno"> 803</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L804"></a><tt class="py-lineno"> 804</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-272" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-272', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L805"></a><tt class="py-lineno"> 805</tt> <tt class="py-line"> <tt class="py-name">parsedPartitions</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-273" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-273', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L806"></a><tt class="py-lineno"> 806</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-274" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-274', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPartitions</tt><tt class="py-op">,</tt> </tt>
-<a name="L807"></a><tt class="py-lineno"> 807</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L808"></a><tt class="py-lineno"> 808</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L809"></a><tt class="py-lineno"> 809</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L810"></a><tt class="py-lineno"> 810</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for a leader in all paritions</tt> </tt>
-<a name="L811"></a><tt class="py-lineno"> 811</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for consistency among nodes</tt> </tt>
-<a name="L812"></a><tt class="py-lineno"> 812</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L813"></a><tt class="py-lineno"> 813</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-275" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-275', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-276" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-276', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"partitions() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L814"></a><tt class="py-lineno"> 814</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L815"></a><tt class="py-lineno"> 815</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-277" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-277', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing partitions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L816"></a><tt class="py-lineno"> 816</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-278" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-278', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-279" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-279', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-280" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-280', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L817"></a><tt class="py-lineno"> 817</tt> <tt class="py-line"> <tt id="link-281" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-281', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-282" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-282', 'pendingMap', 'link-208');">pendingMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L818"></a><tt class="py-lineno"> 818</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L819"></a><tt class="py-lineno"> 819</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-283" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-283', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L820"></a><tt class="py-lineno"> 820</tt> <tt class="py-line"> <tt class="py-name">parsedPending</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-284" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-284', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L821"></a><tt class="py-lineno"> 821</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-285" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-285', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPending</tt><tt class="py-op">,</tt> </tt>
-<a name="L822"></a><tt class="py-lineno"> 822</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L823"></a><tt class="py-lineno"> 823</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L824"></a><tt class="py-lineno"> 824</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L825"></a><tt class="py-lineno"> 825</tt> <tt class="py-line"> <tt class="py-comment"># TODO check something here?</tt> </tt>
-<a name="L826"></a><tt class="py-lineno"> 826</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L827"></a><tt class="py-lineno"> 827</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-286" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-286', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-287" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-287', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pendingMap() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L828"></a><tt class="py-lineno"> 828</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L829"></a><tt class="py-lineno"> 829</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-288" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-288', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing pending map"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L830"></a><tt class="py-lineno"> 830</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-289" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-289', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-290" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-290', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-291" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-291', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L831"></a><tt class="py-lineno"> 831</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE4"></a><div id="HAminorityRestart.CASE4-def"><a name="L832"></a><tt class="py-lineno"> 832</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE4-toggle" onclick="return toggle('HAminorityRestart.CASE4');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE4">CASE4</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE4-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE4-expanded"><a name="L833"></a><tt class="py-lineno"> 833</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L834"></a><tt class="py-lineno"> 834</tt> <tt class="py-line"><tt class="py-docstring"> Ping across added host intents</tt> </tt>
-<a name="L835"></a><tt class="py-lineno"> 835</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L836"></a><tt class="py-lineno"> 836</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L837"></a><tt class="py-lineno"> 837</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L838"></a><tt class="py-lineno"> 838</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L839"></a><tt class="py-lineno"> 839</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L840"></a><tt class="py-lineno"> 840</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L841"></a><tt class="py-lineno"> 841</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L842"></a><tt class="py-lineno"> 842</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-292" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-292', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L843"></a><tt class="py-lineno"> 843</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-293" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-293', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify connectivity by sendind traffic across Intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L844"></a><tt class="py-lineno"> 844</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Ping across added host intents to check "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L845"></a><tt class="py-lineno"> 845</tt> <tt class="py-line"> <tt class="py-string">"functionality and check the state of "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L846"></a><tt class="py-lineno"> 846</tt> <tt class="py-line"> <tt class="py-string">"the intent"</tt> </tt>
-<a name="L847"></a><tt class="py-lineno"> 847</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-294" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-294', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Ping across added host intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L848"></a><tt class="py-lineno"> 848</tt> <tt class="py-line"> <tt class="py-name">PingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L849"></a><tt class="py-lineno"> 849</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-number">18</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L850"></a><tt class="py-lineno"> 850</tt> <tt class="py-line"> <tt class="py-name">ping</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-295" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingHost()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingHost,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingHost()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingHost"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingHost
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingHost" class="py-name" href="#" onclick="return doclink('link-295', 'pingHost', 'link-295');">pingHost</a></tt><tt class="py-op">(</tt> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-string">"h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L851"></a><tt class="py-lineno"> 851</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-string">"h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L852"></a><tt class="py-lineno"> 852</tt> <tt class="py-line"> <tt class="py-name">PingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">PingResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ping</tt> </tt>
-<a name="L853"></a><tt class="py-lineno"> 853</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ping</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L854"></a><tt class="py-lineno"> 854</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-296" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-296', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Ping failed between h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L855"></a><tt class="py-lineno"> 855</tt> <tt class="py-line"> <tt class="py-string">" and h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L856"></a><tt class="py-lineno"> 856</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ping</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L857"></a><tt class="py-lineno"> 857</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-297" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-297', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Ping test passed!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L858"></a><tt class="py-lineno"> 858</tt> <tt class="py-line"> <tt class="py-comment"># Don't set PingResult or you'd override failures</tt> </tt>
-<a name="L859"></a><tt class="py-lineno"> 859</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">PingResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L860"></a><tt class="py-lineno"> 860</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-298" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-298', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-299" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-299', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L861"></a><tt class="py-lineno"> 861</tt> <tt class="py-line"> <tt class="py-string">"Intents have not been installed correctly, pings failed."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L862"></a><tt class="py-lineno"> 862</tt> <tt class="py-line"> <tt class="py-comment"># TODO: pretty print</tt> </tt>
-<a name="L863"></a><tt class="py-lineno"> 863</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-300" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-300', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS1 intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L864"></a><tt class="py-lineno"> 864</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L865"></a><tt class="py-lineno"> 865</tt> <tt class="py-line"> <tt class="py-name">tmpIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-301" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-301', 'intents', 'link-172');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L866"></a><tt class="py-lineno"> 866</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-302" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-302', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">tmpIntents</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L867"></a><tt class="py-lineno"> 867</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L868"></a><tt class="py-lineno"> 868</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L869"></a><tt class="py-lineno"> 869</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L870"></a><tt class="py-lineno"> 870</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L871"></a><tt class="py-lineno"> 871</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-303" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-303', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">tmpIntents</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L872"></a><tt class="py-lineno"> 872</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L873"></a><tt class="py-lineno"> 873</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L874"></a><tt class="py-lineno"> 874</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">PingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L875"></a><tt class="py-lineno"> 875</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents have been installed correctly and pings work"</tt><tt class="py-op">,</tt> </tt>
-<a name="L876"></a><tt class="py-lineno"> 876</tt> <tt class="py-line"> <tt id="link-304" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-304', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intents have not been installed correctly, pings failed."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L877"></a><tt class="py-lineno"> 877</tt> <tt class="py-line"> </tt>
-<a name="L878"></a><tt class="py-lineno"> 878</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-305" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-305', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check Intent state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L879"></a><tt class="py-lineno"> 879</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L880"></a><tt class="py-lineno"> 880</tt> <tt class="py-line"> <tt class="py-name">loopCount</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L881"></a><tt class="py-lineno"> 881</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-keyword">not</tt> <tt class="py-name">installedCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">loopCount</tt> <tt class="py-op"><</tt> <tt class="py-number">40</tt><tt class="py-op">:</tt> </tt>
-<a name="L882"></a><tt class="py-lineno"> 882</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L883"></a><tt class="py-lineno"> 883</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L884"></a><tt class="py-lineno"> 884</tt> <tt class="py-line"> <tt id="link-306" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-306', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-307" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-307', 'intents', 'link-172');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L885"></a><tt class="py-lineno"> 885</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L886"></a><tt class="py-lineno"> 886</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-308" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-308', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-string">'Count'</tt><tt class="py-op">,</tt> <tt class="py-string">'ID'</tt><tt class="py-op">,</tt> <tt class="py-string">'State'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L887"></a><tt class="py-lineno"> 887</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L888"></a><tt class="py-lineno"> 888</tt> <tt class="py-line"> <tt class="py-comment"># Iter through intents of a node</tt> </tt>
-<a name="L889"></a><tt class="py-lineno"> 889</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L890"></a><tt class="py-lineno"> 890</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-309" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-309', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-310" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-310', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L891"></a><tt class="py-lineno"> 891</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-311" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-311', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L892"></a><tt class="py-lineno"> 892</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"INSTALLED"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L893"></a><tt class="py-lineno"> 893</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L894"></a><tt class="py-lineno"> 894</tt> <tt class="py-line"> <tt class="py-name">intentId</tt> <tt class="py-op">=</tt> <tt id="link-312" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-312', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L895"></a><tt class="py-lineno"> 895</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L896"></a><tt class="py-lineno"> 896</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L897"></a><tt class="py-lineno"> 897</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-313" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-313', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing intents."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L898"></a><tt class="py-lineno"> 898</tt> <tt class="py-line"> <tt class="py-comment"># Print states</tt> </tt>
-<a name="L899"></a><tt class="py-lineno"> 899</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L900"></a><tt class="py-lineno"> 900</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt><tt class="py-op">:</tt> </tt>
-<a name="L901"></a><tt class="py-lineno"> 901</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L902"></a><tt class="py-lineno"> 902</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-314" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-314', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L903"></a><tt class="py-lineno"> 903</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">s</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L904"></a><tt class="py-lineno"> 904</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">installedCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L905"></a><tt class="py-lineno"> 905</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L906"></a><tt class="py-lineno"> 906</tt> <tt class="py-line"> <tt class="py-name">loopCount</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L907"></a><tt class="py-lineno"> 907</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">installedCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L908"></a><tt class="py-lineno"> 908</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents are all INSTALLED"</tt><tt class="py-op">,</tt> </tt>
-<a name="L909"></a><tt class="py-lineno"> 909</tt> <tt class="py-line"> <tt id="link-315" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-315', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intents are not all in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L910"></a><tt class="py-lineno"> 910</tt> <tt class="py-line"> <tt class="py-string">"INSTALLED state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L911"></a><tt class="py-lineno"> 911</tt> <tt class="py-line"> </tt>
-<a name="L912"></a><tt class="py-lineno"> 912</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-316" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-316', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check leadership of topics"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L913"></a><tt class="py-lineno"> 913</tt> <tt class="py-line"> <tt id="link-317" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-317', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-318" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-318', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L914"></a><tt class="py-lineno"> 914</tt> <tt class="py-line"> <tt class="py-name">topicCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L915"></a><tt class="py-lineno"> 915</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L916"></a><tt class="py-lineno"> 916</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-319" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-319', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L917"></a><tt class="py-lineno"> 917</tt> <tt class="py-line"> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-320" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-320', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L918"></a><tt class="py-lineno"> 918</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-321" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-321', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedLeaders</tt><tt class="py-op">,</tt> </tt>
-<a name="L919"></a><tt class="py-lineno"> 919</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L920"></a><tt class="py-lineno"> 920</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L921"></a><tt class="py-lineno"> 921</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L922"></a><tt class="py-lineno"> 922</tt> <tt class="py-line"> <tt class="py-comment"># check for all intent partitions</tt> </tt>
-<a name="L923"></a><tt class="py-lineno"> 923</tt> <tt class="py-line"> <tt class="py-comment"># check for election</tt> </tt>
-<a name="L924"></a><tt class="py-lineno"> 924</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Look at Devices as topics now that it uses this system</tt> </tt>
-<a name="L925"></a><tt class="py-lineno"> 925</tt> <tt class="py-line"> <tt class="py-name">topics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L926"></a><tt class="py-lineno"> 926</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">14</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L927"></a><tt class="py-lineno"> 927</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"intent-partition-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L928"></a><tt class="py-lineno"> 928</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: this should only be after we start the app</tt> </tt>
-<a name="L929"></a><tt class="py-lineno"> 929</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: topics.append( "org.onosproject.election" )</tt> </tt>
-<a name="L930"></a><tt class="py-lineno"> 930</tt> <tt class="py-line"> <tt class="py-comment"># Print leaders output</tt> </tt>
-<a name="L931"></a><tt class="py-lineno"> 931</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-322" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-322', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">topics</tt> <tt class="py-op">)</tt> </tt>
-<a name="L932"></a><tt class="py-lineno"> 932</tt> <tt class="py-line"> <tt class="py-name">ONOStopics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-string">'topic'</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">]</tt> </tt>
-<a name="L933"></a><tt class="py-lineno"> 933</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">in</tt> <tt class="py-name">topics</tt><tt class="py-op">:</tt> </tt>
-<a name="L934"></a><tt class="py-lineno"> 934</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOStopics</tt><tt class="py-op">:</tt> </tt>
-<a name="L935"></a><tt class="py-lineno"> 935</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-323" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-323', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-324" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-324', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error: "</tt> <tt class="py-op">+</tt> <tt class="py-name">topic</tt> <tt class="py-op">+</tt> </tt>
-<a name="L936"></a><tt class="py-lineno"> 936</tt> <tt class="py-line"> <tt class="py-string">" not in leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L937"></a><tt class="py-lineno"> 937</tt> <tt class="py-line"> <tt class="py-name">topicCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L938"></a><tt class="py-lineno"> 938</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L939"></a><tt class="py-lineno"> 939</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-325" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-325', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-326" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-326', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"leaders() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L940"></a><tt class="py-lineno"> 940</tt> <tt class="py-line"> <tt class="py-name">topicCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L941"></a><tt class="py-lineno"> 941</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L942"></a><tt class="py-lineno"> 942</tt> <tt class="py-line"> <tt class="py-name">topicCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L943"></a><tt class="py-lineno"> 943</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-327" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-327', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L944"></a><tt class="py-lineno"> 944</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-328" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-328', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-329" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-329', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-330" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-330', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L945"></a><tt class="py-lineno"> 945</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Check for a leader of these topics</tt> </tt>
-<a name="L946"></a><tt class="py-lineno"> 946</tt> <tt class="py-line"> <tt class="py-comment"># Check all nodes</tt> </tt>
-<a name="L947"></a><tt class="py-lineno"> 947</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topicCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L948"></a><tt class="py-lineno"> 948</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L949"></a><tt class="py-lineno"> 949</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt id="link-331" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-331', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L950"></a><tt class="py-lineno"> 950</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-332" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-332', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" leaders output: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L951"></a><tt class="py-lineno"> 951</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L952"></a><tt class="py-lineno"> 952</tt> <tt class="py-line"> </tt>
-<a name="L953"></a><tt class="py-lineno"> 953</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">topicCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L954"></a><tt class="py-lineno"> 954</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"intent Partitions is in leaders"</tt><tt class="py-op">,</tt> </tt>
-<a name="L955"></a><tt class="py-lineno"> 955</tt> <tt class="py-line"> <tt id="link-333" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-333', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Some topics were lost "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L956"></a><tt class="py-lineno"> 956</tt> <tt class="py-line"> <tt class="py-comment"># Print partitions</tt> </tt>
-<a name="L957"></a><tt class="py-lineno"> 957</tt> <tt class="py-line"> <tt id="link-334" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-334', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-335" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-335', 'partitions', 'link-197');">partitions</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L958"></a><tt class="py-lineno"> 958</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L959"></a><tt class="py-lineno"> 959</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-336" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-336', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L960"></a><tt class="py-lineno"> 960</tt> <tt class="py-line"> <tt class="py-name">parsedPartitions</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-337" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-337', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L961"></a><tt class="py-lineno"> 961</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-338" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-338', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPartitions</tt><tt class="py-op">,</tt> </tt>
-<a name="L962"></a><tt class="py-lineno"> 962</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L963"></a><tt class="py-lineno"> 963</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L964"></a><tt class="py-lineno"> 964</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L965"></a><tt class="py-lineno"> 965</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for a leader in all paritions</tt> </tt>
-<a name="L966"></a><tt class="py-lineno"> 966</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for consistency among nodes</tt> </tt>
-<a name="L967"></a><tt class="py-lineno"> 967</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L968"></a><tt class="py-lineno"> 968</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-339" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-339', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-340" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-340', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"partitions() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L969"></a><tt class="py-lineno"> 969</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L970"></a><tt class="py-lineno"> 970</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-341" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-341', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing partitions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L971"></a><tt class="py-lineno"> 971</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-342" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-342', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-343" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-343', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-344" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-344', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L972"></a><tt class="py-lineno"> 972</tt> <tt class="py-line"> <tt class="py-comment"># Print Pending Map</tt> </tt>
-<a name="L973"></a><tt class="py-lineno"> 973</tt> <tt class="py-line"> <tt id="link-345" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-345', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-346" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-346', 'pendingMap', 'link-208');">pendingMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L974"></a><tt class="py-lineno"> 974</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L975"></a><tt class="py-lineno"> 975</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-347" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-347', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L976"></a><tt class="py-lineno"> 976</tt> <tt class="py-line"> <tt class="py-name">parsedPending</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-348" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-348', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L977"></a><tt class="py-lineno"> 977</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-349" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-349', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPending</tt><tt class="py-op">,</tt> </tt>
-<a name="L978"></a><tt class="py-lineno"> 978</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L979"></a><tt class="py-lineno"> 979</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L980"></a><tt class="py-lineno"> 980</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L981"></a><tt class="py-lineno"> 981</tt> <tt class="py-line"> <tt class="py-comment"># TODO check something here?</tt> </tt>
-<a name="L982"></a><tt class="py-lineno"> 982</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L983"></a><tt class="py-lineno"> 983</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-350" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-350', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-351" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-351', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pendingMap() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L984"></a><tt class="py-lineno"> 984</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L985"></a><tt class="py-lineno"> 985</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-352" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-352', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing pending map"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L986"></a><tt class="py-lineno"> 986</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-353" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-353', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-354" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-354', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-355" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-355', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L987"></a><tt class="py-lineno"> 987</tt> <tt class="py-line"> </tt>
-<a name="L988"></a><tt class="py-lineno"> 988</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">installedCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L989"></a><tt class="py-lineno"> 989</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-356" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-356', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting 60 seconds to see if the state of "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L990"></a><tt class="py-lineno"> 990</tt> <tt class="py-line"> <tt class="py-string">"intents change"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L991"></a><tt class="py-lineno"> 991</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L992"></a><tt class="py-lineno"> 992</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L993"></a><tt class="py-lineno"> 993</tt> <tt class="py-line"> <tt id="link-357" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-357', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-358" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-358', 'intents', 'link-172');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L994"></a><tt class="py-lineno"> 994</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L995"></a><tt class="py-lineno"> 995</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-359" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-359', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-string">'Count'</tt><tt class="py-op">,</tt> <tt class="py-string">'ID'</tt><tt class="py-op">,</tt> <tt class="py-string">'State'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L996"></a><tt class="py-lineno"> 996</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L997"></a><tt class="py-lineno"> 997</tt> <tt class="py-line"> <tt class="py-comment"># Iter through intents of a node</tt> </tt>
-<a name="L998"></a><tt class="py-lineno"> 998</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L999"></a><tt class="py-lineno"> 999</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-360" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-360', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-361" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-361', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1000"></a><tt class="py-lineno">1000</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-362" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-362', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1001"></a><tt class="py-lineno">1001</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"INSTALLED"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L1002"></a><tt class="py-lineno">1002</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1003"></a><tt class="py-lineno">1003</tt> <tt class="py-line"> <tt class="py-name">intentId</tt> <tt class="py-op">=</tt> <tt id="link-363" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-363', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1004"></a><tt class="py-lineno">1004</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1005"></a><tt class="py-lineno">1005</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1006"></a><tt class="py-lineno">1006</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-364" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-364', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing intents."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1007"></a><tt class="py-lineno">1007</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1008"></a><tt class="py-lineno">1008</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt><tt class="py-op">:</tt> </tt>
-<a name="L1009"></a><tt class="py-lineno">1009</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1010"></a><tt class="py-lineno">1010</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-365" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-365', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L1011"></a><tt class="py-lineno">1011</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">s</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1012"></a><tt class="py-lineno">1012</tt> <tt class="py-line"> <tt id="link-366" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-366', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-367" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-367', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1013"></a><tt class="py-lineno">1013</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1014"></a><tt class="py-lineno">1014</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1015"></a><tt class="py-lineno">1015</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-368" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-368', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1016"></a><tt class="py-lineno">1016</tt> <tt class="py-line"> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-369" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-369', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L1017"></a><tt class="py-lineno">1017</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-370" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-370', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedLeaders</tt><tt class="py-op">,</tt> </tt>
-<a name="L1018"></a><tt class="py-lineno">1018</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1019"></a><tt class="py-lineno">1019</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1020"></a><tt class="py-lineno">1020</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1021"></a><tt class="py-lineno">1021</tt> <tt class="py-line"> <tt class="py-comment"># check for all intent partitions</tt> </tt>
-<a name="L1022"></a><tt class="py-lineno">1022</tt> <tt class="py-line"> <tt class="py-comment"># check for election</tt> </tt>
-<a name="L1023"></a><tt class="py-lineno">1023</tt> <tt class="py-line"> <tt class="py-name">topics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1024"></a><tt class="py-lineno">1024</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">14</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1025"></a><tt class="py-lineno">1025</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"intent-partition-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1026"></a><tt class="py-lineno">1026</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: this should only be after we start the app</tt> </tt>
-<a name="L1027"></a><tt class="py-lineno">1027</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1028"></a><tt class="py-lineno">1028</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-371" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-371', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">topics</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1029"></a><tt class="py-lineno">1029</tt> <tt class="py-line"> <tt class="py-name">ONOStopics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-string">'topic'</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1030"></a><tt class="py-lineno">1030</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">in</tt> <tt class="py-name">topics</tt><tt class="py-op">:</tt> </tt>
-<a name="L1031"></a><tt class="py-lineno">1031</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOStopics</tt><tt class="py-op">:</tt> </tt>
-<a name="L1032"></a><tt class="py-lineno">1032</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-372" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-372', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-373" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-373', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error: "</tt> <tt class="py-op">+</tt> <tt class="py-name">topic</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1033"></a><tt class="py-lineno">1033</tt> <tt class="py-line"> <tt class="py-string">" not in leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1034"></a><tt class="py-lineno">1034</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1035"></a><tt class="py-lineno">1035</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1036"></a><tt class="py-lineno">1036</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-374" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-374', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-375" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-375', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"leaders() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1037"></a><tt class="py-lineno">1037</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1038"></a><tt class="py-lineno">1038</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-376" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-376', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1039"></a><tt class="py-lineno">1039</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-377" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-377', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-378" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-378', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-379" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-379', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1040"></a><tt class="py-lineno">1040</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">missing</tt><tt class="py-op">:</tt> </tt>
-<a name="L1041"></a><tt class="py-lineno">1041</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L1042"></a><tt class="py-lineno">1042</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt id="link-380" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-380', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L1043"></a><tt class="py-lineno">1043</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-381" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-381', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" leaders output: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1044"></a><tt class="py-lineno">1044</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1045"></a><tt class="py-lineno">1045</tt> <tt class="py-line"> </tt>
-<a name="L1046"></a><tt class="py-lineno">1046</tt> <tt class="py-line"> <tt id="link-382" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-382', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-383" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-383', 'partitions', 'link-197');">partitions</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1047"></a><tt class="py-lineno">1047</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1048"></a><tt class="py-lineno">1048</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-384" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-384', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L1049"></a><tt class="py-lineno">1049</tt> <tt class="py-line"> <tt class="py-name">parsedPartitions</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-385" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-385', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L1050"></a><tt class="py-lineno">1050</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-386" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-386', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPartitions</tt><tt class="py-op">,</tt> </tt>
-<a name="L1051"></a><tt class="py-lineno">1051</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1052"></a><tt class="py-lineno">1052</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1053"></a><tt class="py-lineno">1053</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1054"></a><tt class="py-lineno">1054</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for a leader in all paritions</tt> </tt>
-<a name="L1055"></a><tt class="py-lineno">1055</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for consistency among nodes</tt> </tt>
-<a name="L1056"></a><tt class="py-lineno">1056</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1057"></a><tt class="py-lineno">1057</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-387" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-387', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-388" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-388', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"partitions() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1058"></a><tt class="py-lineno">1058</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1059"></a><tt class="py-lineno">1059</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-389" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-389', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing partitions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1060"></a><tt class="py-lineno">1060</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-390" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-390', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-391" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-391', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-392" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-392', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1061"></a><tt class="py-lineno">1061</tt> <tt class="py-line"> <tt id="link-393" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-393', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-394" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-394', 'pendingMap', 'link-208');">pendingMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1062"></a><tt class="py-lineno">1062</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1063"></a><tt class="py-lineno">1063</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-395" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-395', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L1064"></a><tt class="py-lineno">1064</tt> <tt class="py-line"> <tt class="py-name">parsedPending</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-396" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-396', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L1065"></a><tt class="py-lineno">1065</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-397" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-397', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPending</tt><tt class="py-op">,</tt> </tt>
-<a name="L1066"></a><tt class="py-lineno">1066</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1067"></a><tt class="py-lineno">1067</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1068"></a><tt class="py-lineno">1068</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1069"></a><tt class="py-lineno">1069</tt> <tt class="py-line"> <tt class="py-comment"># TODO check something here?</tt> </tt>
-<a name="L1070"></a><tt class="py-lineno">1070</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1071"></a><tt class="py-lineno">1071</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-398" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-398', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-399" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-399', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pendingMap() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1072"></a><tt class="py-lineno">1072</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1073"></a><tt class="py-lineno">1073</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-400" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-400', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing pending map"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1074"></a><tt class="py-lineno">1074</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-401" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-401', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-402" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-402', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-403" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-403', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1075"></a><tt class="py-lineno">1075</tt> <tt class="py-line"> <tt class="py-comment"># Print flowrules</tt> </tt>
-<a name="L1076"></a><tt class="py-lineno">1076</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-404" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-404', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-405" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#flows,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#flows"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-405', 'flows', 'link-405');">flows</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1077"></a><tt class="py-lineno">1077</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-406" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-406', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Wait a minute then ping again"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1078"></a><tt class="py-lineno">1078</tt> <tt class="py-line"> <tt class="py-comment"># the wait is above</tt> </tt>
-<a name="L1079"></a><tt class="py-lineno">1079</tt> <tt class="py-line"> <tt class="py-name">PingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1080"></a><tt class="py-lineno">1080</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-number">18</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1081"></a><tt class="py-lineno">1081</tt> <tt class="py-line"> <tt class="py-name">ping</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-407" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingHost
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingHost" class="py-name" href="#" onclick="return doclink('link-407', 'pingHost', 'link-295');">pingHost</a></tt><tt class="py-op">(</tt> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-string">"h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1082"></a><tt class="py-lineno">1082</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-string">"h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1083"></a><tt class="py-lineno">1083</tt> <tt class="py-line"> <tt class="py-name">PingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">PingResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ping</tt> </tt>
-<a name="L1084"></a><tt class="py-lineno">1084</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ping</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1085"></a><tt class="py-lineno">1085</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-408" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-408', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Ping failed between h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1086"></a><tt class="py-lineno">1086</tt> <tt class="py-line"> <tt class="py-string">" and h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1087"></a><tt class="py-lineno">1087</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ping</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1088"></a><tt class="py-lineno">1088</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-409" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-409', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Ping test passed!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1089"></a><tt class="py-lineno">1089</tt> <tt class="py-line"> <tt class="py-comment"># Don't set PingResult or you'd override failures</tt> </tt>
-<a name="L1090"></a><tt class="py-lineno">1090</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">PingResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1091"></a><tt class="py-lineno">1091</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-410" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-410', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-411" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-411', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1092"></a><tt class="py-lineno">1092</tt> <tt class="py-line"> <tt class="py-string">"Intents have not been installed correctly, pings failed."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1093"></a><tt class="py-lineno">1093</tt> <tt class="py-line"> <tt class="py-comment"># TODO: pretty print</tt> </tt>
-<a name="L1094"></a><tt class="py-lineno">1094</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-412" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-412', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS1 intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1095"></a><tt class="py-lineno">1095</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1096"></a><tt class="py-lineno">1096</tt> <tt class="py-line"> <tt class="py-name">tmpIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-413" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-413', 'intents', 'link-172');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1097"></a><tt class="py-lineno">1097</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-414" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-414', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">tmpIntents</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1098"></a><tt class="py-lineno">1098</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1099"></a><tt class="py-lineno">1099</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1100"></a><tt class="py-lineno">1100</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1101"></a><tt class="py-lineno">1101</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1102"></a><tt class="py-lineno">1102</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-415" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-415', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">tmpIntents</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1103"></a><tt class="py-lineno">1103</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1104"></a><tt class="py-lineno">1104</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1105"></a><tt class="py-lineno">1105</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">PingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1106"></a><tt class="py-lineno">1106</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents have been installed correctly and pings work"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1107"></a><tt class="py-lineno">1107</tt> <tt class="py-line"> <tt id="link-416" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-416', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intents have not been installed correctly, pings failed."</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1108"></a><tt class="py-lineno">1108</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE5"></a><div id="HAminorityRestart.CASE5-def"><a name="L1109"></a><tt class="py-lineno">1109</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE5-toggle" onclick="return toggle('HAminorityRestart.CASE5');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE5">CASE5</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE5-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE5-expanded"><a name="L1110"></a><tt class="py-lineno">1110</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1111"></a><tt class="py-lineno">1111</tt> <tt class="py-line"><tt class="py-docstring"> Reading state of ONOS</tt> </tt>
-<a name="L1112"></a><tt class="py-lineno">1112</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1113"></a><tt class="py-lineno">1113</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L1114"></a><tt class="py-lineno">1114</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1115"></a><tt class="py-lineno">1115</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1116"></a><tt class="py-lineno">1116</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1117"></a><tt class="py-lineno">1117</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1118"></a><tt class="py-lineno">1118</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L1119"></a><tt class="py-lineno">1119</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-417" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-417', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L1120"></a><tt class="py-lineno">1120</tt> <tt class="py-line"> </tt>
-<a name="L1121"></a><tt class="py-lineno">1121</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-418" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-418', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Setting up and gathering data for current state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1122"></a><tt class="py-lineno">1122</tt> <tt class="py-line"> <tt class="py-comment"># The general idea for this test case is to pull the state of</tt> </tt>
-<a name="L1123"></a><tt class="py-lineno">1123</tt> <tt class="py-line"> <tt class="py-comment"># ( intents,flows, topology,... ) from each ONOS node</tt> </tt>
-<a name="L1124"></a><tt class="py-lineno">1124</tt> <tt class="py-line"> <tt class="py-comment"># We can then compare them with each other and also with past states</tt> </tt>
-<a name="L1125"></a><tt class="py-lineno">1125</tt> <tt class="py-line"> </tt>
-<a name="L1126"></a><tt class="py-lineno">1126</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-419" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-419', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check that each switch has a master"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1127"></a><tt class="py-lineno">1127</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">mastershipState</tt> </tt>
-<a name="L1128"></a><tt class="py-lineno">1128</tt> <tt class="py-line"> <tt class="py-name">mastershipState</tt> <tt class="py-op">=</tt> <tt class="py-string">'[]'</tt> </tt>
-<a name="L1129"></a><tt class="py-lineno">1129</tt> <tt class="py-line"> </tt>
-<a name="L1130"></a><tt class="py-lineno">1130</tt> <tt class="py-line"> <tt class="py-comment"># Assert that each device has a master</tt> </tt>
-<a name="L1131"></a><tt class="py-lineno">1131</tt> <tt class="py-line"> <tt id="link-420" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#rolesNotNull"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-420', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1132"></a><tt class="py-lineno">1132</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1133"></a><tt class="py-lineno">1133</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1134"></a><tt class="py-lineno">1134</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-421" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-421', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-422" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-422', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1135"></a><tt class="py-lineno">1135</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"rolesNotNull-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1136"></a><tt class="py-lineno">1136</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1137"></a><tt class="py-lineno">1137</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1138"></a><tt class="py-lineno">1138</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1139"></a><tt class="py-lineno">1139</tt> <tt class="py-line"> </tt>
-<a name="L1140"></a><tt class="py-lineno">1140</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1141"></a><tt class="py-lineno">1141</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1142"></a><tt class="py-lineno">1142</tt> <tt class="py-line"> <tt id="link-423" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-423', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt> <tt class="py-op">=</tt> <tt id="link-424" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-424', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L1143"></a><tt class="py-lineno">1143</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1144"></a><tt class="py-lineno">1144</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1145"></a><tt class="py-lineno">1145</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt id="link-425" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-425', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1146"></a><tt class="py-lineno">1146</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Each device has a master"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1147"></a><tt class="py-lineno">1147</tt> <tt class="py-line"> <tt id="link-426" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-426', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Some devices don't have a master assigned"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1148"></a><tt class="py-lineno">1148</tt> <tt class="py-line"> </tt>
-<a name="L1149"></a><tt class="py-lineno">1149</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-427" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-427', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the Mastership of each switch from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1150"></a><tt class="py-lineno">1150</tt> <tt class="py-line"> <tt class="py-name">ONOSMastership</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1151"></a><tt class="py-lineno">1151</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1152"></a><tt class="py-lineno">1152</tt> <tt class="py-line"> <tt class="py-name">consistentMastership</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1153"></a><tt class="py-lineno">1153</tt> <tt class="py-line"> <tt class="py-name">rolesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1154"></a><tt class="py-lineno">1154</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1155"></a><tt class="py-lineno">1155</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1156"></a><tt class="py-lineno">1156</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-428" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-428', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-429" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.roles()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#roles"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.roles" class="py-name" href="#" onclick="return doclink('link-429', 'roles', 'link-429');">roles</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1157"></a><tt class="py-lineno">1157</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"roles-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1158"></a><tt class="py-lineno">1158</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1159"></a><tt class="py-lineno">1159</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1160"></a><tt class="py-lineno">1160</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1161"></a><tt class="py-lineno">1161</tt> <tt class="py-line"> </tt>
-<a name="L1162"></a><tt class="py-lineno">1162</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1163"></a><tt class="py-lineno">1163</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1164"></a><tt class="py-lineno">1164</tt> <tt class="py-line"> <tt class="py-name">ONOSMastership</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1165"></a><tt class="py-lineno">1165</tt> <tt class="py-line"> </tt>
-<a name="L1166"></a><tt class="py-lineno">1166</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1167"></a><tt class="py-lineno">1167</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1168"></a><tt class="py-lineno">1168</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-430" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-430', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-431" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-431', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1169"></a><tt class="py-lineno">1169</tt> <tt class="py-line"> <tt class="py-string">" roles"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1170"></a><tt class="py-lineno">1170</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-432" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-432', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1171"></a><tt class="py-lineno">1171</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" mastership response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1172"></a><tt class="py-lineno">1172</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1173"></a><tt class="py-lineno">1173</tt> <tt class="py-line"> <tt class="py-name">rolesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1174"></a><tt class="py-lineno">1174</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1175"></a><tt class="py-lineno">1175</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1176"></a><tt class="py-lineno">1176</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">rolesResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1177"></a><tt class="py-lineno">1177</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No error in reading roles output"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1178"></a><tt class="py-lineno">1178</tt> <tt class="py-line"> <tt id="link-433" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-433', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error in reading roles from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1179"></a><tt class="py-lineno">1179</tt> <tt class="py-line"> </tt>
-<a name="L1180"></a><tt class="py-lineno">1180</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-434" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-434', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check for consistency in roles from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1181"></a><tt class="py-lineno">1181</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSMastership</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1182"></a><tt class="py-lineno">1182</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-435" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-435', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L1183"></a><tt class="py-lineno">1183</tt> <tt class="py-line"> <tt class="py-string">"Switch roles are consistent across all ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1184"></a><tt class="py-lineno">1184</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1185"></a><tt class="py-lineno">1185</tt> <tt class="py-line"> <tt class="py-name">consistentMastership</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1186"></a><tt class="py-lineno">1186</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1187"></a><tt class="py-lineno">1187</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1188"></a><tt class="py-lineno">1188</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentMastership</tt><tt class="py-op">,</tt> </tt>
-<a name="L1189"></a><tt class="py-lineno">1189</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Switch roles are consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1190"></a><tt class="py-lineno">1190</tt> <tt class="py-line"> <tt id="link-436" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-436', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of switch roles"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1191"></a><tt class="py-lineno">1191</tt> <tt class="py-line"> </tt>
-<a name="L1192"></a><tt class="py-lineno">1192</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">rolesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentMastership</tt><tt class="py-op">:</tt> </tt>
-<a name="L1193"></a><tt class="py-lineno">1193</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1194"></a><tt class="py-lineno">1194</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1195"></a><tt class="py-lineno">1195</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-437" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-437', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1196"></a><tt class="py-lineno">1196</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" roles: "</tt><tt class="py-op">,</tt> </tt>
-<a name="L1197"></a><tt class="py-lineno">1197</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> </tt>
-<a name="L1198"></a><tt class="py-lineno">1198</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1199"></a><tt class="py-lineno">1199</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1200"></a><tt class="py-lineno">1200</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1201"></a><tt class="py-lineno">1201</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1202"></a><tt class="py-lineno">1202</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1203"></a><tt class="py-lineno">1203</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-438" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-438', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1204"></a><tt class="py-lineno">1204</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">rolesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentMastership</tt><tt class="py-op">:</tt> </tt>
-<a name="L1205"></a><tt class="py-lineno">1205</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1206"></a><tt class="py-lineno">1206</tt> <tt class="py-line"> <tt class="py-name">mastershipState</tt> <tt class="py-op">=</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1207"></a><tt class="py-lineno">1207</tt> <tt class="py-line"> </tt>
-<a name="L1208"></a><tt class="py-lineno">1208</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-439" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-439', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the intents from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1209"></a><tt class="py-lineno">1209</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">intentState</tt> </tt>
-<a name="L1210"></a><tt class="py-lineno">1210</tt> <tt class="py-line"> <tt class="py-name">intentState</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1211"></a><tt class="py-lineno">1211</tt> <tt class="py-line"> <tt class="py-name">ONOSIntents</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1212"></a><tt class="py-lineno">1212</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1213"></a><tt class="py-lineno">1213</tt> <tt class="py-line"> <tt class="py-name">consistentIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1214"></a><tt class="py-lineno">1214</tt> <tt class="py-line"> <tt class="py-name">intentsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1215"></a><tt class="py-lineno">1215</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1216"></a><tt class="py-lineno">1216</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1217"></a><tt class="py-lineno">1217</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-440" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-440', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-441" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-441', 'intents', 'link-172');">intents</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1218"></a><tt class="py-lineno">1218</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"intents-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1219"></a><tt class="py-lineno">1219</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1220"></a><tt class="py-lineno">1220</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">'jsonFormat'</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1221"></a><tt class="py-lineno">1221</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1222"></a><tt class="py-lineno">1222</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1223"></a><tt class="py-lineno">1223</tt> <tt class="py-line"> </tt>
-<a name="L1224"></a><tt class="py-lineno">1224</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1225"></a><tt class="py-lineno">1225</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1226"></a><tt class="py-lineno">1226</tt> <tt class="py-line"> <tt class="py-name">ONOSIntents</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1227"></a><tt class="py-lineno">1227</tt> <tt class="py-line"> </tt>
-<a name="L1228"></a><tt class="py-lineno">1228</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1229"></a><tt class="py-lineno">1229</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1230"></a><tt class="py-lineno">1230</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-442" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-442', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-443" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-443', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1231"></a><tt class="py-lineno">1231</tt> <tt class="py-line"> <tt class="py-string">" intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1232"></a><tt class="py-lineno">1232</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-444" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-444', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1233"></a><tt class="py-lineno">1233</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1234"></a><tt class="py-lineno">1234</tt> <tt class="py-line"> <tt class="py-name">intentsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1235"></a><tt class="py-lineno">1235</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1236"></a><tt class="py-lineno">1236</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1237"></a><tt class="py-lineno">1237</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">intentsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1238"></a><tt class="py-lineno">1238</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No error in reading intents output"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1239"></a><tt class="py-lineno">1239</tt> <tt class="py-line"> <tt id="link-445" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-445', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error in reading intents from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1240"></a><tt class="py-lineno">1240</tt> <tt class="py-line"> </tt>
-<a name="L1241"></a><tt class="py-lineno">1241</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-446" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-446', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check for consistency in Intents from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1242"></a><tt class="py-lineno">1242</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt><tt class="py-op">[</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1243"></a><tt class="py-lineno">1243</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-447" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-447', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents are consistent across all ONOS "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1244"></a><tt class="py-lineno">1244</tt> <tt class="py-line"> <tt class="py-string">"nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1245"></a><tt class="py-lineno">1245</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1246"></a><tt class="py-lineno">1246</tt> <tt class="py-line"> <tt class="py-name">consistentIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1247"></a><tt class="py-lineno">1247</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-448" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-448', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-449" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-449', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Intents not consistent"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1248"></a><tt class="py-lineno">1248</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1249"></a><tt class="py-lineno">1249</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1250"></a><tt class="py-lineno">1250</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentIntents</tt><tt class="py-op">,</tt> </tt>
-<a name="L1251"></a><tt class="py-lineno">1251</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents are consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1252"></a><tt class="py-lineno">1252</tt> <tt class="py-line"> <tt id="link-450" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-450', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1253"></a><tt class="py-lineno">1253</tt> <tt class="py-line"> </tt>
-<a name="L1254"></a><tt class="py-lineno">1254</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentsResults</tt><tt class="py-op">:</tt> </tt>
-<a name="L1255"></a><tt class="py-lineno">1255</tt> <tt class="py-line"> <tt class="py-comment"># Try to make it easy to figure out what is happening</tt> </tt>
-<a name="L1256"></a><tt class="py-lineno">1256</tt> <tt class="py-line"> <tt class="py-comment">#</tt> </tt>
-<a name="L1257"></a><tt class="py-lineno">1257</tt> <tt class="py-line"> <tt class="py-comment"># Intent ONOS1 ONOS2 ...</tt> </tt>
-<a name="L1258"></a><tt class="py-lineno">1258</tt> <tt class="py-line"> <tt class="py-comment"># 0x01 INSTALLED INSTALLING</tt> </tt>
-<a name="L1259"></a><tt class="py-lineno">1259</tt> <tt class="py-line"> <tt class="py-comment"># ... ... ...</tt> </tt>
-<a name="L1260"></a><tt class="py-lineno">1260</tt> <tt class="py-line"> <tt class="py-comment"># ... ... ...</tt> </tt>
-<a name="L1261"></a><tt class="py-lineno">1261</tt> <tt class="py-line"> <tt class="py-name">title</tt> <tt class="py-op">=</tt> <tt class="py-string">" Id"</tt> </tt>
-<a name="L1262"></a><tt class="py-lineno">1262</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">n</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1263"></a><tt class="py-lineno">1263</tt> <tt class="py-line"> <tt class="py-name">title</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">10</tt> <tt class="py-op">+</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1264"></a><tt class="py-lineno">1264</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-451" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-451', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">title</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1265"></a><tt class="py-lineno">1265</tt> <tt class="py-line"> <tt class="py-comment"># get all intent keys in the cluster</tt> </tt>
-<a name="L1266"></a><tt class="py-lineno">1266</tt> <tt class="py-line"> <tt class="py-name">keys</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1267"></a><tt class="py-lineno">1267</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">nodeStr</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1268"></a><tt class="py-lineno">1268</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1269"></a><tt class="py-lineno">1269</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-452" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-452', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">:</tt> </tt>
-<a name="L1270"></a><tt class="py-lineno">1270</tt> <tt class="py-line"> <tt class="py-name">keys</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-453" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-453', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1271"></a><tt class="py-lineno">1271</tt> <tt class="py-line"> <tt class="py-name">keys</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">keys</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1272"></a><tt class="py-lineno">1272</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">keys</tt><tt class="py-op">:</tt> </tt>
-<a name="L1273"></a><tt class="py-lineno">1273</tt> <tt class="py-line"> <tt class="py-name">row</tt> <tt class="py-op">=</tt> <tt class="py-string">"%-13s"</tt> <tt class="py-op">%</tt> <tt class="py-name">key</tt> </tt>
-<a name="L1274"></a><tt class="py-lineno">1274</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">nodeStr</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1275"></a><tt class="py-lineno">1275</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1276"></a><tt class="py-lineno">1276</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-454" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-454', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">:</tt> </tt>
-<a name="L1277"></a><tt class="py-lineno">1277</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-455" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-455', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-string">"Error"</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">key</tt><tt class="py-op">:</tt> </tt>
-<a name="L1278"></a><tt class="py-lineno">1278</tt> <tt class="py-line"> <tt class="py-name">row</tt> <tt class="py-op">+=</tt> <tt class="py-string">"%-15s"</tt> <tt class="py-op">%</tt> <tt id="link-456" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-456', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1279"></a><tt class="py-lineno">1279</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-457" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-457', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">row</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1280"></a><tt class="py-lineno">1280</tt> <tt class="py-line"> <tt class="py-comment"># End table view</tt> </tt>
-<a name="L1281"></a><tt class="py-lineno">1281</tt> <tt class="py-line"> </tt>
-<a name="L1282"></a><tt class="py-lineno">1282</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1283"></a><tt class="py-lineno">1283</tt> <tt class="py-line"> <tt class="py-comment"># print the json objects</tt> </tt>
-<a name="L1284"></a><tt class="py-lineno">1284</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIntents</tt><tt class="py-op">)</tt> </tt>
-<a name="L1285"></a><tt class="py-lineno">1285</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-458" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-458', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1286"></a><tt class="py-lineno">1286</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-459" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-459', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1287"></a><tt class="py-lineno">1287</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1288"></a><tt class="py-lineno">1288</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1289"></a><tt class="py-lineno">1289</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1290"></a><tt class="py-lineno">1290</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1291"></a><tt class="py-lineno">1291</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1292"></a><tt class="py-lineno">1292</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-460" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-460', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1293"></a><tt class="py-lineno">1293</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-461" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-461', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1294"></a><tt class="py-lineno">1294</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1295"></a><tt class="py-lineno">1295</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1296"></a><tt class="py-lineno">1296</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1297"></a><tt class="py-lineno">1297</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1298"></a><tt class="py-lineno">1298</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-462" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-462', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-463" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-463', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents match ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1299"></a><tt class="py-lineno">1299</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1300"></a><tt class="py-lineno">1300</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">intentsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1301"></a><tt class="py-lineno">1301</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1302"></a><tt class="py-lineno">1302</tt> <tt class="py-line"> <tt class="py-name">intentState</tt> <tt class="py-op">=</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1303"></a><tt class="py-lineno">1303</tt> <tt class="py-line"> </tt>
-<a name="L1304"></a><tt class="py-lineno">1304</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-464" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-464', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the flows from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1305"></a><tt class="py-lineno">1305</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">flowState</tt> </tt>
-<a name="L1306"></a><tt class="py-lineno">1306</tt> <tt class="py-line"> <tt class="py-name">flowState</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1307"></a><tt class="py-lineno">1307</tt> <tt class="py-line"> <tt class="py-name">ONOSFlows</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1308"></a><tt class="py-lineno">1308</tt> <tt class="py-line"> <tt class="py-name">ONOSFlowsJson</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1309"></a><tt class="py-lineno">1309</tt> <tt class="py-line"> <tt class="py-name">flowCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1310"></a><tt class="py-lineno">1310</tt> <tt class="py-line"> <tt class="py-name">consistentFlows</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1311"></a><tt class="py-lineno">1311</tt> <tt class="py-line"> <tt class="py-name">flowsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1312"></a><tt class="py-lineno">1312</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1313"></a><tt class="py-lineno">1313</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1314"></a><tt class="py-lineno">1314</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-465" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-465', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-466" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-466', 'flows', 'link-405');">flows</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1315"></a><tt class="py-lineno">1315</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"flows-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1316"></a><tt class="py-lineno">1316</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1317"></a><tt class="py-lineno">1317</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">'jsonFormat'</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1318"></a><tt class="py-lineno">1318</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1319"></a><tt class="py-lineno">1319</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1320"></a><tt class="py-lineno">1320</tt> <tt class="py-line"> </tt>
-<a name="L1321"></a><tt class="py-lineno">1321</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Flows command can take some time to run</tt> </tt>
-<a name="L1322"></a><tt class="py-lineno">1322</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">30</tt><tt class="py-op">)</tt> </tt>
-<a name="L1323"></a><tt class="py-lineno">1323</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1324"></a><tt class="py-lineno">1324</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1325"></a><tt class="py-lineno">1325</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L1326"></a><tt class="py-lineno">1326</tt> <tt class="py-line"> <tt class="py-name">ONOSFlows</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1327"></a><tt class="py-lineno">1327</tt> <tt class="py-line"> </tt>
-<a name="L1328"></a><tt class="py-lineno">1328</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1329"></a><tt class="py-lineno">1329</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1330"></a><tt class="py-lineno">1330</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1331"></a><tt class="py-lineno">1331</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-467" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-467', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-468" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-468', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">num</tt> <tt class="py-op">+</tt> <tt class="py-string">" flows"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1332"></a><tt class="py-lineno">1332</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-469" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-469', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">num</tt> <tt class="py-op">+</tt> <tt class="py-string">" flows response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1333"></a><tt class="py-lineno">1333</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1334"></a><tt class="py-lineno">1334</tt> <tt class="py-line"> <tt class="py-name">flowsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1335"></a><tt class="py-lineno">1335</tt> <tt class="py-line"> <tt class="py-name">ONOSFlowsJson</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1336"></a><tt class="py-lineno">1336</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1337"></a><tt class="py-lineno">1337</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1338"></a><tt class="py-lineno">1338</tt> <tt class="py-line"> <tt class="py-name">ONOSFlowsJson</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1339"></a><tt class="py-lineno">1339</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1340"></a><tt class="py-lineno">1340</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: change this to log.error?</tt> </tt>
-<a name="L1341"></a><tt class="py-lineno">1341</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-470" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-470', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error in parsing ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">num</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1342"></a><tt class="py-lineno">1342</tt> <tt class="py-line"> <tt class="py-string">" response as json."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1343"></a><tt class="py-lineno">1343</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-471" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-471', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-472" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-472', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1344"></a><tt class="py-lineno">1344</tt> <tt class="py-line"> <tt class="py-name">ONOSFlowsJson</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1345"></a><tt class="py-lineno">1345</tt> <tt class="py-line"> <tt class="py-name">flowsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1346"></a><tt class="py-lineno">1346</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1347"></a><tt class="py-lineno">1347</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1348"></a><tt class="py-lineno">1348</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">flowsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1349"></a><tt class="py-lineno">1349</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No error in reading flows output"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1350"></a><tt class="py-lineno">1350</tt> <tt class="py-line"> <tt id="link-473" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-473', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error in reading flows from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1351"></a><tt class="py-lineno">1351</tt> <tt class="py-line"> </tt>
-<a name="L1352"></a><tt class="py-lineno">1352</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-474" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-474', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check for consistency in Flows from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1353"></a><tt class="py-lineno">1353</tt> <tt class="py-line"> <tt class="py-name">tmp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlowsJson</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSFlowsJson</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1354"></a><tt class="py-lineno">1354</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt> <tt class="py-name">tmp</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1355"></a><tt class="py-lineno">1355</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-475" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-475', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Flow count is consistent across all ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1356"></a><tt class="py-lineno">1356</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1357"></a><tt class="py-lineno">1357</tt> <tt class="py-line"> <tt class="py-name">consistentFlows</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1358"></a><tt class="py-lineno">1358</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1359"></a><tt class="py-lineno">1359</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1360"></a><tt class="py-lineno">1360</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentFlows</tt><tt class="py-op">,</tt> </tt>
-<a name="L1361"></a><tt class="py-lineno">1361</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"The flow count is consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1362"></a><tt class="py-lineno">1362</tt> <tt class="py-line"> <tt id="link-476" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-476', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different flow counts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1363"></a><tt class="py-lineno">1363</tt> <tt class="py-line"> </tt>
-<a name="L1364"></a><tt class="py-lineno">1364</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">flowsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentFlows</tt><tt class="py-op">:</tt> </tt>
-<a name="L1365"></a><tt class="py-lineno">1365</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1366"></a><tt class="py-lineno">1366</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1367"></a><tt class="py-lineno">1367</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-477" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-477', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1368"></a><tt class="py-lineno">1368</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" flows: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1369"></a><tt class="py-lineno">1369</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1370"></a><tt class="py-lineno">1370</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1371"></a><tt class="py-lineno">1371</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1372"></a><tt class="py-lineno">1372</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-478" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-478', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1373"></a><tt class="py-lineno">1373</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" flows: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1374"></a><tt class="py-lineno">1374</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1375"></a><tt class="py-lineno">1375</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">flowsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentFlows</tt><tt class="py-op">:</tt> </tt>
-<a name="L1376"></a><tt class="py-lineno">1376</tt> <tt class="py-line"> <tt class="py-name">flowCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1377"></a><tt class="py-lineno">1377</tt> <tt class="py-line"> <tt class="py-name">flowState</tt> <tt class="py-op">=</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1378"></a><tt class="py-lineno">1378</tt> <tt class="py-line"> </tt>
-<a name="L1379"></a><tt class="py-lineno">1379</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-479" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-479', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the OF Table entries"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1380"></a><tt class="py-lineno">1380</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt id="link-480" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-480', 'flows', 'link-405');">flows</a></tt> </tt>
-<a name="L1381"></a><tt class="py-lineno">1381</tt> <tt class="py-line"> <tt id="link-481" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-481', 'flows', 'link-405');">flows</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1382"></a><tt class="py-lineno">1382</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1383"></a><tt class="py-lineno">1383</tt> <tt class="py-line"> <tt id="link-482" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-482', 'flows', 'link-405');">flows</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-483" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getFlowTable()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getFlowTable"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getFlowTable" class="py-name" href="#" onclick="return doclink('link-483', 'getFlowTable', 'link-483');">getFlowTable</a></tt><tt class="py-op">(</tt> <tt class="py-number">1.3</tt><tt class="py-op">,</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1384"></a><tt class="py-lineno">1384</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">flowCheck</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1385"></a><tt class="py-lineno">1385</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">table</tt> <tt class="py-keyword">in</tt> <tt id="link-484" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-484', 'flows', 'link-405');">flows</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1386"></a><tt class="py-lineno">1386</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-485" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-485', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">table</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1387"></a><tt class="py-lineno">1387</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Compare switch flow tables with ONOS flow tables</tt> </tt>
-<a name="L1388"></a><tt class="py-lineno">1388</tt> <tt class="py-line"> </tt>
-<a name="L1389"></a><tt class="py-lineno">1389</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-486" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-486', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start continuous pings"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1390"></a><tt class="py-lineno">1390</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-487" class="py-name" targets="Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingLong"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-487', 'pingLong', 'link-487');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1391"></a><tt class="py-lineno">1391</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source1'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1392"></a><tt class="py-lineno">1392</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target1'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1393"></a><tt class="py-lineno">1393</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1394"></a><tt class="py-lineno">1394</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-488" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-488', 'pingLong', 'link-487');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1395"></a><tt class="py-lineno">1395</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source2'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1396"></a><tt class="py-lineno">1396</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target2'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1397"></a><tt class="py-lineno">1397</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1398"></a><tt class="py-lineno">1398</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-489" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-489', 'pingLong', 'link-487');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1399"></a><tt class="py-lineno">1399</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source3'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1400"></a><tt class="py-lineno">1400</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target3'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1401"></a><tt class="py-lineno">1401</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1402"></a><tt class="py-lineno">1402</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-490" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-490', 'pingLong', 'link-487');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1403"></a><tt class="py-lineno">1403</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source4'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1404"></a><tt class="py-lineno">1404</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target4'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1405"></a><tt class="py-lineno">1405</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1406"></a><tt class="py-lineno">1406</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-491" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-491', 'pingLong', 'link-487');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1407"></a><tt class="py-lineno">1407</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source5'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1408"></a><tt class="py-lineno">1408</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target5'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1409"></a><tt class="py-lineno">1409</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1410"></a><tt class="py-lineno">1410</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-492" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-492', 'pingLong', 'link-487');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1411"></a><tt class="py-lineno">1411</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source6'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1412"></a><tt class="py-lineno">1412</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target6'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1413"></a><tt class="py-lineno">1413</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1414"></a><tt class="py-lineno">1414</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-493" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-493', 'pingLong', 'link-487');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1415"></a><tt class="py-lineno">1415</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source7'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1416"></a><tt class="py-lineno">1416</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target7'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1417"></a><tt class="py-lineno">1417</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1418"></a><tt class="py-lineno">1418</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-494" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-494', 'pingLong', 'link-487');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1419"></a><tt class="py-lineno">1419</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source8'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1420"></a><tt class="py-lineno">1420</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target8'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1421"></a><tt class="py-lineno">1421</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1422"></a><tt class="py-lineno">1422</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-495" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-495', 'pingLong', 'link-487');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1423"></a><tt class="py-lineno">1423</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source9'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1424"></a><tt class="py-lineno">1424</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target9'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1425"></a><tt class="py-lineno">1425</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1426"></a><tt class="py-lineno">1426</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-496" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-496', 'pingLong', 'link-487');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1427"></a><tt class="py-lineno">1427</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source10'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1428"></a><tt class="py-lineno">1428</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target10'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1429"></a><tt class="py-lineno">1429</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1430"></a><tt class="py-lineno">1430</tt> <tt class="py-line"> </tt>
-<a name="L1431"></a><tt class="py-lineno">1431</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-497" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-497', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Collecting topology information from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1432"></a><tt class="py-lineno">1432</tt> <tt class="py-line"> <tt id="link-498" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-498', 'devices', 'link-114');">devices</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1433"></a><tt class="py-lineno">1433</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1434"></a><tt class="py-lineno">1434</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1435"></a><tt class="py-lineno">1435</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-499" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-499', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-500" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-500', 'devices', 'link-114');">devices</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1436"></a><tt class="py-lineno">1436</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"devices-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1437"></a><tt class="py-lineno">1437</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1438"></a><tt class="py-lineno">1438</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1439"></a><tt class="py-lineno">1439</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1440"></a><tt class="py-lineno">1440</tt> <tt class="py-line"> </tt>
-<a name="L1441"></a><tt class="py-lineno">1441</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1442"></a><tt class="py-lineno">1442</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1443"></a><tt class="py-lineno">1443</tt> <tt class="py-line"> <tt id="link-501" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-501', 'devices', 'link-114');">devices</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1444"></a><tt class="py-lineno">1444</tt> <tt class="py-line"> <tt id="link-502" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-502', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1445"></a><tt class="py-lineno">1445</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1446"></a><tt class="py-lineno">1446</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1447"></a><tt class="py-lineno">1447</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-503" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-503', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-504" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-504', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1448"></a><tt class="py-lineno">1448</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"hosts-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1449"></a><tt class="py-lineno">1449</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1450"></a><tt class="py-lineno">1450</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1451"></a><tt class="py-lineno">1451</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1452"></a><tt class="py-lineno">1452</tt> <tt class="py-line"> </tt>
-<a name="L1453"></a><tt class="py-lineno">1453</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1454"></a><tt class="py-lineno">1454</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1455"></a><tt class="py-lineno">1455</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1456"></a><tt class="py-lineno">1456</tt> <tt class="py-line"> <tt id="link-505" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-505', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1457"></a><tt class="py-lineno">1457</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1458"></a><tt class="py-lineno">1458</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: better handling of this, print which node</tt> </tt>
-<a name="L1459"></a><tt class="py-lineno">1459</tt> <tt class="py-line"> <tt class="py-comment"># Maybe use thread name?</tt> </tt>
-<a name="L1460"></a><tt class="py-lineno">1460</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-506" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-506', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing json output of hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1461"></a><tt class="py-lineno">1461</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: should this be an empty json object instead?</tt> </tt>
-<a name="L1462"></a><tt class="py-lineno">1462</tt> <tt class="py-line"> <tt id="link-507" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-507', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1463"></a><tt class="py-lineno">1463</tt> <tt class="py-line"> </tt>
-<a name="L1464"></a><tt class="py-lineno">1464</tt> <tt class="py-line"> <tt id="link-508" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#ports"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-508', 'ports', 'link-508');">ports</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1465"></a><tt class="py-lineno">1465</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1466"></a><tt class="py-lineno">1466</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1467"></a><tt class="py-lineno">1467</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-509" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-509', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-510" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-510', 'ports', 'link-508');">ports</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1468"></a><tt class="py-lineno">1468</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"ports-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1469"></a><tt class="py-lineno">1469</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1470"></a><tt class="py-lineno">1470</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1471"></a><tt class="py-lineno">1471</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1472"></a><tt class="py-lineno">1472</tt> <tt class="py-line"> </tt>
-<a name="L1473"></a><tt class="py-lineno">1473</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1474"></a><tt class="py-lineno">1474</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1475"></a><tt class="py-lineno">1475</tt> <tt class="py-line"> <tt id="link-511" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-511', 'ports', 'link-508');">ports</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1476"></a><tt class="py-lineno">1476</tt> <tt class="py-line"> <tt id="link-512" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#links,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#links"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-512', 'links', 'link-512');">links</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1477"></a><tt class="py-lineno">1477</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1478"></a><tt class="py-lineno">1478</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1479"></a><tt class="py-lineno">1479</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-513" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-513', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-514" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-514', 'links', 'link-512');">links</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1480"></a><tt class="py-lineno">1480</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"links-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1481"></a><tt class="py-lineno">1481</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1482"></a><tt class="py-lineno">1482</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1483"></a><tt class="py-lineno">1483</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1484"></a><tt class="py-lineno">1484</tt> <tt class="py-line"> </tt>
-<a name="L1485"></a><tt class="py-lineno">1485</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1486"></a><tt class="py-lineno">1486</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1487"></a><tt class="py-lineno">1487</tt> <tt class="py-line"> <tt id="link-515" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-515', 'links', 'link-512');">links</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1488"></a><tt class="py-lineno">1488</tt> <tt class="py-line"> <tt id="link-516" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#clusters"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-516', 'clusters', 'link-516');">clusters</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1489"></a><tt class="py-lineno">1489</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1490"></a><tt class="py-lineno">1490</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1491"></a><tt class="py-lineno">1491</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-517" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-517', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-518" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-518', 'clusters', 'link-516');">clusters</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1492"></a><tt class="py-lineno">1492</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"clusters-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1493"></a><tt class="py-lineno">1493</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1494"></a><tt class="py-lineno">1494</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1495"></a><tt class="py-lineno">1495</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1496"></a><tt class="py-lineno">1496</tt> <tt class="py-line"> </tt>
-<a name="L1497"></a><tt class="py-lineno">1497</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1498"></a><tt class="py-lineno">1498</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1499"></a><tt class="py-lineno">1499</tt> <tt class="py-line"> <tt id="link-519" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-519', 'clusters', 'link-516');">clusters</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1500"></a><tt class="py-lineno">1500</tt> <tt class="py-line"> <tt class="py-comment"># Compare json objects for hosts and dataplane clusters</tt> </tt>
-<a name="L1501"></a><tt class="py-lineno">1501</tt> <tt class="py-line"> </tt>
-<a name="L1502"></a><tt class="py-lineno">1502</tt> <tt class="py-line"> <tt class="py-comment"># hosts</tt> </tt>
-<a name="L1503"></a><tt class="py-lineno">1503</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-520" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-520', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Host view is consistent across ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1504"></a><tt class="py-lineno">1504</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1505"></a><tt class="py-lineno">1505</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-521" class="py-name" targets="Package TestON.drivers.common.api.controller=TestON.drivers.common.api.controller-module.html"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-521', 'controller', 'link-521');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-522" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-522', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1506"></a><tt class="py-lineno">1506</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-523" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-523', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1507"></a><tt class="py-lineno">1507</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-524" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-524', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-525" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-525', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1508"></a><tt class="py-lineno">1508</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-526" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-526', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-527" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-527', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt id="link-528" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-528', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1509"></a><tt class="py-lineno">1509</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L1510"></a><tt class="py-lineno">1510</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># hosts not consistent</tt> </tt>
-<a name="L1511"></a><tt class="py-lineno">1511</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-529" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-529', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-530" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-530', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"hosts from ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1512"></a><tt class="py-lineno">1512</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1513"></a><tt class="py-lineno">1513</tt> <tt class="py-line"> <tt class="py-string">" is inconsistent with ONOS1"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1514"></a><tt class="py-lineno">1514</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-531" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-531', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-532" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-532', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-533" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-533', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1515"></a><tt class="py-lineno">1515</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1516"></a><tt class="py-lineno">1516</tt> <tt class="py-line"> </tt>
-<a name="L1517"></a><tt class="py-lineno">1517</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1518"></a><tt class="py-lineno">1518</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-534" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-534', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-535" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-535', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS hosts from ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1519"></a><tt class="py-lineno">1519</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1520"></a><tt class="py-lineno">1520</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1521"></a><tt class="py-lineno">1521</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-536" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-536', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1522"></a><tt class="py-lineno">1522</tt> <tt class="py-line"> <tt class="py-string">" hosts response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1523"></a><tt class="py-lineno">1523</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-537" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-537', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-538" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-538', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1524"></a><tt class="py-lineno">1524</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1525"></a><tt class="py-lineno">1525</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1526"></a><tt class="py-lineno">1526</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentHostsResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1527"></a><tt class="py-lineno">1527</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Hosts view is consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1528"></a><tt class="py-lineno">1528</tt> <tt class="py-line"> <tt id="link-539" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-539', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1529"></a><tt class="py-lineno">1529</tt> <tt class="py-line"> </tt>
-<a name="L1530"></a><tt class="py-lineno">1530</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-540" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-540', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Each host has an IP address"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1531"></a><tt class="py-lineno">1531</tt> <tt class="py-line"> <tt class="py-name">ipResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1532"></a><tt class="py-lineno">1532</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-541" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-541', 'controller', 'link-521');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-542" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-542', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1533"></a><tt class="py-lineno">1533</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-543" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-543', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1534"></a><tt class="py-lineno">1534</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt id="link-544" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-544', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-545" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-545', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1535"></a><tt class="py-lineno">1535</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'ipAddresses'</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1536"></a><tt class="py-lineno">1536</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-546" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-546', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-547" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-547', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"DEBUG:Error with host ips on controller"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1537"></a><tt class="py-lineno">1537</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1538"></a><tt class="py-lineno">1538</tt> <tt class="py-line"> <tt class="py-name">ipResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1539"></a><tt class="py-lineno">1539</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1540"></a><tt class="py-lineno">1540</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1541"></a><tt class="py-lineno">1541</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">ipResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1542"></a><tt class="py-lineno">1542</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"The ips of the hosts aren't empty"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1543"></a><tt class="py-lineno">1543</tt> <tt class="py-line"> <tt id="link-548" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-548', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"The ip of at least one host is missing"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1544"></a><tt class="py-lineno">1544</tt> <tt class="py-line"> </tt>
-<a name="L1545"></a><tt class="py-lineno">1545</tt> <tt class="py-line"> <tt class="py-comment"># Strongly connected clusters of devices</tt> </tt>
-<a name="L1546"></a><tt class="py-lineno">1546</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-549" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-549', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cluster view is consistent across ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1547"></a><tt class="py-lineno">1547</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1548"></a><tt class="py-lineno">1548</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-550" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-550', 'controller', 'link-521');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-551" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-551', 'clusters', 'link-516');">clusters</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1549"></a><tt class="py-lineno">1549</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-552" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-552', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1550"></a><tt class="py-lineno">1550</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-553" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-553', 'clusters', 'link-516');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-554" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-554', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1551"></a><tt class="py-lineno">1551</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-555" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-555', 'clusters', 'link-516');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-556" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-556', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt id="link-557" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-557', 'clusters', 'link-516');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1552"></a><tt class="py-lineno">1552</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L1553"></a><tt class="py-lineno">1553</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># clusters not consistent</tt> </tt>
-<a name="L1554"></a><tt class="py-lineno">1554</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-558" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-558', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-559" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-559', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"clusters from ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1555"></a><tt class="py-lineno">1555</tt> <tt class="py-line"> <tt class="py-string">" is inconsistent with ONOS1"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1556"></a><tt class="py-lineno">1556</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1557"></a><tt class="py-lineno">1557</tt> <tt class="py-line"> </tt>
-<a name="L1558"></a><tt class="py-lineno">1558</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1559"></a><tt class="py-lineno">1559</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-560" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-560', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-561" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-561', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting dataplane clusters "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1560"></a><tt class="py-lineno">1560</tt> <tt class="py-line"> <tt class="py-string">"from ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1561"></a><tt class="py-lineno">1561</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1562"></a><tt class="py-lineno">1562</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-562" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-562', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1563"></a><tt class="py-lineno">1563</tt> <tt class="py-line"> <tt class="py-string">" clusters response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1564"></a><tt class="py-lineno">1564</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-563" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-563', 'clusters', 'link-516');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-564" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-564', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1565"></a><tt class="py-lineno">1565</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1566"></a><tt class="py-lineno">1566</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1567"></a><tt class="py-lineno">1567</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentClustersResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1568"></a><tt class="py-lineno">1568</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Clusters view is consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1569"></a><tt class="py-lineno">1569</tt> <tt class="py-line"> <tt id="link-565" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-565', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of clusters"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1570"></a><tt class="py-lineno">1570</tt> <tt class="py-line"> <tt class="py-comment"># there should always only be one cluster</tt> </tt>
-<a name="L1571"></a><tt class="py-lineno">1571</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-566" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-566', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cluster view correct across ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1572"></a><tt class="py-lineno">1572</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1573"></a><tt class="py-lineno">1573</tt> <tt class="py-line"> <tt class="py-name">numClusters</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-567" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-567', 'clusters', 'link-516');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1574"></a><tt class="py-lineno">1574</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1575"></a><tt class="py-lineno">1575</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-568" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-568', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing clusters[0]: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1576"></a><tt class="py-lineno">1576</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-569" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-569', 'clusters', 'link-516');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1577"></a><tt class="py-lineno">1577</tt> <tt class="py-line"> <tt class="py-name">clusterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1578"></a><tt class="py-lineno">1578</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">numClusters</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1579"></a><tt class="py-lineno">1579</tt> <tt class="py-line"> <tt class="py-name">clusterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1580"></a><tt class="py-lineno">1580</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1581"></a><tt class="py-lineno">1581</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1582"></a><tt class="py-lineno">1582</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">numClusters</tt><tt class="py-op">,</tt> </tt>
-<a name="L1583"></a><tt class="py-lineno">1583</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS shows 1 SCC"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1584"></a><tt class="py-lineno">1584</tt> <tt class="py-line"> <tt id="link-570" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-570', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS shows "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">numClusters</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" SCCs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1585"></a><tt class="py-lineno">1585</tt> <tt class="py-line"> </tt>
-<a name="L1586"></a><tt class="py-lineno">1586</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-571" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-571', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Comparing ONOS topology to MN"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1587"></a><tt class="py-lineno">1587</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1588"></a><tt class="py-lineno">1588</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1589"></a><tt class="py-lineno">1589</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1590"></a><tt class="py-lineno">1590</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-572" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitches()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitches"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitches" class="py-name" href="#" onclick="return doclink('link-572', 'getSwitches', 'link-572');">getSwitches</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1591"></a><tt class="py-lineno">1591</tt> <tt class="py-line"> <tt class="py-name">mnLinks</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-573" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getLinks()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getLinks"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getLinks" class="py-name" href="#" onclick="return doclink('link-573', 'getLinks', 'link-573');">getLinks</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1592"></a><tt class="py-lineno">1592</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-574" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getHosts"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts" class="py-name" href="#" onclick="return doclink('link-574', 'getHosts', 'link-574');">getHosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1593"></a><tt class="py-lineno">1593</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-575" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-575', 'controller', 'link-521');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1594"></a><tt class="py-lineno">1594</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-576" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-576', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1595"></a><tt class="py-lineno">1595</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-577" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-577', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-578" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-578', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt id="link-579" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-579', 'ports', 'link-508');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-580" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-580', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L1596"></a><tt class="py-lineno">1596</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-581" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-581', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-582" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-582', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L1597"></a><tt class="py-lineno">1597</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-583" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-583', 'ports', 'link-508');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-584" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-584', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1598"></a><tt class="py-lineno">1598</tt> <tt class="py-line"> </tt>
-<a name="L1599"></a><tt class="py-lineno">1599</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-585" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareSwitches()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareSwitches"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareSwitches" class="py-name" href="#" onclick="return doclink('link-585', 'compareSwitches', 'link-585');">compareSwitches</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1600"></a><tt class="py-lineno">1600</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> </tt>
-<a name="L1601"></a><tt class="py-lineno">1601</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-586" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-586', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-587" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-587', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1602"></a><tt class="py-lineno">1602</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-588" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-588', 'ports', 'link-508');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-589" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-589', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1603"></a><tt class="py-lineno">1603</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1604"></a><tt class="py-lineno">1604</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1605"></a><tt class="py-lineno">1605</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1606"></a><tt class="py-lineno">1606</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentDevicesResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1607"></a><tt class="py-lineno">1607</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1608"></a><tt class="py-lineno">1608</tt> <tt class="py-line"> <tt class="py-string">" Switches view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1609"></a><tt class="py-lineno">1609</tt> <tt class="py-line"> <tt id="link-590" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-590', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1610"></a><tt class="py-lineno">1610</tt> <tt class="py-line"> <tt class="py-string">" Switches view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1611"></a><tt class="py-lineno">1611</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-591" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-591', 'links', 'link-512');">links</a></tt><tt class="py-op">[</tt> <tt id="link-592" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-592', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-593" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-593', 'links', 'link-512');">links</a></tt><tt class="py-op">[</tt> <tt id="link-594" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-594', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1612"></a><tt class="py-lineno">1612</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-595" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareLinks()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareLinks"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareLinks" class="py-name" href="#" onclick="return doclink('link-595', 'compareLinks', 'link-595');">compareLinks</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1613"></a><tt class="py-lineno">1613</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> <tt class="py-name">mnLinks</tt><tt class="py-op">,</tt> </tt>
-<a name="L1614"></a><tt class="py-lineno">1614</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-596" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-596', 'links', 'link-512');">links</a></tt><tt class="py-op">[</tt> <tt id="link-597" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-597', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1615"></a><tt class="py-lineno">1615</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1616"></a><tt class="py-lineno">1616</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1617"></a><tt class="py-lineno">1617</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1618"></a><tt class="py-lineno">1618</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentLinksResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1619"></a><tt class="py-lineno">1619</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1620"></a><tt class="py-lineno">1620</tt> <tt class="py-line"> <tt class="py-string">" links view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1621"></a><tt class="py-lineno">1621</tt> <tt class="py-line"> <tt id="link-598" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-598', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1622"></a><tt class="py-lineno">1622</tt> <tt class="py-line"> <tt class="py-string">" links view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1623"></a><tt class="py-lineno">1623</tt> <tt class="py-line"> </tt>
-<a name="L1624"></a><tt class="py-lineno">1624</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-599" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-599', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-600" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-600', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-601" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-601', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-602" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-602', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1625"></a><tt class="py-lineno">1625</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-603" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareHosts()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareHosts"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareHosts" class="py-name" href="#" onclick="return doclink('link-603', 'compareHosts', 'link-603');">compareHosts</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1626"></a><tt class="py-lineno">1626</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt><tt class="py-op">,</tt> </tt>
-<a name="L1627"></a><tt class="py-lineno">1627</tt> <tt class="py-line"> <tt id="link-604" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-604', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-605" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-605', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1628"></a><tt class="py-lineno">1628</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1629"></a><tt class="py-lineno">1629</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1630"></a><tt class="py-lineno">1630</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1631"></a><tt class="py-lineno">1631</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentHostsResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1632"></a><tt class="py-lineno">1632</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1633"></a><tt class="py-lineno">1633</tt> <tt class="py-line"> <tt class="py-string">" hosts exist in Mininet"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1634"></a><tt class="py-lineno">1634</tt> <tt class="py-line"> <tt id="link-606" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-606', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1635"></a><tt class="py-lineno">1635</tt> <tt class="py-line"> <tt class="py-string">" hosts don't match Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1636"></a><tt class="py-lineno">1636</tt> <tt class="py-line"> </tt>
-<a name="L1637"></a><tt class="py-lineno">1637</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">devicesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentDevicesResult</tt> </tt>
-<a name="L1638"></a><tt class="py-lineno">1638</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">linksResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentLinksResult</tt> </tt>
-<a name="L1639"></a><tt class="py-lineno">1639</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentHostsResult</tt> </tt>
-<a name="L1640"></a><tt class="py-lineno">1640</tt> <tt class="py-line"> </tt>
-<a name="L1641"></a><tt class="py-lineno">1641</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-607" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-607', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Device information is correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1642"></a><tt class="py-lineno">1642</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1643"></a><tt class="py-lineno">1643</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1644"></a><tt class="py-lineno">1644</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">devicesResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1645"></a><tt class="py-lineno">1645</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Device information is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1646"></a><tt class="py-lineno">1646</tt> <tt class="py-line"> <tt id="link-608" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-608', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Device information is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1647"></a><tt class="py-lineno">1647</tt> <tt class="py-line"> </tt>
-<a name="L1648"></a><tt class="py-lineno">1648</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-609" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-609', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Links are correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1649"></a><tt class="py-lineno">1649</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1650"></a><tt class="py-lineno">1650</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1651"></a><tt class="py-lineno">1651</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linksResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1652"></a><tt class="py-lineno">1652</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1653"></a><tt class="py-lineno">1653</tt> <tt class="py-line"> <tt id="link-610" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-610', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Links are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1654"></a><tt class="py-lineno">1654</tt> <tt class="py-line"> </tt>
-<a name="L1655"></a><tt class="py-lineno">1655</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-611" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-611', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Hosts are correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1656"></a><tt class="py-lineno">1656</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1657"></a><tt class="py-lineno">1657</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1658"></a><tt class="py-lineno">1658</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">hostsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1659"></a><tt class="py-lineno">1659</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Hosts are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1660"></a><tt class="py-lineno">1660</tt> <tt class="py-line"> <tt id="link-612" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-612', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Hosts are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1661"></a><tt class="py-lineno">1661</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE6"></a><div id="HAminorityRestart.CASE6-def"><a name="L1662"></a><tt class="py-lineno">1662</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE6-toggle" onclick="return toggle('HAminorityRestart.CASE6');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE6">CASE6</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE6-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE6-expanded"><a name="L1663"></a><tt class="py-lineno">1663</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1664"></a><tt class="py-lineno">1664</tt> <tt class="py-line"><tt class="py-docstring"> The Failure case.</tt> </tt>
-<a name="L1665"></a><tt class="py-lineno">1665</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1666"></a><tt class="py-lineno">1666</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1667"></a><tt class="py-lineno">1667</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1668"></a><tt class="py-lineno">1668</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1669"></a><tt class="py-lineno">1669</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1670"></a><tt class="py-lineno">1670</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L1671"></a><tt class="py-lineno">1671</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-613" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-613', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L1672"></a><tt class="py-lineno">1672</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-614" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-614', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Restart minority of ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1673"></a><tt class="py-lineno">1673</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-615" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-615', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Killing 3 ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1674"></a><tt class="py-lineno">1674</tt> <tt class="py-line"> <tt class="py-name">killTime</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1675"></a><tt class="py-lineno">1675</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Randomize these nodes or base this on partitions</tt> </tt>
-<a name="L1676"></a><tt class="py-lineno">1676</tt> <tt class="py-line"> <tt class="py-comment"># TODO: use threads in this case</tt> </tt>
-<a name="L1677"></a><tt class="py-lineno">1677</tt> <tt class="py-line"> <tt class="py-name">killResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-616" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosKill" class="py-name" href="#" onclick="return doclink('link-616', 'onosKill', 'link-24');">onosKill</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-617" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-617', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1678"></a><tt class="py-lineno">1678</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1679"></a><tt class="py-lineno">1679</tt> <tt class="py-line"> <tt class="py-name">killResults</tt> <tt class="py-op">=</tt> <tt class="py-name">killResults</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L1680"></a><tt class="py-lineno">1680</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-618" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosKill" class="py-name" href="#" onclick="return doclink('link-618', 'onosKill', 'link-24');">onosKill</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-619" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-619', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1681"></a><tt class="py-lineno">1681</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1682"></a><tt class="py-lineno">1682</tt> <tt class="py-line"> <tt class="py-name">killResults</tt> <tt class="py-op">=</tt> <tt class="py-name">killResults</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L1683"></a><tt class="py-lineno">1683</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-620" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosKill" class="py-name" href="#" onclick="return doclink('link-620', 'onosKill', 'link-24');">onosKill</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-621" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-621', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1684"></a><tt class="py-lineno">1684</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">killResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1685"></a><tt class="py-lineno">1685</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS Killed successfully"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1686"></a><tt class="py-lineno">1686</tt> <tt class="py-line"> <tt id="link-622" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-622', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS kill NOT successful"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1687"></a><tt class="py-lineno">1687</tt> <tt class="py-line"> </tt>
-<a name="L1688"></a><tt class="py-lineno">1688</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-623" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-623', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Checking if ONOS is up yet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1689"></a><tt class="py-lineno">1689</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1690"></a><tt class="py-lineno">1690</tt> <tt class="py-line"> <tt class="py-name">onosIsupResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1691"></a><tt class="py-lineno">1691</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">onosIsupResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> <tt class="py-keyword">and</tt> <tt class="py-name">count</tt> <tt class="py-op"><</tt> <tt class="py-number">10</tt><tt class="py-op">:</tt> </tt>
-<a name="L1692"></a><tt class="py-lineno">1692</tt> <tt class="py-line"> <tt class="py-name">onos1Isup</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-624" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-624', 'isup', 'link-48');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-625" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-625', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1693"></a><tt class="py-lineno">1693</tt> <tt class="py-line"> <tt class="py-name">onos2Isup</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-626" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-626', 'isup', 'link-48');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-627" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-627', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1694"></a><tt class="py-lineno">1694</tt> <tt class="py-line"> <tt class="py-name">onos3Isup</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-628" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-628', 'isup', 'link-48');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-629" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-629', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1695"></a><tt class="py-lineno">1695</tt> <tt class="py-line"> <tt class="py-name">onosIsupResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onos1Isup</tt> <tt class="py-keyword">and</tt> <tt class="py-name">onos2Isup</tt> <tt class="py-keyword">and</tt> <tt class="py-name">onos3Isup</tt> </tt>
-<a name="L1696"></a><tt class="py-lineno">1696</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-name">count</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1697"></a><tt class="py-lineno">1697</tt> <tt class="py-line"> <tt class="py-comment"># TODO: if it becomes an issue, we can retry this step a few times</tt> </tt>
-<a name="L1698"></a><tt class="py-lineno">1698</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">onosIsupResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1699"></a><tt class="py-lineno">1699</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS restarted successfully"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1700"></a><tt class="py-lineno">1700</tt> <tt class="py-line"> <tt id="link-630" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-630', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS restart NOT successful"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1701"></a><tt class="py-lineno">1701</tt> <tt class="py-line"> </tt>
-<a name="L1702"></a><tt class="py-lineno">1702</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-631" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-631', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Restarting ONOS main.CLIs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1703"></a><tt class="py-lineno">1703</tt> <tt class="py-line"> <tt class="py-name">cliResult1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-632" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli" class="py-name" href="#" onclick="return doclink('link-632', 'startOnosCli', 'link-57');">startOnosCli</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-633" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-633', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1704"></a><tt class="py-lineno">1704</tt> <tt class="py-line"> <tt class="py-name">cliResult2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli2</tt><tt class="py-op">.</tt><tt id="link-634" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli" class="py-name" href="#" onclick="return doclink('link-634', 'startOnosCli', 'link-57');">startOnosCli</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-635" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-635', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1705"></a><tt class="py-lineno">1705</tt> <tt class="py-line"> <tt class="py-name">cliResult3</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli3</tt><tt class="py-op">.</tt><tt id="link-636" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli" class="py-name" href="#" onclick="return doclink('link-636', 'startOnosCli', 'link-57');">startOnosCli</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-637" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-637', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1706"></a><tt class="py-lineno">1706</tt> <tt class="py-line"> <tt class="py-name">cliResults</tt> <tt class="py-op">=</tt> <tt class="py-name">cliResult1</tt> <tt class="py-keyword">and</tt> <tt class="py-name">cliResult2</tt> <tt class="py-keyword">and</tt> <tt class="py-name">cliResult3</tt> </tt>
-<a name="L1707"></a><tt class="py-lineno">1707</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">cliResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1708"></a><tt class="py-lineno">1708</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS cli restarted"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1709"></a><tt class="py-lineno">1709</tt> <tt class="py-line"> <tt id="link-638" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-638', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS cli did not restart"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1710"></a><tt class="py-lineno">1710</tt> <tt class="py-line"> </tt>
-<a name="L1711"></a><tt class="py-lineno">1711</tt> <tt class="py-line"> <tt class="py-comment"># Grab the time of restart so we chan check how long the gossip</tt> </tt>
-<a name="L1712"></a><tt class="py-lineno">1712</tt> <tt class="py-line"> <tt class="py-comment"># protocol has had time to work</tt> </tt>
-<a name="L1713"></a><tt class="py-lineno">1713</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">restartTime</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">killTime</tt> </tt>
-<a name="L1714"></a><tt class="py-lineno">1714</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-639" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-639', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Restart time: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">restartTime</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1715"></a><tt class="py-lineno">1715</tt> <tt class="py-line"> <tt class="py-string">'''</tt> </tt>
-<a name="L1716"></a><tt class="py-lineno">1716</tt> <tt class="py-line"><tt class="py-string"> # FIXME: revisit test plan for election with madan</tt> </tt>
-<a name="L1717"></a><tt class="py-lineno">1717</tt> <tt class="py-line"><tt class="py-string"> # Rerun for election on restarted nodes</tt> </tt>
-<a name="L1718"></a><tt class="py-lineno">1718</tt> <tt class="py-line"><tt class="py-string"> run1 = main.CLIs[0].electionTestRun()</tt> </tt>
-<a name="L1719"></a><tt class="py-lineno">1719</tt> <tt class="py-line"><tt class="py-string"> run2 = main.CLIs[1].electionTestRun()</tt> </tt>
-<a name="L1720"></a><tt class="py-lineno">1720</tt> <tt class="py-line"><tt class="py-string"> run3 = main.CLIs[2].electionTestRun()</tt> </tt>
-<a name="L1721"></a><tt class="py-lineno">1721</tt> <tt class="py-line"><tt class="py-string"> runResults = run1 and run2 and run3</tt> </tt>
-<a name="L1722"></a><tt class="py-lineno">1722</tt> <tt class="py-line"><tt class="py-string"> utilities.assert_equals( expect=main.TRUE, actual=runResults,</tt> </tt>
-<a name="L1723"></a><tt class="py-lineno">1723</tt> <tt class="py-line"><tt class="py-string"> onpass="Reran for election",</tt> </tt>
-<a name="L1724"></a><tt class="py-lineno">1724</tt> <tt class="py-line"><tt class="py-string"> onfail="Failed to rerun for election" )</tt> </tt>
-<a name="L1725"></a><tt class="py-lineno">1725</tt> <tt class="py-line"><tt class="py-string"> '''</tt> </tt>
-<a name="L1726"></a><tt class="py-lineno">1726</tt> <tt class="py-line"> <tt class="py-comment"># TODO: MAke this configurable. Also, we are breaking the above timer</tt> </tt>
-<a name="L1727"></a><tt class="py-lineno">1727</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1728"></a><tt class="py-lineno">1728</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-640" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-640', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-641" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-641', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1729"></a><tt class="py-lineno">1729</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-642" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-642', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-643" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-643', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1730"></a><tt class="py-lineno">1730</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-644" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-644', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-645" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-645', 'partitions', 'link-197');">partitions</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1731"></a><tt class="py-lineno">1731</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE7"></a><div id="HAminorityRestart.CASE7-def"><a name="L1732"></a><tt class="py-lineno">1732</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE7-toggle" onclick="return toggle('HAminorityRestart.CASE7');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE7">CASE7</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE7-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE7-expanded"><a name="L1733"></a><tt class="py-lineno">1733</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1734"></a><tt class="py-lineno">1734</tt> <tt class="py-line"><tt class="py-docstring"> Check state after ONOS failure</tt> </tt>
-<a name="L1735"></a><tt class="py-lineno">1735</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1736"></a><tt class="py-lineno">1736</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L1737"></a><tt class="py-lineno">1737</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1738"></a><tt class="py-lineno">1738</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1739"></a><tt class="py-lineno">1739</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1740"></a><tt class="py-lineno">1740</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L1741"></a><tt class="py-lineno">1741</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-646" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-646', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L1742"></a><tt class="py-lineno">1742</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-647" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-647', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Running ONOS Constant State Tests"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1743"></a><tt class="py-lineno">1743</tt> <tt class="py-line"> </tt>
-<a name="L1744"></a><tt class="py-lineno">1744</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-648" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-648', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check that each switch has a master"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1745"></a><tt class="py-lineno">1745</tt> <tt class="py-line"> <tt class="py-comment"># Assert that each device has a master</tt> </tt>
-<a name="L1746"></a><tt class="py-lineno">1746</tt> <tt class="py-line"> <tt id="link-649" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-649', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1747"></a><tt class="py-lineno">1747</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1748"></a><tt class="py-lineno">1748</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1749"></a><tt class="py-lineno">1749</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-650" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-650', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-651" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-651', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1750"></a><tt class="py-lineno">1750</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"rolesNotNull-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1751"></a><tt class="py-lineno">1751</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1752"></a><tt class="py-lineno">1752</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1753"></a><tt class="py-lineno">1753</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1754"></a><tt class="py-lineno">1754</tt> <tt class="py-line"> </tt>
-<a name="L1755"></a><tt class="py-lineno">1755</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1756"></a><tt class="py-lineno">1756</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1757"></a><tt class="py-lineno">1757</tt> <tt class="py-line"> <tt id="link-652" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-652', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt> <tt class="py-op">=</tt> <tt id="link-653" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-653', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L1758"></a><tt class="py-lineno">1758</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1759"></a><tt class="py-lineno">1759</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1760"></a><tt class="py-lineno">1760</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt id="link-654" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-654', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1761"></a><tt class="py-lineno">1761</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Each device has a master"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1762"></a><tt class="py-lineno">1762</tt> <tt class="py-line"> <tt id="link-655" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-655', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Some devices don't have a master assigned"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1763"></a><tt class="py-lineno">1763</tt> <tt class="py-line"> </tt>
-<a name="L1764"></a><tt class="py-lineno">1764</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-656" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-656', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Read device roles from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1765"></a><tt class="py-lineno">1765</tt> <tt class="py-line"> <tt class="py-name">ONOSMastership</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1766"></a><tt class="py-lineno">1766</tt> <tt class="py-line"> <tt class="py-name">consistentMastership</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1767"></a><tt class="py-lineno">1767</tt> <tt class="py-line"> <tt class="py-name">rolesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1768"></a><tt class="py-lineno">1768</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1769"></a><tt class="py-lineno">1769</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1770"></a><tt class="py-lineno">1770</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-657" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-657', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-658" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.roles" class="py-name" href="#" onclick="return doclink('link-658', 'roles', 'link-429');">roles</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1771"></a><tt class="py-lineno">1771</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"roles-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1772"></a><tt class="py-lineno">1772</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1773"></a><tt class="py-lineno">1773</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1774"></a><tt class="py-lineno">1774</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1775"></a><tt class="py-lineno">1775</tt> <tt class="py-line"> </tt>
-<a name="L1776"></a><tt class="py-lineno">1776</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1777"></a><tt class="py-lineno">1777</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1778"></a><tt class="py-lineno">1778</tt> <tt class="py-line"> <tt class="py-name">ONOSMastership</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1779"></a><tt class="py-lineno">1779</tt> <tt class="py-line"> </tt>
-<a name="L1780"></a><tt class="py-lineno">1780</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1781"></a><tt class="py-lineno">1781</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1782"></a><tt class="py-lineno">1782</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-659" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-659', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-660" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-660', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1783"></a><tt class="py-lineno">1783</tt> <tt class="py-line"> <tt class="py-string">" roles"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1784"></a><tt class="py-lineno">1784</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-661" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-661', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1785"></a><tt class="py-lineno">1785</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" mastership response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1786"></a><tt class="py-lineno">1786</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1787"></a><tt class="py-lineno">1787</tt> <tt class="py-line"> <tt class="py-name">rolesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1788"></a><tt class="py-lineno">1788</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1789"></a><tt class="py-lineno">1789</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1790"></a><tt class="py-lineno">1790</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">rolesResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1791"></a><tt class="py-lineno">1791</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No error in reading roles output"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1792"></a><tt class="py-lineno">1792</tt> <tt class="py-line"> <tt id="link-662" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-662', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error in reading roles from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1793"></a><tt class="py-lineno">1793</tt> <tt class="py-line"> </tt>
-<a name="L1794"></a><tt class="py-lineno">1794</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-663" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-663', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check for consistency in roles from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1795"></a><tt class="py-lineno">1795</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSMastership</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1796"></a><tt class="py-lineno">1796</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-664" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-664', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L1797"></a><tt class="py-lineno">1797</tt> <tt class="py-line"> <tt class="py-string">"Switch roles are consistent across all ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1798"></a><tt class="py-lineno">1798</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1799"></a><tt class="py-lineno">1799</tt> <tt class="py-line"> <tt class="py-name">consistentMastership</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1800"></a><tt class="py-lineno">1800</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1801"></a><tt class="py-lineno">1801</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1802"></a><tt class="py-lineno">1802</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentMastership</tt><tt class="py-op">,</tt> </tt>
-<a name="L1803"></a><tt class="py-lineno">1803</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Switch roles are consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1804"></a><tt class="py-lineno">1804</tt> <tt class="py-line"> <tt id="link-665" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-665', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of switch roles"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1805"></a><tt class="py-lineno">1805</tt> <tt class="py-line"> </tt>
-<a name="L1806"></a><tt class="py-lineno">1806</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">rolesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentMastership</tt><tt class="py-op">:</tt> </tt>
-<a name="L1807"></a><tt class="py-lineno">1807</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1808"></a><tt class="py-lineno">1808</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-666" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-666', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1809"></a><tt class="py-lineno">1809</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" roles: "</tt><tt class="py-op">,</tt> </tt>
-<a name="L1810"></a><tt class="py-lineno">1810</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> </tt>
-<a name="L1811"></a><tt class="py-lineno">1811</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1812"></a><tt class="py-lineno">1812</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1813"></a><tt class="py-lineno">1813</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1814"></a><tt class="py-lineno">1814</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1815"></a><tt class="py-lineno">1815</tt> <tt class="py-line"> </tt>
-<a name="L1816"></a><tt class="py-lineno">1816</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: we expect mastership to change on controller failure</tt> </tt>
-<a name="L1817"></a><tt class="py-lineno">1817</tt> <tt class="py-line"> <tt class="py-string">'''</tt> </tt>
-<a name="L1818"></a><tt class="py-lineno">1818</tt> <tt class="py-line"><tt class="py-string"> description2 = "Compare switch roles from before failure"</tt> </tt>
-<a name="L1819"></a><tt class="py-lineno">1819</tt> <tt class="py-line"><tt class="py-string"> main.step( description2 )</tt> </tt>
-<a name="L1820"></a><tt class="py-lineno">1820</tt> <tt class="py-line"><tt class="py-string"> try:</tt> </tt>
-<a name="L1821"></a><tt class="py-lineno">1821</tt> <tt class="py-line"><tt class="py-string"> currentJson = json.loads( ONOSMastership[0] )</tt> </tt>
-<a name="L1822"></a><tt class="py-lineno">1822</tt> <tt class="py-line"><tt class="py-string"> oldJson = json.loads( mastershipState )</tt> </tt>
-<a name="L1823"></a><tt class="py-lineno">1823</tt> <tt class="py-line"><tt class="py-string"> except ( ValueError, TypeError ):</tt> </tt>
-<a name="L1824"></a><tt class="py-lineno">1824</tt> <tt class="py-line"><tt class="py-string"> main.log.exception( "Something is wrong with parsing " +</tt> </tt>
-<a name="L1825"></a><tt class="py-lineno">1825</tt> <tt class="py-line"><tt class="py-string"> "ONOSMastership[0] or mastershipState" )</tt> </tt>
-<a name="L1826"></a><tt class="py-lineno">1826</tt> <tt class="py-line"><tt class="py-string"> main.log.error( "ONOSMastership[0]: " + repr( ONOSMastership[0] ) )</tt> </tt>
-<a name="L1827"></a><tt class="py-lineno">1827</tt> <tt class="py-line"><tt class="py-string"> main.log.error( "mastershipState" + repr( mastershipState ) )</tt> </tt>
-<a name="L1828"></a><tt class="py-lineno">1828</tt> <tt class="py-line"><tt class="py-string"> main.cleanup()</tt> </tt>
-<a name="L1829"></a><tt class="py-lineno">1829</tt> <tt class="py-line"><tt class="py-string"> main.exit()</tt> </tt>
-<a name="L1830"></a><tt class="py-lineno">1830</tt> <tt class="py-line"><tt class="py-string"> mastershipCheck = main.TRUE</tt> </tt>
-<a name="L1831"></a><tt class="py-lineno">1831</tt> <tt class="py-line"><tt class="py-string"> for i in range( 1, 29 ):</tt> </tt>
-<a name="L1832"></a><tt class="py-lineno">1832</tt> <tt class="py-line"><tt class="py-string"> switchDPID = str(</tt> </tt>
-<a name="L1833"></a><tt class="py-lineno">1833</tt> <tt class="py-line"><tt class="py-string"> main.Mininet1.getSwitchDPID( switch="s" + str( i ) ) )</tt> </tt>
-<a name="L1834"></a><tt class="py-lineno">1834</tt> <tt class="py-line"><tt class="py-string"> current = [ switch[ 'master' ] for switch in currentJson</tt> </tt>
-<a name="L1835"></a><tt class="py-lineno">1835</tt> <tt class="py-line"><tt class="py-string"> if switchDPID in switch[ 'id' ] ]</tt> </tt>
-<a name="L1836"></a><tt class="py-lineno">1836</tt> <tt class="py-line"><tt class="py-string"> old = [ switch[ 'master' ] for switch in oldJson</tt> </tt>
-<a name="L1837"></a><tt class="py-lineno">1837</tt> <tt class="py-line"><tt class="py-string"> if switchDPID in switch[ 'id' ] ]</tt> </tt>
-<a name="L1838"></a><tt class="py-lineno">1838</tt> <tt class="py-line"><tt class="py-string"> if current == old:</tt> </tt>
-<a name="L1839"></a><tt class="py-lineno">1839</tt> <tt class="py-line"><tt class="py-string"> mastershipCheck = mastershipCheck and main.TRUE</tt> </tt>
-<a name="L1840"></a><tt class="py-lineno">1840</tt> <tt class="py-line"><tt class="py-string"> else:</tt> </tt>
-<a name="L1841"></a><tt class="py-lineno">1841</tt> <tt class="py-line"><tt class="py-string"> main.log.warn( "Mastership of switch %s changed" % switchDPID )</tt> </tt>
-<a name="L1842"></a><tt class="py-lineno">1842</tt> <tt class="py-line"><tt class="py-string"> mastershipCheck = main.FALSE</tt> </tt>
-<a name="L1843"></a><tt class="py-lineno">1843</tt> <tt class="py-line"><tt class="py-string"> utilities.assert_equals(</tt> </tt>
-<a name="L1844"></a><tt class="py-lineno">1844</tt> <tt class="py-line"><tt class="py-string"> expect=main.TRUE,</tt> </tt>
-<a name="L1845"></a><tt class="py-lineno">1845</tt> <tt class="py-line"><tt class="py-string"> actual=mastershipCheck,</tt> </tt>
-<a name="L1846"></a><tt class="py-lineno">1846</tt> <tt class="py-line"><tt class="py-string"> onpass="Mastership of Switches was not changed",</tt> </tt>
-<a name="L1847"></a><tt class="py-lineno">1847</tt> <tt class="py-line"><tt class="py-string"> onfail="Mastership of some switches changed" )</tt> </tt>
-<a name="L1848"></a><tt class="py-lineno">1848</tt> <tt class="py-line"><tt class="py-string"> '''</tt> </tt>
-<a name="L1849"></a><tt class="py-lineno">1849</tt> <tt class="py-line"> </tt>
-<a name="L1850"></a><tt class="py-lineno">1850</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-667" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-667', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the intents and compare across all nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1851"></a><tt class="py-lineno">1851</tt> <tt class="py-line"> <tt class="py-name">ONOSIntents</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1852"></a><tt class="py-lineno">1852</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1853"></a><tt class="py-lineno">1853</tt> <tt class="py-line"> <tt class="py-name">consistentIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1854"></a><tt class="py-lineno">1854</tt> <tt class="py-line"> <tt class="py-name">intentsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1855"></a><tt class="py-lineno">1855</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1856"></a><tt class="py-lineno">1856</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1857"></a><tt class="py-lineno">1857</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-668" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-668', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-669" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-669', 'intents', 'link-172');">intents</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1858"></a><tt class="py-lineno">1858</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"intents-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1859"></a><tt class="py-lineno">1859</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1860"></a><tt class="py-lineno">1860</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">'jsonFormat'</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1861"></a><tt class="py-lineno">1861</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1862"></a><tt class="py-lineno">1862</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1863"></a><tt class="py-lineno">1863</tt> <tt class="py-line"> </tt>
-<a name="L1864"></a><tt class="py-lineno">1864</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1865"></a><tt class="py-lineno">1865</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1866"></a><tt class="py-lineno">1866</tt> <tt class="py-line"> <tt class="py-name">ONOSIntents</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1867"></a><tt class="py-lineno">1867</tt> <tt class="py-line"> </tt>
-<a name="L1868"></a><tt class="py-lineno">1868</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1869"></a><tt class="py-lineno">1869</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1870"></a><tt class="py-lineno">1870</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-670" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-670', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-671" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-671', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1871"></a><tt class="py-lineno">1871</tt> <tt class="py-line"> <tt class="py-string">" intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1872"></a><tt class="py-lineno">1872</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-672" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-672', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1873"></a><tt class="py-lineno">1873</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1874"></a><tt class="py-lineno">1874</tt> <tt class="py-line"> <tt class="py-name">intentsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1875"></a><tt class="py-lineno">1875</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1876"></a><tt class="py-lineno">1876</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1877"></a><tt class="py-lineno">1877</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">intentsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1878"></a><tt class="py-lineno">1878</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No error in reading intents output"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1879"></a><tt class="py-lineno">1879</tt> <tt class="py-line"> <tt id="link-673" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-673', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error in reading intents from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1880"></a><tt class="py-lineno">1880</tt> <tt class="py-line"> </tt>
-<a name="L1881"></a><tt class="py-lineno">1881</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-674" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-674', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check for consistency in Intents from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1882"></a><tt class="py-lineno">1882</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt><tt class="py-op">[</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1883"></a><tt class="py-lineno">1883</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-675" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-675', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents are consistent across all ONOS "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1884"></a><tt class="py-lineno">1884</tt> <tt class="py-line"> <tt class="py-string">"nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1885"></a><tt class="py-lineno">1885</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1886"></a><tt class="py-lineno">1886</tt> <tt class="py-line"> <tt class="py-name">consistentIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1887"></a><tt class="py-lineno">1887</tt> <tt class="py-line"> </tt>
-<a name="L1888"></a><tt class="py-lineno">1888</tt> <tt class="py-line"> <tt class="py-comment"># Try to make it easy to figure out what is happening</tt> </tt>
-<a name="L1889"></a><tt class="py-lineno">1889</tt> <tt class="py-line"> <tt class="py-comment">#</tt> </tt>
-<a name="L1890"></a><tt class="py-lineno">1890</tt> <tt class="py-line"> <tt class="py-comment"># Intent ONOS1 ONOS2 ...</tt> </tt>
-<a name="L1891"></a><tt class="py-lineno">1891</tt> <tt class="py-line"> <tt class="py-comment"># 0x01 INSTALLED INSTALLING</tt> </tt>
-<a name="L1892"></a><tt class="py-lineno">1892</tt> <tt class="py-line"> <tt class="py-comment"># ... ... ...</tt> </tt>
-<a name="L1893"></a><tt class="py-lineno">1893</tt> <tt class="py-line"> <tt class="py-comment"># ... ... ...</tt> </tt>
-<a name="L1894"></a><tt class="py-lineno">1894</tt> <tt class="py-line"> <tt class="py-name">title</tt> <tt class="py-op">=</tt> <tt class="py-string">" ID"</tt> </tt>
-<a name="L1895"></a><tt class="py-lineno">1895</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">n</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1896"></a><tt class="py-lineno">1896</tt> <tt class="py-line"> <tt class="py-name">title</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">10</tt> <tt class="py-op">+</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1897"></a><tt class="py-lineno">1897</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-676" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-676', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">title</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1898"></a><tt class="py-lineno">1898</tt> <tt class="py-line"> <tt class="py-comment"># get all intent keys in the cluster</tt> </tt>
-<a name="L1899"></a><tt class="py-lineno">1899</tt> <tt class="py-line"> <tt class="py-name">keys</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1900"></a><tt class="py-lineno">1900</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">nodeStr</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1901"></a><tt class="py-lineno">1901</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1902"></a><tt class="py-lineno">1902</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-677" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-677', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">:</tt> </tt>
-<a name="L1903"></a><tt class="py-lineno">1903</tt> <tt class="py-line"> <tt class="py-name">keys</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-678" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-678', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1904"></a><tt class="py-lineno">1904</tt> <tt class="py-line"> <tt class="py-name">keys</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">keys</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1905"></a><tt class="py-lineno">1905</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">keys</tt><tt class="py-op">:</tt> </tt>
-<a name="L1906"></a><tt class="py-lineno">1906</tt> <tt class="py-line"> <tt class="py-name">row</tt> <tt class="py-op">=</tt> <tt class="py-string">"%-13s"</tt> <tt class="py-op">%</tt> <tt class="py-name">key</tt> </tt>
-<a name="L1907"></a><tt class="py-lineno">1907</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">nodeStr</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1908"></a><tt class="py-lineno">1908</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1909"></a><tt class="py-lineno">1909</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-679" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-679', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">:</tt> </tt>
-<a name="L1910"></a><tt class="py-lineno">1910</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-680" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-680', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">key</tt><tt class="py-op">:</tt> </tt>
-<a name="L1911"></a><tt class="py-lineno">1911</tt> <tt class="py-line"> <tt class="py-name">row</tt> <tt class="py-op">+=</tt> <tt class="py-string">"%-15s"</tt> <tt class="py-op">%</tt> <tt id="link-681" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-681', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1912"></a><tt class="py-lineno">1912</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-682" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-682', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">row</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1913"></a><tt class="py-lineno">1913</tt> <tt class="py-line"> <tt class="py-comment"># End table view</tt> </tt>
-<a name="L1914"></a><tt class="py-lineno">1914</tt> <tt class="py-line"> </tt>
-<a name="L1915"></a><tt class="py-lineno">1915</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1916"></a><tt class="py-lineno">1916</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1917"></a><tt class="py-lineno">1917</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentIntents</tt><tt class="py-op">,</tt> </tt>
-<a name="L1918"></a><tt class="py-lineno">1918</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents are consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1919"></a><tt class="py-lineno">1919</tt> <tt class="py-line"> <tt id="link-683" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-683', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1920"></a><tt class="py-lineno">1920</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1921"></a><tt class="py-lineno">1921</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">:</tt> <tt class="py-comment"># Iter through ONOS nodes</tt> </tt>
-<a name="L1922"></a><tt class="py-lineno">1922</tt> <tt class="py-line"> <tt class="py-name">nodeStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1923"></a><tt class="py-lineno">1923</tt> <tt class="py-line"> <tt class="py-comment"># Iter through intents of a node</tt> </tt>
-<a name="L1924"></a><tt class="py-lineno">1924</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1925"></a><tt class="py-lineno">1925</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-684" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-684', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1926"></a><tt class="py-lineno">1926</tt> <tt class="py-line"> <tt class="py-name">nodeStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-685" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-685', 'intent', 'link-170');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1927"></a><tt class="py-lineno">1927</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1928"></a><tt class="py-lineno">1928</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-686" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-686', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error in parsing intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1929"></a><tt class="py-lineno">1929</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-687" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-687', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-688" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-688', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1930"></a><tt class="py-lineno">1930</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStates</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1931"></a><tt class="py-lineno">1931</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">nodeStates</tt><tt class="py-op">.</tt><tt class="py-name">count</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStates</tt> <tt class="py-op">)</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1932"></a><tt class="py-lineno">1932</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-689" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-689', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">dict</tt><tt class="py-op">(</tt> <tt class="py-name">out</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1933"></a><tt class="py-lineno">1933</tt> <tt class="py-line"> </tt>
-<a name="L1934"></a><tt class="py-lineno">1934</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1935"></a><tt class="py-lineno">1935</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1936"></a><tt class="py-lineno">1936</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-690" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-690', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1937"></a><tt class="py-lineno">1937</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-691" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-691', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> </tt>
-<a name="L1938"></a><tt class="py-lineno">1938</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1939"></a><tt class="py-lineno">1939</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1940"></a><tt class="py-lineno">1940</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1941"></a><tt class="py-lineno">1941</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1942"></a><tt class="py-lineno">1942</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">intentsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1943"></a><tt class="py-lineno">1943</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1944"></a><tt class="py-lineno">1944</tt> <tt class="py-line"> </tt>
-<a name="L1945"></a><tt class="py-lineno">1945</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Store has no durability, so intents are lost across system</tt> </tt>
-<a name="L1946"></a><tt class="py-lineno">1946</tt> <tt class="py-line"> <tt class="py-comment"># restarts</tt> </tt>
-<a name="L1947"></a><tt class="py-lineno">1947</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-692" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-692', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Compare current intents with intents before the failure"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1948"></a><tt class="py-lineno">1948</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: this requires case 5 to pass for intentState to be set.</tt> </tt>
-<a name="L1949"></a><tt class="py-lineno">1949</tt> <tt class="py-line"> <tt class="py-comment"># maybe we should stop the test if that fails?</tt> </tt>
-<a name="L1950"></a><tt class="py-lineno">1950</tt> <tt class="py-line"> <tt class="py-name">sameIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1951"></a><tt class="py-lineno">1951</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentState</tt> <tt class="py-keyword">and</tt> <tt class="py-name">intentState</tt> <tt class="py-op">==</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1952"></a><tt class="py-lineno">1952</tt> <tt class="py-line"> <tt class="py-name">sameIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1953"></a><tt class="py-lineno">1953</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-693" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-693', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents are consistent with before failure"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1954"></a><tt class="py-lineno">1954</tt> <tt class="py-line"> <tt class="py-comment"># TODO: possibly the states have changed? we may need to figure out</tt> </tt>
-<a name="L1955"></a><tt class="py-lineno">1955</tt> <tt class="py-line"> <tt class="py-comment"># what the acceptable states are</tt> </tt>
-<a name="L1956"></a><tt class="py-lineno">1956</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentState</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1957"></a><tt class="py-lineno">1957</tt> <tt class="py-line"> <tt class="py-name">sameIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1958"></a><tt class="py-lineno">1958</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1959"></a><tt class="py-lineno">1959</tt> <tt class="py-line"> <tt class="py-name">before</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">intentState</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1960"></a><tt class="py-lineno">1960</tt> <tt class="py-line"> <tt class="py-name">after</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1961"></a><tt class="py-lineno">1961</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-694" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-694', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">before</tt><tt class="py-op">:</tt> </tt>
-<a name="L1962"></a><tt class="py-lineno">1962</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-695" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-695', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">after</tt><tt class="py-op">:</tt> </tt>
-<a name="L1963"></a><tt class="py-lineno">1963</tt> <tt class="py-line"> <tt class="py-name">sameIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1964"></a><tt class="py-lineno">1964</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-696" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-696', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Intent is not currently in ONOS "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1965"></a><tt class="py-lineno">1965</tt> <tt class="py-line"> <tt class="py-string">"(at least in the same form):"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1966"></a><tt class="py-lineno">1966</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-697" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-697', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt id="link-698" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-698', 'intent', 'link-170');">intent</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1967"></a><tt class="py-lineno">1967</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1968"></a><tt class="py-lineno">1968</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-699" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-699', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Exception printing intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1969"></a><tt class="py-lineno">1969</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-700" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-700', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1970"></a><tt class="py-lineno">1970</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-701" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-701', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">intentState</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1971"></a><tt class="py-lineno">1971</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">sameIntents</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1972"></a><tt class="py-lineno">1972</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1973"></a><tt class="py-lineno">1973</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-702" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-702', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS intents before: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1974"></a><tt class="py-lineno">1974</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-703" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-703', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">intentState</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1975"></a><tt class="py-lineno">1975</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1976"></a><tt class="py-lineno">1976</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1977"></a><tt class="py-lineno">1977</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-704" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-704', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Current ONOS intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1978"></a><tt class="py-lineno">1978</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-705" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-705', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1979"></a><tt class="py-lineno">1979</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1980"></a><tt class="py-lineno">1980</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1981"></a><tt class="py-lineno">1981</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1982"></a><tt class="py-lineno">1982</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-706" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-706', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Exception printing intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1983"></a><tt class="py-lineno">1983</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-707" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-707', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1984"></a><tt class="py-lineno">1984</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-708" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-708', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">intentState</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1985"></a><tt class="py-lineno">1985</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1986"></a><tt class="py-lineno">1986</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1987"></a><tt class="py-lineno">1987</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">sameIntents</tt><tt class="py-op">,</tt> </tt>
-<a name="L1988"></a><tt class="py-lineno">1988</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents are consistent with before failure"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1989"></a><tt class="py-lineno">1989</tt> <tt class="py-line"> <tt id="link-709" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-709', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"The Intents changed during failure"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1990"></a><tt class="py-lineno">1990</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">intentCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sameIntents</tt> </tt>
-<a name="L1991"></a><tt class="py-lineno">1991</tt> <tt class="py-line"> </tt>
-<a name="L1992"></a><tt class="py-lineno">1992</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-710" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-710', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the OF Table entries and compare to before "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1993"></a><tt class="py-lineno">1993</tt> <tt class="py-line"> <tt class="py-string">"component failure"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1994"></a><tt class="py-lineno">1994</tt> <tt class="py-line"> <tt class="py-name">FlowTables</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1995"></a><tt class="py-lineno">1995</tt> <tt class="py-line"> <tt class="py-name">flows2</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1996"></a><tt class="py-lineno">1996</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">28</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1997"></a><tt class="py-lineno">1997</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-711" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-711', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Checking flow table on s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1998"></a><tt class="py-lineno">1998</tt> <tt class="py-line"> <tt class="py-name">tmpFlows</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-712" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getFlowTable" class="py-name" href="#" onclick="return doclink('link-712', 'getFlowTable', 'link-483');">getFlowTable</a></tt><tt class="py-op">(</tt> <tt class="py-number">1.3</tt><tt class="py-op">,</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1999"></a><tt class="py-lineno">1999</tt> <tt class="py-line"> <tt class="py-name">flows2</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">tmpFlows</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2000"></a><tt class="py-lineno">2000</tt> <tt class="py-line"> <tt class="py-name">tempResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-713" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.flowComp()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#flowComp"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.flowComp" class="py-name" href="#" onclick="return doclink('link-713', 'flowComp', 'link-713');">flowComp</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2001"></a><tt class="py-lineno">2001</tt> <tt class="py-line"> <tt class="py-name">flow1</tt><tt class="py-op">=</tt><tt id="link-714" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-714', 'flows', 'link-405');">flows</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L2002"></a><tt class="py-lineno">2002</tt> <tt class="py-line"> <tt class="py-name">flow2</tt><tt class="py-op">=</tt><tt class="py-name">tmpFlows</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2003"></a><tt class="py-lineno">2003</tt> <tt class="py-line"> <tt class="py-name">FlowTables</tt> <tt class="py-op">=</tt> <tt class="py-name">FlowTables</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tempResult</tt> </tt>
-<a name="L2004"></a><tt class="py-lineno">2004</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">FlowTables</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2005"></a><tt class="py-lineno">2005</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-715" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-715', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Differences in flow table for switch: s"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2006"></a><tt class="py-lineno">2006</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2007"></a><tt class="py-lineno">2007</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2008"></a><tt class="py-lineno">2008</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2009"></a><tt class="py-lineno">2009</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">FlowTables</tt><tt class="py-op">,</tt> </tt>
-<a name="L2010"></a><tt class="py-lineno">2010</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No changes were found in the flow tables"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2011"></a><tt class="py-lineno">2011</tt> <tt class="py-line"> <tt id="link-716" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-716', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Changes were found in the flow tables"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2012"></a><tt class="py-lineno">2012</tt> <tt class="py-line"> </tt>
-<a name="L2013"></a><tt class="py-lineno">2013</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-717" class="py-name" targets="Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLongKill()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingLongKill"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLongKill" class="py-name" href="#" onclick="return doclink('link-717', 'pingLongKill', 'link-717');">pingLongKill</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2014"></a><tt class="py-lineno">2014</tt> <tt class="py-line"> <tt class="py-string">'''</tt> </tt>
-<a name="L2015"></a><tt class="py-lineno">2015</tt> <tt class="py-line"><tt class="py-string"> main.step( "Check the continuous pings to ensure that no packets " +</tt> </tt>
-<a name="L2016"></a><tt class="py-lineno">2016</tt> <tt class="py-line"><tt class="py-string"> "were dropped during component failure" )</tt> </tt>
-<a name="L2017"></a><tt class="py-lineno">2017</tt> <tt class="py-line"><tt class="py-string"> main.Mininet2.pingKill( main.params[ 'TESTONUSER' ],</tt> </tt>
-<a name="L2018"></a><tt class="py-lineno">2018</tt> <tt class="py-line"><tt class="py-string"> main.params[ 'TESTONIP' ] )</tt> </tt>
-<a name="L2019"></a><tt class="py-lineno">2019</tt> <tt class="py-line"><tt class="py-string"> LossInPings = main.FALSE</tt> </tt>
-<a name="L2020"></a><tt class="py-lineno">2020</tt> <tt class="py-line"><tt class="py-string"> # NOTE: checkForLoss returns main.FALSE with 0% packet loss</tt> </tt>
-<a name="L2021"></a><tt class="py-lineno">2021</tt> <tt class="py-line"><tt class="py-string"> for i in range( 8, 18 ):</tt> </tt>
-<a name="L2022"></a><tt class="py-lineno">2022</tt> <tt class="py-line"><tt class="py-string"> main.log.info(</tt> </tt>
-<a name="L2023"></a><tt class="py-lineno">2023</tt> <tt class="py-line"><tt class="py-string"> "Checking for a loss in pings along flow from s" +</tt> </tt>
-<a name="L2024"></a><tt class="py-lineno">2024</tt> <tt class="py-line"><tt class="py-string"> str( i ) )</tt> </tt>
-<a name="L2025"></a><tt class="py-lineno">2025</tt> <tt class="py-line"><tt class="py-string"> LossInPings = main.Mininet2.checkForLoss(</tt> </tt>
-<a name="L2026"></a><tt class="py-lineno">2026</tt> <tt class="py-line"><tt class="py-string"> "/tmp/ping.h" +</tt> </tt>
-<a name="L2027"></a><tt class="py-lineno">2027</tt> <tt class="py-line"><tt class="py-string"> str( i ) ) or LossInPings</tt> </tt>
-<a name="L2028"></a><tt class="py-lineno">2028</tt> <tt class="py-line"><tt class="py-string"> if LossInPings == main.TRUE:</tt> </tt>
-<a name="L2029"></a><tt class="py-lineno">2029</tt> <tt class="py-line"><tt class="py-string"> main.log.info( "Loss in ping detected" )</tt> </tt>
-<a name="L2030"></a><tt class="py-lineno">2030</tt> <tt class="py-line"><tt class="py-string"> elif LossInPings == main.ERROR:</tt> </tt>
-<a name="L2031"></a><tt class="py-lineno">2031</tt> <tt class="py-line"><tt class="py-string"> main.log.info( "There are multiple mininet process running" )</tt> </tt>
-<a name="L2032"></a><tt class="py-lineno">2032</tt> <tt class="py-line"><tt class="py-string"> elif LossInPings == main.FALSE:</tt> </tt>
-<a name="L2033"></a><tt class="py-lineno">2033</tt> <tt class="py-line"><tt class="py-string"> main.log.info( "No Loss in the pings" )</tt> </tt>
-<a name="L2034"></a><tt class="py-lineno">2034</tt> <tt class="py-line"><tt class="py-string"> main.log.info( "No loss of dataplane connectivity" )</tt> </tt>
-<a name="L2035"></a><tt class="py-lineno">2035</tt> <tt class="py-line"><tt class="py-string"> utilities.assert_equals(</tt> </tt>
-<a name="L2036"></a><tt class="py-lineno">2036</tt> <tt class="py-line"><tt class="py-string"> expect=main.FALSE,</tt> </tt>
-<a name="L2037"></a><tt class="py-lineno">2037</tt> <tt class="py-line"><tt class="py-string"> actual=LossInPings,</tt> </tt>
-<a name="L2038"></a><tt class="py-lineno">2038</tt> <tt class="py-line"><tt class="py-string"> onpass="No Loss of connectivity",</tt> </tt>
-<a name="L2039"></a><tt class="py-lineno">2039</tt> <tt class="py-line"><tt class="py-string"> onfail="Loss of dataplane connectivity detected" )</tt> </tt>
-<a name="L2040"></a><tt class="py-lineno">2040</tt> <tt class="py-line"><tt class="py-string"> '''</tt> </tt>
-<a name="L2041"></a><tt class="py-lineno">2041</tt> <tt class="py-line"> </tt>
-<a name="L2042"></a><tt class="py-lineno">2042</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-718" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-718', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Leadership Election is still functional"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2043"></a><tt class="py-lineno">2043</tt> <tt class="py-line"> <tt class="py-comment"># Test of LeadershipElection</tt> </tt>
-<a name="L2044"></a><tt class="py-lineno">2044</tt> <tt class="py-line"> <tt class="py-name">leaderList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2045"></a><tt class="py-lineno">2045</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: make sure this matches nodes that were restarted</tt> </tt>
-<a name="L2046"></a><tt class="py-lineno">2046</tt> <tt class="py-line"> <tt class="py-name">restarted</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-719" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-719', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-720" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-720', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L2047"></a><tt class="py-lineno">2047</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-721" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-721', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2048"></a><tt class="py-lineno">2048</tt> <tt class="py-line"> </tt>
-<a name="L2049"></a><tt class="py-lineno">2049</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2050"></a><tt class="py-lineno">2050</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-722" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-722', 'cli', 'link-223');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2051"></a><tt class="py-lineno">2051</tt> <tt class="py-line"> <tt class="py-name">leaderN</tt> <tt class="py-op">=</tt> <tt id="link-723" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-723', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt id="link-724" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestLeader"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-724', 'electionTestLeader', 'link-724');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2052"></a><tt class="py-lineno">2052</tt> <tt class="py-line"> <tt class="py-name">leaderList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2053"></a><tt class="py-lineno">2053</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2054"></a><tt class="py-lineno">2054</tt> <tt class="py-line"> <tt class="py-comment"># error in response</tt> </tt>
-<a name="L2055"></a><tt class="py-lineno">2055</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-725" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-725', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-726" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-726', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Something is wrong with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2056"></a><tt class="py-lineno">2056</tt> <tt class="py-line"> <tt class="py-string">"electionTestLeader function, check the"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2057"></a><tt class="py-lineno">2057</tt> <tt class="py-line"> <tt class="py-string">" error logs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2058"></a><tt class="py-lineno">2058</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2059"></a><tt class="py-lineno">2059</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leaderN</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L2060"></a><tt class="py-lineno">2060</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-727" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-727', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-728" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-728', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt id="link-729" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-729', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2061"></a><tt class="py-lineno">2061</tt> <tt class="py-line"> <tt class="py-string">" shows no leader for the election-app was"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2062"></a><tt class="py-lineno">2062</tt> <tt class="py-line"> <tt class="py-string">" elected after the old one died"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2063"></a><tt class="py-lineno">2063</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2064"></a><tt class="py-lineno">2064</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leaderN</tt> <tt class="py-keyword">in</tt> <tt class="py-name">restarted</tt><tt class="py-op">:</tt> </tt>
-<a name="L2065"></a><tt class="py-lineno">2065</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-730" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-730', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-731" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-731', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt id="link-732" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-732', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" shows "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2066"></a><tt class="py-lineno">2066</tt> <tt class="py-line"> <tt class="py-string">" as leader for the election-app, but it "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2067"></a><tt class="py-lineno">2067</tt> <tt class="py-line"> <tt class="py-string">"was restarted"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2068"></a><tt class="py-lineno">2068</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2069"></a><tt class="py-lineno">2069</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">leaderList</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2070"></a><tt class="py-lineno">2070</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2071"></a><tt class="py-lineno">2071</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-733" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-733', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-734" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-734', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2072"></a><tt class="py-lineno">2072</tt> <tt class="py-line"> <tt class="py-string">"Inconsistent view of leader for the election test app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2073"></a><tt class="py-lineno">2073</tt> <tt class="py-line"> <tt class="py-comment"># TODO: print the list</tt> </tt>
-<a name="L2074"></a><tt class="py-lineno">2074</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2075"></a><tt class="py-lineno">2075</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2076"></a><tt class="py-lineno">2076</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">leaderResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2077"></a><tt class="py-lineno">2077</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Leadership election passed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2078"></a><tt class="py-lineno">2078</tt> <tt class="py-line"> <tt id="link-735" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-735', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something went wrong with Leadership election"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2079"></a><tt class="py-lineno">2079</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE8"></a><div id="HAminorityRestart.CASE8-def"><a name="L2080"></a><tt class="py-lineno">2080</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE8-toggle" onclick="return toggle('HAminorityRestart.CASE8');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE8">CASE8</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE8-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE8-expanded"><a name="L2081"></a><tt class="py-lineno">2081</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2082"></a><tt class="py-lineno">2082</tt> <tt class="py-line"><tt class="py-docstring"> Compare topo</tt> </tt>
-<a name="L2083"></a><tt class="py-lineno">2083</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2084"></a><tt class="py-lineno">2084</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L2085"></a><tt class="py-lineno">2085</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2086"></a><tt class="py-lineno">2086</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2087"></a><tt class="py-lineno">2087</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2088"></a><tt class="py-lineno">2088</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2089"></a><tt class="py-lineno">2089</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2090"></a><tt class="py-lineno">2090</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-736" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-736', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2091"></a><tt class="py-lineno">2091</tt> <tt class="py-line"> </tt>
-<a name="L2092"></a><tt class="py-lineno">2092</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-737" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-737', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Compare ONOS Topology view to Mininet topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2093"></a><tt class="py-lineno">2093</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Compare topology objects between Mininet"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2094"></a><tt class="py-lineno">2094</tt> <tt class="py-line"> <tt class="py-string">" and ONOS"</tt> </tt>
-<a name="L2095"></a><tt class="py-lineno">2095</tt> <tt class="py-line"> </tt>
-<a name="L2096"></a><tt class="py-lineno">2096</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-738" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-738', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Comparing ONOS topology to MN"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2097"></a><tt class="py-lineno">2097</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2098"></a><tt class="py-lineno">2098</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2099"></a><tt class="py-lineno">2099</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2100"></a><tt class="py-lineno">2100</tt> <tt class="py-line"> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2101"></a><tt class="py-lineno">2101</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2102"></a><tt class="py-lineno">2102</tt> <tt class="py-line"> <tt class="py-name">elapsed</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2103"></a><tt class="py-lineno">2103</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2104"></a><tt class="py-lineno">2104</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-739" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-739', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Collecting topology information from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2105"></a><tt class="py-lineno">2105</tt> <tt class="py-line"> <tt class="py-name">startTime</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2106"></a><tt class="py-lineno">2106</tt> <tt class="py-line"> <tt class="py-comment"># Give time for Gossip to work</tt> </tt>
-<a name="L2107"></a><tt class="py-lineno">2107</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">topoResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> <tt class="py-keyword">and</tt> <tt class="py-name">elapsed</tt> <tt class="py-op"><</tt> <tt class="py-number">60</tt><tt class="py-op">:</tt> </tt>
-<a name="L2108"></a><tt class="py-lineno">2108</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2109"></a><tt class="py-lineno">2109</tt> <tt class="py-line"> <tt class="py-name">cliStart</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2110"></a><tt class="py-lineno">2110</tt> <tt class="py-line"> <tt id="link-740" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-740', 'devices', 'link-114');">devices</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2111"></a><tt class="py-lineno">2111</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2112"></a><tt class="py-lineno">2112</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2113"></a><tt class="py-lineno">2113</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-741" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-741', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-742" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-742', 'devices', 'link-114');">devices</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2114"></a><tt class="py-lineno">2114</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"devices-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2115"></a><tt class="py-lineno">2115</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2116"></a><tt class="py-lineno">2116</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2117"></a><tt class="py-lineno">2117</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2118"></a><tt class="py-lineno">2118</tt> <tt class="py-line"> </tt>
-<a name="L2119"></a><tt class="py-lineno">2119</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2120"></a><tt class="py-lineno">2120</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2121"></a><tt class="py-lineno">2121</tt> <tt class="py-line"> <tt id="link-743" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-743', 'devices', 'link-114');">devices</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2122"></a><tt class="py-lineno">2122</tt> <tt class="py-line"> <tt id="link-744" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-744', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2123"></a><tt class="py-lineno">2123</tt> <tt class="py-line"> <tt class="py-name">ipResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2124"></a><tt class="py-lineno">2124</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2125"></a><tt class="py-lineno">2125</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2126"></a><tt class="py-lineno">2126</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-745" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-745', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-746" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-746', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2127"></a><tt class="py-lineno">2127</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"hosts-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2128"></a><tt class="py-lineno">2128</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2129"></a><tt class="py-lineno">2129</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2130"></a><tt class="py-lineno">2130</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2131"></a><tt class="py-lineno">2131</tt> <tt class="py-line"> </tt>
-<a name="L2132"></a><tt class="py-lineno">2132</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2133"></a><tt class="py-lineno">2133</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2134"></a><tt class="py-lineno">2134</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2135"></a><tt class="py-lineno">2135</tt> <tt class="py-line"> <tt id="link-747" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-747', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2136"></a><tt class="py-lineno">2136</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2137"></a><tt class="py-lineno">2137</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-748" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-748', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing hosts results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2138"></a><tt class="py-lineno">2138</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-749" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-749', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-750" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-750', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2139"></a><tt class="py-lineno">2139</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-751" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-751', 'controller', 'link-521');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-752" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-752', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2140"></a><tt class="py-lineno">2140</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-753" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-753', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2141"></a><tt class="py-lineno">2141</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt id="link-754" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-754', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-755" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-755', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2142"></a><tt class="py-lineno">2142</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">host</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'ipAddresses'</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2143"></a><tt class="py-lineno">2143</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-756" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-756', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-757" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-757', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2144"></a><tt class="py-lineno">2144</tt> <tt class="py-line"> <tt class="py-string">"DEBUG:Error with host ipAddresses on controller"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2145"></a><tt class="py-lineno">2145</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2146"></a><tt class="py-lineno">2146</tt> <tt class="py-line"> <tt class="py-name">ipResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2147"></a><tt class="py-lineno">2147</tt> <tt class="py-line"> <tt id="link-758" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-758', 'ports', 'link-508');">ports</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2148"></a><tt class="py-lineno">2148</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2149"></a><tt class="py-lineno">2149</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2150"></a><tt class="py-lineno">2150</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-759" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-759', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-760" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-760', 'ports', 'link-508');">ports</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2151"></a><tt class="py-lineno">2151</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"ports-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2152"></a><tt class="py-lineno">2152</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2153"></a><tt class="py-lineno">2153</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2154"></a><tt class="py-lineno">2154</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2155"></a><tt class="py-lineno">2155</tt> <tt class="py-line"> </tt>
-<a name="L2156"></a><tt class="py-lineno">2156</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2157"></a><tt class="py-lineno">2157</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2158"></a><tt class="py-lineno">2158</tt> <tt class="py-line"> <tt id="link-761" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-761', 'ports', 'link-508');">ports</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2159"></a><tt class="py-lineno">2159</tt> <tt class="py-line"> <tt id="link-762" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-762', 'links', 'link-512');">links</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2160"></a><tt class="py-lineno">2160</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2161"></a><tt class="py-lineno">2161</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2162"></a><tt class="py-lineno">2162</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-763" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-763', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-764" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-764', 'links', 'link-512');">links</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2163"></a><tt class="py-lineno">2163</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"links-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2164"></a><tt class="py-lineno">2164</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2165"></a><tt class="py-lineno">2165</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2166"></a><tt class="py-lineno">2166</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2167"></a><tt class="py-lineno">2167</tt> <tt class="py-line"> </tt>
-<a name="L2168"></a><tt class="py-lineno">2168</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2169"></a><tt class="py-lineno">2169</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2170"></a><tt class="py-lineno">2170</tt> <tt class="py-line"> <tt id="link-765" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-765', 'links', 'link-512');">links</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2171"></a><tt class="py-lineno">2171</tt> <tt class="py-line"> <tt id="link-766" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-766', 'clusters', 'link-516');">clusters</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2172"></a><tt class="py-lineno">2172</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2173"></a><tt class="py-lineno">2173</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2174"></a><tt class="py-lineno">2174</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-767" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-767', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-768" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-768', 'clusters', 'link-516');">clusters</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2175"></a><tt class="py-lineno">2175</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"clusters-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2176"></a><tt class="py-lineno">2176</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2177"></a><tt class="py-lineno">2177</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2178"></a><tt class="py-lineno">2178</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2179"></a><tt class="py-lineno">2179</tt> <tt class="py-line"> </tt>
-<a name="L2180"></a><tt class="py-lineno">2180</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2181"></a><tt class="py-lineno">2181</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2182"></a><tt class="py-lineno">2182</tt> <tt class="py-line"> <tt id="link-769" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-769', 'clusters', 'link-516');">clusters</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2183"></a><tt class="py-lineno">2183</tt> <tt class="py-line"> </tt>
-<a name="L2184"></a><tt class="py-lineno">2184</tt> <tt class="py-line"> <tt class="py-name">elapsed</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">startTime</tt> </tt>
-<a name="L2185"></a><tt class="py-lineno">2185</tt> <tt class="py-line"> <tt class="py-name">cliTime</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">cliStart</tt> </tt>
-<a name="L2186"></a><tt class="py-lineno">2186</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Elapsed time: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">elapsed</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2187"></a><tt class="py-lineno">2187</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"CLI time: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">cliTime</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2188"></a><tt class="py-lineno">2188</tt> <tt class="py-line"> </tt>
-<a name="L2189"></a><tt class="py-lineno">2189</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-770" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitches" class="py-name" href="#" onclick="return doclink('link-770', 'getSwitches', 'link-572');">getSwitches</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2190"></a><tt class="py-lineno">2190</tt> <tt class="py-line"> <tt class="py-name">mnLinks</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-771" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getLinks" class="py-name" href="#" onclick="return doclink('link-771', 'getLinks', 'link-573');">getLinks</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2191"></a><tt class="py-lineno">2191</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-772" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts" class="py-name" href="#" onclick="return doclink('link-772', 'getHosts', 'link-574');">getHosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2192"></a><tt class="py-lineno">2192</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-773" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-773', 'controller', 'link-521');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2193"></a><tt class="py-lineno">2193</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-774" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-774', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2194"></a><tt class="py-lineno">2194</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-775" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-775', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-776" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-776', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt id="link-777" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-777', 'ports', 'link-508');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-778" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-778', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L2195"></a><tt class="py-lineno">2195</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-779" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-779', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-780" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-780', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L2196"></a><tt class="py-lineno">2196</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-781" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-781', 'ports', 'link-508');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-782" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-782', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2197"></a><tt class="py-lineno">2197</tt> <tt class="py-line"> </tt>
-<a name="L2198"></a><tt class="py-lineno">2198</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-783" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareSwitches" class="py-name" href="#" onclick="return doclink('link-783', 'compareSwitches', 'link-585');">compareSwitches</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2199"></a><tt class="py-lineno">2199</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> </tt>
-<a name="L2200"></a><tt class="py-lineno">2200</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-784" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-784', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-785" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-785', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2201"></a><tt class="py-lineno">2201</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-786" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-786', 'ports', 'link-508');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-787" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-787', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2202"></a><tt class="py-lineno">2202</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2203"></a><tt class="py-lineno">2203</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2204"></a><tt class="py-lineno">2204</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2205"></a><tt class="py-lineno">2205</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentDevicesResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2206"></a><tt class="py-lineno">2206</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2207"></a><tt class="py-lineno">2207</tt> <tt class="py-line"> <tt class="py-string">" Switches view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2208"></a><tt class="py-lineno">2208</tt> <tt class="py-line"> <tt id="link-788" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-788', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2209"></a><tt class="py-lineno">2209</tt> <tt class="py-line"> <tt class="py-string">" Switches view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2210"></a><tt class="py-lineno">2210</tt> <tt class="py-line"> </tt>
-<a name="L2211"></a><tt class="py-lineno">2211</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-789" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-789', 'links', 'link-512');">links</a></tt><tt class="py-op">[</tt> <tt id="link-790" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-790', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-791" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-791', 'links', 'link-512');">links</a></tt><tt class="py-op">[</tt> <tt id="link-792" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-792', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2212"></a><tt class="py-lineno">2212</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-793" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareLinks" class="py-name" href="#" onclick="return doclink('link-793', 'compareLinks', 'link-595');">compareLinks</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2213"></a><tt class="py-lineno">2213</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> <tt class="py-name">mnLinks</tt><tt class="py-op">,</tt> </tt>
-<a name="L2214"></a><tt class="py-lineno">2214</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-794" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-794', 'links', 'link-512');">links</a></tt><tt class="py-op">[</tt> <tt id="link-795" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-795', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2215"></a><tt class="py-lineno">2215</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2216"></a><tt class="py-lineno">2216</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2217"></a><tt class="py-lineno">2217</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2218"></a><tt class="py-lineno">2218</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentLinksResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2219"></a><tt class="py-lineno">2219</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2220"></a><tt class="py-lineno">2220</tt> <tt class="py-line"> <tt class="py-string">" links view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2221"></a><tt class="py-lineno">2221</tt> <tt class="py-line"> <tt id="link-796" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-796', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2222"></a><tt class="py-lineno">2222</tt> <tt class="py-line"> <tt class="py-string">" links view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2223"></a><tt class="py-lineno">2223</tt> <tt class="py-line"> </tt>
-<a name="L2224"></a><tt class="py-lineno">2224</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-797" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-797', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-798" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-798', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-799" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-799', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-800" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-800', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2225"></a><tt class="py-lineno">2225</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-801" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareHosts" class="py-name" href="#" onclick="return doclink('link-801', 'compareHosts', 'link-603');">compareHosts</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2226"></a><tt class="py-lineno">2226</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt><tt class="py-op">,</tt> </tt>
-<a name="L2227"></a><tt class="py-lineno">2227</tt> <tt class="py-line"> <tt id="link-802" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-802', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-803" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-803', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2228"></a><tt class="py-lineno">2228</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2229"></a><tt class="py-lineno">2229</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2230"></a><tt class="py-lineno">2230</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2231"></a><tt class="py-lineno">2231</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentHostsResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2232"></a><tt class="py-lineno">2232</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2233"></a><tt class="py-lineno">2233</tt> <tt class="py-line"> <tt class="py-string">" hosts exist in Mininet"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2234"></a><tt class="py-lineno">2234</tt> <tt class="py-line"> <tt id="link-804" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-804', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2235"></a><tt class="py-lineno">2235</tt> <tt class="py-line"> <tt class="py-string">" hosts don't match Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2236"></a><tt class="py-lineno">2236</tt> <tt class="py-line"> <tt class="py-comment"># CHECKING HOST ATTACHMENT POINTS</tt> </tt>
-<a name="L2237"></a><tt class="py-lineno">2237</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2238"></a><tt class="py-lineno">2238</tt> <tt class="py-line"> <tt class="py-name">zeroHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2239"></a><tt class="py-lineno">2239</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: topo-HA/obelisk specific mappings:</tt> </tt>
-<a name="L2240"></a><tt class="py-lineno">2240</tt> <tt class="py-line"> <tt class="py-comment"># key is mac and value is dpid</tt> </tt>
-<a name="L2241"></a><tt class="py-lineno">2241</tt> <tt class="py-line"> <tt class="py-name">mappings</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L2242"></a><tt class="py-lineno">2242</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># hosts 1 through 28</tt> </tt>
-<a name="L2243"></a><tt class="py-lineno">2243</tt> <tt class="py-line"> <tt class="py-comment"># set up correct variables:</tt> </tt>
-<a name="L2244"></a><tt class="py-lineno">2244</tt> <tt class="py-line"> <tt class="py-name">macId</tt> <tt class="py-op">=</tt> <tt class="py-string">"00:"</tt> <tt class="py-op">*</tt> <tt class="py-number">5</tt> <tt class="py-op">+</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"0x"</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L2245"></a><tt class="py-lineno">2245</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2246"></a><tt class="py-lineno">2246</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"1000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2247"></a><tt class="py-lineno">2247</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L2248"></a><tt class="py-lineno">2248</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"2000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2249"></a><tt class="py-lineno">2249</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L2250"></a><tt class="py-lineno">2250</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"3000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2251"></a><tt class="py-lineno">2251</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L2252"></a><tt class="py-lineno">2252</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"3004"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2253"></a><tt class="py-lineno">2253</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">5</tt><tt class="py-op">:</tt> </tt>
-<a name="L2254"></a><tt class="py-lineno">2254</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"5000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2255"></a><tt class="py-lineno">2255</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">6</tt><tt class="py-op">:</tt> </tt>
-<a name="L2256"></a><tt class="py-lineno">2256</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"6000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2257"></a><tt class="py-lineno">2257</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">7</tt><tt class="py-op">:</tt> </tt>
-<a name="L2258"></a><tt class="py-lineno">2258</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"6007"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2259"></a><tt class="py-lineno">2259</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">8</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-number">17</tt><tt class="py-op">:</tt> </tt>
-<a name="L2260"></a><tt class="py-lineno">2260</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'3'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2261"></a><tt class="py-lineno">2261</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">dpid</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2262"></a><tt class="py-lineno">2262</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">18</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-number">27</tt><tt class="py-op">:</tt> </tt>
-<a name="L2263"></a><tt class="py-lineno">2263</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'6'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2264"></a><tt class="py-lineno">2264</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">dpid</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2265"></a><tt class="py-lineno">2265</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">28</tt><tt class="py-op">:</tt> </tt>
-<a name="L2266"></a><tt class="py-lineno">2266</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"2800"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2267"></a><tt class="py-lineno">2267</tt> <tt class="py-line"> <tt class="py-name">mappings</tt><tt class="py-op">[</tt> <tt class="py-name">macId</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceId</tt> </tt>
-<a name="L2268"></a><tt class="py-lineno">2268</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-805" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-805', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-806" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-806', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-807" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-807', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-808" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-808', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2269"></a><tt class="py-lineno">2269</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-809" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-809', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-810" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-810', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2270"></a><tt class="py-lineno">2270</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-811" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-811', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"There are no hosts discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2271"></a><tt class="py-lineno">2271</tt> <tt class="py-line"> <tt class="py-name">zeroHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2272"></a><tt class="py-lineno">2272</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2273"></a><tt class="py-lineno">2273</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt id="link-812" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-812', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-813" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-813', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2274"></a><tt class="py-lineno">2274</tt> <tt class="py-line"> <tt class="py-name">mac</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2275"></a><tt class="py-lineno">2275</tt> <tt class="py-line"> <tt id="link-814" class="py-name" targets="Variable TestON.bin.cli.location=TestON.bin.cli-module.html#location,Variable TestON.core.teston.location=TestON.core.teston-module.html#location"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-814', 'location', 'link-814');">location</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2276"></a><tt class="py-lineno">2276</tt> <tt class="py-line"> <tt class="py-name">device</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2277"></a><tt class="py-lineno">2277</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2278"></a><tt class="py-lineno">2278</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2279"></a><tt class="py-lineno">2279</tt> <tt class="py-line"> <tt class="py-name">mac</tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'mac'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2280"></a><tt class="py-lineno">2280</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">mac</tt><tt class="py-op">,</tt> <tt class="py-string">"mac field could not be found for this host object"</tt> </tt>
-<a name="L2281"></a><tt class="py-lineno">2281</tt> <tt class="py-line"> </tt>
-<a name="L2282"></a><tt class="py-lineno">2282</tt> <tt class="py-line"> <tt id="link-815" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-815', 'location', 'link-814');">location</a></tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'location'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2283"></a><tt class="py-lineno">2283</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt id="link-816" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-816', 'location', 'link-814');">location</a></tt><tt class="py-op">,</tt> <tt class="py-string">"location field could not be found for this host object"</tt> </tt>
-<a name="L2284"></a><tt class="py-lineno">2284</tt> <tt class="py-line"> </tt>
-<a name="L2285"></a><tt class="py-lineno">2285</tt> <tt class="py-line"> <tt class="py-comment"># Trim the protocol identifier off deviceId</tt> </tt>
-<a name="L2286"></a><tt class="py-lineno">2286</tt> <tt class="py-line"> <tt class="py-name">device</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-817" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-817', 'location', 'link-814');">location</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'elementId'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">':'</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L2287"></a><tt class="py-lineno">2287</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">device</tt><tt class="py-op">,</tt> <tt class="py-string">"elementId field could not be found for this host location object"</tt> </tt>
-<a name="L2288"></a><tt class="py-lineno">2288</tt> <tt class="py-line"> </tt>
-<a name="L2289"></a><tt class="py-lineno">2289</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt id="link-818" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-818', 'location', 'link-814');">location</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'port'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2290"></a><tt class="py-lineno">2290</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-string">"port field could not be found for this host location object"</tt> </tt>
-<a name="L2291"></a><tt class="py-lineno">2291</tt> <tt class="py-line"> </tt>
-<a name="L2292"></a><tt class="py-lineno">2292</tt> <tt class="py-line"> <tt class="py-comment"># Now check if this matches where they should be</tt> </tt>
-<a name="L2293"></a><tt class="py-lineno">2293</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">mac</tt> <tt class="py-keyword">and</tt> <tt class="py-name">device</tt> <tt class="py-keyword">and</tt> <tt class="py-name">port</tt><tt class="py-op">:</tt> </tt>
-<a name="L2294"></a><tt class="py-lineno">2294</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-string">"1"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2295"></a><tt class="py-lineno">2295</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-819" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-819', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-820" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-820', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"The attachment port is incorrect for "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2296"></a><tt class="py-lineno">2296</tt> <tt class="py-line"> <tt class="py-string">"host "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2297"></a><tt class="py-lineno">2297</tt> <tt class="py-line"> <tt class="py-string">". Expected: 1 Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2298"></a><tt class="py-lineno">2298</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2299"></a><tt class="py-lineno">2299</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">device</tt> <tt class="py-op">!=</tt> <tt class="py-name">mappings</tt><tt class="py-op">[</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2300"></a><tt class="py-lineno">2300</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-821" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-821', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-822" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-822', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"The attachment device is incorrect for "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2301"></a><tt class="py-lineno">2301</tt> <tt class="py-line"> <tt class="py-string">"host "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2302"></a><tt class="py-lineno">2302</tt> <tt class="py-line"> <tt class="py-string">". Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">mappings</tt><tt class="py-op">[</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2303"></a><tt class="py-lineno">2303</tt> <tt class="py-line"> <tt class="py-string">" Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">device</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2304"></a><tt class="py-lineno">2304</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2305"></a><tt class="py-lineno">2305</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2306"></a><tt class="py-lineno">2306</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2307"></a><tt class="py-lineno">2307</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2308"></a><tt class="py-lineno">2308</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-823" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-823', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Json object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2309"></a><tt class="py-lineno">2309</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-824" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-824', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-825" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-825', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2310"></a><tt class="py-lineno">2310</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2311"></a><tt class="py-lineno">2311</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2312"></a><tt class="py-lineno">2312</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-826" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-826', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-827" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-827', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"No hosts json output or \"Error\""</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2313"></a><tt class="py-lineno">2313</tt> <tt class="py-line"> <tt class="py-string">" in output. hosts = "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2314"></a><tt class="py-lineno">2314</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-828" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-828', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-829" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-829', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2315"></a><tt class="py-lineno">2315</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">zeroHosts</tt> <tt class="py-keyword">is</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L2316"></a><tt class="py-lineno">2316</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2317"></a><tt class="py-lineno">2317</tt> <tt class="py-line"> </tt>
-<a name="L2318"></a><tt class="py-lineno">2318</tt> <tt class="py-line"> <tt class="py-comment"># END CHECKING HOST ATTACHMENT POINTS</tt> </tt>
-<a name="L2319"></a><tt class="py-lineno">2319</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">devicesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentDevicesResult</tt> </tt>
-<a name="L2320"></a><tt class="py-lineno">2320</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">linksResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentLinksResult</tt> </tt>
-<a name="L2321"></a><tt class="py-lineno">2321</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentHostsResult</tt> </tt>
-<a name="L2322"></a><tt class="py-lineno">2322</tt> <tt class="py-line"> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L2323"></a><tt class="py-lineno">2323</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> </tt>
-<a name="L2324"></a><tt class="py-lineno">2324</tt> <tt class="py-line"> </tt>
-<a name="L2325"></a><tt class="py-lineno">2325</tt> <tt class="py-line"> <tt class="py-comment"># Compare json objects for hosts and dataplane clusters</tt> </tt>
-<a name="L2326"></a><tt class="py-lineno">2326</tt> <tt class="py-line"> </tt>
-<a name="L2327"></a><tt class="py-lineno">2327</tt> <tt class="py-line"> <tt class="py-comment"># hosts</tt> </tt>
-<a name="L2328"></a><tt class="py-lineno">2328</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-830" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-830', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Hosts view is consistent across all ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2329"></a><tt class="py-lineno">2329</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2330"></a><tt class="py-lineno">2330</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-831" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-831', 'controller', 'link-521');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-832" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-832', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2331"></a><tt class="py-lineno">2331</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-833" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-833', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2332"></a><tt class="py-lineno">2332</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-834" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-834', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-835" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-835', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2333"></a><tt class="py-lineno">2333</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-836" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-836', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-837" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-837', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt id="link-838" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-838', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2334"></a><tt class="py-lineno">2334</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L2335"></a><tt class="py-lineno">2335</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># hosts not consistent</tt> </tt>
-<a name="L2336"></a><tt class="py-lineno">2336</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-839" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-839', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-840" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-840', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"hosts from ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2337"></a><tt class="py-lineno">2337</tt> <tt class="py-line"> <tt class="py-string">" is inconsistent with ONOS1"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2338"></a><tt class="py-lineno">2338</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-841" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-841', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-842" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-842', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-843" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-843', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2339"></a><tt class="py-lineno">2339</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2340"></a><tt class="py-lineno">2340</tt> <tt class="py-line"> </tt>
-<a name="L2341"></a><tt class="py-lineno">2341</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2342"></a><tt class="py-lineno">2342</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-844" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-844', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-845" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-845', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS hosts from ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2343"></a><tt class="py-lineno">2343</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2344"></a><tt class="py-lineno">2344</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2345"></a><tt class="py-lineno">2345</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-846" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-846', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2346"></a><tt class="py-lineno">2346</tt> <tt class="py-line"> <tt class="py-string">" hosts response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2347"></a><tt class="py-lineno">2347</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-847" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-847', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-848" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-848', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2348"></a><tt class="py-lineno">2348</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2349"></a><tt class="py-lineno">2349</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2350"></a><tt class="py-lineno">2350</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentHostsResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2351"></a><tt class="py-lineno">2351</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Hosts view is consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2352"></a><tt class="py-lineno">2352</tt> <tt class="py-line"> <tt id="link-849" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-849', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2353"></a><tt class="py-lineno">2353</tt> <tt class="py-line"> </tt>
-<a name="L2354"></a><tt class="py-lineno">2354</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-850" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-850', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Hosts information is correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2355"></a><tt class="py-lineno">2355</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ipResult</tt> </tt>
-<a name="L2356"></a><tt class="py-lineno">2356</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2357"></a><tt class="py-lineno">2357</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2358"></a><tt class="py-lineno">2358</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">hostsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2359"></a><tt class="py-lineno">2359</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Host information is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2360"></a><tt class="py-lineno">2360</tt> <tt class="py-line"> <tt id="link-851" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-851', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Host information is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2361"></a><tt class="py-lineno">2361</tt> <tt class="py-line"> </tt>
-<a name="L2362"></a><tt class="py-lineno">2362</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-852" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-852', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Host attachment points to the network"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2363"></a><tt class="py-lineno">2363</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2364"></a><tt class="py-lineno">2364</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2365"></a><tt class="py-lineno">2365</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">hostAttachmentResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2366"></a><tt class="py-lineno">2366</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Hosts are correctly attached to the network"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2367"></a><tt class="py-lineno">2367</tt> <tt class="py-line"> <tt id="link-853" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-853', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS did not correctly attach hosts to the network"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2368"></a><tt class="py-lineno">2368</tt> <tt class="py-line"> </tt>
-<a name="L2369"></a><tt class="py-lineno">2369</tt> <tt class="py-line"> <tt class="py-comment"># Strongly connected clusters of devices</tt> </tt>
-<a name="L2370"></a><tt class="py-lineno">2370</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-854" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-854', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Clusters view is consistent across all ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2371"></a><tt class="py-lineno">2371</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2372"></a><tt class="py-lineno">2372</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-855" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-855', 'controller', 'link-521');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-856" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-856', 'clusters', 'link-516');">clusters</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2373"></a><tt class="py-lineno">2373</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-857" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-857', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2374"></a><tt class="py-lineno">2374</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-858" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-858', 'clusters', 'link-516');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-859" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-859', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2375"></a><tt class="py-lineno">2375</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-860" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-860', 'clusters', 'link-516');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-861" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-861', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt id="link-862" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-862', 'clusters', 'link-516');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2376"></a><tt class="py-lineno">2376</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L2377"></a><tt class="py-lineno">2377</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># clusters not consistent</tt> </tt>
-<a name="L2378"></a><tt class="py-lineno">2378</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-863" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-863', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-864" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-864', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"clusters from ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2379"></a><tt class="py-lineno">2379</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2380"></a><tt class="py-lineno">2380</tt> <tt class="py-line"> <tt class="py-string">" is inconsistent with ONOS1"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2381"></a><tt class="py-lineno">2381</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2382"></a><tt class="py-lineno">2382</tt> <tt class="py-line"> </tt>
-<a name="L2383"></a><tt class="py-lineno">2383</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2384"></a><tt class="py-lineno">2384</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-865" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-865', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-866" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-866', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting dataplane clusters "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2385"></a><tt class="py-lineno">2385</tt> <tt class="py-line"> <tt class="py-string">"from ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2386"></a><tt class="py-lineno">2386</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2387"></a><tt class="py-lineno">2387</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-867" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-867', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2388"></a><tt class="py-lineno">2388</tt> <tt class="py-line"> <tt class="py-string">" clusters response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2389"></a><tt class="py-lineno">2389</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-868" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-868', 'clusters', 'link-516');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-869" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-869', 'controller', 'link-521');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2390"></a><tt class="py-lineno">2390</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2391"></a><tt class="py-lineno">2391</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2392"></a><tt class="py-lineno">2392</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentClustersResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2393"></a><tt class="py-lineno">2393</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Clusters view is consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2394"></a><tt class="py-lineno">2394</tt> <tt class="py-line"> <tt id="link-870" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-870', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of clusters"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2395"></a><tt class="py-lineno">2395</tt> <tt class="py-line"> </tt>
-<a name="L2396"></a><tt class="py-lineno">2396</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-871" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-871', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"There is only one SCC"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2397"></a><tt class="py-lineno">2397</tt> <tt class="py-line"> <tt class="py-comment"># there should always only be one cluster</tt> </tt>
-<a name="L2398"></a><tt class="py-lineno">2398</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2399"></a><tt class="py-lineno">2399</tt> <tt class="py-line"> <tt class="py-name">numClusters</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-872" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-872', 'clusters', 'link-516');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2400"></a><tt class="py-lineno">2400</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2401"></a><tt class="py-lineno">2401</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-873" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-873', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing clusters[0]: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2402"></a><tt class="py-lineno">2402</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-874" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-874', 'clusters', 'link-516');">clusters</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2403"></a><tt class="py-lineno">2403</tt> <tt class="py-line"> <tt class="py-name">clusterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2404"></a><tt class="py-lineno">2404</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">numClusters</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2405"></a><tt class="py-lineno">2405</tt> <tt class="py-line"> <tt class="py-name">clusterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2406"></a><tt class="py-lineno">2406</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2407"></a><tt class="py-lineno">2407</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> </tt>
-<a name="L2408"></a><tt class="py-lineno">2408</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">numClusters</tt><tt class="py-op">,</tt> </tt>
-<a name="L2409"></a><tt class="py-lineno">2409</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS shows 1 SCC"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2410"></a><tt class="py-lineno">2410</tt> <tt class="py-line"> <tt id="link-875" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-875', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS shows "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">numClusters</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" SCCs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2411"></a><tt class="py-lineno">2411</tt> <tt class="py-line"> </tt>
-<a name="L2412"></a><tt class="py-lineno">2412</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">devicesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">linksResults</tt> </tt>
-<a name="L2413"></a><tt class="py-lineno">2413</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentHostsResult</tt> </tt>
-<a name="L2414"></a><tt class="py-lineno">2414</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-name">consistentClustersResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">clusterResults</tt> </tt>
-<a name="L2415"></a><tt class="py-lineno">2415</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-name">ipResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2416"></a><tt class="py-lineno">2416</tt> <tt class="py-line"> </tt>
-<a name="L2417"></a><tt class="py-lineno">2417</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-name">topoResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op"><=</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2418"></a><tt class="py-lineno">2418</tt> <tt class="py-line"> <tt class="py-name">note</tt> <tt class="py-op">=</tt> <tt class="py-string">"note it takes about "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">cliTime</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L2419"></a><tt class="py-lineno">2419</tt> <tt class="py-line"> <tt class="py-string">" seconds for the test to make all the cli calls to fetch "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2420"></a><tt class="py-lineno">2420</tt> <tt class="py-line"> <tt class="py-string">"the topology from each ONOS instance"</tt> </tt>
-<a name="L2421"></a><tt class="py-lineno">2421</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-876" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-876', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L2422"></a><tt class="py-lineno">2422</tt> <tt class="py-line"> <tt class="py-string">"Very crass estimate for topology discovery/convergence( "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2423"></a><tt class="py-lineno">2423</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">note</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ): "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">elapsed</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" seconds, "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2424"></a><tt class="py-lineno">2424</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" tries"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2425"></a><tt class="py-lineno">2425</tt> <tt class="py-line"> </tt>
-<a name="L2426"></a><tt class="py-lineno">2426</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-877" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-877', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Device information is correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2427"></a><tt class="py-lineno">2427</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2428"></a><tt class="py-lineno">2428</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2429"></a><tt class="py-lineno">2429</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">devicesResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2430"></a><tt class="py-lineno">2430</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Device information is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2431"></a><tt class="py-lineno">2431</tt> <tt class="py-line"> <tt id="link-878" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-878', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Device information is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2432"></a><tt class="py-lineno">2432</tt> <tt class="py-line"> </tt>
-<a name="L2433"></a><tt class="py-lineno">2433</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-879" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-879', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Links are correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2434"></a><tt class="py-lineno">2434</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2435"></a><tt class="py-lineno">2435</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2436"></a><tt class="py-lineno">2436</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linksResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2437"></a><tt class="py-lineno">2437</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2438"></a><tt class="py-lineno">2438</tt> <tt class="py-line"> <tt id="link-880" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-880', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Links are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2439"></a><tt class="py-lineno">2439</tt> <tt class="py-line"> </tt>
-<a name="L2440"></a><tt class="py-lineno">2440</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: move this to an ONOS state case</tt> </tt>
-<a name="L2441"></a><tt class="py-lineno">2441</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-881" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-881', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Checking ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2442"></a><tt class="py-lineno">2442</tt> <tt class="py-line"> <tt class="py-name">nodesOutput</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2443"></a><tt class="py-lineno">2443</tt> <tt class="py-line"> <tt class="py-name">nodeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2444"></a><tt class="py-lineno">2444</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2445"></a><tt class="py-lineno">2445</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2446"></a><tt class="py-lineno">2446</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-882" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-882', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-883" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-883', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2447"></a><tt class="py-lineno">2447</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"nodes-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2448"></a><tt class="py-lineno">2448</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2449"></a><tt class="py-lineno">2449</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2450"></a><tt class="py-lineno">2450</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2451"></a><tt class="py-lineno">2451</tt> <tt class="py-line"> </tt>
-<a name="L2452"></a><tt class="py-lineno">2452</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2453"></a><tt class="py-lineno">2453</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2454"></a><tt class="py-lineno">2454</tt> <tt class="py-line"> <tt class="py-name">nodesOutput</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2455"></a><tt class="py-lineno">2455</tt> <tt class="py-line"> <tt class="py-name">ips</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-884" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-884', 'nodes', 'link-9');">nodes</a></tt> <tt class="py-op">]</tt> </tt>
-<a name="L2456"></a><tt class="py-lineno">2456</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">nodesOutput</tt><tt class="py-op">:</tt> </tt>
-<a name="L2457"></a><tt class="py-lineno">2457</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2458"></a><tt class="py-lineno">2458</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2459"></a><tt class="py-lineno">2459</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L2460"></a><tt class="py-lineno">2460</tt> <tt class="py-line"> <tt class="py-name">currentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2461"></a><tt class="py-lineno">2461</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">node</tt><tt class="py-op">[</tt><tt class="py-string">'ip'</tt><tt class="py-op">]</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ips</tt><tt class="py-op">:</tt> <tt class="py-comment"># node in nodes() output is in cell</tt> </tt>
-<a name="L2462"></a><tt class="py-lineno">2462</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">node</tt><tt class="py-op">[</tt><tt class="py-string">'state'</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'ACTIVE'</tt><tt class="py-op">:</tt> </tt>
-<a name="L2463"></a><tt class="py-lineno">2463</tt> <tt class="py-line"> <tt class="py-name">currentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2464"></a><tt class="py-lineno">2464</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2465"></a><tt class="py-lineno">2465</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-885" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-885', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-886" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-886', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in ONOS node availability"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2466"></a><tt class="py-lineno">2466</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-887" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-887', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-888" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-888', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2467"></a><tt class="py-lineno">2467</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt><tt class="py-op">,</tt> </tt>
-<a name="L2468"></a><tt class="py-lineno">2468</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2469"></a><tt class="py-lineno">2469</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L2470"></a><tt class="py-lineno">2470</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2471"></a><tt class="py-lineno">2471</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2472"></a><tt class="py-lineno">2472</tt> <tt class="py-line"> <tt class="py-name">nodeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">nodeResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentResult</tt> </tt>
-<a name="L2473"></a><tt class="py-lineno">2473</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2474"></a><tt class="py-lineno">2474</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-889" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-889', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-890" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-890', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing nodes output"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2475"></a><tt class="py-lineno">2475</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-891" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-891', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2476"></a><tt class="py-lineno">2476</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">nodeResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2477"></a><tt class="py-lineno">2477</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Nodes check successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2478"></a><tt class="py-lineno">2478</tt> <tt class="py-line"> <tt id="link-892" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-892', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Nodes check NOT successful"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2479"></a><tt class="py-lineno">2479</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE9"></a><div id="HAminorityRestart.CASE9-def"><a name="L2480"></a><tt class="py-lineno">2480</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE9-toggle" onclick="return toggle('HAminorityRestart.CASE9');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE9">CASE9</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE9-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE9-expanded"><a name="L2481"></a><tt class="py-lineno">2481</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2482"></a><tt class="py-lineno">2482</tt> <tt class="py-line"><tt class="py-docstring"> Link s3-s28 down</tt> </tt>
-<a name="L2483"></a><tt class="py-lineno">2483</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2484"></a><tt class="py-lineno">2484</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2485"></a><tt class="py-lineno">2485</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2486"></a><tt class="py-lineno">2486</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2487"></a><tt class="py-lineno">2487</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2488"></a><tt class="py-lineno">2488</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2489"></a><tt class="py-lineno">2489</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-893" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-893', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2490"></a><tt class="py-lineno">2490</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: You should probably run a topology check after this</tt> </tt>
-<a name="L2491"></a><tt class="py-lineno">2491</tt> <tt class="py-line"> </tt>
-<a name="L2492"></a><tt class="py-lineno">2492</tt> <tt class="py-line"> <tt class="py-name">linkSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2493"></a><tt class="py-lineno">2493</tt> <tt class="py-line"> </tt>
-<a name="L2494"></a><tt class="py-lineno">2494</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Turn off a link to ensure that Link Discovery "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2495"></a><tt class="py-lineno">2495</tt> <tt class="py-line"> <tt class="py-string">"is working properly"</tt> </tt>
-<a name="L2496"></a><tt class="py-lineno">2496</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-894" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-894', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2497"></a><tt class="py-lineno">2497</tt> <tt class="py-line"> </tt>
-<a name="L2498"></a><tt class="py-lineno">2498</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-895" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-895', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Kill Link between s3 and s28"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2499"></a><tt class="py-lineno">2499</tt> <tt class="py-line"> <tt class="py-name">LinkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-896" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#link"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-896', 'link', 'link-896');">link</a></tt><tt class="py-op">(</tt> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-string">"s3"</tt><tt class="py-op">,</tt> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-string">"s28"</tt><tt class="py-op">,</tt> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"down"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2500"></a><tt class="py-lineno">2500</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-897" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-897', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">linkSleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2501"></a><tt class="py-lineno">2501</tt> <tt class="py-line"> <tt class="py-string">" seconds for link down to be discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2502"></a><tt class="py-lineno">2502</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">linkSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2503"></a><tt class="py-lineno">2503</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">LinkDown</tt><tt class="py-op">,</tt> </tt>
-<a name="L2504"></a><tt class="py-lineno">2504</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link down successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2505"></a><tt class="py-lineno">2505</tt> <tt class="py-line"> <tt id="link-898" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-898', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to bring link down"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2506"></a><tt class="py-lineno">2506</tt> <tt class="py-line"> <tt class="py-comment"># TODO do some sort of check here</tt> </tt>
-<a name="L2507"></a><tt class="py-lineno">2507</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE10"></a><div id="HAminorityRestart.CASE10-def"><a name="L2508"></a><tt class="py-lineno">2508</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE10-toggle" onclick="return toggle('HAminorityRestart.CASE10');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE10">CASE10</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE10-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE10-expanded"><a name="L2509"></a><tt class="py-lineno">2509</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2510"></a><tt class="py-lineno">2510</tt> <tt class="py-line"><tt class="py-docstring"> Link s3-s28 up</tt> </tt>
-<a name="L2511"></a><tt class="py-lineno">2511</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2512"></a><tt class="py-lineno">2512</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2513"></a><tt class="py-lineno">2513</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2514"></a><tt class="py-lineno">2514</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2515"></a><tt class="py-lineno">2515</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2516"></a><tt class="py-lineno">2516</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2517"></a><tt class="py-lineno">2517</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-899" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-899', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2518"></a><tt class="py-lineno">2518</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: You should probably run a topology check after this</tt> </tt>
-<a name="L2519"></a><tt class="py-lineno">2519</tt> <tt class="py-line"> </tt>
-<a name="L2520"></a><tt class="py-lineno">2520</tt> <tt class="py-line"> <tt class="py-name">linkSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2521"></a><tt class="py-lineno">2521</tt> <tt class="py-line"> </tt>
-<a name="L2522"></a><tt class="py-lineno">2522</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Restore a link to ensure that Link Discovery is "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L2523"></a><tt class="py-lineno">2523</tt> <tt class="py-line"> <tt class="py-string">"working properly"</tt> </tt>
-<a name="L2524"></a><tt class="py-lineno">2524</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-900" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-900', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2525"></a><tt class="py-lineno">2525</tt> <tt class="py-line"> </tt>
-<a name="L2526"></a><tt class="py-lineno">2526</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-901" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-901', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Bring link between s3 and s28 back up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2527"></a><tt class="py-lineno">2527</tt> <tt class="py-line"> <tt class="py-name">LinkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-902" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-902', 'link', 'link-896');">link</a></tt><tt class="py-op">(</tt> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-string">"s3"</tt><tt class="py-op">,</tt> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-string">"s28"</tt><tt class="py-op">,</tt> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2528"></a><tt class="py-lineno">2528</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-903" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-903', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">linkSleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2529"></a><tt class="py-lineno">2529</tt> <tt class="py-line"> <tt class="py-string">" seconds for link up to be discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2530"></a><tt class="py-lineno">2530</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">linkSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2531"></a><tt class="py-lineno">2531</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">LinkUp</tt><tt class="py-op">,</tt> </tt>
-<a name="L2532"></a><tt class="py-lineno">2532</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link up successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2533"></a><tt class="py-lineno">2533</tt> <tt class="py-line"> <tt id="link-904" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-904', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to bring link up"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2534"></a><tt class="py-lineno">2534</tt> <tt class="py-line"> <tt class="py-comment"># TODO do some sort of check here</tt> </tt>
-<a name="L2535"></a><tt class="py-lineno">2535</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE11"></a><div id="HAminorityRestart.CASE11-def"><a name="L2536"></a><tt class="py-lineno">2536</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE11-toggle" onclick="return toggle('HAminorityRestart.CASE11');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE11">CASE11</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE11-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE11-expanded"><a name="L2537"></a><tt class="py-lineno">2537</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2538"></a><tt class="py-lineno">2538</tt> <tt class="py-line"><tt class="py-docstring"> Switch Down</tt> </tt>
-<a name="L2539"></a><tt class="py-lineno">2539</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2540"></a><tt class="py-lineno">2540</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: You should probably run a topology check after this</tt> </tt>
-<a name="L2541"></a><tt class="py-lineno">2541</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2542"></a><tt class="py-lineno">2542</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2543"></a><tt class="py-lineno">2543</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2544"></a><tt class="py-lineno">2544</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2545"></a><tt class="py-lineno">2545</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2546"></a><tt class="py-lineno">2546</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-905" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-905', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2547"></a><tt class="py-lineno">2547</tt> <tt class="py-line"> </tt>
-<a name="L2548"></a><tt class="py-lineno">2548</tt> <tt class="py-line"> <tt class="py-name">switchSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'SwitchDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2549"></a><tt class="py-lineno">2549</tt> <tt class="py-line"> </tt>
-<a name="L2550"></a><tt class="py-lineno">2550</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Killing a switch to ensure it is discovered correctly"</tt> </tt>
-<a name="L2551"></a><tt class="py-lineno">2551</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-906" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-906', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2552"></a><tt class="py-lineno">2552</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'switch'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2553"></a><tt class="py-lineno">2553</tt> <tt class="py-line"> <tt class="py-name">switchDPID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'dpid'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2554"></a><tt class="py-lineno">2554</tt> <tt class="py-line"> </tt>
-<a name="L2555"></a><tt class="py-lineno">2555</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Make this switch parameterizable</tt> </tt>
-<a name="L2556"></a><tt class="py-lineno">2556</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-907" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-907', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Kill "</tt> <tt class="py-op">+</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2557"></a><tt class="py-lineno">2557</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-908" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-908', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Deleting "</tt> <tt class="py-op">+</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2558"></a><tt class="py-lineno">2558</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-909" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.delSwitch()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delSwitch"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.delSwitch" class="py-name" href="#" onclick="return doclink('link-909', 'delSwitch', 'link-909');">delSwitch</a></tt><tt class="py-op">(</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2559"></a><tt class="py-lineno">2559</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-910" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-910', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">switchSleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2560"></a><tt class="py-lineno">2560</tt> <tt class="py-line"> <tt class="py-string">" seconds for switch down to be discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2561"></a><tt class="py-lineno">2561</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">switchSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2562"></a><tt class="py-lineno">2562</tt> <tt class="py-line"> <tt class="py-name">device</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-911" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-911', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-name">switchDPID</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2563"></a><tt class="py-lineno">2563</tt> <tt class="py-line"> <tt class="py-comment"># Peek at the deleted switch</tt> </tt>
-<a name="L2564"></a><tt class="py-lineno">2564</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-912" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-912', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">device</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2565"></a><tt class="py-lineno">2565</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2566"></a><tt class="py-lineno">2566</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">device</tt> <tt class="py-keyword">and</tt> <tt class="py-name">device</tt><tt class="py-op">[</tt> <tt class="py-string">'available'</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L2567"></a><tt class="py-lineno">2567</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2568"></a><tt class="py-lineno">2568</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">result</tt><tt class="py-op">,</tt> </tt>
-<a name="L2569"></a><tt class="py-lineno">2569</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Kill switch successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2570"></a><tt class="py-lineno">2570</tt> <tt class="py-line"> <tt id="link-913" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-913', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to kill switch?"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2571"></a><tt class="py-lineno">2571</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE12"></a><div id="HAminorityRestart.CASE12-def"><a name="L2572"></a><tt class="py-lineno">2572</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE12-toggle" onclick="return toggle('HAminorityRestart.CASE12');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE12">CASE12</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE12-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE12-expanded"><a name="L2573"></a><tt class="py-lineno">2573</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2574"></a><tt class="py-lineno">2574</tt> <tt class="py-line"><tt class="py-docstring"> Switch Up</tt> </tt>
-<a name="L2575"></a><tt class="py-lineno">2575</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2576"></a><tt class="py-lineno">2576</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: You should probably run a topology check after this</tt> </tt>
-<a name="L2577"></a><tt class="py-lineno">2577</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2578"></a><tt class="py-lineno">2578</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2579"></a><tt class="py-lineno">2579</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2580"></a><tt class="py-lineno">2580</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2581"></a><tt class="py-lineno">2581</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2582"></a><tt class="py-lineno">2582</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-914" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-914', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2583"></a><tt class="py-lineno">2583</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS1Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS1Port not defined"</tt> </tt>
-<a name="L2584"></a><tt class="py-lineno">2584</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS2Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS2Port not defined"</tt> </tt>
-<a name="L2585"></a><tt class="py-lineno">2585</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS3Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS3Port not defined"</tt> </tt>
-<a name="L2586"></a><tt class="py-lineno">2586</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS4Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS4Port not defined"</tt> </tt>
-<a name="L2587"></a><tt class="py-lineno">2587</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS5Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS5Port not defined"</tt> </tt>
-<a name="L2588"></a><tt class="py-lineno">2588</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS6Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS6Port not defined"</tt> </tt>
-<a name="L2589"></a><tt class="py-lineno">2589</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS7Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS7Port not defined"</tt> </tt>
-<a name="L2590"></a><tt class="py-lineno">2590</tt> <tt class="py-line"> </tt>
-<a name="L2591"></a><tt class="py-lineno">2591</tt> <tt class="py-line"> <tt class="py-name">switchSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'SwitchDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2592"></a><tt class="py-lineno">2592</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'switch'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2593"></a><tt class="py-lineno">2593</tt> <tt class="py-line"> <tt class="py-name">switchDPID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'dpid'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2594"></a><tt class="py-lineno">2594</tt> <tt class="py-line"> <tt id="link-915" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-915', 'links', 'link-512');">links</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'links'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2595"></a><tt class="py-lineno">2595</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Adding a switch to ensure it is discovered correctly"</tt> </tt>
-<a name="L2596"></a><tt class="py-lineno">2596</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-916" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-916', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2597"></a><tt class="py-lineno">2597</tt> <tt class="py-line"> </tt>
-<a name="L2598"></a><tt class="py-lineno">2598</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-917" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-917', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add back "</tt> <tt class="py-op">+</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2599"></a><tt class="py-lineno">2599</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-918" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addSwitch"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-918', 'addSwitch', 'link-918');">addSwitch</a></tt><tt class="py-op">(</tt> <tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-name">switchDPID</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2600"></a><tt class="py-lineno">2600</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">peer</tt> <tt class="py-keyword">in</tt> <tt id="link-919" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-919', 'links', 'link-512');">links</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2601"></a><tt class="py-lineno">2601</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-920" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addLink"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-920', 'addLink', 'link-920');">addLink</a></tt><tt class="py-op">(</tt> <tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">peer</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2602"></a><tt class="py-lineno">2602</tt> <tt class="py-line"> <tt class="py-name">ipList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2603"></a><tt class="py-lineno">2603</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2604"></a><tt class="py-lineno">2604</tt> <tt class="py-line"> <tt class="py-name">ipList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-921" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-921', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2605"></a><tt class="py-lineno">2605</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-922" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController" class="py-name" href="#" onclick="return doclink('link-922', 'assignSwController', 'link-78');">assignSwController</a></tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt><tt class="py-op">=</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">ipList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2606"></a><tt class="py-lineno">2606</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-923" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-923', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">switchSleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2607"></a><tt class="py-lineno">2607</tt> <tt class="py-line"> <tt class="py-string">" seconds for switch up to be discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2608"></a><tt class="py-lineno">2608</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">switchSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2609"></a><tt class="py-lineno">2609</tt> <tt class="py-line"> <tt class="py-name">device</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-924" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-924', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-name">switchDPID</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2610"></a><tt class="py-lineno">2610</tt> <tt class="py-line"> <tt class="py-comment"># Peek at the deleted switch</tt> </tt>
-<a name="L2611"></a><tt class="py-lineno">2611</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-925" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-925', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">device</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2612"></a><tt class="py-lineno">2612</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2613"></a><tt class="py-lineno">2613</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">device</tt> <tt class="py-keyword">and</tt> <tt class="py-name">device</tt><tt class="py-op">[</tt> <tt class="py-string">'available'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2614"></a><tt class="py-lineno">2614</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2615"></a><tt class="py-lineno">2615</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">result</tt><tt class="py-op">,</tt> </tt>
-<a name="L2616"></a><tt class="py-lineno">2616</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"add switch successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2617"></a><tt class="py-lineno">2617</tt> <tt class="py-line"> <tt id="link-926" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-926', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to add switch?"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2618"></a><tt class="py-lineno">2618</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE13"></a><div id="HAminorityRestart.CASE13-def"><a name="L2619"></a><tt class="py-lineno">2619</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE13-toggle" onclick="return toggle('HAminorityRestart.CASE13');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE13">CASE13</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE13-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE13-expanded"><a name="L2620"></a><tt class="py-lineno">2620</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2621"></a><tt class="py-lineno">2621</tt> <tt class="py-line"><tt class="py-docstring"> Clean up</tt> </tt>
-<a name="L2622"></a><tt class="py-lineno">2622</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2623"></a><tt class="py-lineno">2623</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L2624"></a><tt class="py-lineno">2624</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2625"></a><tt class="py-lineno">2625</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2626"></a><tt class="py-lineno">2626</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2627"></a><tt class="py-lineno">2627</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2628"></a><tt class="py-lineno">2628</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2629"></a><tt class="py-lineno">2629</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-927" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-927', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2630"></a><tt class="py-lineno">2630</tt> <tt class="py-line"> </tt>
-<a name="L2631"></a><tt class="py-lineno">2631</tt> <tt class="py-line"> <tt class="py-comment"># printing colors to terminal</tt> </tt>
-<a name="L2632"></a><tt class="py-lineno">2632</tt> <tt class="py-line"> <tt class="py-name">colors</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-string">'cyan'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[96m'</tt><tt class="py-op">,</tt> <tt class="py-string">'purple'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[95m'</tt><tt class="py-op">,</tt> </tt>
-<a name="L2633"></a><tt class="py-lineno">2633</tt> <tt class="py-line"> <tt class="py-string">'blue'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[94m'</tt><tt class="py-op">,</tt> <tt class="py-string">'green'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[92m'</tt><tt class="py-op">,</tt> </tt>
-<a name="L2634"></a><tt class="py-lineno">2634</tt> <tt class="py-line"> <tt class="py-string">'yellow'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[93m'</tt><tt class="py-op">,</tt> <tt class="py-string">'red'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[91m'</tt><tt class="py-op">,</tt> <tt class="py-string">'end'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[0m'</tt> <tt class="py-op">}</tt> </tt>
-<a name="L2635"></a><tt class="py-lineno">2635</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-928" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-928', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Test Cleanup"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2636"></a><tt class="py-lineno">2636</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-929" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-929', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Killing tcpdumps"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2637"></a><tt class="py-lineno">2637</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-930" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopTcpdump()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopTcpdump,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.stopTcpdump()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#stopTcpdump"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopTcpdump
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.stopTcpdump" class="py-name" href="#" onclick="return doclink('link-930', 'stopTcpdump', 'link-930');">stopTcpdump</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2638"></a><tt class="py-lineno">2638</tt> <tt class="py-line"> </tt>
-<a name="L2639"></a><tt class="py-lineno">2639</tt> <tt class="py-line"> <tt class="py-name">testname</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> </tt>
-<a name="L2640"></a><tt class="py-lineno">2640</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BACKUP'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"True"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2641"></a><tt class="py-lineno">2641</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-931" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-931', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Copying MN pcap and ONOS log files to test station"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2642"></a><tt class="py-lineno">2642</tt> <tt class="py-line"> <tt class="py-name">teststationUser</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BACKUP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'TESTONUSER'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2643"></a><tt class="py-lineno">2643</tt> <tt class="py-line"> <tt class="py-name">teststationIP</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BACKUP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'TESTONIP'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2644"></a><tt class="py-lineno">2644</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: MN Pcap file is being saved to ~/packet_captures</tt> </tt>
-<a name="L2645"></a><tt class="py-lineno">2645</tt> <tt class="py-line"> <tt class="py-comment"># scp this file as MN and TestON aren't necessarily the same vm</tt> </tt>
-<a name="L2646"></a><tt class="py-lineno">2646</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: scp</tt> </tt>
-<a name="L2647"></a><tt class="py-lineno">2647</tt> <tt class="py-line"> <tt class="py-comment"># mn files</tt> </tt>
-<a name="L2648"></a><tt class="py-lineno">2648</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Load these from params</tt> </tt>
-<a name="L2649"></a><tt class="py-lineno">2649</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: must end in /</tt> </tt>
-<a name="L2650"></a><tt class="py-lineno">2650</tt> <tt class="py-line"> <tt class="py-name">logFolder</tt> <tt class="py-op">=</tt> <tt class="py-string">"/opt/onos/log/"</tt> </tt>
-<a name="L2651"></a><tt class="py-lineno">2651</tt> <tt class="py-line"> <tt class="py-name">logFiles</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">"karaf.log"</tt><tt class="py-op">,</tt> <tt class="py-string">"karaf.log.1"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2652"></a><tt class="py-lineno">2652</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: must end in /</tt> </tt>
-<a name="L2653"></a><tt class="py-lineno">2653</tt> <tt class="py-line"> <tt class="py-name">dstDir</tt> <tt class="py-op">=</tt> <tt class="py-string">"~/packet_captures/"</tt> </tt>
-<a name="L2654"></a><tt class="py-lineno">2654</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">f</tt> <tt class="py-keyword">in</tt> <tt class="py-name">logFiles</tt><tt class="py-op">:</tt> </tt>
-<a name="L2655"></a><tt class="py-lineno">2655</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-932" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-932', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2656"></a><tt class="py-lineno">2656</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-933" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-933', 'sendline', 'link-933');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"scp sdn@"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2657"></a><tt class="py-lineno">2657</tt> <tt class="py-line"> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">logFolder</tt> <tt class="py-op">+</tt> <tt class="py-name">f</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2658"></a><tt class="py-lineno">2658</tt> <tt class="py-line"> <tt class="py-name">teststationUser</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2659"></a><tt class="py-lineno">2659</tt> <tt class="py-line"> <tt class="py-name">teststationIP</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2660"></a><tt class="py-lineno">2660</tt> <tt class="py-line"> <tt class="py-name">dstDir</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">testname</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2661"></a><tt class="py-lineno">2661</tt> <tt class="py-line"> <tt class="py-string">"-"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">"-"</tt> <tt class="py-op">+</tt> <tt class="py-name">f</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2662"></a><tt class="py-lineno">2662</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2663"></a><tt class="py-lineno">2663</tt> <tt class="py-line"> </tt>
-<a name="L2664"></a><tt class="py-lineno">2664</tt> <tt class="py-line"> <tt class="py-comment"># std*.log's</tt> </tt>
-<a name="L2665"></a><tt class="py-lineno">2665</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: must end in /</tt> </tt>
-<a name="L2666"></a><tt class="py-lineno">2666</tt> <tt class="py-line"> <tt class="py-name">logFolder</tt> <tt class="py-op">=</tt> <tt class="py-string">"/opt/onos/var/"</tt> </tt>
-<a name="L2667"></a><tt class="py-lineno">2667</tt> <tt class="py-line"> <tt class="py-name">logFiles</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">"stderr.log"</tt><tt class="py-op">,</tt> <tt class="py-string">"stdout.log"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2668"></a><tt class="py-lineno">2668</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: must end in /</tt> </tt>
-<a name="L2669"></a><tt class="py-lineno">2669</tt> <tt class="py-line"> <tt class="py-name">dstDir</tt> <tt class="py-op">=</tt> <tt class="py-string">"~/packet_captures/"</tt> </tt>
-<a name="L2670"></a><tt class="py-lineno">2670</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">f</tt> <tt class="py-keyword">in</tt> <tt class="py-name">logFiles</tt><tt class="py-op">:</tt> </tt>
-<a name="L2671"></a><tt class="py-lineno">2671</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-934" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-934', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2672"></a><tt class="py-lineno">2672</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-935" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-935', 'sendline', 'link-933');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"scp sdn@"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2673"></a><tt class="py-lineno">2673</tt> <tt class="py-line"> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">logFolder</tt> <tt class="py-op">+</tt> <tt class="py-name">f</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2674"></a><tt class="py-lineno">2674</tt> <tt class="py-line"> <tt class="py-name">teststationUser</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2675"></a><tt class="py-lineno">2675</tt> <tt class="py-line"> <tt class="py-name">teststationIP</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2676"></a><tt class="py-lineno">2676</tt> <tt class="py-line"> <tt class="py-name">dstDir</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">testname</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2677"></a><tt class="py-lineno">2677</tt> <tt class="py-line"> <tt class="py-string">"-"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">"-"</tt> <tt class="py-op">+</tt> <tt class="py-name">f</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2678"></a><tt class="py-lineno">2678</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2679"></a><tt class="py-lineno">2679</tt> <tt class="py-line"> <tt class="py-comment"># sleep so scp can finish</tt> </tt>
-<a name="L2680"></a><tt class="py-lineno">2680</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2681"></a><tt class="py-lineno">2681</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-936" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-936', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Packing and rotating pcap archives"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2682"></a><tt class="py-lineno">2682</tt> <tt class="py-line"> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">system</tt><tt class="py-op">(</tt> <tt class="py-string">"~/TestON/dependencies/rotate.sh "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">testname</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2683"></a><tt class="py-lineno">2683</tt> <tt class="py-line"> </tt>
-<a name="L2684"></a><tt class="py-lineno">2684</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-937" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-937', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Stopping Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2685"></a><tt class="py-lineno">2685</tt> <tt class="py-line"> <tt class="py-name">mnResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-938" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet" class="py-name" href="#" onclick="return doclink('link-938', 'stopNet', 'link-938');">stopNet</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2686"></a><tt class="py-lineno">2686</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">mnResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2687"></a><tt class="py-lineno">2687</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Mininet stopped"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2688"></a><tt class="py-lineno">2688</tt> <tt class="py-line"> <tt id="link-939" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-939', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"MN cleanup NOT successful"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2689"></a><tt class="py-lineno">2689</tt> <tt class="py-line"> </tt>
-<a name="L2690"></a><tt class="py-lineno">2690</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-940" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-940', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Checking ONOS Logs for errors"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2691"></a><tt class="py-lineno">2691</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-941" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-941', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2692"></a><tt class="py-lineno">2692</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">colors</tt><tt class="py-op">[</tt> <tt class="py-string">'purple'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">"Checking logs for errors on "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L2693"></a><tt class="py-lineno">2693</tt> <tt class="py-line"> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">colors</tt><tt class="py-op">[</tt> <tt class="py-string">'end'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2694"></a><tt class="py-lineno">2694</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-942" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.checkLogs()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#checkLogs"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.checkLogs" class="py-name" href="#" onclick="return doclink('link-942', 'checkLogs', 'link-942');">checkLogs</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-name">restart</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2695"></a><tt class="py-lineno">2695</tt> <tt class="py-line"> </tt>
-<a name="L2696"></a><tt class="py-lineno">2696</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2697"></a><tt class="py-lineno">2697</tt> <tt class="py-line"> <tt class="py-name">timerLog</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt> <tt class="py-op">+</tt> <tt class="py-string">"/Timers.csv"</tt><tt class="py-op">,</tt> <tt class="py-string">'w'</tt><tt class="py-op">)</tt> </tt>
-<a name="L2698"></a><tt class="py-lineno">2698</tt> <tt class="py-line"> <tt class="py-comment"># Overwrite with empty line and close</tt> </tt>
-<a name="L2699"></a><tt class="py-lineno">2699</tt> <tt class="py-line"> <tt class="py-name">labels</tt> <tt class="py-op">=</tt> <tt class="py-string">"Gossip Intents, Restart"</tt> </tt>
-<a name="L2700"></a><tt class="py-lineno">2700</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">gossipTime</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">", "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">restartTime</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2701"></a><tt class="py-lineno">2701</tt> <tt class="py-line"> <tt class="py-name">timerLog</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt> <tt class="py-name">labels</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-name">data</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2702"></a><tt class="py-lineno">2702</tt> <tt class="py-line"> <tt class="py-name">timerLog</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2703"></a><tt class="py-lineno">2703</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L2704"></a><tt class="py-lineno">2704</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-943" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-943', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2705"></a><tt class="py-lineno">2705</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE14"></a><div id="HAminorityRestart.CASE14-def"><a name="L2706"></a><tt class="py-lineno">2706</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE14-toggle" onclick="return toggle('HAminorityRestart.CASE14');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE14">CASE14</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE14-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE14-expanded"><a name="L2707"></a><tt class="py-lineno">2707</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2708"></a><tt class="py-lineno">2708</tt> <tt class="py-line"><tt class="py-docstring"> start election app on all onos nodes</tt> </tt>
-<a name="L2709"></a><tt class="py-lineno">2709</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2710"></a><tt class="py-lineno">2710</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2711"></a><tt class="py-lineno">2711</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2712"></a><tt class="py-lineno">2712</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2713"></a><tt class="py-lineno">2713</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2714"></a><tt class="py-lineno">2714</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-944" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-944', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2715"></a><tt class="py-lineno">2715</tt> <tt class="py-line"> </tt>
-<a name="L2716"></a><tt class="py-lineno">2716</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-945" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-945', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt><tt class="py-string">"Start Leadership Election app"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2717"></a><tt class="py-lineno">2717</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-946" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-946', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install leadership election app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2718"></a><tt class="py-lineno">2718</tt> <tt class="py-line"> <tt class="py-name">appResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-947" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-947', 'activateApp', 'link-124');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2719"></a><tt class="py-lineno">2719</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2720"></a><tt class="py-lineno">2720</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2721"></a><tt class="py-lineno">2721</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2722"></a><tt class="py-lineno">2722</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Election app installed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2723"></a><tt class="py-lineno">2723</tt> <tt class="py-line"> <tt id="link-948" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-948', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something went wrong with installing Leadership election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2724"></a><tt class="py-lineno">2724</tt> <tt class="py-line"> </tt>
-<a name="L2725"></a><tt class="py-lineno">2725</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-949" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-949', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Run for election on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2726"></a><tt class="py-lineno">2726</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2727"></a><tt class="py-lineno">2727</tt> <tt class="py-line"> <tt id="link-950" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-950', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2728"></a><tt class="py-lineno">2728</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-951" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-951', 'cli', 'link-223');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2729"></a><tt class="py-lineno">2729</tt> <tt class="py-line"> <tt id="link-952" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-952', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt id="link-953" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestRun()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestRun"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestRun" class="py-name" href="#" onclick="return doclink('link-953', 'electionTestRun', 'link-953');">electionTestRun</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2730"></a><tt class="py-lineno">2730</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-954" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-954', 'cli', 'link-223');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2731"></a><tt class="py-lineno">2731</tt> <tt class="py-line"> <tt class="py-name">leader</tt> <tt class="py-op">=</tt> <tt id="link-955" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-955', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt id="link-956" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-956', 'electionTestLeader', 'link-724');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2732"></a><tt class="py-lineno">2732</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leader</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">leader</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2733"></a><tt class="py-lineno">2733</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-957" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-957', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-958" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-958', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt id="link-959" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-959', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Leader for the election app "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2734"></a><tt class="py-lineno">2734</tt> <tt class="py-line"> <tt class="py-string">"should be an ONOS node, instead got '"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2735"></a><tt class="py-lineno">2735</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"'"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2736"></a><tt class="py-lineno">2736</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2737"></a><tt class="py-lineno">2737</tt> <tt class="py-line"> <tt id="link-960" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-960', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2738"></a><tt class="py-lineno">2738</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2739"></a><tt class="py-lineno">2739</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2740"></a><tt class="py-lineno">2740</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">leaderResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2741"></a><tt class="py-lineno">2741</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully ran for leadership"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2742"></a><tt class="py-lineno">2742</tt> <tt class="py-line"> <tt id="link-961" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-961', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to run for leadership"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2743"></a><tt class="py-lineno">2743</tt> <tt class="py-line"> </tt>
-<a name="L2744"></a><tt class="py-lineno">2744</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-962" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-962', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check that each node shows the same leader"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2745"></a><tt class="py-lineno">2745</tt> <tt class="py-line"> <tt class="py-name">sameLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2746"></a><tt class="py-lineno">2746</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt id="link-963" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-963', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2747"></a><tt class="py-lineno">2747</tt> <tt class="py-line"> <tt class="py-name">sameLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2748"></a><tt class="py-lineno">2748</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-964" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-964', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-965" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-965', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Results of electionTestLeader is order of main.CLIs:"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2749"></a><tt class="py-lineno">2749</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-966" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-966', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2750"></a><tt class="py-lineno">2750</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2751"></a><tt class="py-lineno">2751</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2752"></a><tt class="py-lineno">2752</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">sameLeader</tt><tt class="py-op">,</tt> </tt>
-<a name="L2753"></a><tt class="py-lineno">2753</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Leadership is consistent for the election topic"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2754"></a><tt class="py-lineno">2754</tt> <tt class="py-line"> <tt id="link-967" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-967', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Nodes have different leaders"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2755"></a><tt class="py-lineno">2755</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE15"></a><div id="HAminorityRestart.CASE15-def"><a name="L2756"></a><tt class="py-lineno">2756</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE15-toggle" onclick="return toggle('HAminorityRestart.CASE15');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE15">CASE15</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE15-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE15-expanded"><a name="L2757"></a><tt class="py-lineno">2757</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2758"></a><tt class="py-lineno">2758</tt> <tt class="py-line"><tt class="py-docstring"> Check that Leadership Election is still functional</tt> </tt>
-<a name="L2759"></a><tt class="py-lineno">2759</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2760"></a><tt class="py-lineno">2760</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2761"></a><tt class="py-lineno">2761</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2762"></a><tt class="py-lineno">2762</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2763"></a><tt class="py-lineno">2763</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2764"></a><tt class="py-lineno">2764</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2765"></a><tt class="py-lineno">2765</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-968" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-968', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2766"></a><tt class="py-lineno">2766</tt> <tt class="py-line"> </tt>
-<a name="L2767"></a><tt class="py-lineno">2767</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2768"></a><tt class="py-lineno">2768</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Check that Leadership Election is still functional"</tt> </tt>
-<a name="L2769"></a><tt class="py-lineno">2769</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-969" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-969', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2770"></a><tt class="py-lineno">2770</tt> <tt class="py-line"> </tt>
-<a name="L2771"></a><tt class="py-lineno">2771</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-970" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-970', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check that each node shows the same leader"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2772"></a><tt class="py-lineno">2772</tt> <tt class="py-line"> <tt class="py-name">sameLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2773"></a><tt class="py-lineno">2773</tt> <tt class="py-line"> <tt id="link-971" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-971', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2774"></a><tt class="py-lineno">2774</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-972" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-972', 'cli', 'link-223');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2775"></a><tt class="py-lineno">2775</tt> <tt class="py-line"> <tt class="py-name">leader</tt> <tt class="py-op">=</tt> <tt id="link-973" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-973', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt id="link-974" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-974', 'electionTestLeader', 'link-724');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2776"></a><tt class="py-lineno">2776</tt> <tt class="py-line"> <tt id="link-975" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-975', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2777"></a><tt class="py-lineno">2777</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt id="link-976" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-976', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2778"></a><tt class="py-lineno">2778</tt> <tt class="py-line"> <tt class="py-name">sameLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2779"></a><tt class="py-lineno">2779</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-977" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-977', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-978" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-978', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Results of electionTestLeader is order of main.CLIs:"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2780"></a><tt class="py-lineno">2780</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-979" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-979', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2781"></a><tt class="py-lineno">2781</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2782"></a><tt class="py-lineno">2782</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2783"></a><tt class="py-lineno">2783</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">sameLeader</tt><tt class="py-op">,</tt> </tt>
-<a name="L2784"></a><tt class="py-lineno">2784</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Leadership is consistent for the election topic"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2785"></a><tt class="py-lineno">2785</tt> <tt class="py-line"> <tt id="link-980" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-980', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Nodes have different leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2786"></a><tt class="py-lineno">2786</tt> <tt class="py-line"> </tt>
-<a name="L2787"></a><tt class="py-lineno">2787</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-981" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-981', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Find current leader and withdraw"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2788"></a><tt class="py-lineno">2788</tt> <tt class="py-line"> <tt class="py-name">leader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-982" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-982', 'electionTestLeader', 'link-724');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2789"></a><tt class="py-lineno">2789</tt> <tt class="py-line"> <tt class="py-comment"># do some sanity checking on leader before using it</tt> </tt>
-<a name="L2790"></a><tt class="py-lineno">2790</tt> <tt class="py-line"> <tt class="py-name">withdrawResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2791"></a><tt class="py-lineno">2791</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leader</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">leader</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2792"></a><tt class="py-lineno">2792</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-983" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-983', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-984" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-984', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2793"></a><tt class="py-lineno">2793</tt> <tt class="py-line"> <tt class="py-string">"Leader for the election app should be an ONOS node,"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2794"></a><tt class="py-lineno">2794</tt> <tt class="py-line"> <tt class="py-string">"instead got '"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"'"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2795"></a><tt class="py-lineno">2795</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2796"></a><tt class="py-lineno">2796</tt> <tt class="py-line"> <tt class="py-name">oldLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2797"></a><tt class="py-lineno">2797</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2798"></a><tt class="py-lineno">2798</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leader</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-985" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-985', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">:</tt> </tt>
-<a name="L2799"></a><tt class="py-lineno">2799</tt> <tt class="py-line"> <tt class="py-name">oldLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2800"></a><tt class="py-lineno">2800</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2801"></a><tt class="py-lineno">2801</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># FOR/ELSE statement</tt> </tt>
-<a name="L2802"></a><tt class="py-lineno">2802</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-986" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-986', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-987" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-987', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Leader election, could not find current leader"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2803"></a><tt class="py-lineno">2803</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">oldLeader</tt><tt class="py-op">:</tt> </tt>
-<a name="L2804"></a><tt class="py-lineno">2804</tt> <tt class="py-line"> <tt class="py-name">withdrawResult</tt> <tt class="py-op">=</tt> <tt class="py-name">oldLeader</tt><tt class="py-op">.</tt><tt id="link-988" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestWithdraw()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestWithdraw"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestWithdraw" class="py-name" href="#" onclick="return doclink('link-988', 'electionTestWithdraw', 'link-988');">electionTestWithdraw</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2805"></a><tt class="py-lineno">2805</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2806"></a><tt class="py-lineno">2806</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2807"></a><tt class="py-lineno">2807</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">withdrawResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2808"></a><tt class="py-lineno">2808</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Node was withdrawn from election"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2809"></a><tt class="py-lineno">2809</tt> <tt class="py-line"> <tt id="link-989" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-989', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Node was not withdrawn from election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2810"></a><tt class="py-lineno">2810</tt> <tt class="py-line"> </tt>
-<a name="L2811"></a><tt class="py-lineno">2811</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-990" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-990', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Make sure new leader is elected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2812"></a><tt class="py-lineno">2812</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: use threads</tt> </tt>
-<a name="L2813"></a><tt class="py-lineno">2813</tt> <tt class="py-line"> <tt class="py-name">leaderList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2814"></a><tt class="py-lineno">2814</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-991" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-991', 'cli', 'link-223');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2815"></a><tt class="py-lineno">2815</tt> <tt class="py-line"> <tt class="py-name">leaderN</tt> <tt class="py-op">=</tt> <tt id="link-992" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-992', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt id="link-993" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-993', 'electionTestLeader', 'link-724');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2816"></a><tt class="py-lineno">2816</tt> <tt class="py-line"> <tt class="py-name">leaderList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2817"></a><tt class="py-lineno">2817</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">==</tt> <tt class="py-name">leader</tt><tt class="py-op">:</tt> </tt>
-<a name="L2818"></a><tt class="py-lineno">2818</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-994" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-994', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-995" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-995', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt id="link-996" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-996', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" still sees "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2819"></a><tt class="py-lineno">2819</tt> <tt class="py-line"> <tt class="py-string">" as leader after they withdrew"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2820"></a><tt class="py-lineno">2820</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2821"></a><tt class="py-lineno">2821</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2822"></a><tt class="py-lineno">2822</tt> <tt class="py-line"> <tt class="py-comment"># error in response</tt> </tt>
-<a name="L2823"></a><tt class="py-lineno">2823</tt> <tt class="py-line"> <tt class="py-comment"># TODO: add check for "Command not found:" in the driver, this</tt> </tt>
-<a name="L2824"></a><tt class="py-lineno">2824</tt> <tt class="py-line"> <tt class="py-comment"># means the app isn't loaded</tt> </tt>
-<a name="L2825"></a><tt class="py-lineno">2825</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-997" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-997', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-998" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-998', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Something is wrong with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2826"></a><tt class="py-lineno">2826</tt> <tt class="py-line"> <tt class="py-string">"electionTestLeader function, "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2827"></a><tt class="py-lineno">2827</tt> <tt class="py-line"> <tt class="py-string">"check the error logs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2828"></a><tt class="py-lineno">2828</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2829"></a><tt class="py-lineno">2829</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leaderN</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L2830"></a><tt class="py-lineno">2830</tt> <tt class="py-line"> <tt class="py-comment"># node may not have recieved the event yet</tt> </tt>
-<a name="L2831"></a><tt class="py-lineno">2831</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">7</tt><tt class="py-op">)</tt> </tt>
-<a name="L2832"></a><tt class="py-lineno">2832</tt> <tt class="py-line"> <tt class="py-name">leaderN</tt> <tt class="py-op">=</tt> <tt id="link-999" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-999', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt id="link-1000" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-1000', 'electionTestLeader', 'link-724');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2833"></a><tt class="py-lineno">2833</tt> <tt class="py-line"> <tt class="py-name">leaderList</tt><tt class="py-op">.</tt><tt class="py-name">pop</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2834"></a><tt class="py-lineno">2834</tt> <tt class="py-line"> <tt class="py-name">leaderList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2835"></a><tt class="py-lineno">2835</tt> <tt class="py-line"> <tt class="py-name">consistentLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2836"></a><tt class="py-lineno">2836</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">leaderList</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2837"></a><tt class="py-lineno">2837</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1001" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1001', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Each Election-app sees '"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2838"></a><tt class="py-lineno">2838</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leaderList</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2839"></a><tt class="py-lineno">2839</tt> <tt class="py-line"> <tt class="py-string">"' as the leader"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2840"></a><tt class="py-lineno">2840</tt> <tt class="py-line"> <tt class="py-name">consistentLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2841"></a><tt class="py-lineno">2841</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2842"></a><tt class="py-lineno">2842</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1002" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1002', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1003" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1003', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2843"></a><tt class="py-lineno">2843</tt> <tt class="py-line"> <tt class="py-string">"Inconsistent responses for leader of Election-app:"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2844"></a><tt class="py-lineno">2844</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">n</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">leaderList</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2845"></a><tt class="py-lineno">2845</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1004" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1004', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1005" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1005', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2846"></a><tt class="py-lineno">2846</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leaderList</tt><tt class="py-op">[</tt> <tt class="py-name">n</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2847"></a><tt class="py-lineno">2847</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">leaderResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentLeader</tt> </tt>
-<a name="L2848"></a><tt class="py-lineno">2848</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2849"></a><tt class="py-lineno">2849</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2850"></a><tt class="py-lineno">2850</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">leaderResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2851"></a><tt class="py-lineno">2851</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Leadership election passed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2852"></a><tt class="py-lineno">2852</tt> <tt class="py-line"> <tt id="link-1006" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1006', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something went wrong with Leadership election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2853"></a><tt class="py-lineno">2853</tt> <tt class="py-line"> </tt>
-<a name="L2854"></a><tt class="py-lineno">2854</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1007" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1007', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Run for election on old leader( just so everyone "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2855"></a><tt class="py-lineno">2855</tt> <tt class="py-line"> <tt class="py-string">"is in the hat )"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2856"></a><tt class="py-lineno">2856</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">oldLeader</tt><tt class="py-op">:</tt> </tt>
-<a name="L2857"></a><tt class="py-lineno">2857</tt> <tt class="py-line"> <tt class="py-name">runResult</tt> <tt class="py-op">=</tt> <tt class="py-name">oldLeader</tt><tt class="py-op">.</tt><tt id="link-1008" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestRun" class="py-name" href="#" onclick="return doclink('link-1008', 'electionTestRun', 'link-953');">electionTestRun</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2858"></a><tt class="py-lineno">2858</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2859"></a><tt class="py-lineno">2859</tt> <tt class="py-line"> <tt class="py-name">runResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2860"></a><tt class="py-lineno">2860</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2861"></a><tt class="py-lineno">2861</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2862"></a><tt class="py-lineno">2862</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">runResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2863"></a><tt class="py-lineno">2863</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App re-ran for election"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2864"></a><tt class="py-lineno">2864</tt> <tt class="py-line"> <tt id="link-1009" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1009', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"App failed to run for election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2865"></a><tt class="py-lineno">2865</tt> <tt class="py-line"> </tt>
-<a name="L2866"></a><tt class="py-lineno">2866</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1010" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1010', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Leader did not change when old leader re-ran"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2867"></a><tt class="py-lineno">2867</tt> <tt class="py-line"> <tt class="py-name">afterRun</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-1011" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-1011', 'electionTestLeader', 'link-724');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2868"></a><tt class="py-lineno">2868</tt> <tt class="py-line"> <tt class="py-comment"># verify leader didn't just change</tt> </tt>
-<a name="L2869"></a><tt class="py-lineno">2869</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">afterRun</tt> <tt class="py-op">==</tt> <tt class="py-name">leaderList</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2870"></a><tt class="py-lineno">2870</tt> <tt class="py-line"> <tt class="py-name">afterResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2871"></a><tt class="py-lineno">2871</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2872"></a><tt class="py-lineno">2872</tt> <tt class="py-line"> <tt class="py-name">afterResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2873"></a><tt class="py-lineno">2873</tt> <tt class="py-line"> </tt>
-<a name="L2874"></a><tt class="py-lineno">2874</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2875"></a><tt class="py-lineno">2875</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2876"></a><tt class="py-lineno">2876</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">afterResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2877"></a><tt class="py-lineno">2877</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Old leader successfully re-ran for election"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2878"></a><tt class="py-lineno">2878</tt> <tt class="py-line"> <tt id="link-1012" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1012', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something went wrong with Leadership election after "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2879"></a><tt class="py-lineno">2879</tt> <tt class="py-line"> <tt class="py-string">"the old leader re-ran for election"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2880"></a><tt class="py-lineno">2880</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE16"></a><div id="HAminorityRestart.CASE16-def"><a name="L2881"></a><tt class="py-lineno">2881</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE16-toggle" onclick="return toggle('HAminorityRestart.CASE16');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE16">CASE16</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE16-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE16-expanded"><a name="L2882"></a><tt class="py-lineno">2882</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2883"></a><tt class="py-lineno">2883</tt> <tt class="py-line"><tt class="py-docstring"> Install Distributed Primitives app</tt> </tt>
-<a name="L2884"></a><tt class="py-lineno">2884</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2885"></a><tt class="py-lineno">2885</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2886"></a><tt class="py-lineno">2886</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2887"></a><tt class="py-lineno">2887</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2888"></a><tt class="py-lineno">2888</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2889"></a><tt class="py-lineno">2889</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2890"></a><tt class="py-lineno">2890</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1013" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-1013', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2891"></a><tt class="py-lineno">2891</tt> <tt class="py-line"> </tt>
-<a name="L2892"></a><tt class="py-lineno">2892</tt> <tt class="py-line"> <tt class="py-comment"># Variables for the distributed primitives tests</tt> </tt>
-<a name="L2893"></a><tt class="py-lineno">2893</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">pCounterName</tt> </tt>
-<a name="L2894"></a><tt class="py-lineno">2894</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">iCounterName</tt> </tt>
-<a name="L2895"></a><tt class="py-lineno">2895</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">pCounterValue</tt> </tt>
-<a name="L2896"></a><tt class="py-lineno">2896</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">iCounterValue</tt> </tt>
-<a name="L2897"></a><tt class="py-lineno">2897</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">onosSet</tt> </tt>
-<a name="L2898"></a><tt class="py-lineno">2898</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">onosSetName</tt> </tt>
-<a name="L2899"></a><tt class="py-lineno">2899</tt> <tt class="py-line"> <tt class="py-name">pCounterName</tt> <tt class="py-op">=</tt> <tt class="py-string">"TestON-Partitions"</tt> </tt>
-<a name="L2900"></a><tt class="py-lineno">2900</tt> <tt class="py-line"> <tt class="py-name">iCounterName</tt> <tt class="py-op">=</tt> <tt class="py-string">"TestON-inMemory"</tt> </tt>
-<a name="L2901"></a><tt class="py-lineno">2901</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2902"></a><tt class="py-lineno">2902</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2903"></a><tt class="py-lineno">2903</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L2904"></a><tt class="py-lineno">2904</tt> <tt class="py-line"> <tt class="py-name">onosSetName</tt> <tt class="py-op">=</tt> <tt class="py-string">"TestON-set"</tt> </tt>
-<a name="L2905"></a><tt class="py-lineno">2905</tt> <tt class="py-line"> </tt>
-<a name="L2906"></a><tt class="py-lineno">2906</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Install Primitives app"</tt> </tt>
-<a name="L2907"></a><tt class="py-lineno">2907</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1014" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-1014', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2908"></a><tt class="py-lineno">2908</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1015" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1015', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install Primitives app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2909"></a><tt class="py-lineno">2909</tt> <tt class="py-line"> <tt class="py-name">appName</tt> <tt class="py-op">=</tt> <tt class="py-string">"org.onosproject.distributedprimitives"</tt> </tt>
-<a name="L2910"></a><tt class="py-lineno">2910</tt> <tt class="py-line"> <tt class="py-name">appResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1016" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-1016', 'activateApp', 'link-124');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2911"></a><tt class="py-lineno">2911</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2912"></a><tt class="py-lineno">2912</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2913"></a><tt class="py-lineno">2913</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Primitives app activated"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2914"></a><tt class="py-lineno">2914</tt> <tt class="py-line"> <tt id="link-1017" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1017', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Primitives app not activated"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2915"></a><tt class="py-lineno">2915</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt> <tt class="py-comment"># To allow all nodes to activate</tt> </tt>
-</div><a name="L2916"></a><tt class="py-lineno">2916</tt> <tt class="py-line"> </tt>
-<a name="HAminorityRestart.CASE17"></a><div id="HAminorityRestart.CASE17-def"><a name="L2917"></a><tt class="py-lineno">2917</tt> <a class="py-toggle" href="#" id="HAminorityRestart.CASE17-toggle" onclick="return toggle('HAminorityRestart.CASE17');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE17">CASE17</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAminorityRestart.CASE17-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAminorityRestart.CASE17-expanded"><a name="L2918"></a><tt class="py-lineno">2918</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2919"></a><tt class="py-lineno">2919</tt> <tt class="py-line"><tt class="py-docstring"> Check for basic functionality with distributed primitives</tt> </tt>
-<a name="L2920"></a><tt class="py-lineno">2920</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2921"></a><tt class="py-lineno">2921</tt> <tt class="py-line"> <tt class="py-comment"># Make sure variables are defined/set</tt> </tt>
-<a name="L2922"></a><tt class="py-lineno">2922</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2923"></a><tt class="py-lineno">2923</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2924"></a><tt class="py-lineno">2924</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2925"></a><tt class="py-lineno">2925</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2926"></a><tt class="py-lineno">2926</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1018" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-1018', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2927"></a><tt class="py-lineno">2927</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">pCounterName</tt><tt class="py-op">,</tt> <tt class="py-string">"pCounterName not defined"</tt> </tt>
-<a name="L2928"></a><tt class="py-lineno">2928</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-string">"iCounterName not defined"</tt> </tt>
-<a name="L2929"></a><tt class="py-lineno">2929</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-string">"onosSetName not defined"</tt> </tt>
-<a name="L2930"></a><tt class="py-lineno">2930</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: assert fails if value is 0/None/Empty/False</tt> </tt>
-<a name="L2931"></a><tt class="py-lineno">2931</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2932"></a><tt class="py-lineno">2932</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> </tt>
-<a name="L2933"></a><tt class="py-lineno">2933</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2934"></a><tt class="py-lineno">2934</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1019" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1019', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1020" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1020', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pCounterValue not defined, setting to 0"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2935"></a><tt class="py-lineno">2935</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2936"></a><tt class="py-lineno">2936</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2937"></a><tt class="py-lineno">2937</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> </tt>
-<a name="L2938"></a><tt class="py-lineno">2938</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2939"></a><tt class="py-lineno">2939</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1021" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1021', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1022" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1022', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"iCounterValue not defined, setting to 0"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2940"></a><tt class="py-lineno">2940</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2941"></a><tt class="py-lineno">2941</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2942"></a><tt class="py-lineno">2942</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt> </tt>
-<a name="L2943"></a><tt class="py-lineno">2943</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2944"></a><tt class="py-lineno">2944</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1023" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1023', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1024" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1024', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onosSet not defined, setting to empty Set"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2945"></a><tt class="py-lineno">2945</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L2946"></a><tt class="py-lineno">2946</tt> <tt class="py-line"> <tt class="py-comment"># Variables for the distributed primitives tests. These are local only</tt> </tt>
-<a name="L2947"></a><tt class="py-lineno">2947</tt> <tt class="py-line"> <tt class="py-name">addValue</tt> <tt class="py-op">=</tt> <tt class="py-string">"a"</tt> </tt>
-<a name="L2948"></a><tt class="py-lineno">2948</tt> <tt class="py-line"> <tt class="py-name">addAllValue</tt> <tt class="py-op">=</tt> <tt class="py-string">"a b c d e f"</tt> </tt>
-<a name="L2949"></a><tt class="py-lineno">2949</tt> <tt class="py-line"> <tt class="py-name">retainValue</tt> <tt class="py-op">=</tt> <tt class="py-string">"c d e f"</tt> </tt>
-<a name="L2950"></a><tt class="py-lineno">2950</tt> <tt class="py-line"> </tt>
-<a name="L2951"></a><tt class="py-lineno">2951</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Check for basic functionality with distributed "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2952"></a><tt class="py-lineno">2952</tt> <tt class="py-line"> <tt class="py-string">"primitives"</tt> </tt>
-<a name="L2953"></a><tt class="py-lineno">2953</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1025" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-1025', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2954"></a><tt class="py-lineno">2954</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Test the methods of the distributed "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2955"></a><tt class="py-lineno">2955</tt> <tt class="py-line"> <tt class="py-string">"primitives (counters and sets) throught the cli"</tt> </tt>
-<a name="L2956"></a><tt class="py-lineno">2956</tt> <tt class="py-line"> <tt class="py-comment"># DISTRIBUTED ATOMIC COUNTERS</tt> </tt>
-<a name="L2957"></a><tt class="py-lineno">2957</tt> <tt class="py-line"> <tt class="py-comment"># Partitioned counters</tt> </tt>
-<a name="L2958"></a><tt class="py-lineno">2958</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1026" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1026', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Increment then get a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2959"></a><tt class="py-lineno">2959</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2960"></a><tt class="py-lineno">2960</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2961"></a><tt class="py-lineno">2961</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2962"></a><tt class="py-lineno">2962</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2963"></a><tt class="py-lineno">2963</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1027" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1027', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1028" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counterTestAddAndGet"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1028', 'counterTestAddAndGet', 'link-1028');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2964"></a><tt class="py-lineno">2964</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterAddAndGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2965"></a><tt class="py-lineno">2965</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2966"></a><tt class="py-lineno">2966</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2967"></a><tt class="py-lineno">2967</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2968"></a><tt class="py-lineno">2968</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2969"></a><tt class="py-lineno">2969</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2970"></a><tt class="py-lineno">2970</tt> <tt class="py-line"> </tt>
-<a name="L2971"></a><tt class="py-lineno">2971</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2972"></a><tt class="py-lineno">2972</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2973"></a><tt class="py-lineno">2973</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2974"></a><tt class="py-lineno">2974</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L2975"></a><tt class="py-lineno">2975</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2976"></a><tt class="py-lineno">2976</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L2977"></a><tt class="py-lineno">2977</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L2978"></a><tt class="py-lineno">2978</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L2979"></a><tt class="py-lineno">2979</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L2980"></a><tt class="py-lineno">2980</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1029" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1029', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1030" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1030', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L2981"></a><tt class="py-lineno">2981</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2982"></a><tt class="py-lineno">2982</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2983"></a><tt class="py-lineno">2983</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2984"></a><tt class="py-lineno">2984</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2985"></a><tt class="py-lineno">2985</tt> <tt class="py-line"> <tt id="link-1031" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1031', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2986"></a><tt class="py-lineno">2986</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2987"></a><tt class="py-lineno">2987</tt> <tt class="py-line"> </tt>
-<a name="L2988"></a><tt class="py-lineno">2988</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1032" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1032', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get then Increment a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2989"></a><tt class="py-lineno">2989</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2990"></a><tt class="py-lineno">2990</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2991"></a><tt class="py-lineno">2991</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2992"></a><tt class="py-lineno">2992</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2993"></a><tt class="py-lineno">2993</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1033" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1033', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1034" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counterTestGetAndAdd"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd" class="py-name" href="#" onclick="return doclink('link-1034', 'counterTestGetAndAdd', 'link-1034');">counterTestGetAndAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2994"></a><tt class="py-lineno">2994</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterGetAndAdd-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2995"></a><tt class="py-lineno">2995</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2996"></a><tt class="py-lineno">2996</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2997"></a><tt class="py-lineno">2997</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2998"></a><tt class="py-lineno">2998</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2999"></a><tt class="py-lineno">2999</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3000"></a><tt class="py-lineno">3000</tt> <tt class="py-line"> </tt>
-<a name="L3001"></a><tt class="py-lineno">3001</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3002"></a><tt class="py-lineno">3002</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3003"></a><tt class="py-lineno">3003</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3004"></a><tt class="py-lineno">3004</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3005"></a><tt class="py-lineno">3005</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3006"></a><tt class="py-lineno">3006</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3007"></a><tt class="py-lineno">3007</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L3008"></a><tt class="py-lineno">3008</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3009"></a><tt class="py-lineno">3009</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3010"></a><tt class="py-lineno">3010</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1035" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1035', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1036" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1036', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L3011"></a><tt class="py-lineno">3011</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3012"></a><tt class="py-lineno">3012</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3013"></a><tt class="py-lineno">3013</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3014"></a><tt class="py-lineno">3014</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3015"></a><tt class="py-lineno">3015</tt> <tt class="py-line"> <tt id="link-1037" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1037', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3016"></a><tt class="py-lineno">3016</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3017"></a><tt class="py-lineno">3017</tt> <tt class="py-line"> </tt>
-<a name="L3018"></a><tt class="py-lineno">3018</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1038" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1038', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3019"></a><tt class="py-lineno">3019</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1039" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1039', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1040" class="py-name" targets="Function TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#counterCheck,Function TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#counterCheck,Function TestON.tests.HAsanity.dependencies.Counters.counterCheck()=TestON.tests.HAsanity.dependencies.Counters-module.html#counterCheck,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#counterCheck"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1040', 'counterCheck', 'link-1040');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">pCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3020"></a><tt class="py-lineno">3020</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3021"></a><tt class="py-lineno">3021</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L3022"></a><tt class="py-lineno">3022</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3023"></a><tt class="py-lineno">3023</tt> <tt class="py-line"> <tt id="link-1041" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1041', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3024"></a><tt class="py-lineno">3024</tt> <tt class="py-line"> </tt>
-<a name="L3025"></a><tt class="py-lineno">3025</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1042" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1042', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add -8 to then get a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3026"></a><tt class="py-lineno">3026</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3027"></a><tt class="py-lineno">3027</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3028"></a><tt class="py-lineno">3028</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3029"></a><tt class="py-lineno">3029</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3030"></a><tt class="py-lineno">3030</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1043" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1043', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1044" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1044', 'counterTestAddAndGet', 'link-1028');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3031"></a><tt class="py-lineno">3031</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3032"></a><tt class="py-lineno">3032</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3033"></a><tt class="py-lineno">3033</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-op">-</tt><tt class="py-number">8</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3034"></a><tt class="py-lineno">3034</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-op">-</tt><tt class="py-number">8</tt> </tt>
-<a name="L3035"></a><tt class="py-lineno">3035</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3036"></a><tt class="py-lineno">3036</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3037"></a><tt class="py-lineno">3037</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3038"></a><tt class="py-lineno">3038</tt> <tt class="py-line"> </tt>
-<a name="L3039"></a><tt class="py-lineno">3039</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3040"></a><tt class="py-lineno">3040</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3041"></a><tt class="py-lineno">3041</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3042"></a><tt class="py-lineno">3042</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3043"></a><tt class="py-lineno">3043</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3044"></a><tt class="py-lineno">3044</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3045"></a><tt class="py-lineno">3045</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L3046"></a><tt class="py-lineno">3046</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3047"></a><tt class="py-lineno">3047</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3048"></a><tt class="py-lineno">3048</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1045" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1045', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1046" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1046', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L3049"></a><tt class="py-lineno">3049</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3050"></a><tt class="py-lineno">3050</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3051"></a><tt class="py-lineno">3051</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3052"></a><tt class="py-lineno">3052</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3053"></a><tt class="py-lineno">3053</tt> <tt class="py-line"> <tt id="link-1047" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1047', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3054"></a><tt class="py-lineno">3054</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3055"></a><tt class="py-lineno">3055</tt> <tt class="py-line"> </tt>
-<a name="L3056"></a><tt class="py-lineno">3056</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1048" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1048', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add 5 to then get a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3057"></a><tt class="py-lineno">3057</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3058"></a><tt class="py-lineno">3058</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3059"></a><tt class="py-lineno">3059</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3060"></a><tt class="py-lineno">3060</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3061"></a><tt class="py-lineno">3061</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1049" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1049', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1050" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1050', 'counterTestAddAndGet', 'link-1028');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3062"></a><tt class="py-lineno">3062</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3063"></a><tt class="py-lineno">3063</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3064"></a><tt class="py-lineno">3064</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-number">5</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3065"></a><tt class="py-lineno">3065</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L3066"></a><tt class="py-lineno">3066</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3067"></a><tt class="py-lineno">3067</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3068"></a><tt class="py-lineno">3068</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3069"></a><tt class="py-lineno">3069</tt> <tt class="py-line"> </tt>
-<a name="L3070"></a><tt class="py-lineno">3070</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3071"></a><tt class="py-lineno">3071</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3072"></a><tt class="py-lineno">3072</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3073"></a><tt class="py-lineno">3073</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3074"></a><tt class="py-lineno">3074</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3075"></a><tt class="py-lineno">3075</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3076"></a><tt class="py-lineno">3076</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L3077"></a><tt class="py-lineno">3077</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3078"></a><tt class="py-lineno">3078</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3079"></a><tt class="py-lineno">3079</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1051" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1051', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1052" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1052', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L3080"></a><tt class="py-lineno">3080</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3081"></a><tt class="py-lineno">3081</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3082"></a><tt class="py-lineno">3082</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3083"></a><tt class="py-lineno">3083</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3084"></a><tt class="py-lineno">3084</tt> <tt class="py-line"> <tt id="link-1053" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1053', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3085"></a><tt class="py-lineno">3085</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3086"></a><tt class="py-lineno">3086</tt> <tt class="py-line"> </tt>
-<a name="L3087"></a><tt class="py-lineno">3087</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1054" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1054', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get then add 5 to a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3088"></a><tt class="py-lineno">3088</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3089"></a><tt class="py-lineno">3089</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3090"></a><tt class="py-lineno">3090</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3091"></a><tt class="py-lineno">3091</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3092"></a><tt class="py-lineno">3092</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1055" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1055', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1056" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd" class="py-name" href="#" onclick="return doclink('link-1056', 'counterTestGetAndAdd', 'link-1034');">counterTestGetAndAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3093"></a><tt class="py-lineno">3093</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3094"></a><tt class="py-lineno">3094</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3095"></a><tt class="py-lineno">3095</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-number">5</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3096"></a><tt class="py-lineno">3096</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3097"></a><tt class="py-lineno">3097</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L3098"></a><tt class="py-lineno">3098</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3099"></a><tt class="py-lineno">3099</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3100"></a><tt class="py-lineno">3100</tt> <tt class="py-line"> </tt>
-<a name="L3101"></a><tt class="py-lineno">3101</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3102"></a><tt class="py-lineno">3102</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3103"></a><tt class="py-lineno">3103</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3104"></a><tt class="py-lineno">3104</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3105"></a><tt class="py-lineno">3105</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3106"></a><tt class="py-lineno">3106</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3107"></a><tt class="py-lineno">3107</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L3108"></a><tt class="py-lineno">3108</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3109"></a><tt class="py-lineno">3109</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3110"></a><tt class="py-lineno">3110</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1057" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1057', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1058" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1058', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L3111"></a><tt class="py-lineno">3111</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3112"></a><tt class="py-lineno">3112</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3113"></a><tt class="py-lineno">3113</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3114"></a><tt class="py-lineno">3114</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3115"></a><tt class="py-lineno">3115</tt> <tt class="py-line"> <tt id="link-1059" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1059', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3116"></a><tt class="py-lineno">3116</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3117"></a><tt class="py-lineno">3117</tt> <tt class="py-line"> </tt>
-<a name="L3118"></a><tt class="py-lineno">3118</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1060" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1060', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3119"></a><tt class="py-lineno">3119</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1061" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1061', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1062" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1062', 'counterCheck', 'link-1040');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">pCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3120"></a><tt class="py-lineno">3120</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3121"></a><tt class="py-lineno">3121</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L3122"></a><tt class="py-lineno">3122</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3123"></a><tt class="py-lineno">3123</tt> <tt class="py-line"> <tt id="link-1063" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1063', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3124"></a><tt class="py-lineno">3124</tt> <tt class="py-line"> </tt>
-<a name="L3125"></a><tt class="py-lineno">3125</tt> <tt class="py-line"> <tt class="py-comment"># In-Memory counters</tt> </tt>
-<a name="L3126"></a><tt class="py-lineno">3126</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1064" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1064', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Increment and get an in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3127"></a><tt class="py-lineno">3127</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3128"></a><tt class="py-lineno">3128</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3129"></a><tt class="py-lineno">3129</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3130"></a><tt class="py-lineno">3130</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3131"></a><tt class="py-lineno">3131</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1065" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1065', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1066" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1066', 'counterTestAddAndGet', 'link-1028');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3132"></a><tt class="py-lineno">3132</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"icounterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3133"></a><tt class="py-lineno">3133</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3134"></a><tt class="py-lineno">3134</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3135"></a><tt class="py-lineno">3135</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L3136"></a><tt class="py-lineno">3136</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3137"></a><tt class="py-lineno">3137</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3138"></a><tt class="py-lineno">3138</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3139"></a><tt class="py-lineno">3139</tt> <tt class="py-line"> </tt>
-<a name="L3140"></a><tt class="py-lineno">3140</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3141"></a><tt class="py-lineno">3141</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3142"></a><tt class="py-lineno">3142</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3143"></a><tt class="py-lineno">3143</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3144"></a><tt class="py-lineno">3144</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3145"></a><tt class="py-lineno">3145</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3146"></a><tt class="py-lineno">3146</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L3147"></a><tt class="py-lineno">3147</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3148"></a><tt class="py-lineno">3148</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3149"></a><tt class="py-lineno">3149</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1067" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1067', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1068" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1068', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in the in-memory "</tt> </tt>
-<a name="L3150"></a><tt class="py-lineno">3150</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3151"></a><tt class="py-lineno">3151</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3152"></a><tt class="py-lineno">3152</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">iCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3153"></a><tt class="py-lineno">3153</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3154"></a><tt class="py-lineno">3154</tt> <tt class="py-line"> <tt id="link-1069" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1069', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3155"></a><tt class="py-lineno">3155</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3156"></a><tt class="py-lineno">3156</tt> <tt class="py-line"> </tt>
-<a name="L3157"></a><tt class="py-lineno">3157</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1070" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1070', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get then Increment a in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3158"></a><tt class="py-lineno">3158</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3159"></a><tt class="py-lineno">3159</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3160"></a><tt class="py-lineno">3160</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3161"></a><tt class="py-lineno">3161</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3162"></a><tt class="py-lineno">3162</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1071" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1071', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1072" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd" class="py-name" href="#" onclick="return doclink('link-1072', 'counterTestGetAndAdd', 'link-1034');">counterTestGetAndAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3163"></a><tt class="py-lineno">3163</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterGetAndAdd-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3164"></a><tt class="py-lineno">3164</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3165"></a><tt class="py-lineno">3165</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3166"></a><tt class="py-lineno">3166</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3167"></a><tt class="py-lineno">3167</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L3168"></a><tt class="py-lineno">3168</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3169"></a><tt class="py-lineno">3169</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3170"></a><tt class="py-lineno">3170</tt> <tt class="py-line"> </tt>
-<a name="L3171"></a><tt class="py-lineno">3171</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3172"></a><tt class="py-lineno">3172</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3173"></a><tt class="py-lineno">3173</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3174"></a><tt class="py-lineno">3174</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3175"></a><tt class="py-lineno">3175</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3176"></a><tt class="py-lineno">3176</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3177"></a><tt class="py-lineno">3177</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L3178"></a><tt class="py-lineno">3178</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3179"></a><tt class="py-lineno">3179</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3180"></a><tt class="py-lineno">3180</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1073" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1073', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1074" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1074', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in in-memory "</tt> </tt>
-<a name="L3181"></a><tt class="py-lineno">3181</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3182"></a><tt class="py-lineno">3182</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3183"></a><tt class="py-lineno">3183</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">iCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3184"></a><tt class="py-lineno">3184</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3185"></a><tt class="py-lineno">3185</tt> <tt class="py-line"> <tt id="link-1075" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1075', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3186"></a><tt class="py-lineno">3186</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3187"></a><tt class="py-lineno">3187</tt> <tt class="py-line"> </tt>
-<a name="L3188"></a><tt class="py-lineno">3188</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1076" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1076', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3189"></a><tt class="py-lineno">3189</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1077" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1077', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1078" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1078', 'counterCheck', 'link-1040');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3190"></a><tt class="py-lineno">3190</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3191"></a><tt class="py-lineno">3191</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L3192"></a><tt class="py-lineno">3192</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3193"></a><tt class="py-lineno">3193</tt> <tt class="py-line"> <tt id="link-1079" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1079', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3194"></a><tt class="py-lineno">3194</tt> <tt class="py-line"> </tt>
-<a name="L3195"></a><tt class="py-lineno">3195</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1080" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1080', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add -8 to then get a in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3196"></a><tt class="py-lineno">3196</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3197"></a><tt class="py-lineno">3197</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3198"></a><tt class="py-lineno">3198</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3199"></a><tt class="py-lineno">3199</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3200"></a><tt class="py-lineno">3200</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1081" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1081', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1082" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1082', 'counterTestAddAndGet', 'link-1028');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3201"></a><tt class="py-lineno">3201</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3202"></a><tt class="py-lineno">3202</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3203"></a><tt class="py-lineno">3203</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-op">-</tt><tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3204"></a><tt class="py-lineno">3204</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-op">-</tt><tt class="py-number">8</tt> </tt>
-<a name="L3205"></a><tt class="py-lineno">3205</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3206"></a><tt class="py-lineno">3206</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3207"></a><tt class="py-lineno">3207</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3208"></a><tt class="py-lineno">3208</tt> <tt class="py-line"> </tt>
-<a name="L3209"></a><tt class="py-lineno">3209</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3210"></a><tt class="py-lineno">3210</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3211"></a><tt class="py-lineno">3211</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3212"></a><tt class="py-lineno">3212</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3213"></a><tt class="py-lineno">3213</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3214"></a><tt class="py-lineno">3214</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3215"></a><tt class="py-lineno">3215</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L3216"></a><tt class="py-lineno">3216</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3217"></a><tt class="py-lineno">3217</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3218"></a><tt class="py-lineno">3218</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1083" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1083', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1084" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1084', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in in-memory "</tt> </tt>
-<a name="L3219"></a><tt class="py-lineno">3219</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3220"></a><tt class="py-lineno">3220</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3221"></a><tt class="py-lineno">3221</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3222"></a><tt class="py-lineno">3222</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3223"></a><tt class="py-lineno">3223</tt> <tt class="py-line"> <tt id="link-1085" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1085', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3224"></a><tt class="py-lineno">3224</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3225"></a><tt class="py-lineno">3225</tt> <tt class="py-line"> </tt>
-<a name="L3226"></a><tt class="py-lineno">3226</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1086" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1086', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add 5 to then get a in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3227"></a><tt class="py-lineno">3227</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3228"></a><tt class="py-lineno">3228</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3229"></a><tt class="py-lineno">3229</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3230"></a><tt class="py-lineno">3230</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3231"></a><tt class="py-lineno">3231</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1087" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1087', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1088" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1088', 'counterTestAddAndGet', 'link-1028');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3232"></a><tt class="py-lineno">3232</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3233"></a><tt class="py-lineno">3233</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3234"></a><tt class="py-lineno">3234</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-number">5</tt><tt class="py-op">,</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3235"></a><tt class="py-lineno">3235</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L3236"></a><tt class="py-lineno">3236</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3237"></a><tt class="py-lineno">3237</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3238"></a><tt class="py-lineno">3238</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3239"></a><tt class="py-lineno">3239</tt> <tt class="py-line"> </tt>
-<a name="L3240"></a><tt class="py-lineno">3240</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3241"></a><tt class="py-lineno">3241</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3242"></a><tt class="py-lineno">3242</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3243"></a><tt class="py-lineno">3243</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3244"></a><tt class="py-lineno">3244</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3245"></a><tt class="py-lineno">3245</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3246"></a><tt class="py-lineno">3246</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L3247"></a><tt class="py-lineno">3247</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3248"></a><tt class="py-lineno">3248</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3249"></a><tt class="py-lineno">3249</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1089" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1089', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1090" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1090', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in in-memory "</tt> </tt>
-<a name="L3250"></a><tt class="py-lineno">3250</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3251"></a><tt class="py-lineno">3251</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3252"></a><tt class="py-lineno">3252</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3253"></a><tt class="py-lineno">3253</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3254"></a><tt class="py-lineno">3254</tt> <tt class="py-line"> <tt id="link-1091" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1091', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3255"></a><tt class="py-lineno">3255</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3256"></a><tt class="py-lineno">3256</tt> <tt class="py-line"> </tt>
-<a name="L3257"></a><tt class="py-lineno">3257</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1092" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1092', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get then add 5 to a in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3258"></a><tt class="py-lineno">3258</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3259"></a><tt class="py-lineno">3259</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3260"></a><tt class="py-lineno">3260</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3261"></a><tt class="py-lineno">3261</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3262"></a><tt class="py-lineno">3262</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1093" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1093', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1094" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd" class="py-name" href="#" onclick="return doclink('link-1094', 'counterTestGetAndAdd', 'link-1034');">counterTestGetAndAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3263"></a><tt class="py-lineno">3263</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3264"></a><tt class="py-lineno">3264</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3265"></a><tt class="py-lineno">3265</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-number">5</tt><tt class="py-op">,</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3266"></a><tt class="py-lineno">3266</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3267"></a><tt class="py-lineno">3267</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L3268"></a><tt class="py-lineno">3268</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3269"></a><tt class="py-lineno">3269</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3270"></a><tt class="py-lineno">3270</tt> <tt class="py-line"> </tt>
-<a name="L3271"></a><tt class="py-lineno">3271</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3272"></a><tt class="py-lineno">3272</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3273"></a><tt class="py-lineno">3273</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3274"></a><tt class="py-lineno">3274</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3275"></a><tt class="py-lineno">3275</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3276"></a><tt class="py-lineno">3276</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3277"></a><tt class="py-lineno">3277</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L3278"></a><tt class="py-lineno">3278</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3279"></a><tt class="py-lineno">3279</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3280"></a><tt class="py-lineno">3280</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1095" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1095', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1096" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1096', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in in-memory "</tt> </tt>
-<a name="L3281"></a><tt class="py-lineno">3281</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3282"></a><tt class="py-lineno">3282</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3283"></a><tt class="py-lineno">3283</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">iCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3284"></a><tt class="py-lineno">3284</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3285"></a><tt class="py-lineno">3285</tt> <tt class="py-line"> <tt id="link-1097" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1097', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3286"></a><tt class="py-lineno">3286</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3287"></a><tt class="py-lineno">3287</tt> <tt class="py-line"> </tt>
-<a name="L3288"></a><tt class="py-lineno">3288</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1098" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1098', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3289"></a><tt class="py-lineno">3289</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1099" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1099', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1100" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1100', 'counterCheck', 'link-1040');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3290"></a><tt class="py-lineno">3290</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3291"></a><tt class="py-lineno">3291</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L3292"></a><tt class="py-lineno">3292</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3293"></a><tt class="py-lineno">3293</tt> <tt class="py-line"> <tt id="link-1101" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1101', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3294"></a><tt class="py-lineno">3294</tt> <tt class="py-line"> </tt>
-<a name="L3295"></a><tt class="py-lineno">3295</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1102" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1102', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check counters are consistant across nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3296"></a><tt class="py-lineno">3296</tt> <tt class="py-line"> <tt class="py-name">onosCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3297"></a><tt class="py-lineno">3297</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3298"></a><tt class="py-lineno">3298</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3299"></a><tt class="py-lineno">3299</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1103" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1103', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1104" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counters"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters" class="py-name" href="#" onclick="return doclink('link-1104', 'counters', 'link-1104');">counters</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3300"></a><tt class="py-lineno">3300</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counters-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3301"></a><tt class="py-lineno">3301</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3302"></a><tt class="py-lineno">3302</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3303"></a><tt class="py-lineno">3303</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3304"></a><tt class="py-lineno">3304</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3305"></a><tt class="py-lineno">3305</tt> <tt class="py-line"> <tt class="py-name">onosCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3306"></a><tt class="py-lineno">3306</tt> <tt class="py-line"> <tt class="py-name">tmp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosCounters</tt> <tt class="py-op">]</tt> </tt>
-<a name="L3307"></a><tt class="py-lineno">3307</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt> <tt class="py-name">tmp</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3308"></a><tt class="py-lineno">3308</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1105" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1105', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Counters are consistent across all nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3309"></a><tt class="py-lineno">3309</tt> <tt class="py-line"> <tt class="py-name">consistentCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3310"></a><tt class="py-lineno">3310</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3311"></a><tt class="py-lineno">3311</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1106" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1106', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1107" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1107', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters are not consistent across all nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3312"></a><tt class="py-lineno">3312</tt> <tt class="py-line"> <tt class="py-name">consistentCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3313"></a><tt class="py-lineno">3313</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3314"></a><tt class="py-lineno">3314</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3315"></a><tt class="py-lineno">3315</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS counters are consistent "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3316"></a><tt class="py-lineno">3316</tt> <tt class="py-line"> <tt class="py-string">"across nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3317"></a><tt class="py-lineno">3317</tt> <tt class="py-line"> <tt id="link-1108" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1108', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS Counters are inconsistent "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3318"></a><tt class="py-lineno">3318</tt> <tt class="py-line"> <tt class="py-string">"across nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3319"></a><tt class="py-lineno">3319</tt> <tt class="py-line"> </tt>
-<a name="L3320"></a><tt class="py-lineno">3320</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1109" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1109', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3321"></a><tt class="py-lineno">3321</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1110" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1110', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1111" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1111', 'counterCheck', 'link-1040');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3322"></a><tt class="py-lineno">3322</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">incrementCheck</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L3323"></a><tt class="py-lineno">3323</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1112" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1112', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1113" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1113', 'counterCheck', 'link-1040');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3324"></a><tt class="py-lineno">3324</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3325"></a><tt class="py-lineno">3325</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L3326"></a><tt class="py-lineno">3326</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3327"></a><tt class="py-lineno">3327</tt> <tt class="py-line"> <tt id="link-1114" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1114', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3328"></a><tt class="py-lineno">3328</tt> <tt class="py-line"> </tt>
-<a name="L3329"></a><tt class="py-lineno">3329</tt> <tt class="py-line"> <tt class="py-comment"># DISTRIBUTED SETS</tt> </tt>
-<a name="L3330"></a><tt class="py-lineno">3330</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1115" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1115', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set get"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3331"></a><tt class="py-lineno">3331</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3332"></a><tt class="py-lineno">3332</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3333"></a><tt class="py-lineno">3333</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3334"></a><tt class="py-lineno">3334</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3335"></a><tt class="py-lineno">3335</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1116" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1116', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1117" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestGet"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1117', 'setTestGet', 'link-1117');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3336"></a><tt class="py-lineno">3336</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3337"></a><tt class="py-lineno">3337</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3338"></a><tt class="py-lineno">3338</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3339"></a><tt class="py-lineno">3339</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3340"></a><tt class="py-lineno">3340</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3341"></a><tt class="py-lineno">3341</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3342"></a><tt class="py-lineno">3342</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3343"></a><tt class="py-lineno">3343</tt> <tt class="py-line"> </tt>
-<a name="L3344"></a><tt class="py-lineno">3344</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3345"></a><tt class="py-lineno">3345</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3346"></a><tt class="py-lineno">3346</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3347"></a><tt class="py-lineno">3347</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3348"></a><tt class="py-lineno">3348</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3349"></a><tt class="py-lineno">3349</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3350"></a><tt class="py-lineno">3350</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3351"></a><tt class="py-lineno">3351</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1118" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1118', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1119" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1119', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3352"></a><tt class="py-lineno">3352</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3353"></a><tt class="py-lineno">3353</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3354"></a><tt class="py-lineno">3354</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3355"></a><tt class="py-lineno">3355</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1120" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1120', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3356"></a><tt class="py-lineno">3356</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1121" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1121', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3357"></a><tt class="py-lineno">3357</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3358"></a><tt class="py-lineno">3358</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3359"></a><tt class="py-lineno">3359</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3360"></a><tt class="py-lineno">3360</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1122" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1122', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1123" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1123', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3361"></a><tt class="py-lineno">3361</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3362"></a><tt class="py-lineno">3362</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3363"></a><tt class="py-lineno">3363</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3364"></a><tt class="py-lineno">3364</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3365"></a><tt class="py-lineno">3365</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3366"></a><tt class="py-lineno">3366</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3367"></a><tt class="py-lineno">3367</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3368"></a><tt class="py-lineno">3368</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">getResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3369"></a><tt class="py-lineno">3369</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set elements are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3370"></a><tt class="py-lineno">3370</tt> <tt class="py-line"> <tt id="link-1124" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1124', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set elements are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3371"></a><tt class="py-lineno">3371</tt> <tt class="py-line"> </tt>
-<a name="L3372"></a><tt class="py-lineno">3372</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1125" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1125', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set size"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3373"></a><tt class="py-lineno">3373</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3374"></a><tt class="py-lineno">3374</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3375"></a><tt class="py-lineno">3375</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3376"></a><tt class="py-lineno">3376</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1126" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1126', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1127" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestSize"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1127', 'setTestSize', 'link-1127');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3377"></a><tt class="py-lineno">3377</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3378"></a><tt class="py-lineno">3378</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3379"></a><tt class="py-lineno">3379</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3380"></a><tt class="py-lineno">3380</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3381"></a><tt class="py-lineno">3381</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3382"></a><tt class="py-lineno">3382</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3383"></a><tt class="py-lineno">3383</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3384"></a><tt class="py-lineno">3384</tt> <tt class="py-line"> </tt>
-<a name="L3385"></a><tt class="py-lineno">3385</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3386"></a><tt class="py-lineno">3386</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3387"></a><tt class="py-lineno">3387</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3388"></a><tt class="py-lineno">3388</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3389"></a><tt class="py-lineno">3389</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1128" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1128', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1129" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1129', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3390"></a><tt class="py-lineno">3390</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3391"></a><tt class="py-lineno">3391</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3392"></a><tt class="py-lineno">3392</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3393"></a><tt class="py-lineno">3393</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3394"></a><tt class="py-lineno">3394</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">sizeResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3395"></a><tt class="py-lineno">3395</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set sizes are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3396"></a><tt class="py-lineno">3396</tt> <tt class="py-line"> <tt id="link-1130" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1130', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set sizes are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3397"></a><tt class="py-lineno">3397</tt> <tt class="py-line"> </tt>
-<a name="L3398"></a><tt class="py-lineno">3398</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1131" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1131', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set add()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3399"></a><tt class="py-lineno">3399</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">add</tt><tt class="py-op">(</tt> <tt class="py-name">addValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3400"></a><tt class="py-lineno">3400</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3401"></a><tt class="py-lineno">3401</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3402"></a><tt class="py-lineno">3402</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3403"></a><tt class="py-lineno">3403</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1132" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1132', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1133" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestAdd"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd" class="py-name" href="#" onclick="return doclink('link-1133', 'setTestAdd', 'link-1133');">setTestAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3404"></a><tt class="py-lineno">3404</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestAdd-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3405"></a><tt class="py-lineno">3405</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3406"></a><tt class="py-lineno">3406</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3407"></a><tt class="py-lineno">3407</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3408"></a><tt class="py-lineno">3408</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3409"></a><tt class="py-lineno">3409</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3410"></a><tt class="py-lineno">3410</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3411"></a><tt class="py-lineno">3411</tt> <tt class="py-line"> </tt>
-<a name="L3412"></a><tt class="py-lineno">3412</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3413"></a><tt class="py-lineno">3413</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3414"></a><tt class="py-lineno">3414</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3415"></a><tt class="py-lineno">3415</tt> <tt class="py-line"> <tt class="py-name">addResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3416"></a><tt class="py-lineno">3416</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3417"></a><tt class="py-lineno">3417</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3418"></a><tt class="py-lineno">3418</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3419"></a><tt class="py-lineno">3419</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3420"></a><tt class="py-lineno">3420</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3421"></a><tt class="py-lineno">3421</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L3422"></a><tt class="py-lineno">3422</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3423"></a><tt class="py-lineno">3423</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3424"></a><tt class="py-lineno">3424</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3425"></a><tt class="py-lineno">3425</tt> <tt class="py-line"> <tt class="py-name">addResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3426"></a><tt class="py-lineno">3426</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3427"></a><tt class="py-lineno">3427</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3428"></a><tt class="py-lineno">3428</tt> <tt class="py-line"> <tt class="py-name">addResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3429"></a><tt class="py-lineno">3429</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3430"></a><tt class="py-lineno">3430</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1134" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1134', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1135" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1135', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set add"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3431"></a><tt class="py-lineno">3431</tt> <tt class="py-line"> </tt>
-<a name="L3432"></a><tt class="py-lineno">3432</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3433"></a><tt class="py-lineno">3433</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3434"></a><tt class="py-lineno">3434</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3435"></a><tt class="py-lineno">3435</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3436"></a><tt class="py-lineno">3436</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3437"></a><tt class="py-lineno">3437</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1136" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1136', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1137" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1137', 'setTestGet', 'link-1117');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3438"></a><tt class="py-lineno">3438</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3439"></a><tt class="py-lineno">3439</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3440"></a><tt class="py-lineno">3440</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3441"></a><tt class="py-lineno">3441</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3442"></a><tt class="py-lineno">3442</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3443"></a><tt class="py-lineno">3443</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3444"></a><tt class="py-lineno">3444</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3445"></a><tt class="py-lineno">3445</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3446"></a><tt class="py-lineno">3446</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3447"></a><tt class="py-lineno">3447</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3448"></a><tt class="py-lineno">3448</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3449"></a><tt class="py-lineno">3449</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3450"></a><tt class="py-lineno">3450</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3451"></a><tt class="py-lineno">3451</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3452"></a><tt class="py-lineno">3452</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1138" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1138', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1139" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1139', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3453"></a><tt class="py-lineno">3453</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3454"></a><tt class="py-lineno">3454</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3455"></a><tt class="py-lineno">3455</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3456"></a><tt class="py-lineno">3456</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1140" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1140', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3457"></a><tt class="py-lineno">3457</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1141" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1141', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3458"></a><tt class="py-lineno">3458</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3459"></a><tt class="py-lineno">3459</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3460"></a><tt class="py-lineno">3460</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3461"></a><tt class="py-lineno">3461</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1142" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1142', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1143" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1143', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3462"></a><tt class="py-lineno">3462</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3463"></a><tt class="py-lineno">3463</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3464"></a><tt class="py-lineno">3464</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3465"></a><tt class="py-lineno">3465</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3466"></a><tt class="py-lineno">3466</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3467"></a><tt class="py-lineno">3467</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3468"></a><tt class="py-lineno">3468</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3469"></a><tt class="py-lineno">3469</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3470"></a><tt class="py-lineno">3470</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3471"></a><tt class="py-lineno">3471</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1144" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1144', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1145" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1145', 'setTestSize', 'link-1127');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3472"></a><tt class="py-lineno">3472</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3473"></a><tt class="py-lineno">3473</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3474"></a><tt class="py-lineno">3474</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3475"></a><tt class="py-lineno">3475</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3476"></a><tt class="py-lineno">3476</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3477"></a><tt class="py-lineno">3477</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3478"></a><tt class="py-lineno">3478</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3479"></a><tt class="py-lineno">3479</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3480"></a><tt class="py-lineno">3480</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3481"></a><tt class="py-lineno">3481</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3482"></a><tt class="py-lineno">3482</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3483"></a><tt class="py-lineno">3483</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1146" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1146', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1147" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1147', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3484"></a><tt class="py-lineno">3484</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3485"></a><tt class="py-lineno">3485</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3486"></a><tt class="py-lineno">3486</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3487"></a><tt class="py-lineno">3487</tt> <tt class="py-line"> <tt class="py-name">addResults</tt> <tt class="py-op">=</tt> <tt class="py-name">addResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3488"></a><tt class="py-lineno">3488</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3489"></a><tt class="py-lineno">3489</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">addResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3490"></a><tt class="py-lineno">3490</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set add correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3491"></a><tt class="py-lineno">3491</tt> <tt class="py-line"> <tt id="link-1148" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1148', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set add was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3492"></a><tt class="py-lineno">3492</tt> <tt class="py-line"> </tt>
-<a name="L3493"></a><tt class="py-lineno">3493</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1149" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1149', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set addAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3494"></a><tt class="py-lineno">3494</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt id="link-1150" class="py-name" targets="Method TestON.core.dicttoobject.DictToObject.update()=TestON.core.dicttoobject.DictToObject-class.html#update,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#update"><a title="TestON.core.dicttoobject.DictToObject.update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update" class="py-name" href="#" onclick="return doclink('link-1150', 'update', 'link-1150');">update</a></tt><tt class="py-op">(</tt> <tt class="py-name">addAllValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3495"></a><tt class="py-lineno">3495</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3496"></a><tt class="py-lineno">3496</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3497"></a><tt class="py-lineno">3497</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3498"></a><tt class="py-lineno">3498</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1151" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1151', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1152" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd" class="py-name" href="#" onclick="return doclink('link-1152', 'setTestAdd', 'link-1133');">setTestAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3499"></a><tt class="py-lineno">3499</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestAddAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3500"></a><tt class="py-lineno">3500</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3501"></a><tt class="py-lineno">3501</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3502"></a><tt class="py-lineno">3502</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3503"></a><tt class="py-lineno">3503</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3504"></a><tt class="py-lineno">3504</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3505"></a><tt class="py-lineno">3505</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3506"></a><tt class="py-lineno">3506</tt> <tt class="py-line"> </tt>
-<a name="L3507"></a><tt class="py-lineno">3507</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3508"></a><tt class="py-lineno">3508</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3509"></a><tt class="py-lineno">3509</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3510"></a><tt class="py-lineno">3510</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3511"></a><tt class="py-lineno">3511</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3512"></a><tt class="py-lineno">3512</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3513"></a><tt class="py-lineno">3513</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3514"></a><tt class="py-lineno">3514</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3515"></a><tt class="py-lineno">3515</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3516"></a><tt class="py-lineno">3516</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L3517"></a><tt class="py-lineno">3517</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3518"></a><tt class="py-lineno">3518</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3519"></a><tt class="py-lineno">3519</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3520"></a><tt class="py-lineno">3520</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3521"></a><tt class="py-lineno">3521</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3522"></a><tt class="py-lineno">3522</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3523"></a><tt class="py-lineno">3523</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3524"></a><tt class="py-lineno">3524</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addAllResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3525"></a><tt class="py-lineno">3525</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1153" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1153', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1154" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1154', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set addAll"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3526"></a><tt class="py-lineno">3526</tt> <tt class="py-line"> </tt>
-<a name="L3527"></a><tt class="py-lineno">3527</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3528"></a><tt class="py-lineno">3528</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3529"></a><tt class="py-lineno">3529</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3530"></a><tt class="py-lineno">3530</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3531"></a><tt class="py-lineno">3531</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3532"></a><tt class="py-lineno">3532</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1155" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1155', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1156" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1156', 'setTestGet', 'link-1117');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3533"></a><tt class="py-lineno">3533</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3534"></a><tt class="py-lineno">3534</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3535"></a><tt class="py-lineno">3535</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3536"></a><tt class="py-lineno">3536</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3537"></a><tt class="py-lineno">3537</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3538"></a><tt class="py-lineno">3538</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3539"></a><tt class="py-lineno">3539</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3540"></a><tt class="py-lineno">3540</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3541"></a><tt class="py-lineno">3541</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3542"></a><tt class="py-lineno">3542</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3543"></a><tt class="py-lineno">3543</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3544"></a><tt class="py-lineno">3544</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3545"></a><tt class="py-lineno">3545</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3546"></a><tt class="py-lineno">3546</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3547"></a><tt class="py-lineno">3547</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1157" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1157', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1158" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1158', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3548"></a><tt class="py-lineno">3548</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3549"></a><tt class="py-lineno">3549</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3550"></a><tt class="py-lineno">3550</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3551"></a><tt class="py-lineno">3551</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1159" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1159', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3552"></a><tt class="py-lineno">3552</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1160" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1160', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3553"></a><tt class="py-lineno">3553</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3554"></a><tt class="py-lineno">3554</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3555"></a><tt class="py-lineno">3555</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3556"></a><tt class="py-lineno">3556</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1161" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1161', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1162" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1162', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3557"></a><tt class="py-lineno">3557</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3558"></a><tt class="py-lineno">3558</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3559"></a><tt class="py-lineno">3559</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3560"></a><tt class="py-lineno">3560</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3561"></a><tt class="py-lineno">3561</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3562"></a><tt class="py-lineno">3562</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3563"></a><tt class="py-lineno">3563</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3564"></a><tt class="py-lineno">3564</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3565"></a><tt class="py-lineno">3565</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3566"></a><tt class="py-lineno">3566</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1163" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1163', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1164" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1164', 'setTestSize', 'link-1127');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3567"></a><tt class="py-lineno">3567</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3568"></a><tt class="py-lineno">3568</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3569"></a><tt class="py-lineno">3569</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3570"></a><tt class="py-lineno">3570</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3571"></a><tt class="py-lineno">3571</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3572"></a><tt class="py-lineno">3572</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3573"></a><tt class="py-lineno">3573</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3574"></a><tt class="py-lineno">3574</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3575"></a><tt class="py-lineno">3575</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3576"></a><tt class="py-lineno">3576</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3577"></a><tt class="py-lineno">3577</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3578"></a><tt class="py-lineno">3578</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1165" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1165', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1166" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1166', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3579"></a><tt class="py-lineno">3579</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3580"></a><tt class="py-lineno">3580</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3581"></a><tt class="py-lineno">3581</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3582"></a><tt class="py-lineno">3582</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">addAllResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3583"></a><tt class="py-lineno">3583</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3584"></a><tt class="py-lineno">3584</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">addAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3585"></a><tt class="py-lineno">3585</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3586"></a><tt class="py-lineno">3586</tt> <tt class="py-line"> <tt id="link-1167" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1167', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3587"></a><tt class="py-lineno">3587</tt> <tt class="py-line"> </tt>
-<a name="L3588"></a><tt class="py-lineno">3588</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1168" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1168', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set contains()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3589"></a><tt class="py-lineno">3589</tt> <tt class="py-line"> <tt class="py-name">containsResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3590"></a><tt class="py-lineno">3590</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3591"></a><tt class="py-lineno">3591</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3592"></a><tt class="py-lineno">3592</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1169" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1169', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1170" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1170', 'setTestGet', 'link-1117');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3593"></a><tt class="py-lineno">3593</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setContains-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3594"></a><tt class="py-lineno">3594</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3595"></a><tt class="py-lineno">3595</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"values"</tt><tt class="py-op">:</tt> <tt class="py-name">addValue</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3596"></a><tt class="py-lineno">3596</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3597"></a><tt class="py-lineno">3597</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3598"></a><tt class="py-lineno">3598</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3599"></a><tt class="py-lineno">3599</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3600"></a><tt class="py-lineno">3600</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: This is the tuple</tt> </tt>
-<a name="L3601"></a><tt class="py-lineno">3601</tt> <tt class="py-line"> <tt class="py-name">containsResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3602"></a><tt class="py-lineno">3602</tt> <tt class="py-line"> </tt>
-<a name="L3603"></a><tt class="py-lineno">3603</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3604"></a><tt class="py-lineno">3604</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3605"></a><tt class="py-lineno">3605</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">containsResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3606"></a><tt class="py-lineno">3606</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3607"></a><tt class="py-lineno">3607</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3608"></a><tt class="py-lineno">3608</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">containsResults</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L3609"></a><tt class="py-lineno">3609</tt> <tt class="py-line"> <tt class="py-name">containsResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L3610"></a><tt class="py-lineno">3610</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3611"></a><tt class="py-lineno">3611</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">containsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3612"></a><tt class="py-lineno">3612</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set contains is functional"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3613"></a><tt class="py-lineno">3613</tt> <tt class="py-line"> <tt id="link-1171" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1171', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set contains failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3614"></a><tt class="py-lineno">3614</tt> <tt class="py-line"> </tt>
-<a name="L3615"></a><tt class="py-lineno">3615</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1172" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1172', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set containsAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3616"></a><tt class="py-lineno">3616</tt> <tt class="py-line"> <tt class="py-name">containsAllResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3617"></a><tt class="py-lineno">3617</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3618"></a><tt class="py-lineno">3618</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3619"></a><tt class="py-lineno">3619</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1173" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1173', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1174" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1174', 'setTestGet', 'link-1117');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3620"></a><tt class="py-lineno">3620</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setContainsAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3621"></a><tt class="py-lineno">3621</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3622"></a><tt class="py-lineno">3622</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"values"</tt><tt class="py-op">:</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3623"></a><tt class="py-lineno">3623</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3624"></a><tt class="py-lineno">3624</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3625"></a><tt class="py-lineno">3625</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3626"></a><tt class="py-lineno">3626</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3627"></a><tt class="py-lineno">3627</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: This is the tuple</tt> </tt>
-<a name="L3628"></a><tt class="py-lineno">3628</tt> <tt class="py-line"> <tt class="py-name">containsAllResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3629"></a><tt class="py-lineno">3629</tt> <tt class="py-line"> </tt>
-<a name="L3630"></a><tt class="py-lineno">3630</tt> <tt class="py-line"> <tt class="py-name">containsAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3631"></a><tt class="py-lineno">3631</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3632"></a><tt class="py-lineno">3632</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">containsResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3633"></a><tt class="py-lineno">3633</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3634"></a><tt class="py-lineno">3634</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3635"></a><tt class="py-lineno">3635</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">containsResults</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L3636"></a><tt class="py-lineno">3636</tt> <tt class="py-line"> <tt class="py-name">containsResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L3637"></a><tt class="py-lineno">3637</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3638"></a><tt class="py-lineno">3638</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">containsAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3639"></a><tt class="py-lineno">3639</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set containsAll is functional"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3640"></a><tt class="py-lineno">3640</tt> <tt class="py-line"> <tt id="link-1175" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1175', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set containsAll failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3641"></a><tt class="py-lineno">3641</tt> <tt class="py-line"> </tt>
-<a name="L3642"></a><tt class="py-lineno">3642</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1176" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1176', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set remove()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3643"></a><tt class="py-lineno">3643</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt> <tt class="py-name">addValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3644"></a><tt class="py-lineno">3644</tt> <tt class="py-line"> <tt class="py-name">removeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3645"></a><tt class="py-lineno">3645</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3646"></a><tt class="py-lineno">3646</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3647"></a><tt class="py-lineno">3647</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1177" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1177', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1178" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestRemove"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove" class="py-name" href="#" onclick="return doclink('link-1178', 'setTestRemove', 'link-1178');">setTestRemove</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3648"></a><tt class="py-lineno">3648</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestRemove-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3649"></a><tt class="py-lineno">3649</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3650"></a><tt class="py-lineno">3650</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3651"></a><tt class="py-lineno">3651</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3652"></a><tt class="py-lineno">3652</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3653"></a><tt class="py-lineno">3653</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3654"></a><tt class="py-lineno">3654</tt> <tt class="py-line"> <tt class="py-name">removeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3655"></a><tt class="py-lineno">3655</tt> <tt class="py-line"> </tt>
-<a name="L3656"></a><tt class="py-lineno">3656</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3657"></a><tt class="py-lineno">3657</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3658"></a><tt class="py-lineno">3658</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3659"></a><tt class="py-lineno">3659</tt> <tt class="py-line"> <tt class="py-name">removeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3660"></a><tt class="py-lineno">3660</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3661"></a><tt class="py-lineno">3661</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3662"></a><tt class="py-lineno">3662</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3663"></a><tt class="py-lineno">3663</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3664"></a><tt class="py-lineno">3664</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">removeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3665"></a><tt class="py-lineno">3665</tt> <tt class="py-line"> <tt class="py-comment"># not in set, probably fine</tt> </tt>
-<a name="L3666"></a><tt class="py-lineno">3666</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3667"></a><tt class="py-lineno">3667</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">removeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3668"></a><tt class="py-lineno">3668</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3669"></a><tt class="py-lineno">3669</tt> <tt class="py-line"> <tt class="py-name">removeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3670"></a><tt class="py-lineno">3670</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3671"></a><tt class="py-lineno">3671</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3672"></a><tt class="py-lineno">3672</tt> <tt class="py-line"> <tt class="py-name">removeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3673"></a><tt class="py-lineno">3673</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3674"></a><tt class="py-lineno">3674</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1179" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1179', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1180" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1180', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set remove"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3675"></a><tt class="py-lineno">3675</tt> <tt class="py-line"> </tt>
-<a name="L3676"></a><tt class="py-lineno">3676</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3677"></a><tt class="py-lineno">3677</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3678"></a><tt class="py-lineno">3678</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3679"></a><tt class="py-lineno">3679</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3680"></a><tt class="py-lineno">3680</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3681"></a><tt class="py-lineno">3681</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1181" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1181', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1182" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1182', 'setTestGet', 'link-1117');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3682"></a><tt class="py-lineno">3682</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3683"></a><tt class="py-lineno">3683</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3684"></a><tt class="py-lineno">3684</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3685"></a><tt class="py-lineno">3685</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3686"></a><tt class="py-lineno">3686</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3687"></a><tt class="py-lineno">3687</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3688"></a><tt class="py-lineno">3688</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3689"></a><tt class="py-lineno">3689</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3690"></a><tt class="py-lineno">3690</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3691"></a><tt class="py-lineno">3691</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3692"></a><tt class="py-lineno">3692</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3693"></a><tt class="py-lineno">3693</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3694"></a><tt class="py-lineno">3694</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3695"></a><tt class="py-lineno">3695</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3696"></a><tt class="py-lineno">3696</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1183" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1183', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1184" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1184', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3697"></a><tt class="py-lineno">3697</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3698"></a><tt class="py-lineno">3698</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3699"></a><tt class="py-lineno">3699</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3700"></a><tt class="py-lineno">3700</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1185" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1185', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3701"></a><tt class="py-lineno">3701</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1186" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1186', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3702"></a><tt class="py-lineno">3702</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3703"></a><tt class="py-lineno">3703</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3704"></a><tt class="py-lineno">3704</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3705"></a><tt class="py-lineno">3705</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1187" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1187', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1188" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1188', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3706"></a><tt class="py-lineno">3706</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3707"></a><tt class="py-lineno">3707</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3708"></a><tt class="py-lineno">3708</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3709"></a><tt class="py-lineno">3709</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3710"></a><tt class="py-lineno">3710</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3711"></a><tt class="py-lineno">3711</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3712"></a><tt class="py-lineno">3712</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3713"></a><tt class="py-lineno">3713</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3714"></a><tt class="py-lineno">3714</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3715"></a><tt class="py-lineno">3715</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1189" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1189', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1190" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1190', 'setTestSize', 'link-1127');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3716"></a><tt class="py-lineno">3716</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3717"></a><tt class="py-lineno">3717</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3718"></a><tt class="py-lineno">3718</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3719"></a><tt class="py-lineno">3719</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3720"></a><tt class="py-lineno">3720</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3721"></a><tt class="py-lineno">3721</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3722"></a><tt class="py-lineno">3722</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3723"></a><tt class="py-lineno">3723</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3724"></a><tt class="py-lineno">3724</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3725"></a><tt class="py-lineno">3725</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3726"></a><tt class="py-lineno">3726</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3727"></a><tt class="py-lineno">3727</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1191" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1191', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1192" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1192', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3728"></a><tt class="py-lineno">3728</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3729"></a><tt class="py-lineno">3729</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3730"></a><tt class="py-lineno">3730</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3731"></a><tt class="py-lineno">3731</tt> <tt class="py-line"> <tt class="py-name">removeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">removeResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3732"></a><tt class="py-lineno">3732</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3733"></a><tt class="py-lineno">3733</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">removeResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3734"></a><tt class="py-lineno">3734</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set remove correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3735"></a><tt class="py-lineno">3735</tt> <tt class="py-line"> <tt id="link-1193" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1193', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set remove was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3736"></a><tt class="py-lineno">3736</tt> <tt class="py-line"> </tt>
-<a name="L3737"></a><tt class="py-lineno">3737</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1194" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1194', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set removeAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3738"></a><tt class="py-lineno">3738</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">difference_update</tt><tt class="py-op">(</tt> <tt class="py-name">addAllValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3739"></a><tt class="py-lineno">3739</tt> <tt class="py-line"> <tt class="py-name">removeAllResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3740"></a><tt class="py-lineno">3740</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3741"></a><tt class="py-lineno">3741</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3742"></a><tt class="py-lineno">3742</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3743"></a><tt class="py-lineno">3743</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1195" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1195', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1196" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove" class="py-name" href="#" onclick="return doclink('link-1196', 'setTestRemove', 'link-1178');">setTestRemove</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3744"></a><tt class="py-lineno">3744</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestRemoveAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3745"></a><tt class="py-lineno">3745</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3746"></a><tt class="py-lineno">3746</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3747"></a><tt class="py-lineno">3747</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3748"></a><tt class="py-lineno">3748</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3749"></a><tt class="py-lineno">3749</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3750"></a><tt class="py-lineno">3750</tt> <tt class="py-line"> <tt class="py-name">removeAllResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3751"></a><tt class="py-lineno">3751</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L3752"></a><tt class="py-lineno">3752</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1197" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1197', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L3753"></a><tt class="py-lineno">3753</tt> <tt class="py-line"> </tt>
-<a name="L3754"></a><tt class="py-lineno">3754</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3755"></a><tt class="py-lineno">3755</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3756"></a><tt class="py-lineno">3756</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3757"></a><tt class="py-lineno">3757</tt> <tt class="py-line"> <tt class="py-name">removeAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3758"></a><tt class="py-lineno">3758</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3759"></a><tt class="py-lineno">3759</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeAllResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3760"></a><tt class="py-lineno">3760</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3761"></a><tt class="py-lineno">3761</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3762"></a><tt class="py-lineno">3762</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">removeAllResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3763"></a><tt class="py-lineno">3763</tt> <tt class="py-line"> <tt class="py-comment"># not in set, probably fine</tt> </tt>
-<a name="L3764"></a><tt class="py-lineno">3764</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3765"></a><tt class="py-lineno">3765</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">removeAllResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3766"></a><tt class="py-lineno">3766</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3767"></a><tt class="py-lineno">3767</tt> <tt class="py-line"> <tt class="py-name">removeAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3768"></a><tt class="py-lineno">3768</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3769"></a><tt class="py-lineno">3769</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3770"></a><tt class="py-lineno">3770</tt> <tt class="py-line"> <tt class="py-name">removeAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3771"></a><tt class="py-lineno">3771</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeAllResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3772"></a><tt class="py-lineno">3772</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1198" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1198', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1199" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1199', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set removeAll"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3773"></a><tt class="py-lineno">3773</tt> <tt class="py-line"> </tt>
-<a name="L3774"></a><tt class="py-lineno">3774</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3775"></a><tt class="py-lineno">3775</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3776"></a><tt class="py-lineno">3776</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3777"></a><tt class="py-lineno">3777</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3778"></a><tt class="py-lineno">3778</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3779"></a><tt class="py-lineno">3779</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1200" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1200', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1201" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1201', 'setTestGet', 'link-1117');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3780"></a><tt class="py-lineno">3780</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3781"></a><tt class="py-lineno">3781</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3782"></a><tt class="py-lineno">3782</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3783"></a><tt class="py-lineno">3783</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3784"></a><tt class="py-lineno">3784</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3785"></a><tt class="py-lineno">3785</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3786"></a><tt class="py-lineno">3786</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3787"></a><tt class="py-lineno">3787</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3788"></a><tt class="py-lineno">3788</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3789"></a><tt class="py-lineno">3789</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3790"></a><tt class="py-lineno">3790</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3791"></a><tt class="py-lineno">3791</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3792"></a><tt class="py-lineno">3792</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3793"></a><tt class="py-lineno">3793</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3794"></a><tt class="py-lineno">3794</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1202" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1202', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1203" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1203', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3795"></a><tt class="py-lineno">3795</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3796"></a><tt class="py-lineno">3796</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3797"></a><tt class="py-lineno">3797</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3798"></a><tt class="py-lineno">3798</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1204" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1204', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3799"></a><tt class="py-lineno">3799</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1205" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1205', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3800"></a><tt class="py-lineno">3800</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3801"></a><tt class="py-lineno">3801</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3802"></a><tt class="py-lineno">3802</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3803"></a><tt class="py-lineno">3803</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1206" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1206', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1207" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1207', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3804"></a><tt class="py-lineno">3804</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3805"></a><tt class="py-lineno">3805</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3806"></a><tt class="py-lineno">3806</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3807"></a><tt class="py-lineno">3807</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3808"></a><tt class="py-lineno">3808</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3809"></a><tt class="py-lineno">3809</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3810"></a><tt class="py-lineno">3810</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3811"></a><tt class="py-lineno">3811</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3812"></a><tt class="py-lineno">3812</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3813"></a><tt class="py-lineno">3813</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1208" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1208', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1209" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1209', 'setTestSize', 'link-1127');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3814"></a><tt class="py-lineno">3814</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3815"></a><tt class="py-lineno">3815</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3816"></a><tt class="py-lineno">3816</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3817"></a><tt class="py-lineno">3817</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3818"></a><tt class="py-lineno">3818</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3819"></a><tt class="py-lineno">3819</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3820"></a><tt class="py-lineno">3820</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3821"></a><tt class="py-lineno">3821</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3822"></a><tt class="py-lineno">3822</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3823"></a><tt class="py-lineno">3823</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3824"></a><tt class="py-lineno">3824</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3825"></a><tt class="py-lineno">3825</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1210" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1210', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1211" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1211', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3826"></a><tt class="py-lineno">3826</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3827"></a><tt class="py-lineno">3827</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3828"></a><tt class="py-lineno">3828</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3829"></a><tt class="py-lineno">3829</tt> <tt class="py-line"> <tt class="py-name">removeAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">removeAllResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3830"></a><tt class="py-lineno">3830</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3831"></a><tt class="py-lineno">3831</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">removeAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3832"></a><tt class="py-lineno">3832</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set removeAll correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3833"></a><tt class="py-lineno">3833</tt> <tt class="py-line"> <tt id="link-1212" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1212', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set removeAll was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3834"></a><tt class="py-lineno">3834</tt> <tt class="py-line"> </tt>
-<a name="L3835"></a><tt class="py-lineno">3835</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1213" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1213', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set addAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3836"></a><tt class="py-lineno">3836</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt id="link-1214" class="py-name"><a title="TestON.core.dicttoobject.DictToObject.update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update" class="py-name" href="#" onclick="return doclink('link-1214', 'update', 'link-1150');">update</a></tt><tt class="py-op">(</tt> <tt class="py-name">addAllValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3837"></a><tt class="py-lineno">3837</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3838"></a><tt class="py-lineno">3838</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3839"></a><tt class="py-lineno">3839</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3840"></a><tt class="py-lineno">3840</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1215" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1215', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1216" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd" class="py-name" href="#" onclick="return doclink('link-1216', 'setTestAdd', 'link-1133');">setTestAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3841"></a><tt class="py-lineno">3841</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestAddAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3842"></a><tt class="py-lineno">3842</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3843"></a><tt class="py-lineno">3843</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3844"></a><tt class="py-lineno">3844</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3845"></a><tt class="py-lineno">3845</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3846"></a><tt class="py-lineno">3846</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3847"></a><tt class="py-lineno">3847</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3848"></a><tt class="py-lineno">3848</tt> <tt class="py-line"> </tt>
-<a name="L3849"></a><tt class="py-lineno">3849</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3850"></a><tt class="py-lineno">3850</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3851"></a><tt class="py-lineno">3851</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3852"></a><tt class="py-lineno">3852</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3853"></a><tt class="py-lineno">3853</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3854"></a><tt class="py-lineno">3854</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3855"></a><tt class="py-lineno">3855</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3856"></a><tt class="py-lineno">3856</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3857"></a><tt class="py-lineno">3857</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3858"></a><tt class="py-lineno">3858</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L3859"></a><tt class="py-lineno">3859</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3860"></a><tt class="py-lineno">3860</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3861"></a><tt class="py-lineno">3861</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3862"></a><tt class="py-lineno">3862</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3863"></a><tt class="py-lineno">3863</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3864"></a><tt class="py-lineno">3864</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3865"></a><tt class="py-lineno">3865</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3866"></a><tt class="py-lineno">3866</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addAllResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3867"></a><tt class="py-lineno">3867</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1217" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1217', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1218" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1218', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set addAll"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3868"></a><tt class="py-lineno">3868</tt> <tt class="py-line"> </tt>
-<a name="L3869"></a><tt class="py-lineno">3869</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3870"></a><tt class="py-lineno">3870</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3871"></a><tt class="py-lineno">3871</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3872"></a><tt class="py-lineno">3872</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3873"></a><tt class="py-lineno">3873</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3874"></a><tt class="py-lineno">3874</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1219" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1219', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1220" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1220', 'setTestGet', 'link-1117');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3875"></a><tt class="py-lineno">3875</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3876"></a><tt class="py-lineno">3876</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3877"></a><tt class="py-lineno">3877</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3878"></a><tt class="py-lineno">3878</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3879"></a><tt class="py-lineno">3879</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3880"></a><tt class="py-lineno">3880</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3881"></a><tt class="py-lineno">3881</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3882"></a><tt class="py-lineno">3882</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3883"></a><tt class="py-lineno">3883</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3884"></a><tt class="py-lineno">3884</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3885"></a><tt class="py-lineno">3885</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3886"></a><tt class="py-lineno">3886</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3887"></a><tt class="py-lineno">3887</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3888"></a><tt class="py-lineno">3888</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3889"></a><tt class="py-lineno">3889</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1221" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1221', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1222" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1222', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3890"></a><tt class="py-lineno">3890</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3891"></a><tt class="py-lineno">3891</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3892"></a><tt class="py-lineno">3892</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3893"></a><tt class="py-lineno">3893</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1223" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1223', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3894"></a><tt class="py-lineno">3894</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1224" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1224', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3895"></a><tt class="py-lineno">3895</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3896"></a><tt class="py-lineno">3896</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3897"></a><tt class="py-lineno">3897</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3898"></a><tt class="py-lineno">3898</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1225" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1225', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1226" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1226', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3899"></a><tt class="py-lineno">3899</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3900"></a><tt class="py-lineno">3900</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3901"></a><tt class="py-lineno">3901</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3902"></a><tt class="py-lineno">3902</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3903"></a><tt class="py-lineno">3903</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3904"></a><tt class="py-lineno">3904</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3905"></a><tt class="py-lineno">3905</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3906"></a><tt class="py-lineno">3906</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3907"></a><tt class="py-lineno">3907</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3908"></a><tt class="py-lineno">3908</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1227" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1227', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1228" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1228', 'setTestSize', 'link-1127');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3909"></a><tt class="py-lineno">3909</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3910"></a><tt class="py-lineno">3910</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3911"></a><tt class="py-lineno">3911</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3912"></a><tt class="py-lineno">3912</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3913"></a><tt class="py-lineno">3913</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3914"></a><tt class="py-lineno">3914</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3915"></a><tt class="py-lineno">3915</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3916"></a><tt class="py-lineno">3916</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3917"></a><tt class="py-lineno">3917</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3918"></a><tt class="py-lineno">3918</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3919"></a><tt class="py-lineno">3919</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3920"></a><tt class="py-lineno">3920</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1229" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1229', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1230" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1230', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3921"></a><tt class="py-lineno">3921</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3922"></a><tt class="py-lineno">3922</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3923"></a><tt class="py-lineno">3923</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3924"></a><tt class="py-lineno">3924</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">addAllResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3925"></a><tt class="py-lineno">3925</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3926"></a><tt class="py-lineno">3926</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">addAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3927"></a><tt class="py-lineno">3927</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3928"></a><tt class="py-lineno">3928</tt> <tt class="py-line"> <tt id="link-1231" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1231', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3929"></a><tt class="py-lineno">3929</tt> <tt class="py-line"> </tt>
-<a name="L3930"></a><tt class="py-lineno">3930</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1232" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1232', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set clear()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3931"></a><tt class="py-lineno">3931</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">clear</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3932"></a><tt class="py-lineno">3932</tt> <tt class="py-line"> <tt class="py-name">clearResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3933"></a><tt class="py-lineno">3933</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3934"></a><tt class="py-lineno">3934</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3935"></a><tt class="py-lineno">3935</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1233" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1233', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1234" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove" class="py-name" href="#" onclick="return doclink('link-1234', 'setTestRemove', 'link-1178');">setTestRemove</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3936"></a><tt class="py-lineno">3936</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestClear-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3937"></a><tt class="py-lineno">3937</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-string">" "</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-comment"># Values doesn't matter</tt> </tt>
-<a name="L3938"></a><tt class="py-lineno">3938</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"clear"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3939"></a><tt class="py-lineno">3939</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3940"></a><tt class="py-lineno">3940</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3941"></a><tt class="py-lineno">3941</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3942"></a><tt class="py-lineno">3942</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3943"></a><tt class="py-lineno">3943</tt> <tt class="py-line"> <tt class="py-name">clearResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3944"></a><tt class="py-lineno">3944</tt> <tt class="py-line"> </tt>
-<a name="L3945"></a><tt class="py-lineno">3945</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3946"></a><tt class="py-lineno">3946</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3947"></a><tt class="py-lineno">3947</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3948"></a><tt class="py-lineno">3948</tt> <tt class="py-line"> <tt class="py-name">clearResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3949"></a><tt class="py-lineno">3949</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3950"></a><tt class="py-lineno">3950</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">clearResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3951"></a><tt class="py-lineno">3951</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3952"></a><tt class="py-lineno">3952</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3953"></a><tt class="py-lineno">3953</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">clearResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3954"></a><tt class="py-lineno">3954</tt> <tt class="py-line"> <tt class="py-comment"># Nothing set, probably fine</tt> </tt>
-<a name="L3955"></a><tt class="py-lineno">3955</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3956"></a><tt class="py-lineno">3956</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">clearResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3957"></a><tt class="py-lineno">3957</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3958"></a><tt class="py-lineno">3958</tt> <tt class="py-line"> <tt class="py-name">clearResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3959"></a><tt class="py-lineno">3959</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3960"></a><tt class="py-lineno">3960</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3961"></a><tt class="py-lineno">3961</tt> <tt class="py-line"> <tt class="py-name">clearResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3962"></a><tt class="py-lineno">3962</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">clearResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3963"></a><tt class="py-lineno">3963</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1235" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1235', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1236" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1236', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set clear"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3964"></a><tt class="py-lineno">3964</tt> <tt class="py-line"> </tt>
-<a name="L3965"></a><tt class="py-lineno">3965</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3966"></a><tt class="py-lineno">3966</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3967"></a><tt class="py-lineno">3967</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3968"></a><tt class="py-lineno">3968</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3969"></a><tt class="py-lineno">3969</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3970"></a><tt class="py-lineno">3970</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1237" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1237', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1238" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1238', 'setTestGet', 'link-1117');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3971"></a><tt class="py-lineno">3971</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3972"></a><tt class="py-lineno">3972</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3973"></a><tt class="py-lineno">3973</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3974"></a><tt class="py-lineno">3974</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3975"></a><tt class="py-lineno">3975</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3976"></a><tt class="py-lineno">3976</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3977"></a><tt class="py-lineno">3977</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3978"></a><tt class="py-lineno">3978</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3979"></a><tt class="py-lineno">3979</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3980"></a><tt class="py-lineno">3980</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3981"></a><tt class="py-lineno">3981</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3982"></a><tt class="py-lineno">3982</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3983"></a><tt class="py-lineno">3983</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3984"></a><tt class="py-lineno">3984</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3985"></a><tt class="py-lineno">3985</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1239" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1239', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1240" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1240', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3986"></a><tt class="py-lineno">3986</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3987"></a><tt class="py-lineno">3987</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3988"></a><tt class="py-lineno">3988</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3989"></a><tt class="py-lineno">3989</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1241" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1241', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3990"></a><tt class="py-lineno">3990</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1242" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1242', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3991"></a><tt class="py-lineno">3991</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3992"></a><tt class="py-lineno">3992</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3993"></a><tt class="py-lineno">3993</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3994"></a><tt class="py-lineno">3994</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1243" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1243', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1244" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1244', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3995"></a><tt class="py-lineno">3995</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3996"></a><tt class="py-lineno">3996</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3997"></a><tt class="py-lineno">3997</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3998"></a><tt class="py-lineno">3998</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3999"></a><tt class="py-lineno">3999</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L4000"></a><tt class="py-lineno">4000</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4001"></a><tt class="py-lineno">4001</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4002"></a><tt class="py-lineno">4002</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4003"></a><tt class="py-lineno">4003</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4004"></a><tt class="py-lineno">4004</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1245" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1245', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1246" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1246', 'setTestSize', 'link-1127');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4005"></a><tt class="py-lineno">4005</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4006"></a><tt class="py-lineno">4006</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4007"></a><tt class="py-lineno">4007</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4008"></a><tt class="py-lineno">4008</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4009"></a><tt class="py-lineno">4009</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4010"></a><tt class="py-lineno">4010</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4011"></a><tt class="py-lineno">4011</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4012"></a><tt class="py-lineno">4012</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4013"></a><tt class="py-lineno">4013</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4014"></a><tt class="py-lineno">4014</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L4015"></a><tt class="py-lineno">4015</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4016"></a><tt class="py-lineno">4016</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1247" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1247', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1248" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1248', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4017"></a><tt class="py-lineno">4017</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4018"></a><tt class="py-lineno">4018</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4019"></a><tt class="py-lineno">4019</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4020"></a><tt class="py-lineno">4020</tt> <tt class="py-line"> <tt class="py-name">clearResults</tt> <tt class="py-op">=</tt> <tt class="py-name">clearResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L4021"></a><tt class="py-lineno">4021</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L4022"></a><tt class="py-lineno">4022</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">clearResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L4023"></a><tt class="py-lineno">4023</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set clear correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L4024"></a><tt class="py-lineno">4024</tt> <tt class="py-line"> <tt id="link-1249" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1249', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set clear was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4025"></a><tt class="py-lineno">4025</tt> <tt class="py-line"> </tt>
-<a name="L4026"></a><tt class="py-lineno">4026</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1250" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1250', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set addAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4027"></a><tt class="py-lineno">4027</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt id="link-1251" class="py-name"><a title="TestON.core.dicttoobject.DictToObject.update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update" class="py-name" href="#" onclick="return doclink('link-1251', 'update', 'link-1150');">update</a></tt><tt class="py-op">(</tt> <tt class="py-name">addAllValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4028"></a><tt class="py-lineno">4028</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4029"></a><tt class="py-lineno">4029</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4030"></a><tt class="py-lineno">4030</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4031"></a><tt class="py-lineno">4031</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1252" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1252', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1253" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd" class="py-name" href="#" onclick="return doclink('link-1253', 'setTestAdd', 'link-1133');">setTestAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4032"></a><tt class="py-lineno">4032</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestAddAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4033"></a><tt class="py-lineno">4033</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4034"></a><tt class="py-lineno">4034</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4035"></a><tt class="py-lineno">4035</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4036"></a><tt class="py-lineno">4036</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4037"></a><tt class="py-lineno">4037</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4038"></a><tt class="py-lineno">4038</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4039"></a><tt class="py-lineno">4039</tt> <tt class="py-line"> </tt>
-<a name="L4040"></a><tt class="py-lineno">4040</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L4041"></a><tt class="py-lineno">4041</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L4042"></a><tt class="py-lineno">4042</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L4043"></a><tt class="py-lineno">4043</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4044"></a><tt class="py-lineno">4044</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4045"></a><tt class="py-lineno">4045</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4046"></a><tt class="py-lineno">4046</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L4047"></a><tt class="py-lineno">4047</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L4048"></a><tt class="py-lineno">4048</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4049"></a><tt class="py-lineno">4049</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L4050"></a><tt class="py-lineno">4050</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L4051"></a><tt class="py-lineno">4051</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L4052"></a><tt class="py-lineno">4052</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L4053"></a><tt class="py-lineno">4053</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4054"></a><tt class="py-lineno">4054</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L4055"></a><tt class="py-lineno">4055</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L4056"></a><tt class="py-lineno">4056</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4057"></a><tt class="py-lineno">4057</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addAllResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4058"></a><tt class="py-lineno">4058</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1254" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1254', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1255" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1255', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set addAll"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4059"></a><tt class="py-lineno">4059</tt> <tt class="py-line"> </tt>
-<a name="L4060"></a><tt class="py-lineno">4060</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L4061"></a><tt class="py-lineno">4061</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4062"></a><tt class="py-lineno">4062</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4063"></a><tt class="py-lineno">4063</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4064"></a><tt class="py-lineno">4064</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4065"></a><tt class="py-lineno">4065</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1256" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1256', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1257" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1257', 'setTestGet', 'link-1117');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4066"></a><tt class="py-lineno">4066</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4067"></a><tt class="py-lineno">4067</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4068"></a><tt class="py-lineno">4068</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4069"></a><tt class="py-lineno">4069</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4070"></a><tt class="py-lineno">4070</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4071"></a><tt class="py-lineno">4071</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4072"></a><tt class="py-lineno">4072</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4073"></a><tt class="py-lineno">4073</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4074"></a><tt class="py-lineno">4074</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4075"></a><tt class="py-lineno">4075</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4076"></a><tt class="py-lineno">4076</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4077"></a><tt class="py-lineno">4077</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4078"></a><tt class="py-lineno">4078</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L4079"></a><tt class="py-lineno">4079</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L4080"></a><tt class="py-lineno">4080</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1258" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1258', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1259" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1259', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4081"></a><tt class="py-lineno">4081</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4082"></a><tt class="py-lineno">4082</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4083"></a><tt class="py-lineno">4083</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4084"></a><tt class="py-lineno">4084</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1260" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1260', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4085"></a><tt class="py-lineno">4085</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1261" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1261', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4086"></a><tt class="py-lineno">4086</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4087"></a><tt class="py-lineno">4087</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L4088"></a><tt class="py-lineno">4088</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L4089"></a><tt class="py-lineno">4089</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1262" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1262', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1263" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1263', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4090"></a><tt class="py-lineno">4090</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4091"></a><tt class="py-lineno">4091</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4092"></a><tt class="py-lineno">4092</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4093"></a><tt class="py-lineno">4093</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4094"></a><tt class="py-lineno">4094</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L4095"></a><tt class="py-lineno">4095</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4096"></a><tt class="py-lineno">4096</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4097"></a><tt class="py-lineno">4097</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4098"></a><tt class="py-lineno">4098</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4099"></a><tt class="py-lineno">4099</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1264" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1264', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1265" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1265', 'setTestSize', 'link-1127');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4100"></a><tt class="py-lineno">4100</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4101"></a><tt class="py-lineno">4101</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4102"></a><tt class="py-lineno">4102</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4103"></a><tt class="py-lineno">4103</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4104"></a><tt class="py-lineno">4104</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4105"></a><tt class="py-lineno">4105</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4106"></a><tt class="py-lineno">4106</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4107"></a><tt class="py-lineno">4107</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4108"></a><tt class="py-lineno">4108</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4109"></a><tt class="py-lineno">4109</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L4110"></a><tt class="py-lineno">4110</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4111"></a><tt class="py-lineno">4111</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1266" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1266', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1267" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1267', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4112"></a><tt class="py-lineno">4112</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4113"></a><tt class="py-lineno">4113</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4114"></a><tt class="py-lineno">4114</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4115"></a><tt class="py-lineno">4115</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">addAllResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L4116"></a><tt class="py-lineno">4116</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L4117"></a><tt class="py-lineno">4117</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">addAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L4118"></a><tt class="py-lineno">4118</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L4119"></a><tt class="py-lineno">4119</tt> <tt class="py-line"> <tt id="link-1268" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1268', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4120"></a><tt class="py-lineno">4120</tt> <tt class="py-line"> </tt>
-<a name="L4121"></a><tt class="py-lineno">4121</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1269" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1269', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set retain()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4122"></a><tt class="py-lineno">4122</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">intersection_update</tt><tt class="py-op">(</tt> <tt class="py-name">retainValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4123"></a><tt class="py-lineno">4123</tt> <tt class="py-line"> <tt class="py-name">retainResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4124"></a><tt class="py-lineno">4124</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4125"></a><tt class="py-lineno">4125</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4126"></a><tt class="py-lineno">4126</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1270" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1270', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1271" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove" class="py-name" href="#" onclick="return doclink('link-1271', 'setTestRemove', 'link-1178');">setTestRemove</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4127"></a><tt class="py-lineno">4127</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestRetain-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4128"></a><tt class="py-lineno">4128</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">retainValue</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L4129"></a><tt class="py-lineno">4129</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"retain"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4130"></a><tt class="py-lineno">4130</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4131"></a><tt class="py-lineno">4131</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4132"></a><tt class="py-lineno">4132</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4133"></a><tt class="py-lineno">4133</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4134"></a><tt class="py-lineno">4134</tt> <tt class="py-line"> <tt class="py-name">retainResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4135"></a><tt class="py-lineno">4135</tt> <tt class="py-line"> </tt>
-<a name="L4136"></a><tt class="py-lineno">4136</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L4137"></a><tt class="py-lineno">4137</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L4138"></a><tt class="py-lineno">4138</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L4139"></a><tt class="py-lineno">4139</tt> <tt class="py-line"> <tt class="py-name">retainResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4140"></a><tt class="py-lineno">4140</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4141"></a><tt class="py-lineno">4141</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">retainResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4142"></a><tt class="py-lineno">4142</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L4143"></a><tt class="py-lineno">4143</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L4144"></a><tt class="py-lineno">4144</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">retainResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4145"></a><tt class="py-lineno">4145</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L4146"></a><tt class="py-lineno">4146</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L4147"></a><tt class="py-lineno">4147</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">retainResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L4148"></a><tt class="py-lineno">4148</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L4149"></a><tt class="py-lineno">4149</tt> <tt class="py-line"> <tt class="py-name">retainResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4150"></a><tt class="py-lineno">4150</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L4151"></a><tt class="py-lineno">4151</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L4152"></a><tt class="py-lineno">4152</tt> <tt class="py-line"> <tt class="py-name">retainResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4153"></a><tt class="py-lineno">4153</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">retainResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4154"></a><tt class="py-lineno">4154</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1272" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1272', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1273" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1273', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set retain"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4155"></a><tt class="py-lineno">4155</tt> <tt class="py-line"> </tt>
-<a name="L4156"></a><tt class="py-lineno">4156</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L4157"></a><tt class="py-lineno">4157</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4158"></a><tt class="py-lineno">4158</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4159"></a><tt class="py-lineno">4159</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4160"></a><tt class="py-lineno">4160</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4161"></a><tt class="py-lineno">4161</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1274" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1274', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1275" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1275', 'setTestGet', 'link-1117');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4162"></a><tt class="py-lineno">4162</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4163"></a><tt class="py-lineno">4163</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4164"></a><tt class="py-lineno">4164</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4165"></a><tt class="py-lineno">4165</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4166"></a><tt class="py-lineno">4166</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4167"></a><tt class="py-lineno">4167</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4168"></a><tt class="py-lineno">4168</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4169"></a><tt class="py-lineno">4169</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4170"></a><tt class="py-lineno">4170</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4171"></a><tt class="py-lineno">4171</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4172"></a><tt class="py-lineno">4172</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4173"></a><tt class="py-lineno">4173</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4174"></a><tt class="py-lineno">4174</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L4175"></a><tt class="py-lineno">4175</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L4176"></a><tt class="py-lineno">4176</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1276" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1276', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1277" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1277', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4177"></a><tt class="py-lineno">4177</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4178"></a><tt class="py-lineno">4178</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4179"></a><tt class="py-lineno">4179</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4180"></a><tt class="py-lineno">4180</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1278" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1278', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4181"></a><tt class="py-lineno">4181</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1279" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1279', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4182"></a><tt class="py-lineno">4182</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4183"></a><tt class="py-lineno">4183</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L4184"></a><tt class="py-lineno">4184</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L4185"></a><tt class="py-lineno">4185</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1280" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1280', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1281" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1281', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4186"></a><tt class="py-lineno">4186</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4187"></a><tt class="py-lineno">4187</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4188"></a><tt class="py-lineno">4188</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4189"></a><tt class="py-lineno">4189</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4190"></a><tt class="py-lineno">4190</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L4191"></a><tt class="py-lineno">4191</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4192"></a><tt class="py-lineno">4192</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4193"></a><tt class="py-lineno">4193</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4194"></a><tt class="py-lineno">4194</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4195"></a><tt class="py-lineno">4195</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1282" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1282', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1283" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1283', 'setTestSize', 'link-1127');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4196"></a><tt class="py-lineno">4196</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4197"></a><tt class="py-lineno">4197</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4198"></a><tt class="py-lineno">4198</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4199"></a><tt class="py-lineno">4199</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4200"></a><tt class="py-lineno">4200</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4201"></a><tt class="py-lineno">4201</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4202"></a><tt class="py-lineno">4202</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4203"></a><tt class="py-lineno">4203</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4204"></a><tt class="py-lineno">4204</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4205"></a><tt class="py-lineno">4205</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L4206"></a><tt class="py-lineno">4206</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4207"></a><tt class="py-lineno">4207</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1284" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1284', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1285" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1285', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4208"></a><tt class="py-lineno">4208</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4209"></a><tt class="py-lineno">4209</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4210"></a><tt class="py-lineno">4210</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4211"></a><tt class="py-lineno">4211</tt> <tt class="py-line"> <tt class="py-name">retainResults</tt> <tt class="py-op">=</tt> <tt class="py-name">retainResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L4212"></a><tt class="py-lineno">4212</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L4213"></a><tt class="py-lineno">4213</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">retainResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L4214"></a><tt class="py-lineno">4214</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set retain correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L4215"></a><tt class="py-lineno">4215</tt> <tt class="py-line"> <tt id="link-1286" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1286', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set retain was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-</div></div><a name="L4216"></a><tt class="py-lineno">4216</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html b/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html
deleted file mode 100644
index 227ed39..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html
+++ /dev/null
@@ -1,518 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAminorityRestart-module.html">Package HAminorityRestart</a> ::
- <a href="TestON.tests.HAminorityRestart.HAminorityRestart-module.html">Module HAminorityRestart</a> ::
- Class HAminorityRestart
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class HAminorityRestart</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE1" class="summary-sig-name">CASE1</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- CASE1 is to compile ONOS and push it to the test machines</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE2"></a><span class="summary-sig-name">CASE2</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Assign devices to controllers</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE21"></a><span class="summary-sig-name">CASE21</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Assign mastership to controllers</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE21">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE3"></a><span class="summary-sig-name">CASE3</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Assign intents</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE3">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE4"></a><span class="summary-sig-name">CASE4</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Ping across added host intents</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE4">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE5"></a><span class="summary-sig-name">CASE5</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Reading state of ONOS</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE5">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE6"></a><span class="summary-sig-name">CASE6</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- The Failure case.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE6">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE7"></a><span class="summary-sig-name">CASE7</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Check state after ONOS failure</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE7">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE8"></a><span class="summary-sig-name">CASE8</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Compare topo</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE8">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE9"></a><span class="summary-sig-name">CASE9</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Link s3-s28 down</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE9">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE10"></a><span class="summary-sig-name">CASE10</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Link s3-s28 up</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE10">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE11"></a><span class="summary-sig-name">CASE11</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Switch Down</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE11">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE12"></a><span class="summary-sig-name">CASE12</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Switch Up</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE12">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE13"></a><span class="summary-sig-name">CASE13</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Clean up</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE13">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE14"></a><span class="summary-sig-name">CASE14</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- start election app on all onos nodes</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE14">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE15"></a><span class="summary-sig-name">CASE15</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Check that Leadership Election is still functional</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE15">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE16"></a><span class="summary-sig-name">CASE16</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Install Distributed Primitives app</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE16">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE17"></a><span class="summary-sig-name">CASE17</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Check for basic functionality with distributed primitives</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE17">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="CASE1"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">CASE1</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">main</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-pysrc.html#HAminorityRestart.CASE1">source code</a></span>
- </td>
- </tr></table>
-
- <p>CASE1 is to compile ONOS and push it to the test machines</p>
- <p>Startup sequence: cell <name> onos-verify-cell NOTE: temporary -
- onos-remove-raft-logs onos-uninstall start mininet git pull mvn clean
- install onos-package onos-install -f onos-wait-for-start start cli
- sessions start tcpdump</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies-module.html
deleted file mode 100644
index 86832b1..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies-module.html
+++ /dev/null
@@ -1,167 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAminorityRestart.dependencies</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAminorityRestart-module.html">Package HAminorityRestart</a> ::
- Package dependencies
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAminorityRestart.dependencies-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package dependencies</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAminorityRestart.dependencies-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html">TestON.tests.HAminorityRestart.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html">TestON.tests.HAminorityRestart.dependencies.obelisk</a></strong> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies-pysrc.html
deleted file mode 100644
index 267c3a5..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies-pysrc.html
+++ /dev/null
@@ -1,124 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAminorityRestart.dependencies</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAminorityRestart-module.html">Package HAminorityRestart</a> ::
- Package dependencies
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAminorityRestart.dependencies-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAminorityRestart.dependencies-module.html">Package TestON.tests.HAminorityRestart.dependencies</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies.Counters-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies.Counters-module.html
deleted file mode 100644
index d2ac9d5..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies.Counters-module.html
+++ /dev/null
@@ -1,195 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAminorityRestart.dependencies.Counters</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAminorityRestart-module.html">Package HAminorityRestart</a> ::
- <a href="TestON.tests.HAminorityRestart.dependencies-module.html">Package dependencies</a> ::
- Module Counters
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module Counters</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAminorityRestart.dependencies.Counters-pysrc.html">source code</a></span></p>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Functions</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Functions"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.dependencies.Counters-pysrc.html#__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="counterCheck"></a><span class="summary-sig-name">counterCheck</span>(<span class="summary-sig-arg">counterName</span>,
- <span class="summary-sig-arg">counterValue</span>)</span><br />
- Add Text here</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.dependencies.Counters-pysrc.html#counterCheck">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies.Counters-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies.Counters-pysrc.html
deleted file mode 100644
index 4a48c6c..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies.Counters-pysrc.html
+++ /dev/null
@@ -1,182 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAminorityRestart.dependencies.Counters</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAminorityRestart-module.html">Package HAminorityRestart</a> ::
- <a href="TestON.tests.HAminorityRestart.dependencies-module.html">Package dependencies</a> ::
- Module Counters
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAminorityRestart.dependencies.Counters-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html">Module TestON.tests.HAminorityRestart.dependencies.Counters</a></h1>
-<pre class="py-src">
-<a name="__init__"></a><div id="__init__-def"><a name="L1"></a><tt class="py-lineno"> 1</tt> <a class="py-toggle" href="#" id="__init__-toggle" onclick="return toggle('__init__');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="__init__-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="__init__-expanded"><a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"> </tt>
-<a name="counterCheck"></a><div id="counterCheck-def"><a name="L4"></a><tt class="py-lineno"> 4</tt> <a class="py-toggle" href="#" id="counterCheck-toggle" onclick="return toggle('counterCheck');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html#counterCheck">counterCheck</a><tt class="py-op">(</tt> <tt class="py-param">counterName</tt><tt class="py-op">,</tt> <tt class="py-param">counterValue</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="counterCheck-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="counterCheck-expanded"><a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"> Add Text here</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> <tt class="py-name">correctResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"> <tt class="py-comment"># Get onos counters results</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"> <tt class="py-name">onosCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module TestON.core.Thread=TestON.core.Thread-module.html,Class TestON.core.Thread.Thread=TestON.core.Thread.Thread-class.html"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1', 'Thread', 'link-1');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counters"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters" class="py-name" href="#" onclick="return doclink('link-2', 'counters', 'link-2');">counters</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counters-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"> <tt class="py-name">onosCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"> <tt class="py-name">tmp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosCounters</tt> <tt class="py-op">]</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt> <tt class="py-name">tmp</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> <tt class="py-name">consistent</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> <tt class="py-name">consistent</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-3', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-4', 'error', 'link-4');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS nodes have different values for counters"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">:</tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-5', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt> <tt class="py-op">)</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> <tt class="py-comment"># Check for correct values</tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-6', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-7" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-7', 'error', 'link-4');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Could not parse counters response from ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-8', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-name">onosValue</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">database</tt> <tt class="py-keyword">in</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-name">database</tt> <tt class="py-op">=</tt> <tt class="py-name">database</tt><tt class="py-op">.</tt><tt class="py-name">values</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">counter</tt> <tt class="py-keyword">in</tt> <tt class="py-name">database</tt><tt class="py-op">:</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">counter</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'name'</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">counterName</tt><tt class="py-op">:</tt> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-name">onosValue</tt> <tt class="py-op">=</tt> <tt class="py-name">counter</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'value'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-10', 'error', 'link-4');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" counters result "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> <tt class="py-string">"is not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> <tt class="py-name">correctResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosValue</tt> <tt class="py-op">==</tt> <tt class="py-name">counterValue</tt><tt class="py-op">:</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-11', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">counterName</tt> <tt class="py-op">+</tt> <tt class="py-string">" counter value is correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-12', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-13', 'error', 'link-4');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">counterName</tt> <tt class="py-op">+</tt> <tt class="py-string">" counter value is incorrect,"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-string">" expected value: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">counterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" current value: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosValue</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt class="py-name">correctResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">consistent</tt> <tt class="py-keyword">and</tt> <tt class="py-name">correctResults</tt> </tt>
-</div><a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies.obelisk-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies.obelisk-module.html
deleted file mode 100644
index 5e7181e..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies.obelisk-module.html
+++ /dev/null
@@ -1,208 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAminorityRestart.dependencies.obelisk</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAminorityRestart-module.html">Package HAminorityRestart</a> ::
- <a href="TestON.tests.HAminorityRestart.dependencies-module.html">Package dependencies</a> ::
- Module obelisk
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module obelisk</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html" class="summary-name">ObeliskTopo</a>
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Functions</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Functions"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="run"></a><span class="summary-sig-name">run</span>()</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk-pysrc.html#run">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="topos"></a><span class="summary-name">topos</span> = <code title="{'obelisk':(lambda: ObeliskTopo())}">{'obelisk':(lambda: ObeliskTopo())}</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.tests.HAminorityRestart.dependencies'"><code class="variable-quote">'</code><code class="variable-string">TestON.tests.HAminorityRestart.dependencies</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies.obelisk-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies.obelisk-pysrc.html
deleted file mode 100644
index 86093db..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies.obelisk-pysrc.html
+++ /dev/null
@@ -1,273 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAminorityRestart.dependencies.obelisk</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAminorityRestart-module.html">Package HAminorityRestart</a> ::
- <a href="TestON.tests.HAminorityRestart.dependencies-module.html">Package dependencies</a> ::
- Module obelisk
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAminorityRestart.dependencies.obelisk-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html">Module TestON.tests.HAminorityRestart.dependencies.obelisk</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">mininet</tt><tt class="py-op">.</tt><tt class="py-name">topo</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Topo</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"> </tt>
-<a name="ObeliskTopo"></a><div id="ObeliskTopo-def"><a name="L5"></a><tt class="py-lineno"> 5</tt> <a class="py-toggle" href="#" id="ObeliskTopo-toggle" onclick="return toggle('ObeliskTopo');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html">ObeliskTopo</a><tt class="py-op">(</tt> <tt class="py-base-class">Topo</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ObeliskTopo-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="ObeliskTopo-expanded"><a name="ObeliskTopo.__init__"></a><div id="ObeliskTopo.__init__-def"><a name="L6"></a><tt class="py-lineno"> 6</tt> <a class="py-toggle" href="#" id="ObeliskTopo.__init__-toggle" onclick="return toggle('ObeliskTopo.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ObeliskTopo.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="ObeliskTopo.__init__-expanded"><a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"> <tt class="py-name">Topo</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-0', '__init__', 'link-0');">__init__</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> <tt class="py-name">topSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addSwitch"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-1', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s1'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'1000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> <tt class="py-name">leftTopSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-2', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s2'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'2000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"> <tt class="py-name">rightTopSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-3', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s5'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'5000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"> <tt class="py-name">leftBotSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-4', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s3'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'3000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"> <tt class="py-name">rightBotSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-5', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s6'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'6000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"> <tt class="py-name">midBotSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-6', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s28'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'2800'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"> <tt class="py-name">topHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addHost"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-7', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt> <tt class="py-string">'h1'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"> <tt class="py-name">leftTopHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-8', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h2'</tt><tt class="py-op">)</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"> <tt class="py-name">rightTopHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-9', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h5'</tt><tt class="py-op">)</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"> <tt class="py-name">leftBotHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-10', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h3'</tt><tt class="py-op">)</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"> <tt class="py-name">rightBotHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-11', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h6'</tt><tt class="py-op">)</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"> <tt class="py-name">midBotHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-12', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h28'</tt><tt class="py-op">)</tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addLink"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-13', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">topSwitch</tt><tt class="py-op">,</tt><tt class="py-name">topHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-14', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">leftTopHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-15', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">rightTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightTopHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-16', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">leftBotHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-17', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">rightBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightBotHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-18', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">midBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">midBotHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-19', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightTopSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-20', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">topSwitch</tt><tt class="py-op">,</tt><tt class="py-name">leftTopSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-21', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">topSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightTopSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-22', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">leftBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-23', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">rightTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-24', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">midBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-25', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">midBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> <tt class="py-name">agg1Switch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-26', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s4'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'3004'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> <tt class="py-name">agg2Switch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-27', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s7'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'6007'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-name">agg1Host</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-28', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h4'</tt><tt class="py-op">)</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-name">agg2Host</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-29', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h7'</tt><tt class="py-op">)</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-30', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">agg1Switch</tt><tt class="py-op">,</tt><tt class="py-name">agg1Host</tt><tt class="py-op">)</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-31', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">agg2Switch</tt><tt class="py-op">,</tt><tt class="py-name">agg2Host</tt><tt class="py-op">)</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-32', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">agg1Switch</tt><tt class="py-op">,</tt> <tt class="py-name">leftBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-33', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">agg2Switch</tt><tt class="py-op">,</tt> <tt class="py-name">rightBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">8</tt><tt class="py-op">)</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-34', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-string">'30'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-name">host</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-35', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">)</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-36', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">host</tt><tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-37', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">agg1Switch</tt><tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">18</tt><tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-38', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-string">'60'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-name">host</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-39', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-40', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">host</tt><tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-41', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">agg2Switch</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> </tt>
-<a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"><tt id="link-42" class="py-name" targets="Variable TestON.tests.HAclusterRestart.dependencies.obelisk.topos=TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#topos,Variable TestON.tests.HAminorityRestart.dependencies.obelisk.topos=TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#topos,Variable TestON.tests.HAsanity.dependencies.obelisk.topos=TestON.tests.HAsanity.dependencies.obelisk-module.html#topos,Variable TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.topos=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#topos"><a title="TestON.tests.HAclusterRestart.dependencies.obelisk.topos
-TestON.tests.HAminorityRestart.dependencies.obelisk.topos
-TestON.tests.HAsanity.dependencies.obelisk.topos
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.topos" class="py-name" href="#" onclick="return doclink('link-42', 'topos', 'link-42');">topos</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-string">'obelisk'</tt><tt class="py-op">:</tt> <tt class="py-op">(</tt><tt class="py-keyword">lambda</tt><tt class="py-op">:</tt> <tt id="link-43" class="py-name" targets="Class TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html,Class TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html,Class TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html,Class TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html"><a title="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo" class="py-name" href="#" onclick="return doclink('link-43', 'ObeliskTopo', 'link-43');">ObeliskTopo</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">}</tt> </tt>
-<a name="L59"></a><tt class="py-lineno">59</tt> <tt class="py-line"> </tt>
-<a name="run"></a><div id="run-def"><a name="L60"></a><tt class="py-lineno">60</tt> <a class="py-toggle" href="#" id="run-toggle" onclick="return toggle('run');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#run">run</a><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="run-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="run-expanded"><a name="L61"></a><tt class="py-lineno">61</tt> <tt class="py-line"> <tt class="py-name">topo</tt> <tt class="py-op">=</tt> <tt id="link-44" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo" class="py-name" href="#" onclick="return doclink('link-44', 'ObeliskTopo', 'link-43');">ObeliskTopo</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno">62</tt> <tt class="py-line"> <tt id="link-45" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#net"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-45', 'net', 'link-45');">net</a></tt> <tt class="py-op">=</tt> <tt class="py-name">Mininet</tt><tt class="py-op">(</tt> <tt class="py-name">topo</tt><tt class="py-op">=</tt><tt class="py-name">topo</tt><tt class="py-op">,</tt> <tt id="link-46" class="py-name" targets="Package TestON.drivers.common.api.controller=TestON.drivers.common.api.controller-module.html"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-46', 'controller', 'link-46');">controller</a></tt><tt class="py-op">=</tt><tt class="py-name">RemoteController</tt><tt class="py-op">,</tt> <tt class="py-name">autoSetMacs</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno">63</tt> <tt class="py-line"> <tt id="link-47" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-47', 'net', 'link-45');">net</a></tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno">64</tt> <tt class="py-line"> <tt id="link-48" class="py-name" targets="Class TestON.bin.cli.CLI=TestON.bin.cli.CLI-class.html,Class TestON.drivers.common.clidriver.CLI=TestON.drivers.common.clidriver.CLI-class.html"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-48', 'CLI', 'link-48');">CLI</a></tt><tt class="py-op">(</tt> <tt id="link-49" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-49', 'net', 'link-45');">net</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno">65</tt> <tt class="py-line"> <tt id="link-50" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-50', 'net', 'link-45');">net</a></tt><tt class="py-op">.</tt><tt id="link-51" class="py-name" targets="Method TestON.bin.cli.TestThread.stop()=TestON.bin.cli.TestThread-class.html#stop"><a title="TestON.bin.cli.TestThread.stop" class="py-name" href="#" onclick="return doclink('link-51', 'stop', 'link-51');">stop</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L66"></a><tt class="py-lineno">66</tt> <tt class="py-line"> </tt>
-<a name="L67"></a><tt class="py-lineno">67</tt> <tt class="py-line"><tt class="py-keyword">if</tt> <tt class="py-name">__name__</tt> <tt class="py-op">==</tt> <tt class="py-string">'__main__'</tt><tt class="py-op">:</tt> </tt>
-<a name="L68"></a><tt class="py-lineno">68</tt> <tt class="py-line"> <tt class="py-name">setLogLevel</tt><tt class="py-op">(</tt> <tt class="py-string">'info'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno">69</tt> <tt class="py-line"> <tt id="link-52" class="py-name" targets="Method TestON.bin.cli.TestThread.run()=TestON.bin.cli.TestThread-class.html#run,Method TestON.core.Thread.Thread.run()=TestON.core.Thread.Thread-class.html#run,Method TestON.core.teston.TestON.run()=TestON.core.teston.TestON-class.html#run,Function TestON.tests.HAclusterRestart.dependencies.obelisk.run()=TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#run,Function TestON.tests.HAminorityRestart.dependencies.obelisk.run()=TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#run,Function TestON.tests.HAsanity.dependencies.obelisk.run()=TestON.tests.HAsanity.dependencies.obelisk-module.html#run,Function TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#run"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-52', 'run', 'link-52');">run</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno">70</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html b/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html
deleted file mode 100644
index b4845f7..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html
+++ /dev/null
@@ -1,298 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAminorityRestart-module.html">Package HAminorityRestart</a> ::
- <a href="TestON.tests.HAminorityRestart.dependencies-module.html">Package dependencies</a> ::
- <a href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html">Module obelisk</a> ::
- Class ObeliskTopo
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ObeliskTopo</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk-pysrc.html#ObeliskTopo">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_obelisktop_2" name="class_hierarchy_for_obelisktop_2">
-<area shape="rect" id="node1" href="TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html" title="ObeliskTopo" alt="" coords="21,62,115,87"/>
-<area shape="rect" id="node2" href="javascript:void(0);" title="mininet.topo.Topo" alt="" coords="5,6,131,31"/>
-</map>
- <img src="class_hierarchy_for_obelisktop_2.gif" alt='' usemap="#class_hierarchy_for_obelisktop_2" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Topo object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk-pysrc.html#ObeliskTopo.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>mininet.topo.Topo</code></b>:
- <code>addHost</code>,
- <code>addLink</code>,
- <code>addNode</code>,
- <code>addPort</code>,
- <code>addSwitch</code>,
- <code>build</code>,
- <code>convertTo</code>,
- <code>hosts</code>,
- <code>isSwitch</code>,
- <code>iterLinks</code>,
- <code>linkInfo</code>,
- <code>links</code>,
- <code>nodeInfo</code>,
- <code>nodes</code>,
- <code>port</code>,
- <code>setNodeInfo</code>,
- <code>setlinkInfo</code>,
- <code>switches</code>
- </p>
- <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code>mininet.topo.Topo</code></b> (private):
- <code>_linkEntry</code>
- </p></div>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== STATIC METHODS ==================== -->
-<a name="section-StaticMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Static Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-StaticMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>mininet.topo.Topo</code></b>:
- <code>sorted</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk-pysrc.html#ObeliskTopo.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>Topo object. Optional named parameters: hinfo: default host options
- sopts: default switch options lopts: default link options calls
- build()</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsanity-module.html
deleted file mode 100644
index 2990f60..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity-module.html
+++ /dev/null
@@ -1,172 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsanity</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package HAsanity
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsanity-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package HAsanity</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAsanity-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.HAsanity-module.html">TestON.tests.HAsanity.HAsanity</a></strong>: <em class="summary">Description: This test is to determine if the HA test setup is
- working correctly.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.dependencies-module.html">TestON.tests.HAsanity.dependencies</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.dependencies.Counters-module.html">TestON.tests.HAsanity.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.dependencies.obelisk-module.html">TestON.tests.HAsanity.dependencies.obelisk</a></strong> </li>
- </ul>
- </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsanity-pysrc.html
deleted file mode 100644
index 0fb4ebc..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsanity</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package HAsanity
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsanity-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAsanity-module.html">Package TestON.tests.HAsanity</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.HAsanity-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.HAsanity-module.html
deleted file mode 100644
index 442bf0e..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.HAsanity-module.html
+++ /dev/null
@@ -1,195 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsanity.HAsanity</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsanity-module.html">Package HAsanity</a> ::
- Module HAsanity
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsanity.HAsanity-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module HAsanity</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Description: This test is to determine if the HA test setup is
- working correctly. There are no failures so this test should
- have a 100% pass rate
-
-List of test cases:
-CASE1: Compile ONOS and push it to the test machines
-CASE2: Assign devices to controllers
-CASE21: Assign mastership to controllers
-CASE3: Assign intents
-CASE4: Ping across added host intents
-CASE5: Reading state of ONOS
-CASE6: The Failure case. Since this is the Sanity test, we do nothing.
-CASE7: Check state after control plane failure
-CASE8: Compare topo
-CASE9: Link s3-s28 down
-CASE10: Link s3-s28 up
-CASE11: Switch down
-CASE12: Switch up
-CASE13: Clean up
-CASE14: start election app on all onos nodes
-CASE15: Check that Leadership Election is still functional
-CASE16: Install Distributed Primitives app
-CASE17: Check for basic functionality with distributed primitives
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html" class="summary-name">HAsanity</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.HAsanity-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.HAsanity-pysrc.html
deleted file mode 100644
index 17b39dc..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.HAsanity-pysrc.html
+++ /dev/null
@@ -1,4672 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsanity.HAsanity</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsanity-module.html">Package HAsanity</a> ::
- Module HAsanity
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsanity.HAsanity-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAsanity.HAsanity-module.html">Module TestON.tests.HAsanity.HAsanity</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">Description: This test is to determine if the HA test setup is</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring"> working correctly. There are no failures so this test should</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"> have a 100% pass rate</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring">List of test cases:</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring">CASE1: Compile ONOS and push it to the test machines</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring">CASE2: Assign devices to controllers</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring">CASE21: Assign mastership to controllers</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring">CASE3: Assign intents</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring">CASE4: Ping across added host intents</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring">CASE5: Reading state of ONOS</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring">CASE6: The Failure case. Since this is the Sanity test, we do nothing.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring">CASE7: Check state after control plane failure</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring">CASE8: Compare topo</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring">CASE9: Link s3-s28 down</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring">CASE10: Link s3-s28 up</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring">CASE11: Switch down</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">CASE12: Switch up</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">CASE13: Clean up</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">CASE14: start election app on all onos nodes</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">CASE15: Check that Leadership Election is still functional</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">CASE16: Install Distributed Primitives app</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-docstring">CASE17: Check for basic functionality with distributed primitives</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="HAsanity"></a><div id="HAsanity-def"><a name="L28"></a><tt class="py-lineno"> 28</tt> <a class="py-toggle" href="#" id="HAsanity-toggle" onclick="return toggle('HAsanity');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="HAsanity-expanded"><a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.__init__"></a><div id="HAsanity.__init__-def"><a name="L30"></a><tt class="py-lineno"> 30</tt> <a class="py-toggle" href="#" id="HAsanity.__init__-toggle" onclick="return toggle('HAsanity.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.__init__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.__init__-expanded"><a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE1"></a><div id="HAsanity.CASE1-def"><a name="L33"></a><tt class="py-lineno"> 33</tt> <a class="py-toggle" href="#" id="HAsanity.CASE1-toggle" onclick="return toggle('HAsanity.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE1">CASE1</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE1-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE1-expanded"><a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"> CASE1 is to compile ONOS and push it to the test machines</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> Startup sequence:</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"> cell <name></tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"> onos-verify-cell</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: temporary - onos-remove-raft-logs</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring"> onos-uninstall</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring"> start mininet</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-docstring"> git pull</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring"> mvn clean install</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> onos-package</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> onos-install -f</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-docstring"> onos-wait-for-start</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-docstring"> start cli sessions</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-docstring"> start tcpdump</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">imp</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS HA Sanity test - initialization"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-2', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Setting up test environment"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Setup the test environment including "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-string">"installing ONOS, starting Mininet and ONOS"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-string">"cli sessions."</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-comment"># TODO: save all the timers and output them for plotting</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-comment"># load some variables from the params file</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">PULLCODE</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'Git'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'True'</tt><tt class="py-op">:</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">PULLCODE</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">gitBranch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'branch'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'num_controllers'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt><tt class="py-op">:</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op"><</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">:</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-comment"># TODO: refactor how to get onos port, maybe put into component tag?</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-comment"># set global variables</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS1Port</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS2Port</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS3Port</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS4Port</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS5Port</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS6Port</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOS7Port</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: just get controller port from params?</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-comment"># TODO: do we really need all these?</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">ONOS1Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">ONOS2Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port2'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">ONOS3Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port3'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">ONOS4Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port4'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">ONOS5Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port5'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">ONOS6Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port6'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">ONOS7Port</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port7'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">fileName</tt> <tt class="py-op">=</tt> <tt class="py-string">"Counters"</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt id="link-3" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-3', 'path', 'link-3');">path</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'imports'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'path'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Module TestON.tests.HAclusterRestart.dependencies.Counters=TestON.tests.HAclusterRestart.dependencies.Counters-module.html,Module TestON.tests.HAminorityRestart.dependencies.Counters=TestON.tests.HAminorityRestart.dependencies.Counters-module.html,Module TestON.tests.HAsanity.dependencies.Counters=TestON.tests.HAsanity.dependencies.Counters-module.html,Module TestON.tests.HAsingleInstanceRestart.dependencies.Counters=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-4', 'Counters', 'link-4');">Counters</a></tt> <tt class="py-op">=</tt> <tt class="py-name">imp</tt><tt class="py-op">.</tt><tt class="py-name">load_source</tt><tt class="py-op">(</tt> <tt class="py-name">fileName</tt><tt class="py-op">,</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt id="link-5" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-5', 'path', 'link-3');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt> <tt class="py-op">+</tt> <tt class="py-string">".py"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-6', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.core.teston.TestON.cleanup()=TestON.core.teston.TestON-class.html#cleanup"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-7', 'cleanup', 'link-7');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-8', 'exit', 'link-8');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> </tt>
-<a name="L100"></a><tt class="py-lineno"> 100</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L101"></a><tt class="py-lineno"> 101</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#nodes,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#nodes"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-9', 'nodes', 'link-9');">nodes</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L102"></a><tt class="py-lineno"> 102</tt> <tt class="py-line"> <tt class="py-name">ipList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L103"></a><tt class="py-lineno"> 103</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L104"></a><tt class="py-lineno"> 104</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L105"></a><tt class="py-lineno"> 105</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">'ONOScli'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno"> 106</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-10', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">'ONOS'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno"> 107</tt> <tt class="py-line"> <tt class="py-name">ipList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-11', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno"> 108</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L109"></a><tt class="py-lineno"> 109</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L110"></a><tt class="py-lineno"> 110</tt> <tt class="py-line"> </tt>
-<a name="L111"></a><tt class="py-lineno"> 111</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-12', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Create cell file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno"> 112</tt> <tt class="py-line"> <tt class="py-name">cellAppString</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'appString'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L113"></a><tt class="py-lineno"> 113</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile" class="py-name" href="#" onclick="return doclink('link-13', 'createCellFile', 'link-13');">createCellFile</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-name">cellName</tt><tt class="py-op">,</tt> </tt>
-<a name="L114"></a><tt class="py-lineno"> 114</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L115"></a><tt class="py-lineno"> 115</tt> <tt class="py-line"> <tt class="py-name">cellAppString</tt><tt class="py-op">,</tt> <tt class="py-name">ipList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno"> 116</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-14', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Applying cell variable to environment"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno"> 117</tt> <tt class="py-line"> <tt class="py-name">cellResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell,Method TestON.drivers.common.cli.onosdriver.OnosDriver.setCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell" class="py-name" href="#" onclick="return doclink('link-15', 'setCell', 'link-15');">setCell</a></tt><tt class="py-op">(</tt> <tt class="py-name">cellName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno"> 118</tt> <tt class="py-line"> <tt class="py-name">verifyResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell" class="py-name" href="#" onclick="return doclink('link-16', 'verifyCell', 'link-16');">verifyCell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L119"></a><tt class="py-lineno"> 119</tt> <tt class="py-line"> </tt>
-<a name="L120"></a><tt class="py-lineno"> 120</tt> <tt class="py-line"> <tt class="py-comment"># FIXME:this is short term fix</tt> </tt>
-<a name="L121"></a><tt class="py-lineno"> 121</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-17', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Removing raft logs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno"> 122</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosRemoveRaftLogs()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosRemoveRaftLogs"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosRemoveRaftLogs" class="py-name" href="#" onclick="return doclink('link-18', 'onosRemoveRaftLogs', 'link-18');">onosRemoveRaftLogs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L123"></a><tt class="py-lineno"> 123</tt> <tt class="py-line"> </tt>
-<a name="L124"></a><tt class="py-lineno"> 124</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-19', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Uninstalling ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L125"></a><tt class="py-lineno"> 125</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-20', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L126"></a><tt class="py-lineno"> 126</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall" class="py-name" href="#" onclick="return doclink('link-21', 'onosUninstall', 'link-21');">onosUninstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L127"></a><tt class="py-lineno"> 127</tt> <tt class="py-line"> </tt>
-<a name="L128"></a><tt class="py-lineno"> 128</tt> <tt class="py-line"> <tt class="py-comment"># Make sure ONOS is DEAD</tt> </tt>
-<a name="L129"></a><tt class="py-lineno"> 129</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-22', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Killing any ONOS processes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L130"></a><tt class="py-lineno"> 130</tt> <tt class="py-line"> <tt class="py-name">killResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L131"></a><tt class="py-lineno"> 131</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-23', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L132"></a><tt class="py-lineno"> 132</tt> <tt class="py-line"> <tt class="py-name">killed</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosKill()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosKill"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosKill" class="py-name" href="#" onclick="return doclink('link-24', 'onosKill', 'link-24');">onosKill</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno"> 133</tt> <tt class="py-line"> <tt class="py-name">killResults</tt> <tt class="py-op">=</tt> <tt class="py-name">killResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">killed</tt> </tt>
-<a name="L134"></a><tt class="py-lineno"> 134</tt> <tt class="py-line"> </tt>
-<a name="L135"></a><tt class="py-lineno"> 135</tt> <tt class="py-line"> <tt class="py-name">cleanInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L136"></a><tt class="py-lineno"> 136</tt> <tt class="py-line"> <tt class="py-name">gitPullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L137"></a><tt class="py-lineno"> 137</tt> <tt class="py-line"> </tt>
-<a name="L138"></a><tt class="py-lineno"> 138</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-25', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L139"></a><tt class="py-lineno"> 139</tt> <tt class="py-line"> <tt class="py-comment"># scp topo file to mininet</tt> </tt>
-<a name="L140"></a><tt class="py-lineno"> 140</tt> <tt class="py-line"> <tt class="py-comment"># TODO: move to params?</tt> </tt>
-<a name="L141"></a><tt class="py-lineno"> 141</tt> <tt class="py-line"> <tt class="py-name">topoName</tt> <tt class="py-op">=</tt> <tt class="py-string">"obelisk.py"</tt> </tt>
-<a name="L142"></a><tt class="py-lineno"> 142</tt> <tt class="py-line"> <tt class="py-name">filePath</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"/tools/test/topos/"</tt> </tt>
-<a name="L143"></a><tt class="py-lineno"> 143</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#copyMininetFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile" class="py-name" href="#" onclick="return doclink('link-26', 'copyMininetFile', 'link-26');">copyMininetFile</a></tt><tt class="py-op">(</tt> <tt class="py-name">topoName</tt><tt class="py-op">,</tt> <tt class="py-name">filePath</tt><tt class="py-op">,</tt> </tt>
-<a name="L144"></a><tt class="py-lineno"> 144</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L145"></a><tt class="py-lineno"> 145</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno"> 146</tt> <tt class="py-line"> <tt class="py-name">mnResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet" class="py-name" href="#" onclick="return doclink('link-27', 'startNet', 'link-27');">startNet</a></tt><tt class="py-op">(</tt> <tt class="py-op">)</tt> </tt>
-<a name="L147"></a><tt class="py-lineno"> 147</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">mnResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L148"></a><tt class="py-lineno"> 148</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Mininet Started"</tt><tt class="py-op">,</tt> </tt>
-<a name="L149"></a><tt class="py-lineno"> 149</tt> <tt class="py-line"> <tt id="link-28" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-28', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error starting Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno"> 150</tt> <tt class="py-line"> </tt>
-<a name="L151"></a><tt class="py-lineno"> 151</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-29', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Git checkout and pull "</tt> <tt class="py-op">+</tt> <tt class="py-name">gitBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno"> 152</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">PULLCODE</tt><tt class="py-op">:</tt> </tt>
-<a name="L153"></a><tt class="py-lineno"> 153</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitCheckout"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout" class="py-name" href="#" onclick="return doclink('link-30', 'gitCheckout', 'link-30');">gitCheckout</a></tt><tt class="py-op">(</tt> <tt class="py-name">gitBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno"> 154</tt> <tt class="py-line"> <tt class="py-name">gitPullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-31', 'gitPull', 'link-31');">gitPull</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L155"></a><tt class="py-lineno"> 155</tt> <tt class="py-line"> <tt class="py-comment"># values of 1 or 3 are good</tt> </tt>
-<a name="L156"></a><tt class="py-lineno"> 156</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_lesser</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">gitPullResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L157"></a><tt class="py-lineno"> 157</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Git pull successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L158"></a><tt class="py-lineno"> 158</tt> <tt class="py-line"> <tt id="link-32" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-32', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Git pull failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L159"></a><tt class="py-lineno"> 159</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion,Method TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion
-TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion" class="py-name" href="#" onclick="return doclink('link-33', 'getVersion', 'link-33');">getVersion</a></tt><tt class="py-op">(</tt> <tt class="py-name">report</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno"> 160</tt> <tt class="py-line"> </tt>
-<a name="L161"></a><tt class="py-lineno"> 161</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-34', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Using mvn clean install"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L162"></a><tt class="py-lineno"> 162</tt> <tt class="py-line"> <tt class="py-name">cleanInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L163"></a><tt class="py-lineno"> 163</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">PULLCODE</tt> <tt class="py-keyword">and</tt> <tt class="py-name">gitPullResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L164"></a><tt class="py-lineno"> 164</tt> <tt class="py-line"> <tt class="py-name">cleanInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cleanInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall" class="py-name" href="#" onclick="return doclink('link-35', 'cleanInstall', 'link-35');">cleanInstall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L165"></a><tt class="py-lineno"> 165</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L166"></a><tt class="py-lineno"> 166</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-36', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Did not pull new code so skipping mvn "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L167"></a><tt class="py-lineno"> 167</tt> <tt class="py-line"> <tt class="py-string">"clean install"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L168"></a><tt class="py-lineno"> 168</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L169"></a><tt class="py-lineno"> 169</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">cleanInstallResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L170"></a><tt class="py-lineno"> 170</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"MCI successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L171"></a><tt class="py-lineno"> 171</tt> <tt class="py-line"> <tt id="link-37" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-37', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"MCI failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L172"></a><tt class="py-lineno"> 172</tt> <tt class="py-line"> <tt class="py-comment"># GRAPHS</tt> </tt>
-<a name="L173"></a><tt class="py-lineno"> 173</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: important params here:</tt> </tt>
-<a name="L174"></a><tt class="py-lineno"> 174</tt> <tt class="py-line"> <tt class="py-comment"># job = name of Jenkins job</tt> </tt>
-<a name="L175"></a><tt class="py-lineno"> 175</tt> <tt class="py-line"> <tt class="py-comment"># Plot Name = Plot-HA, only can be used if multiple plots</tt> </tt>
-<a name="L176"></a><tt class="py-lineno"> 176</tt> <tt class="py-line"> <tt class="py-comment"># index = The number of the graph under plot name</tt> </tt>
-<a name="L177"></a><tt class="py-lineno"> 177</tt> <tt class="py-line"> <tt class="py-name">job</tt> <tt class="py-op">=</tt> <tt class="py-string">"HAsanity"</tt> </tt>
-<a name="L178"></a><tt class="py-lineno"> 178</tt> <tt class="py-line"> <tt class="py-name">plotName</tt> <tt class="py-op">=</tt> <tt class="py-string">"Plot-HA"</tt> </tt>
-<a name="L179"></a><tt class="py-lineno"> 179</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">=</tt> <tt class="py-string">'<ac:structured-macro ac:name="html">\n'</tt> </tt>
-<a name="L180"></a><tt class="py-lineno"> 180</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">+=</tt> <tt class="py-string">'<ac:plain-text-body><![CDATA[\n'</tt> </tt>
-<a name="L181"></a><tt class="py-lineno"> 181</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">+=</tt> <tt class="py-string">'<iframe src="https://onos-jenkins.onlab.us/job/'</tt> <tt class="py-op">+</tt> <tt class="py-name">job</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L182"></a><tt class="py-lineno"> 182</tt> <tt class="py-line"> <tt class="py-string">'/plot/'</tt> <tt class="py-op">+</tt> <tt class="py-name">plotName</tt> <tt class="py-op">+</tt> <tt class="py-string">'/getPlot?index=0'</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L183"></a><tt class="py-lineno"> 183</tt> <tt class="py-line"> <tt class="py-string">'&width=500&height=300"'</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L184"></a><tt class="py-lineno"> 184</tt> <tt class="py-line"> <tt class="py-string">'noborder="0" width="500" height="300" scrolling="yes" '</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L185"></a><tt class="py-lineno"> 185</tt> <tt class="py-line"> <tt class="py-string">'seamless="seamless"></iframe>\n'</tt> </tt>
-<a name="L186"></a><tt class="py-lineno"> 186</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">+=</tt> <tt class="py-string">']]></ac:plain-text-body>\n'</tt> </tt>
-<a name="L187"></a><tt class="py-lineno"> 187</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">+=</tt> <tt class="py-string">'</ac:structured-macro>\n'</tt> </tt>
-<a name="L188"></a><tt class="py-lineno"> 188</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-38', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt><tt class="py-name">graphs</tt><tt class="py-op">)</tt> </tt>
-<a name="L189"></a><tt class="py-lineno"> 189</tt> <tt class="py-line"> </tt>
-<a name="L190"></a><tt class="py-lineno"> 190</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-39', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Creating ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno"> 191</tt> <tt class="py-line"> <tt class="py-name">packageResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage" class="py-name" href="#" onclick="return doclink('link-40', 'onosPackage', 'link-40');">onosPackage</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L192"></a><tt class="py-lineno"> 192</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">packageResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L193"></a><tt class="py-lineno"> 193</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS package successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L194"></a><tt class="py-lineno"> 194</tt> <tt class="py-line"> <tt id="link-41" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-41', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS package failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L195"></a><tt class="py-lineno"> 195</tt> <tt class="py-line"> </tt>
-<a name="L196"></a><tt class="py-lineno"> 196</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-42', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Installing ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L197"></a><tt class="py-lineno"> 197</tt> <tt class="py-line"> <tt class="py-name">onosInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L198"></a><tt class="py-lineno"> 198</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-43', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L199"></a><tt class="py-lineno"> 199</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall" class="py-name" href="#" onclick="return doclink('link-44', 'onosInstall', 'link-44');">onosInstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">options</tt><tt class="py-op">=</tt><tt class="py-string">"-f"</tt><tt class="py-op">,</tt> </tt>
-<a name="L200"></a><tt class="py-lineno"> 200</tt> <tt class="py-line"> <tt class="py-name">node</tt><tt class="py-op">=</tt><tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L201"></a><tt class="py-lineno"> 201</tt> <tt class="py-line"> <tt class="py-name">onosInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosInstallResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L202"></a><tt class="py-lineno"> 202</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">onosInstallResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L203"></a><tt class="py-lineno"> 203</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS install successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L204"></a><tt class="py-lineno"> 204</tt> <tt class="py-line"> <tt id="link-45" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-45', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS install failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno"> 205</tt> <tt class="py-line"> </tt>
-<a name="L206"></a><tt class="py-lineno"> 206</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-46', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Checking if ONOS is up yet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L207"></a><tt class="py-lineno"> 207</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L208"></a><tt class="py-lineno"> 208</tt> <tt class="py-line"> <tt class="py-name">onosIsupResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L209"></a><tt class="py-lineno"> 209</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-47', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L210"></a><tt class="py-lineno"> 210</tt> <tt class="py-line"> <tt class="py-name">started</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.isup()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-48', 'isup', 'link-48');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno"> 211</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">started</tt><tt class="py-op">:</tt> </tt>
-<a name="L212"></a><tt class="py-lineno"> 212</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-49', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-50" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-50', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" didn't start!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L213"></a><tt class="py-lineno"> 213</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosStop()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStop"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosStop" class="py-name" href="#" onclick="return doclink('link-51', 'onosStop', 'link-51');">onosStop</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L214"></a><tt class="py-lineno"> 214</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosStart()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStart"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosStart" class="py-name" href="#" onclick="return doclink('link-52', 'onosStart', 'link-52');">onosStart</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L215"></a><tt class="py-lineno"> 215</tt> <tt class="py-line"> <tt class="py-name">onosIsupResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosIsupResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">started</tt> </tt>
-<a name="L216"></a><tt class="py-lineno"> 216</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosIsupResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L217"></a><tt class="py-lineno"> 217</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L218"></a><tt class="py-lineno"> 218</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">onosIsupResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L219"></a><tt class="py-lineno"> 219</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS startup successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L220"></a><tt class="py-lineno"> 220</tt> <tt class="py-line"> <tt id="link-53" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-53', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS startup failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L221"></a><tt class="py-lineno"> 221</tt> <tt class="py-line"> </tt>
-<a name="L222"></a><tt class="py-lineno"> 222</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-54', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-55', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting ONOS CLI sessions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L223"></a><tt class="py-lineno"> 223</tt> <tt class="py-line"> <tt class="py-name">cliResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L224"></a><tt class="py-lineno"> 224</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L225"></a><tt class="py-lineno"> 225</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L226"></a><tt class="py-lineno"> 226</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name" targets="Module TestON.core.Thread=TestON.core.Thread-module.html,Class TestON.core.Thread.Thread=TestON.core.Thread.Thread-class.html"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-56', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#startOnosCli"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli" class="py-name" href="#" onclick="return doclink('link-57', 'startOnosCli', 'link-57');">startOnosCli</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L227"></a><tt class="py-lineno"> 227</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"startOnosCli-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L228"></a><tt class="py-lineno"> 228</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-58', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L229"></a><tt class="py-lineno"> 229</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L230"></a><tt class="py-lineno"> 230</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L231"></a><tt class="py-lineno"> 231</tt> <tt class="py-line"> </tt>
-<a name="L232"></a><tt class="py-lineno"> 232</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L233"></a><tt class="py-lineno"> 233</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L234"></a><tt class="py-lineno"> 234</tt> <tt class="py-line"> <tt class="py-name">cliResults</tt> <tt class="py-op">=</tt> <tt class="py-name">cliResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L235"></a><tt class="py-lineno"> 235</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">cliResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L236"></a><tt class="py-lineno"> 236</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS cli startup successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L237"></a><tt class="py-lineno"> 237</tt> <tt class="py-line"> <tt id="link-59" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-59', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS cli startup failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L238"></a><tt class="py-lineno"> 238</tt> <tt class="py-line"> </tt>
-<a name="L239"></a><tt class="py-lineno"> 239</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'tcpdump'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-string">"true"</tt><tt class="py-op">:</tt> </tt>
-<a name="L240"></a><tt class="py-lineno"> 240</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-60', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start Packet Capture MN"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L241"></a><tt class="py-lineno"> 241</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startTcpdump()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startTcpdump,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.startTcpdump()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#startTcpdump"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startTcpdump
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.startTcpdump" class="py-name" href="#" onclick="return doclink('link-61', 'startTcpdump', 'link-61');">startTcpdump</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L242"></a><tt class="py-lineno"> 242</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MNtcpdump'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'folder'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">)</tt> </tt>
-<a name="L243"></a><tt class="py-lineno"> 243</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">"-MN.pcap"</tt><tt class="py-op">,</tt> </tt>
-<a name="L244"></a><tt class="py-lineno"> 244</tt> <tt class="py-line"> <tt class="py-name">intf</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MNtcpdump'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'intf'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L245"></a><tt class="py-lineno"> 245</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MNtcpdump'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L246"></a><tt class="py-lineno"> 246</tt> <tt class="py-line"> </tt>
-<a name="L247"></a><tt class="py-lineno"> 247</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-62', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"App Ids check"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L248"></a><tt class="py-lineno"> 248</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L249"></a><tt class="py-lineno"> 249</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L250"></a><tt class="py-lineno"> 250</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L251"></a><tt class="py-lineno"> 251</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-63', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appToIDCheck"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-64', 'appToIDCheck', 'link-64');">appToIDCheck</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L252"></a><tt class="py-lineno"> 252</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"appToIDCheck-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L253"></a><tt class="py-lineno"> 253</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L254"></a><tt class="py-lineno"> 254</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L255"></a><tt class="py-lineno"> 255</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L256"></a><tt class="py-lineno"> 256</tt> <tt class="py-line"> </tt>
-<a name="L257"></a><tt class="py-lineno"> 257</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L258"></a><tt class="py-lineno"> 258</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L259"></a><tt class="py-lineno"> 259</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">appCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L260"></a><tt class="py-lineno"> 260</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L261"></a><tt class="py-lineno"> 261</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-65', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#apps,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#apps"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-66', 'apps', 'link-66');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno"> 262</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-67', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appIDs"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-68', 'appIDs', 'link-68');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L263"></a><tt class="py-lineno"> 263</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L264"></a><tt class="py-lineno"> 264</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L265"></a><tt class="py-lineno"> 265</tt> <tt class="py-line"> <tt id="link-69" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-69', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L266"></a><tt class="py-lineno"> 266</tt> <tt class="py-line"> </tt>
-<a name="L267"></a><tt class="py-lineno"> 267</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">cliResults</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L268"></a><tt class="py-lineno"> 268</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-70', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-71', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to start ONOS, stopping test"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L269"></a><tt class="py-lineno"> 269</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-72', 'cleanup', 'link-7');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L270"></a><tt class="py-lineno"> 270</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-73', 'exit', 'link-8');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L271"></a><tt class="py-lineno"> 271</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE2"></a><div id="HAsanity.CASE2-def"><a name="L272"></a><tt class="py-lineno"> 272</tt> <a class="py-toggle" href="#" id="HAsanity.CASE2-toggle" onclick="return toggle('HAsanity.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE2">CASE2</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE2-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE2-expanded"><a name="L273"></a><tt class="py-lineno"> 273</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L274"></a><tt class="py-lineno"> 274</tt> <tt class="py-line"><tt class="py-docstring"> Assign devices to controllers</tt> </tt>
-<a name="L275"></a><tt class="py-lineno"> 275</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L276"></a><tt class="py-lineno"> 276</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L277"></a><tt class="py-lineno"> 277</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L278"></a><tt class="py-lineno"> 278</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L279"></a><tt class="py-lineno"> 279</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L280"></a><tt class="py-lineno"> 280</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L281"></a><tt class="py-lineno"> 281</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-74', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L282"></a><tt class="py-lineno"> 282</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS1Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS1Port not defined"</tt> </tt>
-<a name="L283"></a><tt class="py-lineno"> 283</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS2Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS2Port not defined"</tt> </tt>
-<a name="L284"></a><tt class="py-lineno"> 284</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS3Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS3Port not defined"</tt> </tt>
-<a name="L285"></a><tt class="py-lineno"> 285</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS4Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS4Port not defined"</tt> </tt>
-<a name="L286"></a><tt class="py-lineno"> 286</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS5Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS5Port not defined"</tt> </tt>
-<a name="L287"></a><tt class="py-lineno"> 287</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS6Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS6Port not defined"</tt> </tt>
-<a name="L288"></a><tt class="py-lineno"> 288</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS7Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS7Port not defined"</tt> </tt>
-<a name="L289"></a><tt class="py-lineno"> 289</tt> <tt class="py-line"> </tt>
-<a name="L290"></a><tt class="py-lineno"> 290</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-75', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assigning devices to controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L291"></a><tt class="py-lineno"> 291</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Assign switches to ONOS using 'ovs-vsctl' "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L292"></a><tt class="py-lineno"> 292</tt> <tt class="py-line"> <tt class="py-string">"and check that an ONOS node becomes the "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L293"></a><tt class="py-lineno"> 293</tt> <tt class="py-line"> <tt class="py-string">"master of the device."</tt> </tt>
-<a name="L294"></a><tt class="py-lineno"> 294</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-76', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assign switches to controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L295"></a><tt class="py-lineno"> 295</tt> <tt class="py-line"> </tt>
-<a name="L296"></a><tt class="py-lineno"> 296</tt> <tt class="py-line"> <tt class="py-name">ipList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L297"></a><tt class="py-lineno"> 297</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L298"></a><tt class="py-lineno"> 298</tt> <tt class="py-line"> <tt class="py-name">ipList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-77', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L299"></a><tt class="py-lineno"> 299</tt> <tt class="py-line"> <tt class="py-name">swList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L300"></a><tt class="py-lineno"> 300</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L301"></a><tt class="py-lineno"> 301</tt> <tt class="py-line"> <tt class="py-name">swList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L302"></a><tt class="py-lineno"> 302</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignSwController"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController" class="py-name" href="#" onclick="return doclink('link-78', 'assignSwController', 'link-78');">assignSwController</a></tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt><tt class="py-op">=</tt><tt class="py-name">swList</tt><tt class="py-op">,</tt> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">ipList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L303"></a><tt class="py-lineno"> 303</tt> <tt class="py-line"> </tt>
-<a name="L304"></a><tt class="py-lineno"> 304</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L305"></a><tt class="py-lineno"> 305</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L306"></a><tt class="py-lineno"> 306</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwController()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwController"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwController" class="py-name" href="#" onclick="return doclink('link-79', 'getSwController', 'link-79');">getSwController</a></tt><tt class="py-op">(</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L307"></a><tt class="py-lineno"> 307</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L308"></a><tt class="py-lineno"> 308</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-80', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L309"></a><tt class="py-lineno"> 309</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L310"></a><tt class="py-lineno"> 310</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-81', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno"> 311</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-82', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L312"></a><tt class="py-lineno"> 312</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"tcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L313"></a><tt class="py-lineno"> 313</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">mastershipCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L314"></a><tt class="py-lineno"> 314</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L315"></a><tt class="py-lineno"> 315</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-83', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-84', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, node "</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> <tt class="py-string">" is "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L316"></a><tt class="py-lineno"> 316</tt> <tt class="py-line"> <tt class="py-string">"not in the list of controllers s"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L317"></a><tt class="py-lineno"> 317</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is connecting to."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L318"></a><tt class="py-lineno"> 318</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L319"></a><tt class="py-lineno"> 319</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L320"></a><tt class="py-lineno"> 320</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L321"></a><tt class="py-lineno"> 321</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">mastershipCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L322"></a><tt class="py-lineno"> 322</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Switch mastership assigned correctly"</tt><tt class="py-op">,</tt> </tt>
-<a name="L323"></a><tt class="py-lineno"> 323</tt> <tt class="py-line"> <tt id="link-85" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-85', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Switches not assigned correctly to controllers"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L324"></a><tt class="py-lineno"> 324</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE21"></a><div id="HAsanity.CASE21-def"><a name="L325"></a><tt class="py-lineno"> 325</tt> <a class="py-toggle" href="#" id="HAsanity.CASE21-toggle" onclick="return toggle('HAsanity.CASE21');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE21">CASE21</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE21-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE21-expanded"><a name="L326"></a><tt class="py-lineno"> 326</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L327"></a><tt class="py-lineno"> 327</tt> <tt class="py-line"><tt class="py-docstring"> Assign mastership to controllers</tt> </tt>
-<a name="L328"></a><tt class="py-lineno"> 328</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L329"></a><tt class="py-lineno"> 329</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L330"></a><tt class="py-lineno"> 330</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L331"></a><tt class="py-lineno"> 331</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L332"></a><tt class="py-lineno"> 332</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L333"></a><tt class="py-lineno"> 333</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L334"></a><tt class="py-lineno"> 334</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-86', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L335"></a><tt class="py-lineno"> 335</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS1Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS1Port not defined"</tt> </tt>
-<a name="L336"></a><tt class="py-lineno"> 336</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS2Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS2Port not defined"</tt> </tt>
-<a name="L337"></a><tt class="py-lineno"> 337</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS3Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS3Port not defined"</tt> </tt>
-<a name="L338"></a><tt class="py-lineno"> 338</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS4Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS4Port not defined"</tt> </tt>
-<a name="L339"></a><tt class="py-lineno"> 339</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS5Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS5Port not defined"</tt> </tt>
-<a name="L340"></a><tt class="py-lineno"> 340</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS6Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS6Port not defined"</tt> </tt>
-<a name="L341"></a><tt class="py-lineno"> 341</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS7Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS7Port not defined"</tt> </tt>
-<a name="L342"></a><tt class="py-lineno"> 342</tt> <tt class="py-line"> </tt>
-<a name="L343"></a><tt class="py-lineno"> 343</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-87', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assigning Controller roles for switches"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L344"></a><tt class="py-lineno"> 344</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Check that ONOS is connected to each "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L345"></a><tt class="py-lineno"> 345</tt> <tt class="py-line"> <tt class="py-string">"device. Then manually assign"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L346"></a><tt class="py-lineno"> 346</tt> <tt class="py-line"> <tt class="py-string">" mastership to specific ONOS nodes using"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L347"></a><tt class="py-lineno"> 347</tt> <tt class="py-line"> <tt class="py-string">" 'device-role'"</tt> </tt>
-<a name="L348"></a><tt class="py-lineno"> 348</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-88', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assign mastership of switches to specific controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L349"></a><tt class="py-lineno"> 349</tt> <tt class="py-line"> <tt class="py-comment"># Manually assign mastership to the controller we want</tt> </tt>
-<a name="L350"></a><tt class="py-lineno"> 350</tt> <tt class="py-line"> <tt class="py-name">roleCall</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L351"></a><tt class="py-lineno"> 351</tt> <tt class="py-line"> </tt>
-<a name="L352"></a><tt class="py-lineno"> 352</tt> <tt class="py-line"> <tt class="py-name">ipList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-op">]</tt> </tt>
-<a name="L353"></a><tt class="py-lineno"> 353</tt> <tt class="py-line"> <tt class="py-name">deviceList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L354"></a><tt class="py-lineno"> 354</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L355"></a><tt class="py-lineno"> 355</tt> <tt class="py-line"> <tt class="py-comment"># Assign mastership to specific controllers. This assignment was</tt> </tt>
-<a name="L356"></a><tt class="py-lineno"> 356</tt> <tt class="py-line"> <tt class="py-comment"># determined for a 7 node cluser, but will work with any sized</tt> </tt>
-<a name="L357"></a><tt class="py-lineno"> 357</tt> <tt class="py-line"> <tt class="py-comment"># cluster</tt> </tt>
-<a name="L358"></a><tt class="py-lineno"> 358</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># switches 1 through 28</tt> </tt>
-<a name="L359"></a><tt class="py-lineno"> 359</tt> <tt class="py-line"> <tt class="py-comment"># set up correct variables:</tt> </tt>
-<a name="L360"></a><tt class="py-lineno"> 360</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L361"></a><tt class="py-lineno"> 361</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L362"></a><tt class="py-lineno"> 362</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-89', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS1</tt> </tt>
-<a name="L363"></a><tt class="py-lineno"> 363</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getDevice"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-90', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"1000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L364"></a><tt class="py-lineno"> 364</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L365"></a><tt class="py-lineno"> 365</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L366"></a><tt class="py-lineno"> 366</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-91', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS2</tt> </tt>
-<a name="L367"></a><tt class="py-lineno"> 367</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-92', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"2000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L368"></a><tt class="py-lineno"> 368</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L369"></a><tt class="py-lineno"> 369</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L370"></a><tt class="py-lineno"> 370</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-93', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS2</tt> </tt>
-<a name="L371"></a><tt class="py-lineno"> 371</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-94', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"3000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L372"></a><tt class="py-lineno"> 372</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L373"></a><tt class="py-lineno"> 373</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">3</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L374"></a><tt class="py-lineno"> 374</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-95', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS4</tt> </tt>
-<a name="L375"></a><tt class="py-lineno"> 375</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-96', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"3004"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L376"></a><tt class="py-lineno"> 376</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">5</tt><tt class="py-op">:</tt> </tt>
-<a name="L377"></a><tt class="py-lineno"> 377</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">2</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L378"></a><tt class="py-lineno"> 378</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-97', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS3</tt> </tt>
-<a name="L379"></a><tt class="py-lineno"> 379</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-98', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"5000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L380"></a><tt class="py-lineno"> 380</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">6</tt><tt class="py-op">:</tt> </tt>
-<a name="L381"></a><tt class="py-lineno"> 381</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">2</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L382"></a><tt class="py-lineno"> 382</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-99', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS3</tt> </tt>
-<a name="L383"></a><tt class="py-lineno"> 383</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-100', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"6000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L384"></a><tt class="py-lineno"> 384</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">7</tt><tt class="py-op">:</tt> </tt>
-<a name="L385"></a><tt class="py-lineno"> 385</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">5</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L386"></a><tt class="py-lineno"> 386</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-101', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS6</tt> </tt>
-<a name="L387"></a><tt class="py-lineno"> 387</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-102', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"6007"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L388"></a><tt class="py-lineno"> 388</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">8</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-number">17</tt><tt class="py-op">:</tt> </tt>
-<a name="L389"></a><tt class="py-lineno"> 389</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">4</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L390"></a><tt class="py-lineno"> 390</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-103', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS5</tt> </tt>
-<a name="L391"></a><tt class="py-lineno"> 391</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'3'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L392"></a><tt class="py-lineno"> 392</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-104', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L393"></a><tt class="py-lineno"> 393</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">18</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-number">27</tt><tt class="py-op">:</tt> </tt>
-<a name="L394"></a><tt class="py-lineno"> 394</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">6</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L395"></a><tt class="py-lineno"> 395</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-105', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS7</tt> </tt>
-<a name="L396"></a><tt class="py-lineno"> 396</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'6'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L397"></a><tt class="py-lineno"> 397</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-106" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-106', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L398"></a><tt class="py-lineno"> 398</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">28</tt><tt class="py-op">:</tt> </tt>
-<a name="L399"></a><tt class="py-lineno"> 399</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L400"></a><tt class="py-lineno"> 400</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-107', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">c</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS1</tt> </tt>
-<a name="L401"></a><tt class="py-lineno"> 401</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-108', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"2800"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L402"></a><tt class="py-lineno"> 402</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L403"></a><tt class="py-lineno"> 403</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-109', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-110', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"You didn't write an else statement for "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L404"></a><tt class="py-lineno"> 404</tt> <tt class="py-line"> <tt class="py-string">"switch s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L405"></a><tt class="py-lineno"> 405</tt> <tt class="py-line"> <tt class="py-name">roleCall</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L406"></a><tt class="py-lineno"> 406</tt> <tt class="py-line"> <tt class="py-comment"># Assign switch</tt> </tt>
-<a name="L407"></a><tt class="py-lineno"> 407</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">deviceId</tt><tt class="py-op">,</tt> <tt class="py-string">"No device id for s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" in ONOS"</tt> </tt>
-<a name="L408"></a><tt class="py-lineno"> 408</tt> <tt class="py-line"> <tt class="py-comment"># TODO: make this controller dynamic</tt> </tt>
-<a name="L409"></a><tt class="py-lineno"> 409</tt> <tt class="py-line"> <tt class="py-name">roleCall</tt> <tt class="py-op">=</tt> <tt class="py-name">roleCall</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deviceRole()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deviceRole"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deviceRole" class="py-name" href="#" onclick="return doclink('link-111', 'deviceRole', 'link-111');">deviceRole</a></tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt><tt class="py-op">,</tt> </tt>
-<a name="L410"></a><tt class="py-lineno"> 410</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> </tt>
-<a name="L411"></a><tt class="py-lineno"> 411</tt> <tt class="py-line"> <tt class="py-name">ipList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> </tt>
-<a name="L412"></a><tt class="py-lineno"> 412</tt> <tt class="py-line"> <tt class="py-name">deviceList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L413"></a><tt class="py-lineno"> 413</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">,</tt> <tt class="py-name">AssertionError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L414"></a><tt class="py-lineno"> 414</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-112', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Something is wrong with ONOS device view"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L415"></a><tt class="py-lineno"> 415</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-113', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#devices"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-114', 'devices', 'link-114');">devices</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L416"></a><tt class="py-lineno"> 416</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L417"></a><tt class="py-lineno"> 417</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L418"></a><tt class="py-lineno"> 418</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">roleCall</tt><tt class="py-op">,</tt> </tt>
-<a name="L419"></a><tt class="py-lineno"> 419</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Re-assigned switch mastership to designated controller"</tt><tt class="py-op">,</tt> </tt>
-<a name="L420"></a><tt class="py-lineno"> 420</tt> <tt class="py-line"> <tt id="link-115" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-115', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something wrong with deviceRole calls"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L421"></a><tt class="py-lineno"> 421</tt> <tt class="py-line"> </tt>
-<a name="L422"></a><tt class="py-lineno"> 422</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-116', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check mastership was correctly assigned"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L423"></a><tt class="py-lineno"> 423</tt> <tt class="py-line"> <tt class="py-name">roleCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L424"></a><tt class="py-lineno"> 424</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: This is due to the fact that device mastership change is not</tt> </tt>
-<a name="L425"></a><tt class="py-lineno"> 425</tt> <tt class="py-line"> <tt class="py-comment"># atomic and is actually a multi step process</tt> </tt>
-<a name="L426"></a><tt class="py-lineno"> 426</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L427"></a><tt class="py-lineno"> 427</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">ipList</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L428"></a><tt class="py-lineno"> 428</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">ipList</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> </tt>
-<a name="L429"></a><tt class="py-lineno"> 429</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceList</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> </tt>
-<a name="L430"></a><tt class="py-lineno"> 430</tt> <tt class="py-line"> <tt class="py-comment"># Check assignment</tt> </tt>
-<a name="L431"></a><tt class="py-lineno"> 431</tt> <tt class="py-line"> <tt class="py-name">master</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getRole()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getRole"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getRole" class="py-name" href="#" onclick="return doclink('link-117', 'getRole', 'link-117');">getRole</a></tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'master'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L432"></a><tt class="py-lineno"> 432</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-keyword">in</tt> <tt class="py-name">master</tt><tt class="py-op">:</tt> </tt>
-<a name="L433"></a><tt class="py-lineno"> 433</tt> <tt class="py-line"> <tt class="py-name">roleCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">roleCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L434"></a><tt class="py-lineno"> 434</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L435"></a><tt class="py-lineno"> 435</tt> <tt class="py-line"> <tt class="py-name">roleCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">roleCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L436"></a><tt class="py-lineno"> 436</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-118', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-119', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, controller "</tt> <tt class="py-op">+</tt> <tt class="py-name">ip</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L437"></a><tt class="py-lineno"> 437</tt> <tt class="py-line"> <tt class="py-string">" master "</tt> <tt class="py-op">+</tt> <tt class="py-string">"of device "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L438"></a><tt class="py-lineno"> 438</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">". Master is "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L439"></a><tt class="py-lineno"> 439</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">master</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L440"></a><tt class="py-lineno"> 440</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L441"></a><tt class="py-lineno"> 441</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L442"></a><tt class="py-lineno"> 442</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">roleCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L443"></a><tt class="py-lineno"> 443</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Switches were successfully reassigned to designated "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L444"></a><tt class="py-lineno"> 444</tt> <tt class="py-line"> <tt class="py-string">"controller"</tt><tt class="py-op">,</tt> </tt>
-<a name="L445"></a><tt class="py-lineno"> 445</tt> <tt class="py-line"> <tt id="link-120" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-120', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Switches were not successfully reassigned"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L446"></a><tt class="py-lineno"> 446</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE3"></a><div id="HAsanity.CASE3-def"><a name="L447"></a><tt class="py-lineno"> 447</tt> <a class="py-toggle" href="#" id="HAsanity.CASE3-toggle" onclick="return toggle('HAsanity.CASE3');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE3">CASE3</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE3-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE3-expanded"><a name="L448"></a><tt class="py-lineno"> 448</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L449"></a><tt class="py-lineno"> 449</tt> <tt class="py-line"><tt class="py-docstring"> Assign intents</tt> </tt>
-<a name="L450"></a><tt class="py-lineno"> 450</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L451"></a><tt class="py-lineno"> 451</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L452"></a><tt class="py-lineno"> 452</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L453"></a><tt class="py-lineno"> 453</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L454"></a><tt class="py-lineno"> 454</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L455"></a><tt class="py-lineno"> 455</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L456"></a><tt class="py-lineno"> 456</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L457"></a><tt class="py-lineno"> 457</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-121" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-121', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L458"></a><tt class="py-lineno"> 458</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-122', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Adding host Intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L459"></a><tt class="py-lineno"> 459</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Discover hosts by using pingall then "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L460"></a><tt class="py-lineno"> 460</tt> <tt class="py-line"> <tt class="py-string">"assign predetermined host-to-host intents."</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L461"></a><tt class="py-lineno"> 461</tt> <tt class="py-line"> <tt class="py-string">" After installation, check that the intent"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L462"></a><tt class="py-lineno"> 462</tt> <tt class="py-line"> <tt class="py-string">" is distributed to all nodes and the state"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L463"></a><tt class="py-lineno"> 463</tt> <tt class="py-line"> <tt class="py-string">" is INSTALLED"</tt> </tt>
-<a name="L464"></a><tt class="py-lineno"> 464</tt> <tt class="py-line"> </tt>
-<a name="L465"></a><tt class="py-lineno"> 465</tt> <tt class="py-line"> <tt class="py-comment"># install onos-app-fwd</tt> </tt>
-<a name="L466"></a><tt class="py-lineno"> 466</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-123', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install reactive forwarding app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L467"></a><tt class="py-lineno"> 467</tt> <tt class="py-line"> <tt class="py-name">installResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-124" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#activateApp,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#activateApp"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-124', 'activateApp', 'link-124');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.fwd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L468"></a><tt class="py-lineno"> 468</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">installResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L469"></a><tt class="py-lineno"> 469</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Install fwd successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L470"></a><tt class="py-lineno"> 470</tt> <tt class="py-line"> <tt id="link-125" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-125', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Install fwd failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L471"></a><tt class="py-lineno"> 471</tt> <tt class="py-line"> </tt>
-<a name="L472"></a><tt class="py-lineno"> 472</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-126', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check app ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L473"></a><tt class="py-lineno"> 473</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L474"></a><tt class="py-lineno"> 474</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L475"></a><tt class="py-lineno"> 475</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L476"></a><tt class="py-lineno"> 476</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-127', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-128', 'appToIDCheck', 'link-64');">appToIDCheck</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L477"></a><tt class="py-lineno"> 477</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"appToIDCheck-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L478"></a><tt class="py-lineno"> 478</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L479"></a><tt class="py-lineno"> 479</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L480"></a><tt class="py-lineno"> 480</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L481"></a><tt class="py-lineno"> 481</tt> <tt class="py-line"> </tt>
-<a name="L482"></a><tt class="py-lineno"> 482</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L483"></a><tt class="py-lineno"> 483</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L484"></a><tt class="py-lineno"> 484</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">appCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L485"></a><tt class="py-lineno"> 485</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L486"></a><tt class="py-lineno"> 486</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-129', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-130" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-130', 'apps', 'link-66');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L487"></a><tt class="py-lineno"> 487</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-131', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-132', 'appIDs', 'link-68');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L488"></a><tt class="py-lineno"> 488</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L489"></a><tt class="py-lineno"> 489</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L490"></a><tt class="py-lineno"> 490</tt> <tt class="py-line"> <tt id="link-133" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-133', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L491"></a><tt class="py-lineno"> 491</tt> <tt class="py-line"> </tt>
-<a name="L492"></a><tt class="py-lineno"> 492</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-134" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-134', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Discovering Hosts( Via pingall for now )"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L493"></a><tt class="py-lineno"> 493</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: Once we have a host discovery mechanism, use that instead</tt> </tt>
-<a name="L494"></a><tt class="py-lineno"> 494</tt> <tt class="py-line"> <tt class="py-comment"># REACTIVE FWD test</tt> </tt>
-<a name="L495"></a><tt class="py-lineno"> 495</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L496"></a><tt class="py-lineno"> 496</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># Retry if pingall fails first time</tt> </tt>
-<a name="L497"></a><tt class="py-lineno"> 497</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L498"></a><tt class="py-lineno"> 498</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingall"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-135', 'pingall', 'link-135');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L499"></a><tt class="py-lineno"> 499</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L500"></a><tt class="py-lineno"> 500</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L501"></a><tt class="py-lineno"> 501</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L502"></a><tt class="py-lineno"> 502</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L503"></a><tt class="py-lineno"> 503</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Reactive Pingall test passed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L504"></a><tt class="py-lineno"> 504</tt> <tt class="py-line"> <tt id="link-136" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-136', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Reactive Pingall failed, "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L505"></a><tt class="py-lineno"> 505</tt> <tt class="py-line"> <tt class="py-string">"one or more ping pairs failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L506"></a><tt class="py-lineno"> 506</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L507"></a><tt class="py-lineno"> 507</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-137', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Time for pingall: %2f seconds"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L508"></a><tt class="py-lineno"> 508</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L509"></a><tt class="py-lineno"> 509</tt> <tt class="py-line"> <tt class="py-comment"># timeout for fwd flows</tt> </tt>
-<a name="L510"></a><tt class="py-lineno"> 510</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">11</tt> <tt class="py-op">)</tt> </tt>
-<a name="L511"></a><tt class="py-lineno"> 511</tt> <tt class="py-line"> <tt class="py-comment"># uninstall onos-app-fwd</tt> </tt>
-<a name="L512"></a><tt class="py-lineno"> 512</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-138', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Uninstall reactive forwarding app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L513"></a><tt class="py-lineno"> 513</tt> <tt class="py-line"> <tt class="py-name">uninstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-139" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.deactivateApp()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#deactivateApp,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deactivateApp()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deactivateApp"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.deactivateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deactivateApp" class="py-name" href="#" onclick="return doclink('link-139', 'deactivateApp', 'link-139');">deactivateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.fwd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L514"></a><tt class="py-lineno"> 514</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">uninstallResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L515"></a><tt class="py-lineno"> 515</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Uninstall fwd successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L516"></a><tt class="py-lineno"> 516</tt> <tt class="py-line"> <tt id="link-140" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-140', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Uninstall fwd failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L517"></a><tt class="py-lineno"> 517</tt> <tt class="py-line"> <tt class="py-string">'''</tt> </tt>
-<a name="L518"></a><tt class="py-lineno"> 518</tt> <tt class="py-line"><tt class="py-string"> main.Mininet1.handle.sendline( "py [ h.cmd( \"arping -c 1 10.1.1.1 \" ) for h in net.hosts ] ")</tt> </tt>
-<a name="L519"></a><tt class="py-lineno"> 519</tt> <tt class="py-line"><tt class="py-string"> import time</tt> </tt>
-<a name="L520"></a><tt class="py-lineno"> 520</tt> <tt class="py-line"><tt class="py-string"> time.sleep(60)</tt> </tt>
-<a name="L521"></a><tt class="py-lineno"> 521</tt> <tt class="py-line"><tt class="py-string"> '''</tt> </tt>
-<a name="L522"></a><tt class="py-lineno"> 522</tt> <tt class="py-line"> </tt>
-<a name="L523"></a><tt class="py-lineno"> 523</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-141" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-141', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check app ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L524"></a><tt class="py-lineno"> 524</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L525"></a><tt class="py-lineno"> 525</tt> <tt class="py-line"> <tt class="py-name">appCheck2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L526"></a><tt class="py-lineno"> 526</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L527"></a><tt class="py-lineno"> 527</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-142', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-143', 'appToIDCheck', 'link-64');">appToIDCheck</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L528"></a><tt class="py-lineno"> 528</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"appToIDCheck-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L529"></a><tt class="py-lineno"> 529</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L530"></a><tt class="py-lineno"> 530</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L531"></a><tt class="py-lineno"> 531</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L532"></a><tt class="py-lineno"> 532</tt> <tt class="py-line"> </tt>
-<a name="L533"></a><tt class="py-lineno"> 533</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L534"></a><tt class="py-lineno"> 534</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L535"></a><tt class="py-lineno"> 535</tt> <tt class="py-line"> <tt class="py-name">appCheck2</tt> <tt class="py-op">=</tt> <tt class="py-name">appCheck2</tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L536"></a><tt class="py-lineno"> 536</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck2</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L537"></a><tt class="py-lineno"> 537</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-144" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-144', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-145" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-145', 'apps', 'link-66');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L538"></a><tt class="py-lineno"> 538</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-146" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-146', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-147', 'appIDs', 'link-68');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L539"></a><tt class="py-lineno"> 539</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck2</tt><tt class="py-op">,</tt> </tt>
-<a name="L540"></a><tt class="py-lineno"> 540</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L541"></a><tt class="py-lineno"> 541</tt> <tt class="py-line"> <tt id="link-148" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-148', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L542"></a><tt class="py-lineno"> 542</tt> <tt class="py-line"> </tt>
-<a name="L543"></a><tt class="py-lineno"> 543</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-149" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-149', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add host intents via cli"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L544"></a><tt class="py-lineno"> 544</tt> <tt class="py-line"> <tt class="py-name">intentIds</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L545"></a><tt class="py-lineno"> 545</tt> <tt class="py-line"> <tt class="py-comment"># TODO: move the host numbers to params</tt> </tt>
-<a name="L546"></a><tt class="py-lineno"> 546</tt> <tt class="py-line"> <tt class="py-comment"># Maybe look at all the paths we ping?</tt> </tt>
-<a name="L547"></a><tt class="py-lineno"> 547</tt> <tt class="py-line"> <tt class="py-name">intentAddResult</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L548"></a><tt class="py-lineno"> 548</tt> <tt class="py-line"> <tt class="py-name">hostResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L549"></a><tt class="py-lineno"> 549</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-number">18</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L550"></a><tt class="py-lineno"> 550</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-150" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-150', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Adding host intent between h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L551"></a><tt class="py-lineno"> 551</tt> <tt class="py-line"> <tt class="py-string">" and h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L552"></a><tt class="py-lineno"> 552</tt> <tt class="py-line"> <tt class="py-name">host1</tt> <tt class="py-op">=</tt> <tt class="py-string">"00:00:00:00:00:"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L553"></a><tt class="py-lineno"> 553</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L554"></a><tt class="py-lineno"> 554</tt> <tt class="py-line"> <tt class="py-name">host2</tt> <tt class="py-op">=</tt> <tt class="py-string">"00:00:00:00:00:"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L555"></a><tt class="py-lineno"> 555</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L556"></a><tt class="py-lineno"> 556</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: getHost can return None</tt> </tt>
-<a name="L557"></a><tt class="py-lineno"> 557</tt> <tt class="py-line"> <tt class="py-name">host1Dict</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-151" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getHost()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getHost,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getHost()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getHost"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getHost
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getHost" class="py-name" href="#" onclick="return doclink('link-151', 'getHost', 'link-151');">getHost</a></tt><tt class="py-op">(</tt> <tt class="py-name">host1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L558"></a><tt class="py-lineno"> 558</tt> <tt class="py-line"> <tt class="py-name">host2Dict</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getHost
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getHost" class="py-name" href="#" onclick="return doclink('link-152', 'getHost', 'link-151');">getHost</a></tt><tt class="py-op">(</tt> <tt class="py-name">host2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L559"></a><tt class="py-lineno"> 559</tt> <tt class="py-line"> <tt class="py-name">host1Id</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L560"></a><tt class="py-lineno"> 560</tt> <tt class="py-line"> <tt class="py-name">host2Id</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L561"></a><tt class="py-lineno"> 561</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">host1Dict</tt> <tt class="py-keyword">and</tt> <tt class="py-name">host2Dict</tt><tt class="py-op">:</tt> </tt>
-<a name="L562"></a><tt class="py-lineno"> 562</tt> <tt class="py-line"> <tt class="py-name">host1Id</tt> <tt class="py-op">=</tt> <tt class="py-name">host1Dict</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L563"></a><tt class="py-lineno"> 563</tt> <tt class="py-line"> <tt class="py-name">host2Id</tt> <tt class="py-op">=</tt> <tt class="py-name">host2Dict</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L564"></a><tt class="py-lineno"> 564</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">host1Id</tt> <tt class="py-keyword">and</tt> <tt class="py-name">host2Id</tt><tt class="py-op">:</tt> </tt>
-<a name="L565"></a><tt class="py-lineno"> 565</tt> <tt class="py-line"> <tt class="py-name">nodeNum</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">%</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> </tt>
-<a name="L566"></a><tt class="py-lineno"> 566</tt> <tt class="py-line"> <tt class="py-name">tmpId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt> <tt class="py-name">nodeNum</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addHostIntent()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addHostIntent,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addHostIntent()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addHostIntent"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addHostIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addHostIntent" class="py-name" href="#" onclick="return doclink('link-153', 'addHostIntent', 'link-153');">addHostIntent</a></tt><tt class="py-op">(</tt> <tt class="py-name">host1Id</tt><tt class="py-op">,</tt> <tt class="py-name">host2Id</tt> <tt class="py-op">)</tt> </tt>
-<a name="L567"></a><tt class="py-lineno"> 567</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tmpId</tt><tt class="py-op">:</tt> </tt>
-<a name="L568"></a><tt class="py-lineno"> 568</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-154" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-154', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Added intent with id: "</tt> <tt class="py-op">+</tt> <tt class="py-name">tmpId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L569"></a><tt class="py-lineno"> 569</tt> <tt class="py-line"> <tt class="py-name">intentIds</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">tmpId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L570"></a><tt class="py-lineno"> 570</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L571"></a><tt class="py-lineno"> 571</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-155', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-156" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-156', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"addHostIntent returned: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L572"></a><tt class="py-lineno"> 572</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">tmpId</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L573"></a><tt class="py-lineno"> 573</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L574"></a><tt class="py-lineno"> 574</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-157', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-158" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-158', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, getHost() failed for h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L575"></a><tt class="py-lineno"> 575</tt> <tt class="py-line"> <tt class="py-string">" and/or h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L576"></a><tt class="py-lineno"> 576</tt> <tt class="py-line"> <tt id="link-159" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#hosts,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#hosts"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-159', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-160" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-160', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L577"></a><tt class="py-lineno"> 577</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-161" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-161', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Hosts output: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L578"></a><tt class="py-lineno"> 578</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L579"></a><tt class="py-lineno"> 579</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-162', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-163" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-163', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L580"></a><tt class="py-lineno"> 580</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L581"></a><tt class="py-lineno"> 581</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L582"></a><tt class="py-lineno"> 582</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L583"></a><tt class="py-lineno"> 583</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L584"></a><tt class="py-lineno"> 584</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-164" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-164', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-165" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-165', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L585"></a><tt class="py-lineno"> 585</tt> <tt class="py-line"> <tt class="py-name">hostResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L586"></a><tt class="py-lineno"> 586</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">hostResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L587"></a><tt class="py-lineno"> 587</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Found a host id for each host"</tt><tt class="py-op">,</tt> </tt>
-<a name="L588"></a><tt class="py-lineno"> 588</tt> <tt class="py-line"> <tt id="link-166" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-166', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error looking up host ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L589"></a><tt class="py-lineno"> 589</tt> <tt class="py-line"> </tt>
-<a name="L590"></a><tt class="py-lineno"> 590</tt> <tt class="py-line"> <tt class="py-name">intentStart</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L591"></a><tt class="py-lineno"> 591</tt> <tt class="py-line"> <tt class="py-name">onosIds</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllIntentsId"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId" class="py-name" href="#" onclick="return doclink('link-167', 'getAllIntentsId', 'link-167');">getAllIntentsId</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L592"></a><tt class="py-lineno"> 592</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-168', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Submitted intents: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">intentIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L593"></a><tt class="py-lineno"> 593</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-169" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-169', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents in ONOS: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L594"></a><tt class="py-lineno"> 594</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-170" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intent"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-170', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentIds</tt><tt class="py-op">:</tt> </tt>
-<a name="L595"></a><tt class="py-lineno"> 595</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-171" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-171', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosIds</tt><tt class="py-op">:</tt> </tt>
-<a name="L596"></a><tt class="py-lineno"> 596</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> <tt class="py-comment"># intent submitted is in onos</tt> </tt>
-<a name="L597"></a><tt class="py-lineno"> 597</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L598"></a><tt class="py-lineno"> 598</tt> <tt class="py-line"> <tt class="py-name">intentAddResult</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L599"></a><tt class="py-lineno"> 599</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentAddResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L600"></a><tt class="py-lineno"> 600</tt> <tt class="py-line"> <tt class="py-name">intentStop</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L601"></a><tt class="py-lineno"> 601</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L602"></a><tt class="py-lineno"> 602</tt> <tt class="py-line"> <tt class="py-name">intentStop</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L603"></a><tt class="py-lineno"> 603</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L604"></a><tt class="py-lineno"> 604</tt> <tt class="py-line"> <tt id="link-172" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intents,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intents"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-172', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-173', 'intents', 'link-172');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L605"></a><tt class="py-lineno"> 605</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L606"></a><tt class="py-lineno"> 606</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L607"></a><tt class="py-lineno"> 607</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-174" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-174', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-string">'Count'</tt><tt class="py-op">,</tt> <tt class="py-string">'ID'</tt><tt class="py-op">,</tt> <tt class="py-string">'State'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L608"></a><tt class="py-lineno"> 608</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L609"></a><tt class="py-lineno"> 609</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L610"></a><tt class="py-lineno"> 610</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-175" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-175', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-176" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-176', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L611"></a><tt class="py-lineno"> 611</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-177" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-177', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L612"></a><tt class="py-lineno"> 612</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"INSTALLED"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L613"></a><tt class="py-lineno"> 613</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L614"></a><tt class="py-lineno"> 614</tt> <tt class="py-line"> <tt class="py-name">intentId</tt> <tt class="py-op">=</tt> <tt id="link-178" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-178', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L615"></a><tt class="py-lineno"> 615</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L616"></a><tt class="py-lineno"> 616</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L617"></a><tt class="py-lineno"> 617</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-179" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-179', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L618"></a><tt class="py-lineno"> 618</tt> <tt class="py-line"> <tt class="py-comment"># add submitted intents not in the store</tt> </tt>
-<a name="L619"></a><tt class="py-lineno"> 619</tt> <tt class="py-line"> <tt class="py-name">tmplist</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt> <tt class="py-op">]</tt> </tt>
-<a name="L620"></a><tt class="py-lineno"> 620</tt> <tt class="py-line"> <tt class="py-name">missingIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L621"></a><tt class="py-lineno"> 621</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentIds</tt><tt class="py-op">:</tt> </tt>
-<a name="L622"></a><tt class="py-lineno"> 622</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">tmplist</tt><tt class="py-op">:</tt> </tt>
-<a name="L623"></a><tt class="py-lineno"> 623</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-string">" - "</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L624"></a><tt class="py-lineno"> 624</tt> <tt class="py-line"> <tt class="py-name">missingIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L625"></a><tt class="py-lineno"> 625</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L626"></a><tt class="py-lineno"> 626</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt><tt class="py-op">:</tt> </tt>
-<a name="L627"></a><tt class="py-lineno"> 627</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L628"></a><tt class="py-lineno"> 628</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-180" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-180', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L629"></a><tt class="py-lineno"> 629</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">s</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L630"></a><tt class="py-lineno"> 630</tt> <tt class="py-line"> <tt id="link-181" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#leaders"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-181', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-182" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-182', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L631"></a><tt class="py-lineno"> 631</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L632"></a><tt class="py-lineno"> 632</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L633"></a><tt class="py-lineno"> 633</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-183" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-183', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L634"></a><tt class="py-lineno"> 634</tt> <tt class="py-line"> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-184" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-184', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L635"></a><tt class="py-lineno"> 635</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-185" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-185', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedLeaders</tt><tt class="py-op">,</tt> </tt>
-<a name="L636"></a><tt class="py-lineno"> 636</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L637"></a><tt class="py-lineno"> 637</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L638"></a><tt class="py-lineno"> 638</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L639"></a><tt class="py-lineno"> 639</tt> <tt class="py-line"> <tt class="py-comment"># check for all intent partitions</tt> </tt>
-<a name="L640"></a><tt class="py-lineno"> 640</tt> <tt class="py-line"> <tt class="py-name">topics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L641"></a><tt class="py-lineno"> 641</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">14</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L642"></a><tt class="py-lineno"> 642</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"intent-partition-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L643"></a><tt class="py-lineno"> 643</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-186" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-186', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">topics</tt> <tt class="py-op">)</tt> </tt>
-<a name="L644"></a><tt class="py-lineno"> 644</tt> <tt class="py-line"> <tt class="py-name">ONOStopics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-string">'topic'</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">]</tt> </tt>
-<a name="L645"></a><tt class="py-lineno"> 645</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">in</tt> <tt class="py-name">topics</tt><tt class="py-op">:</tt> </tt>
-<a name="L646"></a><tt class="py-lineno"> 646</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOStopics</tt><tt class="py-op">:</tt> </tt>
-<a name="L647"></a><tt class="py-lineno"> 647</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-187" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-187', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-188" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-188', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error: "</tt> <tt class="py-op">+</tt> <tt class="py-name">topic</tt> <tt class="py-op">+</tt> </tt>
-<a name="L648"></a><tt class="py-lineno"> 648</tt> <tt class="py-line"> <tt class="py-string">" not in leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L649"></a><tt class="py-lineno"> 649</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L650"></a><tt class="py-lineno"> 650</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L651"></a><tt class="py-lineno"> 651</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-189" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-189', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-190" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-190', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"leaders() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L652"></a><tt class="py-lineno"> 652</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L653"></a><tt class="py-lineno"> 653</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-191" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-191', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L654"></a><tt class="py-lineno"> 654</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-192" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-192', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-193" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-193', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-194" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-194', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L655"></a><tt class="py-lineno"> 655</tt> <tt class="py-line"> <tt class="py-comment"># Check all nodes</tt> </tt>
-<a name="L656"></a><tt class="py-lineno"> 656</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">missing</tt><tt class="py-op">:</tt> </tt>
-<a name="L657"></a><tt class="py-lineno"> 657</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L658"></a><tt class="py-lineno"> 658</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt id="link-195" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-195', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L659"></a><tt class="py-lineno"> 659</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-196" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-196', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" leaders output: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L660"></a><tt class="py-lineno"> 660</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L661"></a><tt class="py-lineno"> 661</tt> <tt class="py-line"> </tt>
-<a name="L662"></a><tt class="py-lineno"> 662</tt> <tt class="py-line"> <tt id="link-197" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#partitions"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-197', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-198" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-198', 'partitions', 'link-197');">partitions</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L663"></a><tt class="py-lineno"> 663</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L664"></a><tt class="py-lineno"> 664</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-199" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-199', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L665"></a><tt class="py-lineno"> 665</tt> <tt class="py-line"> <tt class="py-name">parsedPartitions</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-200" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-200', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L666"></a><tt class="py-lineno"> 666</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-201" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-201', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPartitions</tt><tt class="py-op">,</tt> </tt>
-<a name="L667"></a><tt class="py-lineno"> 667</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L668"></a><tt class="py-lineno"> 668</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L669"></a><tt class="py-lineno"> 669</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L670"></a><tt class="py-lineno"> 670</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for a leader in all paritions</tt> </tt>
-<a name="L671"></a><tt class="py-lineno"> 671</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for consistency among nodes</tt> </tt>
-<a name="L672"></a><tt class="py-lineno"> 672</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L673"></a><tt class="py-lineno"> 673</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-202" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-202', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-203" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-203', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"partitions() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L674"></a><tt class="py-lineno"> 674</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L675"></a><tt class="py-lineno"> 675</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-204" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-204', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing partitions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L676"></a><tt class="py-lineno"> 676</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-205" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-205', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-206" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-206', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-207" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-207', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L677"></a><tt class="py-lineno"> 677</tt> <tt class="py-line"> <tt id="link-208" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#pendingMap"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-208', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-209" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-209', 'pendingMap', 'link-208');">pendingMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L678"></a><tt class="py-lineno"> 678</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L679"></a><tt class="py-lineno"> 679</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-210" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-210', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L680"></a><tt class="py-lineno"> 680</tt> <tt class="py-line"> <tt class="py-name">parsedPending</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-211" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-211', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L681"></a><tt class="py-lineno"> 681</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-212" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-212', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPending</tt><tt class="py-op">,</tt> </tt>
-<a name="L682"></a><tt class="py-lineno"> 682</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L683"></a><tt class="py-lineno"> 683</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L684"></a><tt class="py-lineno"> 684</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L685"></a><tt class="py-lineno"> 685</tt> <tt class="py-line"> <tt class="py-comment"># TODO check something here?</tt> </tt>
-<a name="L686"></a><tt class="py-lineno"> 686</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L687"></a><tt class="py-lineno"> 687</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-213" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-213', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-214" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-214', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pendingMap() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L688"></a><tt class="py-lineno"> 688</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L689"></a><tt class="py-lineno"> 689</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-215" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-215', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing pending map"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L690"></a><tt class="py-lineno"> 690</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-216" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-216', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-217" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-217', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-218" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-218', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L691"></a><tt class="py-lineno"> 691</tt> <tt class="py-line"> </tt>
-<a name="L692"></a><tt class="py-lineno"> 692</tt> <tt class="py-line"> <tt class="py-name">intentAddResult</tt> <tt class="py-op">=</tt> <tt class="py-name">bool</tt><tt class="py-op">(</tt> <tt class="py-name">intentAddResult</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">missingIntents</tt> <tt class="py-keyword">and</tt> </tt>
-<a name="L693"></a><tt class="py-lineno"> 693</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">)</tt> </tt>
-<a name="L694"></a><tt class="py-lineno"> 694</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">intentAddResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L695"></a><tt class="py-lineno"> 695</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-219" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-219', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-220" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-220', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in pushing host intents to ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L696"></a><tt class="py-lineno"> 696</tt> <tt class="py-line"> </tt>
-<a name="L697"></a><tt class="py-lineno"> 697</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-221" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-221', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Intent Anti-Entropy dispersion"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L698"></a><tt class="py-lineno"> 698</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">100</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L699"></a><tt class="py-lineno"> 699</tt> <tt class="py-line"> <tt class="py-name">correct</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L700"></a><tt class="py-lineno"> 700</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-222" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-222', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Submitted intents: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">intentIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L701"></a><tt class="py-lineno"> 701</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-223" class="py-name" targets="Module TestON.bin.cli=TestON.bin.cli-module.html,Package TestON.drivers.common.cli=TestON.drivers.common.cli-module.html"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-223', 'cli', 'link-223');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L702"></a><tt class="py-lineno"> 702</tt> <tt class="py-line"> <tt class="py-name">onosIds</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L703"></a><tt class="py-lineno"> 703</tt> <tt class="py-line"> <tt class="py-name">ids</tt> <tt class="py-op">=</tt> <tt id="link-224" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-224', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt id="link-225" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId" class="py-name" href="#" onclick="return doclink('link-225', 'getAllIntentsId', 'link-167');">getAllIntentsId</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L704"></a><tt class="py-lineno"> 704</tt> <tt class="py-line"> <tt class="py-name">onosIds</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">ids</tt> <tt class="py-op">)</tt> </tt>
-<a name="L705"></a><tt class="py-lineno"> 705</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-226" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-226', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents in "</tt> <tt class="py-op">+</tt> <tt id="link-227" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-227', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L706"></a><tt class="py-lineno"> 706</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">onosIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L707"></a><tt class="py-lineno"> 707</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">ids</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">intentIds</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L708"></a><tt class="py-lineno"> 708</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-228" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-228', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Set of intent IDs doesn't match"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L709"></a><tt class="py-lineno"> 709</tt> <tt class="py-line"> <tt class="py-name">correct</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L710"></a><tt class="py-lineno"> 710</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L711"></a><tt class="py-lineno"> 711</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L712"></a><tt class="py-lineno"> 712</tt> <tt class="py-line"> <tt id="link-229" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-229', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-230" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-230', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt id="link-231" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-231', 'intents', 'link-172');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L713"></a><tt class="py-lineno"> 713</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-232" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-232', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt id="link-233" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-233', 'intents', 'link-172');">intents</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L714"></a><tt class="py-lineno"> 714</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-234" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-234', 'intent', 'link-170');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">"INSTALLED"</tt><tt class="py-op">:</tt> </tt>
-<a name="L715"></a><tt class="py-lineno"> 715</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-235" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-235', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Intent "</tt> <tt class="py-op">+</tt> <tt id="link-236" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-236', 'intent', 'link-170');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> </tt>
-<a name="L716"></a><tt class="py-lineno"> 716</tt> <tt class="py-line"> <tt class="py-string">" is "</tt> <tt class="py-op">+</tt> <tt id="link-237" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-237', 'intent', 'link-170');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L717"></a><tt class="py-lineno"> 717</tt> <tt class="py-line"> <tt class="py-name">correct</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L718"></a><tt class="py-lineno"> 718</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L719"></a><tt class="py-lineno"> 719</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">correct</tt><tt class="py-op">:</tt> </tt>
-<a name="L720"></a><tt class="py-lineno"> 720</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L721"></a><tt class="py-lineno"> 721</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L722"></a><tt class="py-lineno"> 722</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L723"></a><tt class="py-lineno"> 723</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">intentStop</tt><tt class="py-op">:</tt> </tt>
-<a name="L724"></a><tt class="py-lineno"> 724</tt> <tt class="py-line"> <tt class="py-name">intentStop</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L725"></a><tt class="py-lineno"> 725</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">gossipTime</tt> </tt>
-<a name="L726"></a><tt class="py-lineno"> 726</tt> <tt class="py-line"> <tt class="py-name">gossipTime</tt> <tt class="py-op">=</tt> <tt class="py-name">intentStop</tt> <tt class="py-op">-</tt> <tt class="py-name">intentStart</tt> </tt>
-<a name="L727"></a><tt class="py-lineno"> 727</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-238" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-238', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"It took about "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">gossipTime</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L728"></a><tt class="py-lineno"> 728</tt> <tt class="py-line"> <tt class="py-string">" seconds for all intents to appear in each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L729"></a><tt class="py-lineno"> 729</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: make this time configurable/calculate based off of number of</tt> </tt>
-<a name="L730"></a><tt class="py-lineno"> 730</tt> <tt class="py-line"> <tt class="py-comment"># nodes and gossip rounds</tt> </tt>
-<a name="L731"></a><tt class="py-lineno"> 731</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_greater_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L732"></a><tt class="py-lineno"> 732</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-number">40</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">gossipTime</tt><tt class="py-op">,</tt> </tt>
-<a name="L733"></a><tt class="py-lineno"> 733</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ECM anti-entropy for intents worked within "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L734"></a><tt class="py-lineno"> 734</tt> <tt class="py-line"> <tt class="py-string">"expected time"</tt><tt class="py-op">,</tt> </tt>
-<a name="L735"></a><tt class="py-lineno"> 735</tt> <tt class="py-line"> <tt id="link-239" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-239', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intent ECM anti-entropy took too long"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L736"></a><tt class="py-lineno"> 736</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">gossipTime</tt> <tt class="py-op"><=</tt> <tt class="py-number">40</tt><tt class="py-op">:</tt> </tt>
-<a name="L737"></a><tt class="py-lineno"> 737</tt> <tt class="py-line"> <tt class="py-name">intentAddResult</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L738"></a><tt class="py-lineno"> 738</tt> <tt class="py-line"> </tt>
-<a name="L739"></a><tt class="py-lineno"> 739</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">intentAddResult</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"key"</tt> <tt class="py-keyword">in</tt> <tt id="link-240" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-240', 'pendingMap', 'link-208');">pendingMap</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L740"></a><tt class="py-lineno"> 740</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L741"></a><tt class="py-lineno"> 741</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L742"></a><tt class="py-lineno"> 742</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-241" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-241', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Sleeping 60 seconds to see if intents are found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L743"></a><tt class="py-lineno"> 743</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L744"></a><tt class="py-lineno"> 744</tt> <tt class="py-line"> <tt class="py-name">onosIds</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-242" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId" class="py-name" href="#" onclick="return doclink('link-242', 'getAllIntentsId', 'link-167');">getAllIntentsId</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L745"></a><tt class="py-lineno"> 745</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-243" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-243', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Submitted intents: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">intentIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L746"></a><tt class="py-lineno"> 746</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-244" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-244', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents in ONOS: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L747"></a><tt class="py-lineno"> 747</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L748"></a><tt class="py-lineno"> 748</tt> <tt class="py-line"> <tt id="link-245" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-245', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-246" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-246', 'intents', 'link-172');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L749"></a><tt class="py-lineno"> 749</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L750"></a><tt class="py-lineno"> 750</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-247" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-247', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-string">'Count'</tt><tt class="py-op">,</tt> <tt class="py-string">'ID'</tt><tt class="py-op">,</tt> <tt class="py-string">'State'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L751"></a><tt class="py-lineno"> 751</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L752"></a><tt class="py-lineno"> 752</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L753"></a><tt class="py-lineno"> 753</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-248" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-248', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-249" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-249', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L754"></a><tt class="py-lineno"> 754</tt> <tt class="py-line"> <tt class="py-comment"># Iter through intents of a node</tt> </tt>
-<a name="L755"></a><tt class="py-lineno"> 755</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-250" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-250', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L756"></a><tt class="py-lineno"> 756</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"INSTALLED"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L757"></a><tt class="py-lineno"> 757</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L758"></a><tt class="py-lineno"> 758</tt> <tt class="py-line"> <tt class="py-name">intentId</tt> <tt class="py-op">=</tt> <tt id="link-251" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-251', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L759"></a><tt class="py-lineno"> 759</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L760"></a><tt class="py-lineno"> 760</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L761"></a><tt class="py-lineno"> 761</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-252" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-252', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L762"></a><tt class="py-lineno"> 762</tt> <tt class="py-line"> <tt class="py-comment"># add submitted intents not in the store</tt> </tt>
-<a name="L763"></a><tt class="py-lineno"> 763</tt> <tt class="py-line"> <tt class="py-name">tmplist</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt> <tt class="py-op">]</tt> </tt>
-<a name="L764"></a><tt class="py-lineno"> 764</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentIds</tt><tt class="py-op">:</tt> </tt>
-<a name="L765"></a><tt class="py-lineno"> 765</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">tmplist</tt><tt class="py-op">:</tt> </tt>
-<a name="L766"></a><tt class="py-lineno"> 766</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-string">" - "</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L767"></a><tt class="py-lineno"> 767</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L768"></a><tt class="py-lineno"> 768</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt><tt class="py-op">:</tt> </tt>
-<a name="L769"></a><tt class="py-lineno"> 769</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L770"></a><tt class="py-lineno"> 770</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-253" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-253', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L771"></a><tt class="py-lineno"> 771</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">s</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L772"></a><tt class="py-lineno"> 772</tt> <tt class="py-line"> <tt id="link-254" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-254', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-255" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-255', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L773"></a><tt class="py-lineno"> 773</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L774"></a><tt class="py-lineno"> 774</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L775"></a><tt class="py-lineno"> 775</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-256" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-256', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L776"></a><tt class="py-lineno"> 776</tt> <tt class="py-line"> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-257" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-257', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L777"></a><tt class="py-lineno"> 777</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-258" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-258', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedLeaders</tt><tt class="py-op">,</tt> </tt>
-<a name="L778"></a><tt class="py-lineno"> 778</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L779"></a><tt class="py-lineno"> 779</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L780"></a><tt class="py-lineno"> 780</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L781"></a><tt class="py-lineno"> 781</tt> <tt class="py-line"> <tt class="py-comment"># check for all intent partitions</tt> </tt>
-<a name="L782"></a><tt class="py-lineno"> 782</tt> <tt class="py-line"> <tt class="py-comment"># check for election</tt> </tt>
-<a name="L783"></a><tt class="py-lineno"> 783</tt> <tt class="py-line"> <tt class="py-name">topics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L784"></a><tt class="py-lineno"> 784</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">14</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L785"></a><tt class="py-lineno"> 785</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"intent-partition-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L786"></a><tt class="py-lineno"> 786</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: this should only be after we start the app</tt> </tt>
-<a name="L787"></a><tt class="py-lineno"> 787</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L788"></a><tt class="py-lineno"> 788</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-259" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-259', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">topics</tt> <tt class="py-op">)</tt> </tt>
-<a name="L789"></a><tt class="py-lineno"> 789</tt> <tt class="py-line"> <tt class="py-name">ONOStopics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-string">'topic'</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">]</tt> </tt>
-<a name="L790"></a><tt class="py-lineno"> 790</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">in</tt> <tt class="py-name">topics</tt><tt class="py-op">:</tt> </tt>
-<a name="L791"></a><tt class="py-lineno"> 791</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOStopics</tt><tt class="py-op">:</tt> </tt>
-<a name="L792"></a><tt class="py-lineno"> 792</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-260" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-260', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-261" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-261', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error: "</tt> <tt class="py-op">+</tt> <tt class="py-name">topic</tt> <tt class="py-op">+</tt> </tt>
-<a name="L793"></a><tt class="py-lineno"> 793</tt> <tt class="py-line"> <tt class="py-string">" not in leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L794"></a><tt class="py-lineno"> 794</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L795"></a><tt class="py-lineno"> 795</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L796"></a><tt class="py-lineno"> 796</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-262" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-262', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-263" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-263', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"leaders() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L797"></a><tt class="py-lineno"> 797</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L798"></a><tt class="py-lineno"> 798</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-264" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-264', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L799"></a><tt class="py-lineno"> 799</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-265" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-265', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-266" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-266', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-267" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-267', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L800"></a><tt class="py-lineno"> 800</tt> <tt class="py-line"> <tt class="py-comment"># Check all nodes</tt> </tt>
-<a name="L801"></a><tt class="py-lineno"> 801</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">missing</tt><tt class="py-op">:</tt> </tt>
-<a name="L802"></a><tt class="py-lineno"> 802</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L803"></a><tt class="py-lineno"> 803</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt id="link-268" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-268', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L804"></a><tt class="py-lineno"> 804</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-269" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-269', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" leaders output: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L805"></a><tt class="py-lineno"> 805</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L806"></a><tt class="py-lineno"> 806</tt> <tt class="py-line"> </tt>
-<a name="L807"></a><tt class="py-lineno"> 807</tt> <tt class="py-line"> <tt id="link-270" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-270', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-271" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-271', 'partitions', 'link-197');">partitions</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L808"></a><tt class="py-lineno"> 808</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L809"></a><tt class="py-lineno"> 809</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-272" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-272', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L810"></a><tt class="py-lineno"> 810</tt> <tt class="py-line"> <tt class="py-name">parsedPartitions</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-273" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-273', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L811"></a><tt class="py-lineno"> 811</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-274" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-274', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPartitions</tt><tt class="py-op">,</tt> </tt>
-<a name="L812"></a><tt class="py-lineno"> 812</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L813"></a><tt class="py-lineno"> 813</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L814"></a><tt class="py-lineno"> 814</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L815"></a><tt class="py-lineno"> 815</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for a leader in all paritions</tt> </tt>
-<a name="L816"></a><tt class="py-lineno"> 816</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for consistency among nodes</tt> </tt>
-<a name="L817"></a><tt class="py-lineno"> 817</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L818"></a><tt class="py-lineno"> 818</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-275" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-275', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-276" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-276', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"partitions() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L819"></a><tt class="py-lineno"> 819</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L820"></a><tt class="py-lineno"> 820</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-277" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-277', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing partitions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L821"></a><tt class="py-lineno"> 821</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-278" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-278', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-279" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-279', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-280" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-280', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L822"></a><tt class="py-lineno"> 822</tt> <tt class="py-line"> <tt id="link-281" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-281', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-282" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-282', 'pendingMap', 'link-208');">pendingMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L823"></a><tt class="py-lineno"> 823</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L824"></a><tt class="py-lineno"> 824</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-283" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-283', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L825"></a><tt class="py-lineno"> 825</tt> <tt class="py-line"> <tt class="py-name">parsedPending</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-284" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-284', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L826"></a><tt class="py-lineno"> 826</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-285" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-285', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPending</tt><tt class="py-op">,</tt> </tt>
-<a name="L827"></a><tt class="py-lineno"> 827</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L828"></a><tt class="py-lineno"> 828</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L829"></a><tt class="py-lineno"> 829</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L830"></a><tt class="py-lineno"> 830</tt> <tt class="py-line"> <tt class="py-comment"># TODO check something here?</tt> </tt>
-<a name="L831"></a><tt class="py-lineno"> 831</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L832"></a><tt class="py-lineno"> 832</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-286" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-286', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-287" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-287', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pendingMap() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L833"></a><tt class="py-lineno"> 833</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L834"></a><tt class="py-lineno"> 834</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-288" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-288', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing pending map"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L835"></a><tt class="py-lineno"> 835</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-289" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-289', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-290" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-290', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-291" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-291', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L836"></a><tt class="py-lineno"> 836</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE4"></a><div id="HAsanity.CASE4-def"><a name="L837"></a><tt class="py-lineno"> 837</tt> <a class="py-toggle" href="#" id="HAsanity.CASE4-toggle" onclick="return toggle('HAsanity.CASE4');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE4">CASE4</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE4-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE4-expanded"><a name="L838"></a><tt class="py-lineno"> 838</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L839"></a><tt class="py-lineno"> 839</tt> <tt class="py-line"><tt class="py-docstring"> Ping across added host intents</tt> </tt>
-<a name="L840"></a><tt class="py-lineno"> 840</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L841"></a><tt class="py-lineno"> 841</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L842"></a><tt class="py-lineno"> 842</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L843"></a><tt class="py-lineno"> 843</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L844"></a><tt class="py-lineno"> 844</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L845"></a><tt class="py-lineno"> 845</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L846"></a><tt class="py-lineno"> 846</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L847"></a><tt class="py-lineno"> 847</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-292" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-292', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L848"></a><tt class="py-lineno"> 848</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-293" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-293', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify connectivity by sendind traffic across Intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L849"></a><tt class="py-lineno"> 849</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Ping across added host intents to check "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L850"></a><tt class="py-lineno"> 850</tt> <tt class="py-line"> <tt class="py-string">"functionality and check the state of "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L851"></a><tt class="py-lineno"> 851</tt> <tt class="py-line"> <tt class="py-string">"the intent"</tt> </tt>
-<a name="L852"></a><tt class="py-lineno"> 852</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-294" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-294', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Ping across added host intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L853"></a><tt class="py-lineno"> 853</tt> <tt class="py-line"> <tt class="py-name">PingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L854"></a><tt class="py-lineno"> 854</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-number">18</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L855"></a><tt class="py-lineno"> 855</tt> <tt class="py-line"> <tt class="py-name">ping</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-295" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingHost()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingHost,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingHost()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingHost"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingHost
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingHost" class="py-name" href="#" onclick="return doclink('link-295', 'pingHost', 'link-295');">pingHost</a></tt><tt class="py-op">(</tt> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-string">"h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L856"></a><tt class="py-lineno"> 856</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-string">"h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L857"></a><tt class="py-lineno"> 857</tt> <tt class="py-line"> <tt class="py-name">PingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">PingResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ping</tt> </tt>
-<a name="L858"></a><tt class="py-lineno"> 858</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ping</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L859"></a><tt class="py-lineno"> 859</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-296" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-296', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Ping failed between h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L860"></a><tt class="py-lineno"> 860</tt> <tt class="py-line"> <tt class="py-string">" and h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L861"></a><tt class="py-lineno"> 861</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ping</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L862"></a><tt class="py-lineno"> 862</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-297" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-297', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Ping test passed!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L863"></a><tt class="py-lineno"> 863</tt> <tt class="py-line"> <tt class="py-comment"># Don't set PingResult or you'd override failures</tt> </tt>
-<a name="L864"></a><tt class="py-lineno"> 864</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">PingResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L865"></a><tt class="py-lineno"> 865</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-298" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-298', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-299" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-299', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L866"></a><tt class="py-lineno"> 866</tt> <tt class="py-line"> <tt class="py-string">"Intents have not been installed correctly, pings failed."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L867"></a><tt class="py-lineno"> 867</tt> <tt class="py-line"> <tt class="py-comment"># TODO: pretty print</tt> </tt>
-<a name="L868"></a><tt class="py-lineno"> 868</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-300" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-300', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS1 intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L869"></a><tt class="py-lineno"> 869</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L870"></a><tt class="py-lineno"> 870</tt> <tt class="py-line"> <tt class="py-name">tmpIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-301" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-301', 'intents', 'link-172');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L871"></a><tt class="py-lineno"> 871</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-302" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-302', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">tmpIntents</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L872"></a><tt class="py-lineno"> 872</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L873"></a><tt class="py-lineno"> 873</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L874"></a><tt class="py-lineno"> 874</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L875"></a><tt class="py-lineno"> 875</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L876"></a><tt class="py-lineno"> 876</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-303" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-303', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">tmpIntents</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L877"></a><tt class="py-lineno"> 877</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L878"></a><tt class="py-lineno"> 878</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L879"></a><tt class="py-lineno"> 879</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">PingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L880"></a><tt class="py-lineno"> 880</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents have been installed correctly and pings work"</tt><tt class="py-op">,</tt> </tt>
-<a name="L881"></a><tt class="py-lineno"> 881</tt> <tt class="py-line"> <tt id="link-304" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-304', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intents have not been installed correctly, pings failed."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L882"></a><tt class="py-lineno"> 882</tt> <tt class="py-line"> </tt>
-<a name="L883"></a><tt class="py-lineno"> 883</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-305" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-305', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check Intent state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L884"></a><tt class="py-lineno"> 884</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L885"></a><tt class="py-lineno"> 885</tt> <tt class="py-line"> <tt class="py-name">loopCount</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L886"></a><tt class="py-lineno"> 886</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-keyword">not</tt> <tt class="py-name">installedCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">loopCount</tt> <tt class="py-op"><</tt> <tt class="py-number">40</tt><tt class="py-op">:</tt> </tt>
-<a name="L887"></a><tt class="py-lineno"> 887</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L888"></a><tt class="py-lineno"> 888</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L889"></a><tt class="py-lineno"> 889</tt> <tt class="py-line"> <tt id="link-306" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-306', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-307" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-307', 'intents', 'link-172');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L890"></a><tt class="py-lineno"> 890</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L891"></a><tt class="py-lineno"> 891</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-308" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-308', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-string">'Count'</tt><tt class="py-op">,</tt> <tt class="py-string">'ID'</tt><tt class="py-op">,</tt> <tt class="py-string">'State'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L892"></a><tt class="py-lineno"> 892</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L893"></a><tt class="py-lineno"> 893</tt> <tt class="py-line"> <tt class="py-comment"># Iter through intents of a node</tt> </tt>
-<a name="L894"></a><tt class="py-lineno"> 894</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L895"></a><tt class="py-lineno"> 895</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-309" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-309', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-310" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-310', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L896"></a><tt class="py-lineno"> 896</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-311" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-311', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L897"></a><tt class="py-lineno"> 897</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"INSTALLED"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L898"></a><tt class="py-lineno"> 898</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L899"></a><tt class="py-lineno"> 899</tt> <tt class="py-line"> <tt class="py-name">intentId</tt> <tt class="py-op">=</tt> <tt id="link-312" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-312', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L900"></a><tt class="py-lineno"> 900</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L901"></a><tt class="py-lineno"> 901</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L902"></a><tt class="py-lineno"> 902</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-313" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-313', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing intents."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L903"></a><tt class="py-lineno"> 903</tt> <tt class="py-line"> <tt class="py-comment"># Print states</tt> </tt>
-<a name="L904"></a><tt class="py-lineno"> 904</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L905"></a><tt class="py-lineno"> 905</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt><tt class="py-op">:</tt> </tt>
-<a name="L906"></a><tt class="py-lineno"> 906</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L907"></a><tt class="py-lineno"> 907</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-314" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-314', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L908"></a><tt class="py-lineno"> 908</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">s</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L909"></a><tt class="py-lineno"> 909</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">installedCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L910"></a><tt class="py-lineno"> 910</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L911"></a><tt class="py-lineno"> 911</tt> <tt class="py-line"> <tt class="py-name">loopCount</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L912"></a><tt class="py-lineno"> 912</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">installedCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L913"></a><tt class="py-lineno"> 913</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents are all INSTALLED"</tt><tt class="py-op">,</tt> </tt>
-<a name="L914"></a><tt class="py-lineno"> 914</tt> <tt class="py-line"> <tt id="link-315" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-315', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intents are not all in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L915"></a><tt class="py-lineno"> 915</tt> <tt class="py-line"> <tt class="py-string">"INSTALLED state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L916"></a><tt class="py-lineno"> 916</tt> <tt class="py-line"> </tt>
-<a name="L917"></a><tt class="py-lineno"> 917</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-316" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-316', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check leadership of topics"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L918"></a><tt class="py-lineno"> 918</tt> <tt class="py-line"> <tt id="link-317" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-317', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-318" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-318', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L919"></a><tt class="py-lineno"> 919</tt> <tt class="py-line"> <tt class="py-name">topicCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L920"></a><tt class="py-lineno"> 920</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L921"></a><tt class="py-lineno"> 921</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-319" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-319', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L922"></a><tt class="py-lineno"> 922</tt> <tt class="py-line"> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-320" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-320', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L923"></a><tt class="py-lineno"> 923</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-321" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-321', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedLeaders</tt><tt class="py-op">,</tt> </tt>
-<a name="L924"></a><tt class="py-lineno"> 924</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L925"></a><tt class="py-lineno"> 925</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L926"></a><tt class="py-lineno"> 926</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L927"></a><tt class="py-lineno"> 927</tt> <tt class="py-line"> <tt class="py-comment"># check for all intent partitions</tt> </tt>
-<a name="L928"></a><tt class="py-lineno"> 928</tt> <tt class="py-line"> <tt class="py-comment"># check for election</tt> </tt>
-<a name="L929"></a><tt class="py-lineno"> 929</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Look at Devices as topics now that it uses this system</tt> </tt>
-<a name="L930"></a><tt class="py-lineno"> 930</tt> <tt class="py-line"> <tt class="py-name">topics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L931"></a><tt class="py-lineno"> 931</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">14</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L932"></a><tt class="py-lineno"> 932</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"intent-partition-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L933"></a><tt class="py-lineno"> 933</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: this should only be after we start the app</tt> </tt>
-<a name="L934"></a><tt class="py-lineno"> 934</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: topics.append( "org.onosproject.election" )</tt> </tt>
-<a name="L935"></a><tt class="py-lineno"> 935</tt> <tt class="py-line"> <tt class="py-comment"># Print leaders output</tt> </tt>
-<a name="L936"></a><tt class="py-lineno"> 936</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-322" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-322', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">topics</tt> <tt class="py-op">)</tt> </tt>
-<a name="L937"></a><tt class="py-lineno"> 937</tt> <tt class="py-line"> <tt class="py-name">ONOStopics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-string">'topic'</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">]</tt> </tt>
-<a name="L938"></a><tt class="py-lineno"> 938</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">in</tt> <tt class="py-name">topics</tt><tt class="py-op">:</tt> </tt>
-<a name="L939"></a><tt class="py-lineno"> 939</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOStopics</tt><tt class="py-op">:</tt> </tt>
-<a name="L940"></a><tt class="py-lineno"> 940</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-323" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-323', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-324" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-324', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error: "</tt> <tt class="py-op">+</tt> <tt class="py-name">topic</tt> <tt class="py-op">+</tt> </tt>
-<a name="L941"></a><tt class="py-lineno"> 941</tt> <tt class="py-line"> <tt class="py-string">" not in leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L942"></a><tt class="py-lineno"> 942</tt> <tt class="py-line"> <tt class="py-name">topicCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L943"></a><tt class="py-lineno"> 943</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L944"></a><tt class="py-lineno"> 944</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-325" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-325', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-326" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-326', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"leaders() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L945"></a><tt class="py-lineno"> 945</tt> <tt class="py-line"> <tt class="py-name">topicCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L946"></a><tt class="py-lineno"> 946</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L947"></a><tt class="py-lineno"> 947</tt> <tt class="py-line"> <tt class="py-name">topicCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L948"></a><tt class="py-lineno"> 948</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-327" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-327', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L949"></a><tt class="py-lineno"> 949</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-328" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-328', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-329" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-329', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-330" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-330', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L950"></a><tt class="py-lineno"> 950</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Check for a leader of these topics</tt> </tt>
-<a name="L951"></a><tt class="py-lineno"> 951</tt> <tt class="py-line"> <tt class="py-comment"># Check all nodes</tt> </tt>
-<a name="L952"></a><tt class="py-lineno"> 952</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topicCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L953"></a><tt class="py-lineno"> 953</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L954"></a><tt class="py-lineno"> 954</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt id="link-331" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-331', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L955"></a><tt class="py-lineno"> 955</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-332" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-332', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" leaders output: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L956"></a><tt class="py-lineno"> 956</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L957"></a><tt class="py-lineno"> 957</tt> <tt class="py-line"> </tt>
-<a name="L958"></a><tt class="py-lineno"> 958</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">topicCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L959"></a><tt class="py-lineno"> 959</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"intent Partitions is in leaders"</tt><tt class="py-op">,</tt> </tt>
-<a name="L960"></a><tt class="py-lineno"> 960</tt> <tt class="py-line"> <tt id="link-333" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-333', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Some topics were lost "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L961"></a><tt class="py-lineno"> 961</tt> <tt class="py-line"> <tt class="py-comment"># Print partitions</tt> </tt>
-<a name="L962"></a><tt class="py-lineno"> 962</tt> <tt class="py-line"> <tt id="link-334" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-334', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-335" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-335', 'partitions', 'link-197');">partitions</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L963"></a><tt class="py-lineno"> 963</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L964"></a><tt class="py-lineno"> 964</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-336" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-336', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L965"></a><tt class="py-lineno"> 965</tt> <tt class="py-line"> <tt class="py-name">parsedPartitions</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-337" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-337', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L966"></a><tt class="py-lineno"> 966</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-338" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-338', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPartitions</tt><tt class="py-op">,</tt> </tt>
-<a name="L967"></a><tt class="py-lineno"> 967</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L968"></a><tt class="py-lineno"> 968</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L969"></a><tt class="py-lineno"> 969</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L970"></a><tt class="py-lineno"> 970</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for a leader in all paritions</tt> </tt>
-<a name="L971"></a><tt class="py-lineno"> 971</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for consistency among nodes</tt> </tt>
-<a name="L972"></a><tt class="py-lineno"> 972</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L973"></a><tt class="py-lineno"> 973</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-339" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-339', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-340" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-340', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"partitions() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L974"></a><tt class="py-lineno"> 974</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L975"></a><tt class="py-lineno"> 975</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-341" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-341', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing partitions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L976"></a><tt class="py-lineno"> 976</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-342" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-342', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-343" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-343', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-344" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-344', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L977"></a><tt class="py-lineno"> 977</tt> <tt class="py-line"> <tt class="py-comment"># Print Pending Map</tt> </tt>
-<a name="L978"></a><tt class="py-lineno"> 978</tt> <tt class="py-line"> <tt id="link-345" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-345', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-346" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-346', 'pendingMap', 'link-208');">pendingMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L979"></a><tt class="py-lineno"> 979</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L980"></a><tt class="py-lineno"> 980</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-347" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-347', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L981"></a><tt class="py-lineno"> 981</tt> <tt class="py-line"> <tt class="py-name">parsedPending</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-348" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-348', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L982"></a><tt class="py-lineno"> 982</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-349" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-349', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPending</tt><tt class="py-op">,</tt> </tt>
-<a name="L983"></a><tt class="py-lineno"> 983</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L984"></a><tt class="py-lineno"> 984</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L985"></a><tt class="py-lineno"> 985</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L986"></a><tt class="py-lineno"> 986</tt> <tt class="py-line"> <tt class="py-comment"># TODO check something here?</tt> </tt>
-<a name="L987"></a><tt class="py-lineno"> 987</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L988"></a><tt class="py-lineno"> 988</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-350" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-350', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-351" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-351', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pendingMap() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L989"></a><tt class="py-lineno"> 989</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L990"></a><tt class="py-lineno"> 990</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-352" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-352', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing pending map"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L991"></a><tt class="py-lineno"> 991</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-353" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-353', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-354" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-354', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-355" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-355', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L992"></a><tt class="py-lineno"> 992</tt> <tt class="py-line"> </tt>
-<a name="L993"></a><tt class="py-lineno"> 993</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">installedCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L994"></a><tt class="py-lineno"> 994</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-356" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-356', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting 60 seconds to see if the state of "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L995"></a><tt class="py-lineno"> 995</tt> <tt class="py-line"> <tt class="py-string">"intents change"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L996"></a><tt class="py-lineno"> 996</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L997"></a><tt class="py-lineno"> 997</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L998"></a><tt class="py-lineno"> 998</tt> <tt class="py-line"> <tt id="link-357" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-357', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-358" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-358', 'intents', 'link-172');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L999"></a><tt class="py-lineno"> 999</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1000"></a><tt class="py-lineno">1000</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-359" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-359', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-string">'Count'</tt><tt class="py-op">,</tt> <tt class="py-string">'ID'</tt><tt class="py-op">,</tt> <tt class="py-string">'State'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1001"></a><tt class="py-lineno">1001</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1002"></a><tt class="py-lineno">1002</tt> <tt class="py-line"> <tt class="py-comment"># Iter through intents of a node</tt> </tt>
-<a name="L1003"></a><tt class="py-lineno">1003</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1004"></a><tt class="py-lineno">1004</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-360" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-360', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-361" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-361', 'intents', 'link-172');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1005"></a><tt class="py-lineno">1005</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-362" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-362', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1006"></a><tt class="py-lineno">1006</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"INSTALLED"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L1007"></a><tt class="py-lineno">1007</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1008"></a><tt class="py-lineno">1008</tt> <tt class="py-line"> <tt class="py-name">intentId</tt> <tt class="py-op">=</tt> <tt id="link-363" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-363', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1009"></a><tt class="py-lineno">1009</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1010"></a><tt class="py-lineno">1010</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1011"></a><tt class="py-lineno">1011</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-364" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-364', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing intents."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1012"></a><tt class="py-lineno">1012</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1013"></a><tt class="py-lineno">1013</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt><tt class="py-op">:</tt> </tt>
-<a name="L1014"></a><tt class="py-lineno">1014</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1015"></a><tt class="py-lineno">1015</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-365" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-365', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L1016"></a><tt class="py-lineno">1016</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">s</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1017"></a><tt class="py-lineno">1017</tt> <tt class="py-line"> <tt id="link-366" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-366', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-367" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-367', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1018"></a><tt class="py-lineno">1018</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1019"></a><tt class="py-lineno">1019</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1020"></a><tt class="py-lineno">1020</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-368" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-368', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1021"></a><tt class="py-lineno">1021</tt> <tt class="py-line"> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-369" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-369', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L1022"></a><tt class="py-lineno">1022</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-370" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-370', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedLeaders</tt><tt class="py-op">,</tt> </tt>
-<a name="L1023"></a><tt class="py-lineno">1023</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1024"></a><tt class="py-lineno">1024</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1025"></a><tt class="py-lineno">1025</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1026"></a><tt class="py-lineno">1026</tt> <tt class="py-line"> <tt class="py-comment"># check for all intent partitions</tt> </tt>
-<a name="L1027"></a><tt class="py-lineno">1027</tt> <tt class="py-line"> <tt class="py-comment"># check for election</tt> </tt>
-<a name="L1028"></a><tt class="py-lineno">1028</tt> <tt class="py-line"> <tt class="py-name">topics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1029"></a><tt class="py-lineno">1029</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">14</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1030"></a><tt class="py-lineno">1030</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"intent-partition-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1031"></a><tt class="py-lineno">1031</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: this should only be after we start the app</tt> </tt>
-<a name="L1032"></a><tt class="py-lineno">1032</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1033"></a><tt class="py-lineno">1033</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-371" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-371', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">topics</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1034"></a><tt class="py-lineno">1034</tt> <tt class="py-line"> <tt class="py-name">ONOStopics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-string">'topic'</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1035"></a><tt class="py-lineno">1035</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">in</tt> <tt class="py-name">topics</tt><tt class="py-op">:</tt> </tt>
-<a name="L1036"></a><tt class="py-lineno">1036</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOStopics</tt><tt class="py-op">:</tt> </tt>
-<a name="L1037"></a><tt class="py-lineno">1037</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-372" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-372', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-373" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-373', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error: "</tt> <tt class="py-op">+</tt> <tt class="py-name">topic</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1038"></a><tt class="py-lineno">1038</tt> <tt class="py-line"> <tt class="py-string">" not in leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1039"></a><tt class="py-lineno">1039</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1040"></a><tt class="py-lineno">1040</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1041"></a><tt class="py-lineno">1041</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-374" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-374', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-375" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-375', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"leaders() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1042"></a><tt class="py-lineno">1042</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1043"></a><tt class="py-lineno">1043</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-376" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-376', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1044"></a><tt class="py-lineno">1044</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-377" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-377', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-378" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-378', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-379" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-379', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1045"></a><tt class="py-lineno">1045</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">missing</tt><tt class="py-op">:</tt> </tt>
-<a name="L1046"></a><tt class="py-lineno">1046</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L1047"></a><tt class="py-lineno">1047</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt id="link-380" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-380', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L1048"></a><tt class="py-lineno">1048</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-381" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-381', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" leaders output: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1049"></a><tt class="py-lineno">1049</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1050"></a><tt class="py-lineno">1050</tt> <tt class="py-line"> </tt>
-<a name="L1051"></a><tt class="py-lineno">1051</tt> <tt class="py-line"> <tt id="link-382" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-382', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-383" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-383', 'partitions', 'link-197');">partitions</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1052"></a><tt class="py-lineno">1052</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1053"></a><tt class="py-lineno">1053</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-384" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-384', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L1054"></a><tt class="py-lineno">1054</tt> <tt class="py-line"> <tt class="py-name">parsedPartitions</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-385" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-385', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L1055"></a><tt class="py-lineno">1055</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-386" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-386', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPartitions</tt><tt class="py-op">,</tt> </tt>
-<a name="L1056"></a><tt class="py-lineno">1056</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1057"></a><tt class="py-lineno">1057</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1058"></a><tt class="py-lineno">1058</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1059"></a><tt class="py-lineno">1059</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for a leader in all paritions</tt> </tt>
-<a name="L1060"></a><tt class="py-lineno">1060</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for consistency among nodes</tt> </tt>
-<a name="L1061"></a><tt class="py-lineno">1061</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1062"></a><tt class="py-lineno">1062</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-387" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-387', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-388" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-388', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"partitions() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1063"></a><tt class="py-lineno">1063</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1064"></a><tt class="py-lineno">1064</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-389" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-389', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing partitions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1065"></a><tt class="py-lineno">1065</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-390" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-390', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-391" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-391', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-392" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-392', 'partitions', 'link-197');">partitions</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1066"></a><tt class="py-lineno">1066</tt> <tt class="py-line"> <tt id="link-393" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-393', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-394" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-394', 'pendingMap', 'link-208');">pendingMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1067"></a><tt class="py-lineno">1067</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1068"></a><tt class="py-lineno">1068</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-395" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-395', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L1069"></a><tt class="py-lineno">1069</tt> <tt class="py-line"> <tt class="py-name">parsedPending</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-396" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-396', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L1070"></a><tt class="py-lineno">1070</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-397" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-397', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPending</tt><tt class="py-op">,</tt> </tt>
-<a name="L1071"></a><tt class="py-lineno">1071</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1072"></a><tt class="py-lineno">1072</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1073"></a><tt class="py-lineno">1073</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1074"></a><tt class="py-lineno">1074</tt> <tt class="py-line"> <tt class="py-comment"># TODO check something here?</tt> </tt>
-<a name="L1075"></a><tt class="py-lineno">1075</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1076"></a><tt class="py-lineno">1076</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-398" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-398', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-399" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-399', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pendingMap() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1077"></a><tt class="py-lineno">1077</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1078"></a><tt class="py-lineno">1078</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-400" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-400', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing pending map"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1079"></a><tt class="py-lineno">1079</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-401" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-401', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-402" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-402', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-403" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-403', 'pendingMap', 'link-208');">pendingMap</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1080"></a><tt class="py-lineno">1080</tt> <tt class="py-line"> <tt class="py-comment"># Print flowrules</tt> </tt>
-<a name="L1081"></a><tt class="py-lineno">1081</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-404" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-404', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-405" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#flows,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#flows"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-405', 'flows', 'link-405');">flows</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1082"></a><tt class="py-lineno">1082</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-406" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-406', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Wait a minute then ping again"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1083"></a><tt class="py-lineno">1083</tt> <tt class="py-line"> <tt class="py-comment"># the wait is above</tt> </tt>
-<a name="L1084"></a><tt class="py-lineno">1084</tt> <tt class="py-line"> <tt class="py-name">PingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1085"></a><tt class="py-lineno">1085</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-number">18</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1086"></a><tt class="py-lineno">1086</tt> <tt class="py-line"> <tt class="py-name">ping</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-407" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingHost
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingHost" class="py-name" href="#" onclick="return doclink('link-407', 'pingHost', 'link-295');">pingHost</a></tt><tt class="py-op">(</tt> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-string">"h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1087"></a><tt class="py-lineno">1087</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-string">"h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1088"></a><tt class="py-lineno">1088</tt> <tt class="py-line"> <tt class="py-name">PingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">PingResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ping</tt> </tt>
-<a name="L1089"></a><tt class="py-lineno">1089</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ping</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1090"></a><tt class="py-lineno">1090</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-408" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-408', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Ping failed between h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1091"></a><tt class="py-lineno">1091</tt> <tt class="py-line"> <tt class="py-string">" and h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1092"></a><tt class="py-lineno">1092</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ping</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1093"></a><tt class="py-lineno">1093</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-409" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-409', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Ping test passed!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1094"></a><tt class="py-lineno">1094</tt> <tt class="py-line"> <tt class="py-comment"># Don't set PingResult or you'd override failures</tt> </tt>
-<a name="L1095"></a><tt class="py-lineno">1095</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">PingResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1096"></a><tt class="py-lineno">1096</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-410" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-410', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-411" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-411', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1097"></a><tt class="py-lineno">1097</tt> <tt class="py-line"> <tt class="py-string">"Intents have not been installed correctly, pings failed."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1098"></a><tt class="py-lineno">1098</tt> <tt class="py-line"> <tt class="py-comment"># TODO: pretty print</tt> </tt>
-<a name="L1099"></a><tt class="py-lineno">1099</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-412" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-412', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS1 intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1100"></a><tt class="py-lineno">1100</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1101"></a><tt class="py-lineno">1101</tt> <tt class="py-line"> <tt class="py-name">tmpIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-413" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-413', 'intents', 'link-172');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1102"></a><tt class="py-lineno">1102</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-414" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-414', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">tmpIntents</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1103"></a><tt class="py-lineno">1103</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1104"></a><tt class="py-lineno">1104</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1105"></a><tt class="py-lineno">1105</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1106"></a><tt class="py-lineno">1106</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1107"></a><tt class="py-lineno">1107</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-415" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-415', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">tmpIntents</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1108"></a><tt class="py-lineno">1108</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1109"></a><tt class="py-lineno">1109</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1110"></a><tt class="py-lineno">1110</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">PingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1111"></a><tt class="py-lineno">1111</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents have been installed correctly and pings work"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1112"></a><tt class="py-lineno">1112</tt> <tt class="py-line"> <tt id="link-416" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-416', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intents have not been installed correctly, pings failed."</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1113"></a><tt class="py-lineno">1113</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE5"></a><div id="HAsanity.CASE5-def"><a name="L1114"></a><tt class="py-lineno">1114</tt> <a class="py-toggle" href="#" id="HAsanity.CASE5-toggle" onclick="return toggle('HAsanity.CASE5');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE5">CASE5</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE5-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE5-expanded"><a name="L1115"></a><tt class="py-lineno">1115</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1116"></a><tt class="py-lineno">1116</tt> <tt class="py-line"><tt class="py-docstring"> Reading state of ONOS</tt> </tt>
-<a name="L1117"></a><tt class="py-lineno">1117</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1118"></a><tt class="py-lineno">1118</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L1119"></a><tt class="py-lineno">1119</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1120"></a><tt class="py-lineno">1120</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1121"></a><tt class="py-lineno">1121</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1122"></a><tt class="py-lineno">1122</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1123"></a><tt class="py-lineno">1123</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L1124"></a><tt class="py-lineno">1124</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-417" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-417', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L1125"></a><tt class="py-lineno">1125</tt> <tt class="py-line"> </tt>
-<a name="L1126"></a><tt class="py-lineno">1126</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-418" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-418', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Setting up and gathering data for current state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1127"></a><tt class="py-lineno">1127</tt> <tt class="py-line"> <tt class="py-comment"># The general idea for this test case is to pull the state of</tt> </tt>
-<a name="L1128"></a><tt class="py-lineno">1128</tt> <tt class="py-line"> <tt class="py-comment"># ( intents,flows, topology,... ) from each ONOS node</tt> </tt>
-<a name="L1129"></a><tt class="py-lineno">1129</tt> <tt class="py-line"> <tt class="py-comment"># We can then compare them with each other and also with past states</tt> </tt>
-<a name="L1130"></a><tt class="py-lineno">1130</tt> <tt class="py-line"> </tt>
-<a name="L1131"></a><tt class="py-lineno">1131</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-419" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-419', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check that each switch has a master"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1132"></a><tt class="py-lineno">1132</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">mastershipState</tt> </tt>
-<a name="L1133"></a><tt class="py-lineno">1133</tt> <tt class="py-line"> <tt class="py-name">mastershipState</tt> <tt class="py-op">=</tt> <tt class="py-string">'[]'</tt> </tt>
-<a name="L1134"></a><tt class="py-lineno">1134</tt> <tt class="py-line"> </tt>
-<a name="L1135"></a><tt class="py-lineno">1135</tt> <tt class="py-line"> <tt class="py-comment"># Assert that each device has a master</tt> </tt>
-<a name="L1136"></a><tt class="py-lineno">1136</tt> <tt class="py-line"> <tt id="link-420" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#rolesNotNull"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-420', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1137"></a><tt class="py-lineno">1137</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1138"></a><tt class="py-lineno">1138</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1139"></a><tt class="py-lineno">1139</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-421" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-421', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-422" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-422', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1140"></a><tt class="py-lineno">1140</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"rolesNotNull-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1141"></a><tt class="py-lineno">1141</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1142"></a><tt class="py-lineno">1142</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1143"></a><tt class="py-lineno">1143</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1144"></a><tt class="py-lineno">1144</tt> <tt class="py-line"> </tt>
-<a name="L1145"></a><tt class="py-lineno">1145</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1146"></a><tt class="py-lineno">1146</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1147"></a><tt class="py-lineno">1147</tt> <tt class="py-line"> <tt id="link-423" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-423', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt> <tt class="py-op">=</tt> <tt id="link-424" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-424', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L1148"></a><tt class="py-lineno">1148</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1149"></a><tt class="py-lineno">1149</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1150"></a><tt class="py-lineno">1150</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt id="link-425" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-425', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1151"></a><tt class="py-lineno">1151</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Each device has a master"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1152"></a><tt class="py-lineno">1152</tt> <tt class="py-line"> <tt id="link-426" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-426', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Some devices don't have a master assigned"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1153"></a><tt class="py-lineno">1153</tt> <tt class="py-line"> </tt>
-<a name="L1154"></a><tt class="py-lineno">1154</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-427" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-427', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the Mastership of each switch from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1155"></a><tt class="py-lineno">1155</tt> <tt class="py-line"> <tt class="py-name">ONOSMastership</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1156"></a><tt class="py-lineno">1156</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1157"></a><tt class="py-lineno">1157</tt> <tt class="py-line"> <tt class="py-name">consistentMastership</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1158"></a><tt class="py-lineno">1158</tt> <tt class="py-line"> <tt class="py-name">rolesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1159"></a><tt class="py-lineno">1159</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1160"></a><tt class="py-lineno">1160</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1161"></a><tt class="py-lineno">1161</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-428" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-428', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-429" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.roles()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#roles"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.roles" class="py-name" href="#" onclick="return doclink('link-429', 'roles', 'link-429');">roles</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1162"></a><tt class="py-lineno">1162</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"roles-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1163"></a><tt class="py-lineno">1163</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1164"></a><tt class="py-lineno">1164</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1165"></a><tt class="py-lineno">1165</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1166"></a><tt class="py-lineno">1166</tt> <tt class="py-line"> </tt>
-<a name="L1167"></a><tt class="py-lineno">1167</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1168"></a><tt class="py-lineno">1168</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1169"></a><tt class="py-lineno">1169</tt> <tt class="py-line"> <tt class="py-name">ONOSMastership</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1170"></a><tt class="py-lineno">1170</tt> <tt class="py-line"> </tt>
-<a name="L1171"></a><tt class="py-lineno">1171</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1172"></a><tt class="py-lineno">1172</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1173"></a><tt class="py-lineno">1173</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-430" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-430', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-431" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-431', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1174"></a><tt class="py-lineno">1174</tt> <tt class="py-line"> <tt class="py-string">" roles"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1175"></a><tt class="py-lineno">1175</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-432" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-432', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1176"></a><tt class="py-lineno">1176</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" mastership response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1177"></a><tt class="py-lineno">1177</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1178"></a><tt class="py-lineno">1178</tt> <tt class="py-line"> <tt class="py-name">rolesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1179"></a><tt class="py-lineno">1179</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1180"></a><tt class="py-lineno">1180</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1181"></a><tt class="py-lineno">1181</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">rolesResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1182"></a><tt class="py-lineno">1182</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No error in reading roles output"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1183"></a><tt class="py-lineno">1183</tt> <tt class="py-line"> <tt id="link-433" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-433', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error in reading roles from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1184"></a><tt class="py-lineno">1184</tt> <tt class="py-line"> </tt>
-<a name="L1185"></a><tt class="py-lineno">1185</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-434" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-434', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check for consistency in roles from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1186"></a><tt class="py-lineno">1186</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSMastership</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1187"></a><tt class="py-lineno">1187</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-435" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-435', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L1188"></a><tt class="py-lineno">1188</tt> <tt class="py-line"> <tt class="py-string">"Switch roles are consistent across all ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1189"></a><tt class="py-lineno">1189</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1190"></a><tt class="py-lineno">1190</tt> <tt class="py-line"> <tt class="py-name">consistentMastership</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1191"></a><tt class="py-lineno">1191</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1192"></a><tt class="py-lineno">1192</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1193"></a><tt class="py-lineno">1193</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentMastership</tt><tt class="py-op">,</tt> </tt>
-<a name="L1194"></a><tt class="py-lineno">1194</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Switch roles are consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1195"></a><tt class="py-lineno">1195</tt> <tt class="py-line"> <tt id="link-436" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-436', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of switch roles"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1196"></a><tt class="py-lineno">1196</tt> <tt class="py-line"> </tt>
-<a name="L1197"></a><tt class="py-lineno">1197</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">rolesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentMastership</tt><tt class="py-op">:</tt> </tt>
-<a name="L1198"></a><tt class="py-lineno">1198</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1199"></a><tt class="py-lineno">1199</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1200"></a><tt class="py-lineno">1200</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-437" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-437', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1201"></a><tt class="py-lineno">1201</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" roles: "</tt><tt class="py-op">,</tt> </tt>
-<a name="L1202"></a><tt class="py-lineno">1202</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> </tt>
-<a name="L1203"></a><tt class="py-lineno">1203</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1204"></a><tt class="py-lineno">1204</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1205"></a><tt class="py-lineno">1205</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1206"></a><tt class="py-lineno">1206</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1207"></a><tt class="py-lineno">1207</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1208"></a><tt class="py-lineno">1208</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-438" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-438', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1209"></a><tt class="py-lineno">1209</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">rolesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentMastership</tt><tt class="py-op">:</tt> </tt>
-<a name="L1210"></a><tt class="py-lineno">1210</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1211"></a><tt class="py-lineno">1211</tt> <tt class="py-line"> <tt class="py-name">mastershipState</tt> <tt class="py-op">=</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1212"></a><tt class="py-lineno">1212</tt> <tt class="py-line"> </tt>
-<a name="L1213"></a><tt class="py-lineno">1213</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-439" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-439', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the intents from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1214"></a><tt class="py-lineno">1214</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">intentState</tt> </tt>
-<a name="L1215"></a><tt class="py-lineno">1215</tt> <tt class="py-line"> <tt class="py-name">intentState</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1216"></a><tt class="py-lineno">1216</tt> <tt class="py-line"> <tt class="py-name">ONOSIntents</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1217"></a><tt class="py-lineno">1217</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1218"></a><tt class="py-lineno">1218</tt> <tt class="py-line"> <tt class="py-name">consistentIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1219"></a><tt class="py-lineno">1219</tt> <tt class="py-line"> <tt class="py-name">intentsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1220"></a><tt class="py-lineno">1220</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1221"></a><tt class="py-lineno">1221</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1222"></a><tt class="py-lineno">1222</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-440" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-440', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-441" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-441', 'intents', 'link-172');">intents</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1223"></a><tt class="py-lineno">1223</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"intents-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1224"></a><tt class="py-lineno">1224</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1225"></a><tt class="py-lineno">1225</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">'jsonFormat'</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1226"></a><tt class="py-lineno">1226</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1227"></a><tt class="py-lineno">1227</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1228"></a><tt class="py-lineno">1228</tt> <tt class="py-line"> </tt>
-<a name="L1229"></a><tt class="py-lineno">1229</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1230"></a><tt class="py-lineno">1230</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1231"></a><tt class="py-lineno">1231</tt> <tt class="py-line"> <tt class="py-name">ONOSIntents</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1232"></a><tt class="py-lineno">1232</tt> <tt class="py-line"> </tt>
-<a name="L1233"></a><tt class="py-lineno">1233</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1234"></a><tt class="py-lineno">1234</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1235"></a><tt class="py-lineno">1235</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-442" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-442', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-443" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-443', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1236"></a><tt class="py-lineno">1236</tt> <tt class="py-line"> <tt class="py-string">" intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1237"></a><tt class="py-lineno">1237</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-444" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-444', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1238"></a><tt class="py-lineno">1238</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1239"></a><tt class="py-lineno">1239</tt> <tt class="py-line"> <tt class="py-name">intentsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1240"></a><tt class="py-lineno">1240</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1241"></a><tt class="py-lineno">1241</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1242"></a><tt class="py-lineno">1242</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">intentsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1243"></a><tt class="py-lineno">1243</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No error in reading intents output"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1244"></a><tt class="py-lineno">1244</tt> <tt class="py-line"> <tt id="link-445" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-445', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error in reading intents from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1245"></a><tt class="py-lineno">1245</tt> <tt class="py-line"> </tt>
-<a name="L1246"></a><tt class="py-lineno">1246</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-446" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-446', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check for consistency in Intents from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1247"></a><tt class="py-lineno">1247</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt><tt class="py-op">[</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1248"></a><tt class="py-lineno">1248</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-447" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-447', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents are consistent across all ONOS "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1249"></a><tt class="py-lineno">1249</tt> <tt class="py-line"> <tt class="py-string">"nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1250"></a><tt class="py-lineno">1250</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1251"></a><tt class="py-lineno">1251</tt> <tt class="py-line"> <tt class="py-name">consistentIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1252"></a><tt class="py-lineno">1252</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-448" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-448', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-449" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-449', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Intents not consistent"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1253"></a><tt class="py-lineno">1253</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1254"></a><tt class="py-lineno">1254</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1255"></a><tt class="py-lineno">1255</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentIntents</tt><tt class="py-op">,</tt> </tt>
-<a name="L1256"></a><tt class="py-lineno">1256</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents are consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1257"></a><tt class="py-lineno">1257</tt> <tt class="py-line"> <tt id="link-450" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-450', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1258"></a><tt class="py-lineno">1258</tt> <tt class="py-line"> </tt>
-<a name="L1259"></a><tt class="py-lineno">1259</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentsResults</tt><tt class="py-op">:</tt> </tt>
-<a name="L1260"></a><tt class="py-lineno">1260</tt> <tt class="py-line"> <tt class="py-comment"># Try to make it easy to figure out what is happening</tt> </tt>
-<a name="L1261"></a><tt class="py-lineno">1261</tt> <tt class="py-line"> <tt class="py-comment">#</tt> </tt>
-<a name="L1262"></a><tt class="py-lineno">1262</tt> <tt class="py-line"> <tt class="py-comment"># Intent ONOS1 ONOS2 ...</tt> </tt>
-<a name="L1263"></a><tt class="py-lineno">1263</tt> <tt class="py-line"> <tt class="py-comment"># 0x01 INSTALLED INSTALLING</tt> </tt>
-<a name="L1264"></a><tt class="py-lineno">1264</tt> <tt class="py-line"> <tt class="py-comment"># ... ... ...</tt> </tt>
-<a name="L1265"></a><tt class="py-lineno">1265</tt> <tt class="py-line"> <tt class="py-comment"># ... ... ...</tt> </tt>
-<a name="L1266"></a><tt class="py-lineno">1266</tt> <tt class="py-line"> <tt class="py-name">title</tt> <tt class="py-op">=</tt> <tt class="py-string">" Id"</tt> </tt>
-<a name="L1267"></a><tt class="py-lineno">1267</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">n</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1268"></a><tt class="py-lineno">1268</tt> <tt class="py-line"> <tt class="py-name">title</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">10</tt> <tt class="py-op">+</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1269"></a><tt class="py-lineno">1269</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-451" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-451', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">title</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1270"></a><tt class="py-lineno">1270</tt> <tt class="py-line"> <tt class="py-comment"># get all intent keys in the cluster</tt> </tt>
-<a name="L1271"></a><tt class="py-lineno">1271</tt> <tt class="py-line"> <tt class="py-name">keys</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1272"></a><tt class="py-lineno">1272</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1273"></a><tt class="py-lineno">1273</tt> <tt class="py-line"> <tt class="py-comment"># Get the set of all intent keys</tt> </tt>
-<a name="L1274"></a><tt class="py-lineno">1274</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">nodeStr</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1275"></a><tt class="py-lineno">1275</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1276"></a><tt class="py-lineno">1276</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-452" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-452', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">:</tt> </tt>
-<a name="L1277"></a><tt class="py-lineno">1277</tt> <tt class="py-line"> <tt class="py-name">keys</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-453" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-453', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1278"></a><tt class="py-lineno">1278</tt> <tt class="py-line"> <tt class="py-name">keys</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">keys</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1279"></a><tt class="py-lineno">1279</tt> <tt class="py-line"> <tt class="py-comment"># For each intent key, print the state on each node</tt> </tt>
-<a name="L1280"></a><tt class="py-lineno">1280</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">keys</tt><tt class="py-op">:</tt> </tt>
-<a name="L1281"></a><tt class="py-lineno">1281</tt> <tt class="py-line"> <tt class="py-name">row</tt> <tt class="py-op">=</tt> <tt class="py-string">"%-13s"</tt> <tt class="py-op">%</tt> <tt class="py-name">key</tt> </tt>
-<a name="L1282"></a><tt class="py-lineno">1282</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">nodeStr</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1283"></a><tt class="py-lineno">1283</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1284"></a><tt class="py-lineno">1284</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-454" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-454', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">:</tt> </tt>
-<a name="L1285"></a><tt class="py-lineno">1285</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-455" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-455', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-string">"Error"</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">key</tt><tt class="py-op">:</tt> </tt>
-<a name="L1286"></a><tt class="py-lineno">1286</tt> <tt class="py-line"> <tt class="py-name">row</tt> <tt class="py-op">+=</tt> <tt class="py-string">"%-15s"</tt> <tt class="py-op">%</tt> <tt id="link-456" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-456', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1287"></a><tt class="py-lineno">1287</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-457" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-457', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">row</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1288"></a><tt class="py-lineno">1288</tt> <tt class="py-line"> <tt class="py-comment"># End of intent state table</tt> </tt>
-<a name="L1289"></a><tt class="py-lineno">1289</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">ValueError</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L1290"></a><tt class="py-lineno">1290</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-458" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-458', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1291"></a><tt class="py-lineno">1291</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-459" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-459', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"nodeStr was: "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStr</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1292"></a><tt class="py-lineno">1292</tt> <tt class="py-line"> </tt>
-<a name="L1293"></a><tt class="py-lineno">1293</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1294"></a><tt class="py-lineno">1294</tt> <tt class="py-line"> <tt class="py-comment"># print the json objects</tt> </tt>
-<a name="L1295"></a><tt class="py-lineno">1295</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIntents</tt><tt class="py-op">)</tt> </tt>
-<a name="L1296"></a><tt class="py-lineno">1296</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-460" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-460', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1297"></a><tt class="py-lineno">1297</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-461" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-461', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1298"></a><tt class="py-lineno">1298</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1299"></a><tt class="py-lineno">1299</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1300"></a><tt class="py-lineno">1300</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1301"></a><tt class="py-lineno">1301</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1302"></a><tt class="py-lineno">1302</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1303"></a><tt class="py-lineno">1303</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-462" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-462', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1304"></a><tt class="py-lineno">1304</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-463" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-463', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1305"></a><tt class="py-lineno">1305</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1306"></a><tt class="py-lineno">1306</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1307"></a><tt class="py-lineno">1307</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1308"></a><tt class="py-lineno">1308</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1309"></a><tt class="py-lineno">1309</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-464" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-464', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-465" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-465', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents match ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1310"></a><tt class="py-lineno">1310</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1311"></a><tt class="py-lineno">1311</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">intentsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1312"></a><tt class="py-lineno">1312</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1313"></a><tt class="py-lineno">1313</tt> <tt class="py-line"> <tt class="py-name">intentState</tt> <tt class="py-op">=</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1314"></a><tt class="py-lineno">1314</tt> <tt class="py-line"> </tt>
-<a name="L1315"></a><tt class="py-lineno">1315</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-466" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-466', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the flows from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1316"></a><tt class="py-lineno">1316</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">flowState</tt> </tt>
-<a name="L1317"></a><tt class="py-lineno">1317</tt> <tt class="py-line"> <tt class="py-name">flowState</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1318"></a><tt class="py-lineno">1318</tt> <tt class="py-line"> <tt class="py-name">ONOSFlows</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1319"></a><tt class="py-lineno">1319</tt> <tt class="py-line"> <tt class="py-name">ONOSFlowsJson</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1320"></a><tt class="py-lineno">1320</tt> <tt class="py-line"> <tt class="py-name">flowCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1321"></a><tt class="py-lineno">1321</tt> <tt class="py-line"> <tt class="py-name">consistentFlows</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1322"></a><tt class="py-lineno">1322</tt> <tt class="py-line"> <tt class="py-name">flowsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1323"></a><tt class="py-lineno">1323</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1324"></a><tt class="py-lineno">1324</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1325"></a><tt class="py-lineno">1325</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-467" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-467', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-468" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-468', 'flows', 'link-405');">flows</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1326"></a><tt class="py-lineno">1326</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"flows-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1327"></a><tt class="py-lineno">1327</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1328"></a><tt class="py-lineno">1328</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">'jsonFormat'</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1329"></a><tt class="py-lineno">1329</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1330"></a><tt class="py-lineno">1330</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1331"></a><tt class="py-lineno">1331</tt> <tt class="py-line"> </tt>
-<a name="L1332"></a><tt class="py-lineno">1332</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Flows command can take some time to run</tt> </tt>
-<a name="L1333"></a><tt class="py-lineno">1333</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">30</tt><tt class="py-op">)</tt> </tt>
-<a name="L1334"></a><tt class="py-lineno">1334</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1335"></a><tt class="py-lineno">1335</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1336"></a><tt class="py-lineno">1336</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L1337"></a><tt class="py-lineno">1337</tt> <tt class="py-line"> <tt class="py-name">ONOSFlows</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1338"></a><tt class="py-lineno">1338</tt> <tt class="py-line"> </tt>
-<a name="L1339"></a><tt class="py-lineno">1339</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1340"></a><tt class="py-lineno">1340</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1341"></a><tt class="py-lineno">1341</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1342"></a><tt class="py-lineno">1342</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-469" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-469', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-470" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-470', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">num</tt> <tt class="py-op">+</tt> <tt class="py-string">" flows"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1343"></a><tt class="py-lineno">1343</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-471" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-471', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">num</tt> <tt class="py-op">+</tt> <tt class="py-string">" flows response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1344"></a><tt class="py-lineno">1344</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1345"></a><tt class="py-lineno">1345</tt> <tt class="py-line"> <tt class="py-name">flowsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1346"></a><tt class="py-lineno">1346</tt> <tt class="py-line"> <tt class="py-name">ONOSFlowsJson</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1347"></a><tt class="py-lineno">1347</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1348"></a><tt class="py-lineno">1348</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1349"></a><tt class="py-lineno">1349</tt> <tt class="py-line"> <tt class="py-name">ONOSFlowsJson</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1350"></a><tt class="py-lineno">1350</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1351"></a><tt class="py-lineno">1351</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: change this to log.error?</tt> </tt>
-<a name="L1352"></a><tt class="py-lineno">1352</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-472" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-472', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error in parsing ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">num</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1353"></a><tt class="py-lineno">1353</tt> <tt class="py-line"> <tt class="py-string">" response as json."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1354"></a><tt class="py-lineno">1354</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-473" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-473', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-474" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-474', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1355"></a><tt class="py-lineno">1355</tt> <tt class="py-line"> <tt class="py-name">ONOSFlowsJson</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1356"></a><tt class="py-lineno">1356</tt> <tt class="py-line"> <tt class="py-name">flowsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1357"></a><tt class="py-lineno">1357</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1358"></a><tt class="py-lineno">1358</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1359"></a><tt class="py-lineno">1359</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">flowsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1360"></a><tt class="py-lineno">1360</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No error in reading flows output"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1361"></a><tt class="py-lineno">1361</tt> <tt class="py-line"> <tt id="link-475" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-475', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error in reading flows from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1362"></a><tt class="py-lineno">1362</tt> <tt class="py-line"> </tt>
-<a name="L1363"></a><tt class="py-lineno">1363</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-476" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-476', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check for consistency in Flows from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1364"></a><tt class="py-lineno">1364</tt> <tt class="py-line"> <tt class="py-name">tmp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlowsJson</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSFlowsJson</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1365"></a><tt class="py-lineno">1365</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt> <tt class="py-name">tmp</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1366"></a><tt class="py-lineno">1366</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-477" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-477', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Flow count is consistent across all ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1367"></a><tt class="py-lineno">1367</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1368"></a><tt class="py-lineno">1368</tt> <tt class="py-line"> <tt class="py-name">consistentFlows</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1369"></a><tt class="py-lineno">1369</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1370"></a><tt class="py-lineno">1370</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1371"></a><tt class="py-lineno">1371</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentFlows</tt><tt class="py-op">,</tt> </tt>
-<a name="L1372"></a><tt class="py-lineno">1372</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"The flow count is consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1373"></a><tt class="py-lineno">1373</tt> <tt class="py-line"> <tt id="link-478" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-478', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different flow counts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1374"></a><tt class="py-lineno">1374</tt> <tt class="py-line"> </tt>
-<a name="L1375"></a><tt class="py-lineno">1375</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">flowsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentFlows</tt><tt class="py-op">:</tt> </tt>
-<a name="L1376"></a><tt class="py-lineno">1376</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1377"></a><tt class="py-lineno">1377</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1378"></a><tt class="py-lineno">1378</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-479" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-479', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1379"></a><tt class="py-lineno">1379</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" flows: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1380"></a><tt class="py-lineno">1380</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1381"></a><tt class="py-lineno">1381</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1382"></a><tt class="py-lineno">1382</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1383"></a><tt class="py-lineno">1383</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-480" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-480', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1384"></a><tt class="py-lineno">1384</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" flows: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1385"></a><tt class="py-lineno">1385</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1386"></a><tt class="py-lineno">1386</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">flowsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentFlows</tt><tt class="py-op">:</tt> </tt>
-<a name="L1387"></a><tt class="py-lineno">1387</tt> <tt class="py-line"> <tt class="py-name">flowCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1388"></a><tt class="py-lineno">1388</tt> <tt class="py-line"> <tt class="py-name">flowState</tt> <tt class="py-op">=</tt> <tt class="py-name">ONOSFlows</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1389"></a><tt class="py-lineno">1389</tt> <tt class="py-line"> </tt>
-<a name="L1390"></a><tt class="py-lineno">1390</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-481" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-481', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the OF Table entries"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1391"></a><tt class="py-lineno">1391</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt id="link-482" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-482', 'flows', 'link-405');">flows</a></tt> </tt>
-<a name="L1392"></a><tt class="py-lineno">1392</tt> <tt class="py-line"> <tt id="link-483" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-483', 'flows', 'link-405');">flows</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1393"></a><tt class="py-lineno">1393</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1394"></a><tt class="py-lineno">1394</tt> <tt class="py-line"> <tt id="link-484" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-484', 'flows', 'link-405');">flows</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-485" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getFlowTable()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getFlowTable"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getFlowTable" class="py-name" href="#" onclick="return doclink('link-485', 'getFlowTable', 'link-485');">getFlowTable</a></tt><tt class="py-op">(</tt> <tt class="py-number">1.3</tt><tt class="py-op">,</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1395"></a><tt class="py-lineno">1395</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">flowCheck</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1396"></a><tt class="py-lineno">1396</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">table</tt> <tt class="py-keyword">in</tt> <tt id="link-486" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-486', 'flows', 'link-405');">flows</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1397"></a><tt class="py-lineno">1397</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-487" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-487', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">table</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1398"></a><tt class="py-lineno">1398</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Compare switch flow tables with ONOS flow tables</tt> </tt>
-<a name="L1399"></a><tt class="py-lineno">1399</tt> <tt class="py-line"> </tt>
-<a name="L1400"></a><tt class="py-lineno">1400</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-488" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-488', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start continuous pings"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1401"></a><tt class="py-lineno">1401</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-489" class="py-name" targets="Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingLong"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-489', 'pingLong', 'link-489');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1402"></a><tt class="py-lineno">1402</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source1'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1403"></a><tt class="py-lineno">1403</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target1'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1404"></a><tt class="py-lineno">1404</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1405"></a><tt class="py-lineno">1405</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-490" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-490', 'pingLong', 'link-489');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1406"></a><tt class="py-lineno">1406</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source2'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1407"></a><tt class="py-lineno">1407</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target2'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1408"></a><tt class="py-lineno">1408</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1409"></a><tt class="py-lineno">1409</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-491" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-491', 'pingLong', 'link-489');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1410"></a><tt class="py-lineno">1410</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source3'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1411"></a><tt class="py-lineno">1411</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target3'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1412"></a><tt class="py-lineno">1412</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1413"></a><tt class="py-lineno">1413</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-492" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-492', 'pingLong', 'link-489');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1414"></a><tt class="py-lineno">1414</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source4'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1415"></a><tt class="py-lineno">1415</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target4'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1416"></a><tt class="py-lineno">1416</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1417"></a><tt class="py-lineno">1417</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-493" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-493', 'pingLong', 'link-489');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1418"></a><tt class="py-lineno">1418</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source5'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1419"></a><tt class="py-lineno">1419</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target5'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1420"></a><tt class="py-lineno">1420</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1421"></a><tt class="py-lineno">1421</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-494" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-494', 'pingLong', 'link-489');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1422"></a><tt class="py-lineno">1422</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source6'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1423"></a><tt class="py-lineno">1423</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target6'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1424"></a><tt class="py-lineno">1424</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1425"></a><tt class="py-lineno">1425</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-495" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-495', 'pingLong', 'link-489');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1426"></a><tt class="py-lineno">1426</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source7'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1427"></a><tt class="py-lineno">1427</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target7'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1428"></a><tt class="py-lineno">1428</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1429"></a><tt class="py-lineno">1429</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-496" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-496', 'pingLong', 'link-489');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1430"></a><tt class="py-lineno">1430</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source8'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1431"></a><tt class="py-lineno">1431</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target8'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1432"></a><tt class="py-lineno">1432</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1433"></a><tt class="py-lineno">1433</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-497" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-497', 'pingLong', 'link-489');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1434"></a><tt class="py-lineno">1434</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source9'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1435"></a><tt class="py-lineno">1435</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target9'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1436"></a><tt class="py-lineno">1436</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1437"></a><tt class="py-lineno">1437</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-498" class="py-name"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong" class="py-name" href="#" onclick="return doclink('link-498', 'pingLong', 'link-489');">pingLong</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1438"></a><tt class="py-lineno">1438</tt> <tt class="py-line"> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'source10'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1439"></a><tt class="py-lineno">1439</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'PING'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'target10'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1440"></a><tt class="py-lineno">1440</tt> <tt class="py-line"> <tt class="py-name">pingTime</tt><tt class="py-op">=</tt><tt class="py-number">500</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1441"></a><tt class="py-lineno">1441</tt> <tt class="py-line"> </tt>
-<a name="L1442"></a><tt class="py-lineno">1442</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-499" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-499', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Collecting topology information from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1443"></a><tt class="py-lineno">1443</tt> <tt class="py-line"> <tt id="link-500" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-500', 'devices', 'link-114');">devices</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1444"></a><tt class="py-lineno">1444</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1445"></a><tt class="py-lineno">1445</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1446"></a><tt class="py-lineno">1446</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-501" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-501', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-502" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-502', 'devices', 'link-114');">devices</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1447"></a><tt class="py-lineno">1447</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"devices-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1448"></a><tt class="py-lineno">1448</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1449"></a><tt class="py-lineno">1449</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1450"></a><tt class="py-lineno">1450</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1451"></a><tt class="py-lineno">1451</tt> <tt class="py-line"> </tt>
-<a name="L1452"></a><tt class="py-lineno">1452</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1453"></a><tt class="py-lineno">1453</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1454"></a><tt class="py-lineno">1454</tt> <tt class="py-line"> <tt id="link-503" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-503', 'devices', 'link-114');">devices</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1455"></a><tt class="py-lineno">1455</tt> <tt class="py-line"> <tt id="link-504" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-504', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1456"></a><tt class="py-lineno">1456</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1457"></a><tt class="py-lineno">1457</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1458"></a><tt class="py-lineno">1458</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-505" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-505', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-506" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-506', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1459"></a><tt class="py-lineno">1459</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"hosts-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1460"></a><tt class="py-lineno">1460</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1461"></a><tt class="py-lineno">1461</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1462"></a><tt class="py-lineno">1462</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1463"></a><tt class="py-lineno">1463</tt> <tt class="py-line"> </tt>
-<a name="L1464"></a><tt class="py-lineno">1464</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1465"></a><tt class="py-lineno">1465</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1466"></a><tt class="py-lineno">1466</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1467"></a><tt class="py-lineno">1467</tt> <tt class="py-line"> <tt id="link-507" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-507', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1468"></a><tt class="py-lineno">1468</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1469"></a><tt class="py-lineno">1469</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: better handling of this, print which node</tt> </tt>
-<a name="L1470"></a><tt class="py-lineno">1470</tt> <tt class="py-line"> <tt class="py-comment"># Maybe use thread name?</tt> </tt>
-<a name="L1471"></a><tt class="py-lineno">1471</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-508" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-508', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing json output of hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1472"></a><tt class="py-lineno">1472</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: should this be an empty json object instead?</tt> </tt>
-<a name="L1473"></a><tt class="py-lineno">1473</tt> <tt class="py-line"> <tt id="link-509" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-509', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1474"></a><tt class="py-lineno">1474</tt> <tt class="py-line"> </tt>
-<a name="L1475"></a><tt class="py-lineno">1475</tt> <tt class="py-line"> <tt id="link-510" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#ports"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-510', 'ports', 'link-510');">ports</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1476"></a><tt class="py-lineno">1476</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1477"></a><tt class="py-lineno">1477</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1478"></a><tt class="py-lineno">1478</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-511" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-511', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-512" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-512', 'ports', 'link-510');">ports</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1479"></a><tt class="py-lineno">1479</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"ports-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1480"></a><tt class="py-lineno">1480</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1481"></a><tt class="py-lineno">1481</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1482"></a><tt class="py-lineno">1482</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1483"></a><tt class="py-lineno">1483</tt> <tt class="py-line"> </tt>
-<a name="L1484"></a><tt class="py-lineno">1484</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1485"></a><tt class="py-lineno">1485</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1486"></a><tt class="py-lineno">1486</tt> <tt class="py-line"> <tt id="link-513" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-513', 'ports', 'link-510');">ports</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1487"></a><tt class="py-lineno">1487</tt> <tt class="py-line"> <tt id="link-514" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#links,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#links"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-514', 'links', 'link-514');">links</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1488"></a><tt class="py-lineno">1488</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1489"></a><tt class="py-lineno">1489</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1490"></a><tt class="py-lineno">1490</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-515" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-515', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-516" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-516', 'links', 'link-514');">links</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1491"></a><tt class="py-lineno">1491</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"links-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1492"></a><tt class="py-lineno">1492</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1493"></a><tt class="py-lineno">1493</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1494"></a><tt class="py-lineno">1494</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1495"></a><tt class="py-lineno">1495</tt> <tt class="py-line"> </tt>
-<a name="L1496"></a><tt class="py-lineno">1496</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1497"></a><tt class="py-lineno">1497</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1498"></a><tt class="py-lineno">1498</tt> <tt class="py-line"> <tt id="link-517" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-517', 'links', 'link-514');">links</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1499"></a><tt class="py-lineno">1499</tt> <tt class="py-line"> <tt id="link-518" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#clusters"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-518', 'clusters', 'link-518');">clusters</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1500"></a><tt class="py-lineno">1500</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1501"></a><tt class="py-lineno">1501</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1502"></a><tt class="py-lineno">1502</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-519" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-519', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-520" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-520', 'clusters', 'link-518');">clusters</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1503"></a><tt class="py-lineno">1503</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"clusters-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1504"></a><tt class="py-lineno">1504</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1505"></a><tt class="py-lineno">1505</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1506"></a><tt class="py-lineno">1506</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1507"></a><tt class="py-lineno">1507</tt> <tt class="py-line"> </tt>
-<a name="L1508"></a><tt class="py-lineno">1508</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1509"></a><tt class="py-lineno">1509</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1510"></a><tt class="py-lineno">1510</tt> <tt class="py-line"> <tt id="link-521" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-521', 'clusters', 'link-518');">clusters</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1511"></a><tt class="py-lineno">1511</tt> <tt class="py-line"> <tt class="py-comment"># Compare json objects for hosts and dataplane clusters</tt> </tt>
-<a name="L1512"></a><tt class="py-lineno">1512</tt> <tt class="py-line"> </tt>
-<a name="L1513"></a><tt class="py-lineno">1513</tt> <tt class="py-line"> <tt class="py-comment"># hosts</tt> </tt>
-<a name="L1514"></a><tt class="py-lineno">1514</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-522" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-522', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Host view is consistent across ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1515"></a><tt class="py-lineno">1515</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1516"></a><tt class="py-lineno">1516</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-523" class="py-name" targets="Package TestON.drivers.common.api.controller=TestON.drivers.common.api.controller-module.html"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-523', 'controller', 'link-523');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-524" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-524', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1517"></a><tt class="py-lineno">1517</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-525" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-525', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1518"></a><tt class="py-lineno">1518</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-526" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-526', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-527" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-527', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1519"></a><tt class="py-lineno">1519</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-528" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-528', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-529" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-529', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt id="link-530" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-530', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1520"></a><tt class="py-lineno">1520</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L1521"></a><tt class="py-lineno">1521</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># hosts not consistent</tt> </tt>
-<a name="L1522"></a><tt class="py-lineno">1522</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-531" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-531', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-532" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-532', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"hosts from ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1523"></a><tt class="py-lineno">1523</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1524"></a><tt class="py-lineno">1524</tt> <tt class="py-line"> <tt class="py-string">" is inconsistent with ONOS1"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1525"></a><tt class="py-lineno">1525</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-533" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-533', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-534" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-534', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-535" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-535', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1526"></a><tt class="py-lineno">1526</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1527"></a><tt class="py-lineno">1527</tt> <tt class="py-line"> </tt>
-<a name="L1528"></a><tt class="py-lineno">1528</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1529"></a><tt class="py-lineno">1529</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-536" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-536', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-537" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-537', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS hosts from ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1530"></a><tt class="py-lineno">1530</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1531"></a><tt class="py-lineno">1531</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1532"></a><tt class="py-lineno">1532</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-538" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-538', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1533"></a><tt class="py-lineno">1533</tt> <tt class="py-line"> <tt class="py-string">" hosts response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1534"></a><tt class="py-lineno">1534</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-539" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-539', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-540" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-540', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1535"></a><tt class="py-lineno">1535</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1536"></a><tt class="py-lineno">1536</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1537"></a><tt class="py-lineno">1537</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentHostsResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1538"></a><tt class="py-lineno">1538</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Hosts view is consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1539"></a><tt class="py-lineno">1539</tt> <tt class="py-line"> <tt id="link-541" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-541', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1540"></a><tt class="py-lineno">1540</tt> <tt class="py-line"> </tt>
-<a name="L1541"></a><tt class="py-lineno">1541</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-542" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-542', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Each host has an IP address"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1542"></a><tt class="py-lineno">1542</tt> <tt class="py-line"> <tt class="py-name">ipResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1543"></a><tt class="py-lineno">1543</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-543" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-543', 'controller', 'link-523');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-544" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-544', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1544"></a><tt class="py-lineno">1544</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-545" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-545', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1545"></a><tt class="py-lineno">1545</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt id="link-546" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-546', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-547" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-547', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1546"></a><tt class="py-lineno">1546</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'ipAddresses'</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1547"></a><tt class="py-lineno">1547</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-548" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-548', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-549" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-549', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"DEBUG:Error with host ips on controller"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1548"></a><tt class="py-lineno">1548</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1549"></a><tt class="py-lineno">1549</tt> <tt class="py-line"> <tt class="py-name">ipResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1550"></a><tt class="py-lineno">1550</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1551"></a><tt class="py-lineno">1551</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1552"></a><tt class="py-lineno">1552</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">ipResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1553"></a><tt class="py-lineno">1553</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"The ips of the hosts aren't empty"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1554"></a><tt class="py-lineno">1554</tt> <tt class="py-line"> <tt id="link-550" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-550', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"The ip of at least one host is missing"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1555"></a><tt class="py-lineno">1555</tt> <tt class="py-line"> </tt>
-<a name="L1556"></a><tt class="py-lineno">1556</tt> <tt class="py-line"> <tt class="py-comment"># Strongly connected clusters of devices</tt> </tt>
-<a name="L1557"></a><tt class="py-lineno">1557</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-551" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-551', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cluster view is consistent across ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1558"></a><tt class="py-lineno">1558</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1559"></a><tt class="py-lineno">1559</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-552" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-552', 'controller', 'link-523');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-553" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-553', 'clusters', 'link-518');">clusters</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1560"></a><tt class="py-lineno">1560</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-554" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-554', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1561"></a><tt class="py-lineno">1561</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-555" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-555', 'clusters', 'link-518');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-556" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-556', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1562"></a><tt class="py-lineno">1562</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-557" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-557', 'clusters', 'link-518');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-558" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-558', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt id="link-559" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-559', 'clusters', 'link-518');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1563"></a><tt class="py-lineno">1563</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L1564"></a><tt class="py-lineno">1564</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># clusters not consistent</tt> </tt>
-<a name="L1565"></a><tt class="py-lineno">1565</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-560" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-560', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-561" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-561', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"clusters from ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1566"></a><tt class="py-lineno">1566</tt> <tt class="py-line"> <tt class="py-string">" is inconsistent with ONOS1"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1567"></a><tt class="py-lineno">1567</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1568"></a><tt class="py-lineno">1568</tt> <tt class="py-line"> </tt>
-<a name="L1569"></a><tt class="py-lineno">1569</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1570"></a><tt class="py-lineno">1570</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-562" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-562', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-563" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-563', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting dataplane clusters "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1571"></a><tt class="py-lineno">1571</tt> <tt class="py-line"> <tt class="py-string">"from ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1572"></a><tt class="py-lineno">1572</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1573"></a><tt class="py-lineno">1573</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-564" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-564', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1574"></a><tt class="py-lineno">1574</tt> <tt class="py-line"> <tt class="py-string">" clusters response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1575"></a><tt class="py-lineno">1575</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-565" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-565', 'clusters', 'link-518');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-566" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-566', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1576"></a><tt class="py-lineno">1576</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1577"></a><tt class="py-lineno">1577</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1578"></a><tt class="py-lineno">1578</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentClustersResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1579"></a><tt class="py-lineno">1579</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Clusters view is consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1580"></a><tt class="py-lineno">1580</tt> <tt class="py-line"> <tt id="link-567" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-567', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of clusters"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1581"></a><tt class="py-lineno">1581</tt> <tt class="py-line"> <tt class="py-comment"># there should always only be one cluster</tt> </tt>
-<a name="L1582"></a><tt class="py-lineno">1582</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-568" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-568', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cluster view correct across ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1583"></a><tt class="py-lineno">1583</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1584"></a><tt class="py-lineno">1584</tt> <tt class="py-line"> <tt class="py-name">numClusters</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-569" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-569', 'clusters', 'link-518');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1585"></a><tt class="py-lineno">1585</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1586"></a><tt class="py-lineno">1586</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-570" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-570', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing clusters[0]: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1587"></a><tt class="py-lineno">1587</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-571" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-571', 'clusters', 'link-518');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1588"></a><tt class="py-lineno">1588</tt> <tt class="py-line"> <tt class="py-name">clusterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1589"></a><tt class="py-lineno">1589</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">numClusters</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1590"></a><tt class="py-lineno">1590</tt> <tt class="py-line"> <tt class="py-name">clusterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1591"></a><tt class="py-lineno">1591</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1592"></a><tt class="py-lineno">1592</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1593"></a><tt class="py-lineno">1593</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">numClusters</tt><tt class="py-op">,</tt> </tt>
-<a name="L1594"></a><tt class="py-lineno">1594</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS shows 1 SCC"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1595"></a><tt class="py-lineno">1595</tt> <tt class="py-line"> <tt id="link-572" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-572', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS shows "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">numClusters</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" SCCs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1596"></a><tt class="py-lineno">1596</tt> <tt class="py-line"> </tt>
-<a name="L1597"></a><tt class="py-lineno">1597</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-573" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-573', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Comparing ONOS topology to MN"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1598"></a><tt class="py-lineno">1598</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1599"></a><tt class="py-lineno">1599</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1600"></a><tt class="py-lineno">1600</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1601"></a><tt class="py-lineno">1601</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-574" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitches()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitches"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitches" class="py-name" href="#" onclick="return doclink('link-574', 'getSwitches', 'link-574');">getSwitches</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1602"></a><tt class="py-lineno">1602</tt> <tt class="py-line"> <tt class="py-name">mnLinks</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-575" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getLinks()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getLinks"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getLinks" class="py-name" href="#" onclick="return doclink('link-575', 'getLinks', 'link-575');">getLinks</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1603"></a><tt class="py-lineno">1603</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-576" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getHosts"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts" class="py-name" href="#" onclick="return doclink('link-576', 'getHosts', 'link-576');">getHosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1604"></a><tt class="py-lineno">1604</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-577" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-577', 'controller', 'link-523');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1605"></a><tt class="py-lineno">1605</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-578" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-578', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1606"></a><tt class="py-lineno">1606</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-579" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-579', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-580" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-580', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt id="link-581" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-581', 'ports', 'link-510');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-582" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-582', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L1607"></a><tt class="py-lineno">1607</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-583" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-583', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-584" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-584', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L1608"></a><tt class="py-lineno">1608</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-585" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-585', 'ports', 'link-510');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-586" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-586', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1609"></a><tt class="py-lineno">1609</tt> <tt class="py-line"> </tt>
-<a name="L1610"></a><tt class="py-lineno">1610</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-587" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareSwitches()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareSwitches"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareSwitches" class="py-name" href="#" onclick="return doclink('link-587', 'compareSwitches', 'link-587');">compareSwitches</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1611"></a><tt class="py-lineno">1611</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> </tt>
-<a name="L1612"></a><tt class="py-lineno">1612</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-588" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-588', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-589" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-589', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1613"></a><tt class="py-lineno">1613</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-590" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-590', 'ports', 'link-510');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-591" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-591', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1614"></a><tt class="py-lineno">1614</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1615"></a><tt class="py-lineno">1615</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1616"></a><tt class="py-lineno">1616</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1617"></a><tt class="py-lineno">1617</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentDevicesResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1618"></a><tt class="py-lineno">1618</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1619"></a><tt class="py-lineno">1619</tt> <tt class="py-line"> <tt class="py-string">" Switches view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1620"></a><tt class="py-lineno">1620</tt> <tt class="py-line"> <tt id="link-592" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-592', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1621"></a><tt class="py-lineno">1621</tt> <tt class="py-line"> <tt class="py-string">" Switches view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1622"></a><tt class="py-lineno">1622</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-593" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-593', 'links', 'link-514');">links</a></tt><tt class="py-op">[</tt> <tt id="link-594" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-594', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-595" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-595', 'links', 'link-514');">links</a></tt><tt class="py-op">[</tt> <tt id="link-596" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-596', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1623"></a><tt class="py-lineno">1623</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-597" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareLinks()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareLinks"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareLinks" class="py-name" href="#" onclick="return doclink('link-597', 'compareLinks', 'link-597');">compareLinks</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1624"></a><tt class="py-lineno">1624</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> <tt class="py-name">mnLinks</tt><tt class="py-op">,</tt> </tt>
-<a name="L1625"></a><tt class="py-lineno">1625</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-598" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-598', 'links', 'link-514');">links</a></tt><tt class="py-op">[</tt> <tt id="link-599" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-599', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1626"></a><tt class="py-lineno">1626</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1627"></a><tt class="py-lineno">1627</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1628"></a><tt class="py-lineno">1628</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1629"></a><tt class="py-lineno">1629</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentLinksResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1630"></a><tt class="py-lineno">1630</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1631"></a><tt class="py-lineno">1631</tt> <tt class="py-line"> <tt class="py-string">" links view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1632"></a><tt class="py-lineno">1632</tt> <tt class="py-line"> <tt id="link-600" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-600', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1633"></a><tt class="py-lineno">1633</tt> <tt class="py-line"> <tt class="py-string">" links view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1634"></a><tt class="py-lineno">1634</tt> <tt class="py-line"> </tt>
-<a name="L1635"></a><tt class="py-lineno">1635</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-601" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-601', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-602" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-602', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-603" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-603', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-604" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-604', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1636"></a><tt class="py-lineno">1636</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-605" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareHosts()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareHosts"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareHosts" class="py-name" href="#" onclick="return doclink('link-605', 'compareHosts', 'link-605');">compareHosts</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1637"></a><tt class="py-lineno">1637</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt><tt class="py-op">,</tt> </tt>
-<a name="L1638"></a><tt class="py-lineno">1638</tt> <tt class="py-line"> <tt id="link-606" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-606', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-607" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-607', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1639"></a><tt class="py-lineno">1639</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1640"></a><tt class="py-lineno">1640</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1641"></a><tt class="py-lineno">1641</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1642"></a><tt class="py-lineno">1642</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentHostsResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1643"></a><tt class="py-lineno">1643</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1644"></a><tt class="py-lineno">1644</tt> <tt class="py-line"> <tt class="py-string">" hosts exist in Mininet"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1645"></a><tt class="py-lineno">1645</tt> <tt class="py-line"> <tt id="link-608" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-608', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1646"></a><tt class="py-lineno">1646</tt> <tt class="py-line"> <tt class="py-string">" hosts don't match Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1647"></a><tt class="py-lineno">1647</tt> <tt class="py-line"> </tt>
-<a name="L1648"></a><tt class="py-lineno">1648</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">devicesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentDevicesResult</tt> </tt>
-<a name="L1649"></a><tt class="py-lineno">1649</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">linksResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentLinksResult</tt> </tt>
-<a name="L1650"></a><tt class="py-lineno">1650</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentHostsResult</tt> </tt>
-<a name="L1651"></a><tt class="py-lineno">1651</tt> <tt class="py-line"> </tt>
-<a name="L1652"></a><tt class="py-lineno">1652</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-609" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-609', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Device information is correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1653"></a><tt class="py-lineno">1653</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1654"></a><tt class="py-lineno">1654</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1655"></a><tt class="py-lineno">1655</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">devicesResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1656"></a><tt class="py-lineno">1656</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Device information is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1657"></a><tt class="py-lineno">1657</tt> <tt class="py-line"> <tt id="link-610" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-610', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Device information is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1658"></a><tt class="py-lineno">1658</tt> <tt class="py-line"> </tt>
-<a name="L1659"></a><tt class="py-lineno">1659</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-611" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-611', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Links are correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1660"></a><tt class="py-lineno">1660</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1661"></a><tt class="py-lineno">1661</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1662"></a><tt class="py-lineno">1662</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linksResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1663"></a><tt class="py-lineno">1663</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1664"></a><tt class="py-lineno">1664</tt> <tt class="py-line"> <tt id="link-612" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-612', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Links are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1665"></a><tt class="py-lineno">1665</tt> <tt class="py-line"> </tt>
-<a name="L1666"></a><tt class="py-lineno">1666</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-613" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-613', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Hosts are correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1667"></a><tt class="py-lineno">1667</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1668"></a><tt class="py-lineno">1668</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1669"></a><tt class="py-lineno">1669</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">hostsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1670"></a><tt class="py-lineno">1670</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Hosts are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1671"></a><tt class="py-lineno">1671</tt> <tt class="py-line"> <tt id="link-614" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-614', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Hosts are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1672"></a><tt class="py-lineno">1672</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE6"></a><div id="HAsanity.CASE6-def"><a name="L1673"></a><tt class="py-lineno">1673</tt> <a class="py-toggle" href="#" id="HAsanity.CASE6-toggle" onclick="return toggle('HAsanity.CASE6');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE6">CASE6</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE6-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE6-expanded"><a name="L1674"></a><tt class="py-lineno">1674</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1675"></a><tt class="py-lineno">1675</tt> <tt class="py-line"><tt class="py-docstring"> The Failure case. Since this is the Sanity test, we do nothing.</tt> </tt>
-<a name="L1676"></a><tt class="py-lineno">1676</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1677"></a><tt class="py-lineno">1677</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1678"></a><tt class="py-lineno">1678</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1679"></a><tt class="py-lineno">1679</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1680"></a><tt class="py-lineno">1680</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1681"></a><tt class="py-lineno">1681</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L1682"></a><tt class="py-lineno">1682</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-615" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-615', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L1683"></a><tt class="py-lineno">1683</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-616" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-616', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Wait 60 seconds instead of inducing a failure"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1684"></a><tt class="py-lineno">1684</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1685"></a><tt class="py-lineno">1685</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1686"></a><tt class="py-lineno">1686</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1687"></a><tt class="py-lineno">1687</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1688"></a><tt class="py-lineno">1688</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Sleeping 60 seconds"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1689"></a><tt class="py-lineno">1689</tt> <tt class="py-line"> <tt id="link-617" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-617', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is terribly wrong with my math"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1690"></a><tt class="py-lineno">1690</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE7"></a><div id="HAsanity.CASE7-def"><a name="L1691"></a><tt class="py-lineno">1691</tt> <a class="py-toggle" href="#" id="HAsanity.CASE7-toggle" onclick="return toggle('HAsanity.CASE7');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE7">CASE7</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE7-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE7-expanded"><a name="L1692"></a><tt class="py-lineno">1692</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1693"></a><tt class="py-lineno">1693</tt> <tt class="py-line"><tt class="py-docstring"> Check state after ONOS failure</tt> </tt>
-<a name="L1694"></a><tt class="py-lineno">1694</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1695"></a><tt class="py-lineno">1695</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L1696"></a><tt class="py-lineno">1696</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1697"></a><tt class="py-lineno">1697</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1698"></a><tt class="py-lineno">1698</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1699"></a><tt class="py-lineno">1699</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L1700"></a><tt class="py-lineno">1700</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-618" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-618', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L1701"></a><tt class="py-lineno">1701</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-619" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-619', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Running ONOS Constant State Tests"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1702"></a><tt class="py-lineno">1702</tt> <tt class="py-line"> </tt>
-<a name="L1703"></a><tt class="py-lineno">1703</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-620" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-620', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check that each switch has a master"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1704"></a><tt class="py-lineno">1704</tt> <tt class="py-line"> <tt class="py-comment"># Assert that each device has a master</tt> </tt>
-<a name="L1705"></a><tt class="py-lineno">1705</tt> <tt class="py-line"> <tt id="link-621" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-621', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1706"></a><tt class="py-lineno">1706</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1707"></a><tt class="py-lineno">1707</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1708"></a><tt class="py-lineno">1708</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-622" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-622', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-623" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-623', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1709"></a><tt class="py-lineno">1709</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"rolesNotNull-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1710"></a><tt class="py-lineno">1710</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1711"></a><tt class="py-lineno">1711</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1712"></a><tt class="py-lineno">1712</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1713"></a><tt class="py-lineno">1713</tt> <tt class="py-line"> </tt>
-<a name="L1714"></a><tt class="py-lineno">1714</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1715"></a><tt class="py-lineno">1715</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1716"></a><tt class="py-lineno">1716</tt> <tt class="py-line"> <tt id="link-624" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-624', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt> <tt class="py-op">=</tt> <tt id="link-625" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-625', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt> <tt class="py-keyword">and</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> </tt>
-<a name="L1717"></a><tt class="py-lineno">1717</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1718"></a><tt class="py-lineno">1718</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1719"></a><tt class="py-lineno">1719</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt id="link-626" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-626', 'rolesNotNull', 'link-420');">rolesNotNull</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1720"></a><tt class="py-lineno">1720</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Each device has a master"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1721"></a><tt class="py-lineno">1721</tt> <tt class="py-line"> <tt id="link-627" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-627', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Some devices don't have a master assigned"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1722"></a><tt class="py-lineno">1722</tt> <tt class="py-line"> </tt>
-<a name="L1723"></a><tt class="py-lineno">1723</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-628" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-628', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Read device roles from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1724"></a><tt class="py-lineno">1724</tt> <tt class="py-line"> <tt class="py-name">ONOSMastership</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1725"></a><tt class="py-lineno">1725</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1726"></a><tt class="py-lineno">1726</tt> <tt class="py-line"> <tt class="py-name">consistentMastership</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1727"></a><tt class="py-lineno">1727</tt> <tt class="py-line"> <tt class="py-name">rolesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1728"></a><tt class="py-lineno">1728</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1729"></a><tt class="py-lineno">1729</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1730"></a><tt class="py-lineno">1730</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-629" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-629', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-630" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.roles" class="py-name" href="#" onclick="return doclink('link-630', 'roles', 'link-429');">roles</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1731"></a><tt class="py-lineno">1731</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"roles-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1732"></a><tt class="py-lineno">1732</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1733"></a><tt class="py-lineno">1733</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1734"></a><tt class="py-lineno">1734</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1735"></a><tt class="py-lineno">1735</tt> <tt class="py-line"> </tt>
-<a name="L1736"></a><tt class="py-lineno">1736</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1737"></a><tt class="py-lineno">1737</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1738"></a><tt class="py-lineno">1738</tt> <tt class="py-line"> <tt class="py-name">ONOSMastership</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1739"></a><tt class="py-lineno">1739</tt> <tt class="py-line"> </tt>
-<a name="L1740"></a><tt class="py-lineno">1740</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1741"></a><tt class="py-lineno">1741</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1742"></a><tt class="py-lineno">1742</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-631" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-631', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-632" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-632', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1743"></a><tt class="py-lineno">1743</tt> <tt class="py-line"> <tt class="py-string">" roles"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1744"></a><tt class="py-lineno">1744</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-633" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-633', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1745"></a><tt class="py-lineno">1745</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" mastership response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1746"></a><tt class="py-lineno">1746</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1747"></a><tt class="py-lineno">1747</tt> <tt class="py-line"> <tt class="py-name">rolesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1748"></a><tt class="py-lineno">1748</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1749"></a><tt class="py-lineno">1749</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1750"></a><tt class="py-lineno">1750</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">rolesResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1751"></a><tt class="py-lineno">1751</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No error in reading roles output"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1752"></a><tt class="py-lineno">1752</tt> <tt class="py-line"> <tt id="link-634" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-634', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error in reading roles from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1753"></a><tt class="py-lineno">1753</tt> <tt class="py-line"> </tt>
-<a name="L1754"></a><tt class="py-lineno">1754</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-635" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-635', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check for consistency in roles from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1755"></a><tt class="py-lineno">1755</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSMastership</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1756"></a><tt class="py-lineno">1756</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-636" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-636', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L1757"></a><tt class="py-lineno">1757</tt> <tt class="py-line"> <tt class="py-string">"Switch roles are consistent across all ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1758"></a><tt class="py-lineno">1758</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1759"></a><tt class="py-lineno">1759</tt> <tt class="py-line"> <tt class="py-name">consistentMastership</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1760"></a><tt class="py-lineno">1760</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1761"></a><tt class="py-lineno">1761</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1762"></a><tt class="py-lineno">1762</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentMastership</tt><tt class="py-op">,</tt> </tt>
-<a name="L1763"></a><tt class="py-lineno">1763</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Switch roles are consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1764"></a><tt class="py-lineno">1764</tt> <tt class="py-line"> <tt id="link-637" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-637', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of switch roles"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1765"></a><tt class="py-lineno">1765</tt> <tt class="py-line"> </tt>
-<a name="L1766"></a><tt class="py-lineno">1766</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">rolesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentMastership</tt><tt class="py-op">:</tt> </tt>
-<a name="L1767"></a><tt class="py-lineno">1767</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1768"></a><tt class="py-lineno">1768</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-638" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-638', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1769"></a><tt class="py-lineno">1769</tt> <tt class="py-line"> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" roles: "</tt><tt class="py-op">,</tt> </tt>
-<a name="L1770"></a><tt class="py-lineno">1770</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> </tt>
-<a name="L1771"></a><tt class="py-lineno">1771</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1772"></a><tt class="py-lineno">1772</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1773"></a><tt class="py-lineno">1773</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1774"></a><tt class="py-lineno">1774</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1775"></a><tt class="py-lineno">1775</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">rolesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentMastership</tt><tt class="py-op">:</tt> </tt>
-<a name="L1776"></a><tt class="py-lineno">1776</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1777"></a><tt class="py-lineno">1777</tt> <tt class="py-line"> </tt>
-<a name="L1778"></a><tt class="py-lineno">1778</tt> <tt class="py-line"> <tt class="py-name">description2</tt> <tt class="py-op">=</tt> <tt class="py-string">"Compare switch roles from before failure"</tt> </tt>
-<a name="L1779"></a><tt class="py-lineno">1779</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-639" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-639', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-name">description2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1780"></a><tt class="py-lineno">1780</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1781"></a><tt class="py-lineno">1781</tt> <tt class="py-line"> <tt class="py-name">currentJson</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1782"></a><tt class="py-lineno">1782</tt> <tt class="py-line"> <tt class="py-name">oldJson</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">mastershipState</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1783"></a><tt class="py-lineno">1783</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1784"></a><tt class="py-lineno">1784</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-640" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-640', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Something is wrong with parsing "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1785"></a><tt class="py-lineno">1785</tt> <tt class="py-line"> <tt class="py-string">"ONOSMastership[0] or mastershipState"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1786"></a><tt class="py-lineno">1786</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-641" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-641', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-642" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-642', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOSMastership[0]: "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSMastership</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1787"></a><tt class="py-lineno">1787</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-643" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-643', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-644" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-644', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"mastershipState"</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">mastershipState</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1788"></a><tt class="py-lineno">1788</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-645" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-645', 'cleanup', 'link-7');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1789"></a><tt class="py-lineno">1789</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-646" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-646', 'exit', 'link-8');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1790"></a><tt class="py-lineno">1790</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1791"></a><tt class="py-lineno">1791</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1792"></a><tt class="py-lineno">1792</tt> <tt class="py-line"> <tt class="py-name">switchDPID</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L1793"></a><tt class="py-lineno">1793</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-647" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitchDPID()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitchDPID"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitchDPID" class="py-name" href="#" onclick="return doclink('link-647', 'getSwitchDPID', 'link-647');">getSwitchDPID</a></tt><tt class="py-op">(</tt> <tt class="py-name">switch</tt><tt class="py-op">=</tt><tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1794"></a><tt class="py-lineno">1794</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">switch</tt><tt class="py-op">[</tt> <tt class="py-string">'master'</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">currentJson</tt> </tt>
-<a name="L1795"></a><tt class="py-lineno">1795</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">switchDPID</tt> <tt class="py-keyword">in</tt> <tt class="py-name">switch</tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1796"></a><tt class="py-lineno">1796</tt> <tt class="py-line"> <tt class="py-name">old</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">switch</tt><tt class="py-op">[</tt> <tt class="py-string">'master'</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">oldJson</tt> </tt>
-<a name="L1797"></a><tt class="py-lineno">1797</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">switchDPID</tt> <tt class="py-keyword">in</tt> <tt class="py-name">switch</tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1798"></a><tt class="py-lineno">1798</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">current</tt> <tt class="py-op">==</tt> <tt class="py-name">old</tt><tt class="py-op">:</tt> </tt>
-<a name="L1799"></a><tt class="py-lineno">1799</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">mastershipCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1800"></a><tt class="py-lineno">1800</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1801"></a><tt class="py-lineno">1801</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-648" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-648', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Mastership of switch %s changed"</tt> <tt class="py-op">%</tt> <tt class="py-name">switchDPID</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1802"></a><tt class="py-lineno">1802</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1803"></a><tt class="py-lineno">1803</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1804"></a><tt class="py-lineno">1804</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1805"></a><tt class="py-lineno">1805</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">mastershipCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L1806"></a><tt class="py-lineno">1806</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Mastership of Switches was not changed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1807"></a><tt class="py-lineno">1807</tt> <tt class="py-line"> <tt id="link-649" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-649', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Mastership of some switches changed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1808"></a><tt class="py-lineno">1808</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">mastershipCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentMastership</tt> </tt>
-<a name="L1809"></a><tt class="py-lineno">1809</tt> <tt class="py-line"> </tt>
-<a name="L1810"></a><tt class="py-lineno">1810</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-650" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-650', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the intents and compare across all nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1811"></a><tt class="py-lineno">1811</tt> <tt class="py-line"> <tt class="py-name">ONOSIntents</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1812"></a><tt class="py-lineno">1812</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1813"></a><tt class="py-lineno">1813</tt> <tt class="py-line"> <tt class="py-name">consistentIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1814"></a><tt class="py-lineno">1814</tt> <tt class="py-line"> <tt class="py-name">intentsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1815"></a><tt class="py-lineno">1815</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1816"></a><tt class="py-lineno">1816</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1817"></a><tt class="py-lineno">1817</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-651" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-651', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-652" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-652', 'intents', 'link-172');">intents</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1818"></a><tt class="py-lineno">1818</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"intents-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1819"></a><tt class="py-lineno">1819</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1820"></a><tt class="py-lineno">1820</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">'jsonFormat'</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1821"></a><tt class="py-lineno">1821</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1822"></a><tt class="py-lineno">1822</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1823"></a><tt class="py-lineno">1823</tt> <tt class="py-line"> </tt>
-<a name="L1824"></a><tt class="py-lineno">1824</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L1825"></a><tt class="py-lineno">1825</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1826"></a><tt class="py-lineno">1826</tt> <tt class="py-line"> <tt class="py-name">ONOSIntents</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1827"></a><tt class="py-lineno">1827</tt> <tt class="py-line"> </tt>
-<a name="L1828"></a><tt class="py-lineno">1828</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1829"></a><tt class="py-lineno">1829</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1830"></a><tt class="py-lineno">1830</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-653" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-653', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-654" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-654', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1831"></a><tt class="py-lineno">1831</tt> <tt class="py-line"> <tt class="py-string">" intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1832"></a><tt class="py-lineno">1832</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-655" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-655', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1833"></a><tt class="py-lineno">1833</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1834"></a><tt class="py-lineno">1834</tt> <tt class="py-line"> <tt class="py-name">intentsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1835"></a><tt class="py-lineno">1835</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1836"></a><tt class="py-lineno">1836</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1837"></a><tt class="py-lineno">1837</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">intentsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1838"></a><tt class="py-lineno">1838</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No error in reading intents output"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1839"></a><tt class="py-lineno">1839</tt> <tt class="py-line"> <tt id="link-656" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-656', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error in reading intents from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1840"></a><tt class="py-lineno">1840</tt> <tt class="py-line"> </tt>
-<a name="L1841"></a><tt class="py-lineno">1841</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-657" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-657', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check for consistency in Intents from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1842"></a><tt class="py-lineno">1842</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt><tt class="py-op">[</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1843"></a><tt class="py-lineno">1843</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-658" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-658', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents are consistent across all ONOS "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1844"></a><tt class="py-lineno">1844</tt> <tt class="py-line"> <tt class="py-string">"nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1845"></a><tt class="py-lineno">1845</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1846"></a><tt class="py-lineno">1846</tt> <tt class="py-line"> <tt class="py-name">consistentIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1847"></a><tt class="py-lineno">1847</tt> <tt class="py-line"> </tt>
-<a name="L1848"></a><tt class="py-lineno">1848</tt> <tt class="py-line"> <tt class="py-comment"># Try to make it easy to figure out what is happening</tt> </tt>
-<a name="L1849"></a><tt class="py-lineno">1849</tt> <tt class="py-line"> <tt class="py-comment">#</tt> </tt>
-<a name="L1850"></a><tt class="py-lineno">1850</tt> <tt class="py-line"> <tt class="py-comment"># Intent ONOS1 ONOS2 ...</tt> </tt>
-<a name="L1851"></a><tt class="py-lineno">1851</tt> <tt class="py-line"> <tt class="py-comment"># 0x01 INSTALLED INSTALLING</tt> </tt>
-<a name="L1852"></a><tt class="py-lineno">1852</tt> <tt class="py-line"> <tt class="py-comment"># ... ... ...</tt> </tt>
-<a name="L1853"></a><tt class="py-lineno">1853</tt> <tt class="py-line"> <tt class="py-comment"># ... ... ...</tt> </tt>
-<a name="L1854"></a><tt class="py-lineno">1854</tt> <tt class="py-line"> <tt class="py-name">title</tt> <tt class="py-op">=</tt> <tt class="py-string">" ID"</tt> </tt>
-<a name="L1855"></a><tt class="py-lineno">1855</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">n</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1856"></a><tt class="py-lineno">1856</tt> <tt class="py-line"> <tt class="py-name">title</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">10</tt> <tt class="py-op">+</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1857"></a><tt class="py-lineno">1857</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-659" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-659', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">title</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1858"></a><tt class="py-lineno">1858</tt> <tt class="py-line"> <tt class="py-comment"># get all intent keys in the cluster</tt> </tt>
-<a name="L1859"></a><tt class="py-lineno">1859</tt> <tt class="py-line"> <tt class="py-name">keys</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1860"></a><tt class="py-lineno">1860</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">nodeStr</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1861"></a><tt class="py-lineno">1861</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1862"></a><tt class="py-lineno">1862</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-660" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-660', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">:</tt> </tt>
-<a name="L1863"></a><tt class="py-lineno">1863</tt> <tt class="py-line"> <tt class="py-name">keys</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-661" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-661', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1864"></a><tt class="py-lineno">1864</tt> <tt class="py-line"> <tt class="py-name">keys</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">keys</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1865"></a><tt class="py-lineno">1865</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">keys</tt><tt class="py-op">:</tt> </tt>
-<a name="L1866"></a><tt class="py-lineno">1866</tt> <tt class="py-line"> <tt class="py-name">row</tt> <tt class="py-op">=</tt> <tt class="py-string">"%-13s"</tt> <tt class="py-op">%</tt> <tt class="py-name">key</tt> </tt>
-<a name="L1867"></a><tt class="py-lineno">1867</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">nodeStr</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1868"></a><tt class="py-lineno">1868</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1869"></a><tt class="py-lineno">1869</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-662" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-662', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">node</tt><tt class="py-op">:</tt> </tt>
-<a name="L1870"></a><tt class="py-lineno">1870</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-663" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-663', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">key</tt><tt class="py-op">:</tt> </tt>
-<a name="L1871"></a><tt class="py-lineno">1871</tt> <tt class="py-line"> <tt class="py-name">row</tt> <tt class="py-op">+=</tt> <tt class="py-string">"%-15s"</tt> <tt class="py-op">%</tt> <tt id="link-664" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-664', 'intent', 'link-170');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1872"></a><tt class="py-lineno">1872</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-665" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-665', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">row</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1873"></a><tt class="py-lineno">1873</tt> <tt class="py-line"> <tt class="py-comment"># End table view</tt> </tt>
-<a name="L1874"></a><tt class="py-lineno">1874</tt> <tt class="py-line"> </tt>
-<a name="L1875"></a><tt class="py-lineno">1875</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1876"></a><tt class="py-lineno">1876</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1877"></a><tt class="py-lineno">1877</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentIntents</tt><tt class="py-op">,</tt> </tt>
-<a name="L1878"></a><tt class="py-lineno">1878</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents are consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1879"></a><tt class="py-lineno">1879</tt> <tt class="py-line"> <tt id="link-666" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-666', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1880"></a><tt class="py-lineno">1880</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1881"></a><tt class="py-lineno">1881</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">:</tt> <tt class="py-comment"># Iter through ONOS nodes</tt> </tt>
-<a name="L1882"></a><tt class="py-lineno">1882</tt> <tt class="py-line"> <tt class="py-name">nodeStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1883"></a><tt class="py-lineno">1883</tt> <tt class="py-line"> <tt class="py-comment"># Iter through intents of a node</tt> </tt>
-<a name="L1884"></a><tt class="py-lineno">1884</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1885"></a><tt class="py-lineno">1885</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-667" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-667', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1886"></a><tt class="py-lineno">1886</tt> <tt class="py-line"> <tt class="py-name">nodeStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-668" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-668', 'intent', 'link-170');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1887"></a><tt class="py-lineno">1887</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1888"></a><tt class="py-lineno">1888</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-669" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-669', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error in parsing intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1889"></a><tt class="py-lineno">1889</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-670" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-670', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-671" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-671', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1890"></a><tt class="py-lineno">1890</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStates</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1891"></a><tt class="py-lineno">1891</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">nodeStates</tt><tt class="py-op">.</tt><tt class="py-name">count</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStates</tt> <tt class="py-op">)</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1892"></a><tt class="py-lineno">1892</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-672" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-672', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">dict</tt><tt class="py-op">(</tt> <tt class="py-name">out</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1893"></a><tt class="py-lineno">1893</tt> <tt class="py-line"> </tt>
-<a name="L1894"></a><tt class="py-lineno">1894</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">consistentIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1895"></a><tt class="py-lineno">1895</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1896"></a><tt class="py-lineno">1896</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-673" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-673', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1897"></a><tt class="py-lineno">1897</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-674" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-674', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> </tt>
-<a name="L1898"></a><tt class="py-lineno">1898</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1899"></a><tt class="py-lineno">1899</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L1900"></a><tt class="py-lineno">1900</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1901"></a><tt class="py-lineno">1901</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1902"></a><tt class="py-lineno">1902</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">intentsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentIntents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1903"></a><tt class="py-lineno">1903</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1904"></a><tt class="py-lineno">1904</tt> <tt class="py-line"> </tt>
-<a name="L1905"></a><tt class="py-lineno">1905</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Store has no durability, so intents are lost across system</tt> </tt>
-<a name="L1906"></a><tt class="py-lineno">1906</tt> <tt class="py-line"> <tt class="py-comment"># restarts</tt> </tt>
-<a name="L1907"></a><tt class="py-lineno">1907</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-675" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-675', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Compare current intents with intents before the failure"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1908"></a><tt class="py-lineno">1908</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: this requires case 5 to pass for intentState to be set.</tt> </tt>
-<a name="L1909"></a><tt class="py-lineno">1909</tt> <tt class="py-line"> <tt class="py-comment"># maybe we should stop the test if that fails?</tt> </tt>
-<a name="L1910"></a><tt class="py-lineno">1910</tt> <tt class="py-line"> <tt class="py-name">sameIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1911"></a><tt class="py-lineno">1911</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentState</tt> <tt class="py-keyword">and</tt> <tt class="py-name">intentState</tt> <tt class="py-op">==</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1912"></a><tt class="py-lineno">1912</tt> <tt class="py-line"> <tt class="py-name">sameIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1913"></a><tt class="py-lineno">1913</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-676" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-676', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents are consistent with before failure"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1914"></a><tt class="py-lineno">1914</tt> <tt class="py-line"> <tt class="py-comment"># TODO: possibly the states have changed? we may need to figure out</tt> </tt>
-<a name="L1915"></a><tt class="py-lineno">1915</tt> <tt class="py-line"> <tt class="py-comment"># what the acceptable states are</tt> </tt>
-<a name="L1916"></a><tt class="py-lineno">1916</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">intentState</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1917"></a><tt class="py-lineno">1917</tt> <tt class="py-line"> <tt class="py-name">sameIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1918"></a><tt class="py-lineno">1918</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1919"></a><tt class="py-lineno">1919</tt> <tt class="py-line"> <tt class="py-name">before</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">intentState</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1920"></a><tt class="py-lineno">1920</tt> <tt class="py-line"> <tt class="py-name">after</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1921"></a><tt class="py-lineno">1921</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-677" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-677', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">before</tt><tt class="py-op">:</tt> </tt>
-<a name="L1922"></a><tt class="py-lineno">1922</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-678" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-678', 'intent', 'link-170');">intent</a></tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">after</tt><tt class="py-op">:</tt> </tt>
-<a name="L1923"></a><tt class="py-lineno">1923</tt> <tt class="py-line"> <tt class="py-name">sameIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1924"></a><tt class="py-lineno">1924</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-679" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-679', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Intent is not currently in ONOS "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1925"></a><tt class="py-lineno">1925</tt> <tt class="py-line"> <tt class="py-string">"(at least in the same form):"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1926"></a><tt class="py-lineno">1926</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-680" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-680', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt id="link-681" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-681', 'intent', 'link-170');">intent</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1927"></a><tt class="py-lineno">1927</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1928"></a><tt class="py-lineno">1928</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-682" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-682', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Exception printing intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1929"></a><tt class="py-lineno">1929</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-683" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-683', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1930"></a><tt class="py-lineno">1930</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-684" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-684', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">intentState</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1931"></a><tt class="py-lineno">1931</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">sameIntents</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1932"></a><tt class="py-lineno">1932</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1933"></a><tt class="py-lineno">1933</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-685" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-685', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS intents before: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1934"></a><tt class="py-lineno">1934</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-686" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-686', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">intentState</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1935"></a><tt class="py-lineno">1935</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1936"></a><tt class="py-lineno">1936</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1937"></a><tt class="py-lineno">1937</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-687" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-687', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Current ONOS intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1938"></a><tt class="py-lineno">1938</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-688" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-688', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1939"></a><tt class="py-lineno">1939</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L1940"></a><tt class="py-lineno">1940</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1941"></a><tt class="py-lineno">1941</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1942"></a><tt class="py-lineno">1942</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-689" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-689', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Exception printing intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1943"></a><tt class="py-lineno">1943</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-690" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-690', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIntents</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1944"></a><tt class="py-lineno">1944</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-691" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-691', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">intentState</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1945"></a><tt class="py-lineno">1945</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1946"></a><tt class="py-lineno">1946</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1947"></a><tt class="py-lineno">1947</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">sameIntents</tt><tt class="py-op">,</tt> </tt>
-<a name="L1948"></a><tt class="py-lineno">1948</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents are consistent with before failure"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1949"></a><tt class="py-lineno">1949</tt> <tt class="py-line"> <tt id="link-692" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-692', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"The Intents changed during failure"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1950"></a><tt class="py-lineno">1950</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">intentCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sameIntents</tt> </tt>
-<a name="L1951"></a><tt class="py-lineno">1951</tt> <tt class="py-line"> </tt>
-<a name="L1952"></a><tt class="py-lineno">1952</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-693" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-693', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the OF Table entries and compare to before "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1953"></a><tt class="py-lineno">1953</tt> <tt class="py-line"> <tt class="py-string">"component failure"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1954"></a><tt class="py-lineno">1954</tt> <tt class="py-line"> <tt class="py-name">FlowTables</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1955"></a><tt class="py-lineno">1955</tt> <tt class="py-line"> <tt class="py-name">flows2</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1956"></a><tt class="py-lineno">1956</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">28</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1957"></a><tt class="py-lineno">1957</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-694" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-694', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Checking flow table on s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1958"></a><tt class="py-lineno">1958</tt> <tt class="py-line"> <tt class="py-name">tmpFlows</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-695" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getFlowTable" class="py-name" href="#" onclick="return doclink('link-695', 'getFlowTable', 'link-485');">getFlowTable</a></tt><tt class="py-op">(</tt> <tt class="py-number">1.3</tt><tt class="py-op">,</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1959"></a><tt class="py-lineno">1959</tt> <tt class="py-line"> <tt class="py-name">flows2</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">tmpFlows</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1960"></a><tt class="py-lineno">1960</tt> <tt class="py-line"> <tt class="py-name">tempResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-696" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.flowComp()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#flowComp"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.flowComp" class="py-name" href="#" onclick="return doclink('link-696', 'flowComp', 'link-696');">flowComp</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1961"></a><tt class="py-lineno">1961</tt> <tt class="py-line"> <tt class="py-name">flow1</tt><tt class="py-op">=</tt><tt id="link-697" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-697', 'flows', 'link-405');">flows</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1962"></a><tt class="py-lineno">1962</tt> <tt class="py-line"> <tt class="py-name">flow2</tt><tt class="py-op">=</tt><tt class="py-name">tmpFlows</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1963"></a><tt class="py-lineno">1963</tt> <tt class="py-line"> <tt class="py-name">FlowTables</tt> <tt class="py-op">=</tt> <tt class="py-name">FlowTables</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tempResult</tt> </tt>
-<a name="L1964"></a><tt class="py-lineno">1964</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">FlowTables</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1965"></a><tt class="py-lineno">1965</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-698" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-698', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Differences in flow table for switch: s"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1966"></a><tt class="py-lineno">1966</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1967"></a><tt class="py-lineno">1967</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1968"></a><tt class="py-lineno">1968</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1969"></a><tt class="py-lineno">1969</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">FlowTables</tt><tt class="py-op">,</tt> </tt>
-<a name="L1970"></a><tt class="py-lineno">1970</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No changes were found in the flow tables"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1971"></a><tt class="py-lineno">1971</tt> <tt class="py-line"> <tt id="link-699" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-699', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Changes were found in the flow tables"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1972"></a><tt class="py-lineno">1972</tt> <tt class="py-line"> </tt>
-<a name="L1973"></a><tt class="py-lineno">1973</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-700" class="py-name" targets="Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLongKill()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingLongKill"><a title="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLongKill" class="py-name" href="#" onclick="return doclink('link-700', 'pingLongKill', 'link-700');">pingLongKill</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1974"></a><tt class="py-lineno">1974</tt> <tt class="py-line"> <tt class="py-string">'''</tt> </tt>
-<a name="L1975"></a><tt class="py-lineno">1975</tt> <tt class="py-line"><tt class="py-string"> main.step( "Check the continuous pings to ensure that no packets " +</tt> </tt>
-<a name="L1976"></a><tt class="py-lineno">1976</tt> <tt class="py-line"><tt class="py-string"> "were dropped during component failure" )</tt> </tt>
-<a name="L1977"></a><tt class="py-lineno">1977</tt> <tt class="py-line"><tt class="py-string"> main.Mininet2.pingKill( main.params[ 'TESTONUSER' ],</tt> </tt>
-<a name="L1978"></a><tt class="py-lineno">1978</tt> <tt class="py-line"><tt class="py-string"> main.params[ 'TESTONIP' ] )</tt> </tt>
-<a name="L1979"></a><tt class="py-lineno">1979</tt> <tt class="py-line"><tt class="py-string"> LossInPings = main.FALSE</tt> </tt>
-<a name="L1980"></a><tt class="py-lineno">1980</tt> <tt class="py-line"><tt class="py-string"> # NOTE: checkForLoss returns main.FALSE with 0% packet loss</tt> </tt>
-<a name="L1981"></a><tt class="py-lineno">1981</tt> <tt class="py-line"><tt class="py-string"> for i in range( 8, 18 ):</tt> </tt>
-<a name="L1982"></a><tt class="py-lineno">1982</tt> <tt class="py-line"><tt class="py-string"> main.log.info(</tt> </tt>
-<a name="L1983"></a><tt class="py-lineno">1983</tt> <tt class="py-line"><tt class="py-string"> "Checking for a loss in pings along flow from s" +</tt> </tt>
-<a name="L1984"></a><tt class="py-lineno">1984</tt> <tt class="py-line"><tt class="py-string"> str( i ) )</tt> </tt>
-<a name="L1985"></a><tt class="py-lineno">1985</tt> <tt class="py-line"><tt class="py-string"> LossInPings = main.Mininet2.checkForLoss(</tt> </tt>
-<a name="L1986"></a><tt class="py-lineno">1986</tt> <tt class="py-line"><tt class="py-string"> "/tmp/ping.h" +</tt> </tt>
-<a name="L1987"></a><tt class="py-lineno">1987</tt> <tt class="py-line"><tt class="py-string"> str( i ) ) or LossInPings</tt> </tt>
-<a name="L1988"></a><tt class="py-lineno">1988</tt> <tt class="py-line"><tt class="py-string"> if LossInPings == main.TRUE:</tt> </tt>
-<a name="L1989"></a><tt class="py-lineno">1989</tt> <tt class="py-line"><tt class="py-string"> main.log.info( "Loss in ping detected" )</tt> </tt>
-<a name="L1990"></a><tt class="py-lineno">1990</tt> <tt class="py-line"><tt class="py-string"> elif LossInPings == main.ERROR:</tt> </tt>
-<a name="L1991"></a><tt class="py-lineno">1991</tt> <tt class="py-line"><tt class="py-string"> main.log.info( "There are multiple mininet process running" )</tt> </tt>
-<a name="L1992"></a><tt class="py-lineno">1992</tt> <tt class="py-line"><tt class="py-string"> elif LossInPings == main.FALSE:</tt> </tt>
-<a name="L1993"></a><tt class="py-lineno">1993</tt> <tt class="py-line"><tt class="py-string"> main.log.info( "No Loss in the pings" )</tt> </tt>
-<a name="L1994"></a><tt class="py-lineno">1994</tt> <tt class="py-line"><tt class="py-string"> main.log.info( "No loss of dataplane connectivity" )</tt> </tt>
-<a name="L1995"></a><tt class="py-lineno">1995</tt> <tt class="py-line"><tt class="py-string"> utilities.assert_equals(</tt> </tt>
-<a name="L1996"></a><tt class="py-lineno">1996</tt> <tt class="py-line"><tt class="py-string"> expect=main.FALSE,</tt> </tt>
-<a name="L1997"></a><tt class="py-lineno">1997</tt> <tt class="py-line"><tt class="py-string"> actual=LossInPings,</tt> </tt>
-<a name="L1998"></a><tt class="py-lineno">1998</tt> <tt class="py-line"><tt class="py-string"> onpass="No Loss of connectivity",</tt> </tt>
-<a name="L1999"></a><tt class="py-lineno">1999</tt> <tt class="py-line"><tt class="py-string"> onfail="Loss of dataplane connectivity detected" )</tt> </tt>
-<a name="L2000"></a><tt class="py-lineno">2000</tt> <tt class="py-line"><tt class="py-string"> '''</tt> </tt>
-<a name="L2001"></a><tt class="py-lineno">2001</tt> <tt class="py-line"> </tt>
-<a name="L2002"></a><tt class="py-lineno">2002</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-701" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-701', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Leadership Election is still functional"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2003"></a><tt class="py-lineno">2003</tt> <tt class="py-line"> <tt class="py-comment"># Test of LeadershipElection</tt> </tt>
-<a name="L2004"></a><tt class="py-lineno">2004</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: this only works for the sanity test. In case of failures,</tt> </tt>
-<a name="L2005"></a><tt class="py-lineno">2005</tt> <tt class="py-line"> <tt class="py-comment"># leader will likely change</tt> </tt>
-<a name="L2006"></a><tt class="py-lineno">2006</tt> <tt class="py-line"> <tt class="py-name">leader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-702" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-702', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L2007"></a><tt class="py-lineno">2007</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2008"></a><tt class="py-lineno">2008</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-703" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-703', 'cli', 'link-223');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2009"></a><tt class="py-lineno">2009</tt> <tt class="py-line"> <tt class="py-name">leaderN</tt> <tt class="py-op">=</tt> <tt id="link-704" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-704', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt id="link-705" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestLeader"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-705', 'electionTestLeader', 'link-705');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2010"></a><tt class="py-lineno">2010</tt> <tt class="py-line"> <tt class="py-comment"># verify leader is ONOS1</tt> </tt>
-<a name="L2011"></a><tt class="py-lineno">2011</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">==</tt> <tt class="py-name">leader</tt><tt class="py-op">:</tt> </tt>
-<a name="L2012"></a><tt class="py-lineno">2012</tt> <tt class="py-line"> <tt class="py-comment"># all is well</tt> </tt>
-<a name="L2013"></a><tt class="py-lineno">2013</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: In failure scenario, this could be a new node, maybe</tt> </tt>
-<a name="L2014"></a><tt class="py-lineno">2014</tt> <tt class="py-line"> <tt class="py-comment"># check != ONOS1</tt> </tt>
-<a name="L2015"></a><tt class="py-lineno">2015</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L2016"></a><tt class="py-lineno">2016</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2017"></a><tt class="py-lineno">2017</tt> <tt class="py-line"> <tt class="py-comment"># error in response</tt> </tt>
-<a name="L2018"></a><tt class="py-lineno">2018</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-706" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-706', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-707" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-707', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Something is wrong with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2019"></a><tt class="py-lineno">2019</tt> <tt class="py-line"> <tt class="py-string">"electionTestLeader function, check the"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2020"></a><tt class="py-lineno">2020</tt> <tt class="py-line"> <tt class="py-string">" error logs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2021"></a><tt class="py-lineno">2021</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2022"></a><tt class="py-lineno">2022</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leader</tt> <tt class="py-op">!=</tt> <tt class="py-name">leaderN</tt><tt class="py-op">:</tt> </tt>
-<a name="L2023"></a><tt class="py-lineno">2023</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2024"></a><tt class="py-lineno">2024</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-708" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-708', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-709" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-709', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt id="link-710" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-710', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" sees "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2025"></a><tt class="py-lineno">2025</tt> <tt class="py-line"> <tt class="py-string">" as the leader of the election app. "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2026"></a><tt class="py-lineno">2026</tt> <tt class="py-line"> <tt class="py-string">"Leader should be "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2027"></a><tt class="py-lineno">2027</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2028"></a><tt class="py-lineno">2028</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2029"></a><tt class="py-lineno">2029</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">leaderResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2030"></a><tt class="py-lineno">2030</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Leadership election passed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2031"></a><tt class="py-lineno">2031</tt> <tt class="py-line"> <tt id="link-711" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-711', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something went wrong with Leadership election"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2032"></a><tt class="py-lineno">2032</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE8"></a><div id="HAsanity.CASE8-def"><a name="L2033"></a><tt class="py-lineno">2033</tt> <a class="py-toggle" href="#" id="HAsanity.CASE8-toggle" onclick="return toggle('HAsanity.CASE8');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE8">CASE8</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE8-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE8-expanded"><a name="L2034"></a><tt class="py-lineno">2034</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2035"></a><tt class="py-lineno">2035</tt> <tt class="py-line"><tt class="py-docstring"> Compare topo</tt> </tt>
-<a name="L2036"></a><tt class="py-lineno">2036</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2037"></a><tt class="py-lineno">2037</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L2038"></a><tt class="py-lineno">2038</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2039"></a><tt class="py-lineno">2039</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2040"></a><tt class="py-lineno">2040</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2041"></a><tt class="py-lineno">2041</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2042"></a><tt class="py-lineno">2042</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2043"></a><tt class="py-lineno">2043</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-712" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-712', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2044"></a><tt class="py-lineno">2044</tt> <tt class="py-line"> </tt>
-<a name="L2045"></a><tt class="py-lineno">2045</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-713" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-713', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Compare ONOS Topology view to Mininet topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2046"></a><tt class="py-lineno">2046</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Compare topology objects between Mininet"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2047"></a><tt class="py-lineno">2047</tt> <tt class="py-line"> <tt class="py-string">" and ONOS"</tt> </tt>
-<a name="L2048"></a><tt class="py-lineno">2048</tt> <tt class="py-line"> </tt>
-<a name="L2049"></a><tt class="py-lineno">2049</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-714" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-714', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Comparing ONOS topology to MN"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2050"></a><tt class="py-lineno">2050</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2051"></a><tt class="py-lineno">2051</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2052"></a><tt class="py-lineno">2052</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2053"></a><tt class="py-lineno">2053</tt> <tt class="py-line"> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2054"></a><tt class="py-lineno">2054</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2055"></a><tt class="py-lineno">2055</tt> <tt class="py-line"> <tt class="py-name">elapsed</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2056"></a><tt class="py-lineno">2056</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2057"></a><tt class="py-lineno">2057</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-715" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-715', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Collecting topology information from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2058"></a><tt class="py-lineno">2058</tt> <tt class="py-line"> <tt class="py-name">startTime</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2059"></a><tt class="py-lineno">2059</tt> <tt class="py-line"> <tt class="py-comment"># Give time for Gossip to work</tt> </tt>
-<a name="L2060"></a><tt class="py-lineno">2060</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">topoResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> <tt class="py-keyword">and</tt> <tt class="py-name">elapsed</tt> <tt class="py-op"><</tt> <tt class="py-number">60</tt><tt class="py-op">:</tt> </tt>
-<a name="L2061"></a><tt class="py-lineno">2061</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2062"></a><tt class="py-lineno">2062</tt> <tt class="py-line"> <tt class="py-name">cliStart</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2063"></a><tt class="py-lineno">2063</tt> <tt class="py-line"> <tt id="link-716" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-716', 'devices', 'link-114');">devices</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2064"></a><tt class="py-lineno">2064</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2065"></a><tt class="py-lineno">2065</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2066"></a><tt class="py-lineno">2066</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-717" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-717', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-718" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-718', 'devices', 'link-114');">devices</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2067"></a><tt class="py-lineno">2067</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"devices-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2068"></a><tt class="py-lineno">2068</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2069"></a><tt class="py-lineno">2069</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2070"></a><tt class="py-lineno">2070</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2071"></a><tt class="py-lineno">2071</tt> <tt class="py-line"> </tt>
-<a name="L2072"></a><tt class="py-lineno">2072</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2073"></a><tt class="py-lineno">2073</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2074"></a><tt class="py-lineno">2074</tt> <tt class="py-line"> <tt id="link-719" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-719', 'devices', 'link-114');">devices</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2075"></a><tt class="py-lineno">2075</tt> <tt class="py-line"> <tt id="link-720" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-720', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2076"></a><tt class="py-lineno">2076</tt> <tt class="py-line"> <tt class="py-name">ipResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2077"></a><tt class="py-lineno">2077</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2078"></a><tt class="py-lineno">2078</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2079"></a><tt class="py-lineno">2079</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-721" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-721', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-722" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-722', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2080"></a><tt class="py-lineno">2080</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"hosts-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2081"></a><tt class="py-lineno">2081</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2082"></a><tt class="py-lineno">2082</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2083"></a><tt class="py-lineno">2083</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2084"></a><tt class="py-lineno">2084</tt> <tt class="py-line"> </tt>
-<a name="L2085"></a><tt class="py-lineno">2085</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2086"></a><tt class="py-lineno">2086</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2087"></a><tt class="py-lineno">2087</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2088"></a><tt class="py-lineno">2088</tt> <tt class="py-line"> <tt id="link-723" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-723', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2089"></a><tt class="py-lineno">2089</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2090"></a><tt class="py-lineno">2090</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-724" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-724', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing hosts results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2091"></a><tt class="py-lineno">2091</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-725" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-725', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-726" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-726', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2092"></a><tt class="py-lineno">2092</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-727" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-727', 'controller', 'link-523');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-728" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-728', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2093"></a><tt class="py-lineno">2093</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-729" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-729', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2094"></a><tt class="py-lineno">2094</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt id="link-730" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-730', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-731" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-731', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2095"></a><tt class="py-lineno">2095</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">host</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'ipAddresses'</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2096"></a><tt class="py-lineno">2096</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-732" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-732', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-733" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-733', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2097"></a><tt class="py-lineno">2097</tt> <tt class="py-line"> <tt class="py-string">"DEBUG:Error with host ipAddresses on controller"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2098"></a><tt class="py-lineno">2098</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2099"></a><tt class="py-lineno">2099</tt> <tt class="py-line"> <tt class="py-name">ipResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2100"></a><tt class="py-lineno">2100</tt> <tt class="py-line"> <tt id="link-734" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-734', 'ports', 'link-510');">ports</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2101"></a><tt class="py-lineno">2101</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2102"></a><tt class="py-lineno">2102</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2103"></a><tt class="py-lineno">2103</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-735" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-735', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-736" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-736', 'ports', 'link-510');">ports</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2104"></a><tt class="py-lineno">2104</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"ports-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2105"></a><tt class="py-lineno">2105</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2106"></a><tt class="py-lineno">2106</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2107"></a><tt class="py-lineno">2107</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2108"></a><tt class="py-lineno">2108</tt> <tt class="py-line"> </tt>
-<a name="L2109"></a><tt class="py-lineno">2109</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2110"></a><tt class="py-lineno">2110</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2111"></a><tt class="py-lineno">2111</tt> <tt class="py-line"> <tt id="link-737" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-737', 'ports', 'link-510');">ports</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2112"></a><tt class="py-lineno">2112</tt> <tt class="py-line"> <tt id="link-738" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-738', 'links', 'link-514');">links</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2113"></a><tt class="py-lineno">2113</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2114"></a><tt class="py-lineno">2114</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2115"></a><tt class="py-lineno">2115</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-739" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-739', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-740" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-740', 'links', 'link-514');">links</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2116"></a><tt class="py-lineno">2116</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"links-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2117"></a><tt class="py-lineno">2117</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2118"></a><tt class="py-lineno">2118</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2119"></a><tt class="py-lineno">2119</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2120"></a><tt class="py-lineno">2120</tt> <tt class="py-line"> </tt>
-<a name="L2121"></a><tt class="py-lineno">2121</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2122"></a><tt class="py-lineno">2122</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2123"></a><tt class="py-lineno">2123</tt> <tt class="py-line"> <tt id="link-741" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-741', 'links', 'link-514');">links</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2124"></a><tt class="py-lineno">2124</tt> <tt class="py-line"> <tt id="link-742" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-742', 'clusters', 'link-518');">clusters</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2125"></a><tt class="py-lineno">2125</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2126"></a><tt class="py-lineno">2126</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2127"></a><tt class="py-lineno">2127</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-743" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-743', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-744" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-744', 'clusters', 'link-518');">clusters</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2128"></a><tt class="py-lineno">2128</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"clusters-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2129"></a><tt class="py-lineno">2129</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2130"></a><tt class="py-lineno">2130</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2131"></a><tt class="py-lineno">2131</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2132"></a><tt class="py-lineno">2132</tt> <tt class="py-line"> </tt>
-<a name="L2133"></a><tt class="py-lineno">2133</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2134"></a><tt class="py-lineno">2134</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2135"></a><tt class="py-lineno">2135</tt> <tt class="py-line"> <tt id="link-745" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-745', 'clusters', 'link-518');">clusters</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2136"></a><tt class="py-lineno">2136</tt> <tt class="py-line"> </tt>
-<a name="L2137"></a><tt class="py-lineno">2137</tt> <tt class="py-line"> <tt class="py-name">elapsed</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">startTime</tt> </tt>
-<a name="L2138"></a><tt class="py-lineno">2138</tt> <tt class="py-line"> <tt class="py-name">cliTime</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">cliStart</tt> </tt>
-<a name="L2139"></a><tt class="py-lineno">2139</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Elapsed time: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">elapsed</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2140"></a><tt class="py-lineno">2140</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"CLI time: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">cliTime</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2141"></a><tt class="py-lineno">2141</tt> <tt class="py-line"> </tt>
-<a name="L2142"></a><tt class="py-lineno">2142</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-746" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitches" class="py-name" href="#" onclick="return doclink('link-746', 'getSwitches', 'link-574');">getSwitches</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2143"></a><tt class="py-lineno">2143</tt> <tt class="py-line"> <tt class="py-name">mnLinks</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-747" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getLinks" class="py-name" href="#" onclick="return doclink('link-747', 'getLinks', 'link-575');">getLinks</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2144"></a><tt class="py-lineno">2144</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-748" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts" class="py-name" href="#" onclick="return doclink('link-748', 'getHosts', 'link-576');">getHosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2145"></a><tt class="py-lineno">2145</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-749" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-749', 'controller', 'link-523');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2146"></a><tt class="py-lineno">2146</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-750" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-750', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2147"></a><tt class="py-lineno">2147</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-751" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-751', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-752" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-752', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt id="link-753" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-753', 'ports', 'link-510');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-754" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-754', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L2148"></a><tt class="py-lineno">2148</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-755" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-755', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-756" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-756', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L2149"></a><tt class="py-lineno">2149</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-757" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-757', 'ports', 'link-510');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-758" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-758', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2150"></a><tt class="py-lineno">2150</tt> <tt class="py-line"> </tt>
-<a name="L2151"></a><tt class="py-lineno">2151</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-759" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareSwitches" class="py-name" href="#" onclick="return doclink('link-759', 'compareSwitches', 'link-587');">compareSwitches</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2152"></a><tt class="py-lineno">2152</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> </tt>
-<a name="L2153"></a><tt class="py-lineno">2153</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-760" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-760', 'devices', 'link-114');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-761" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-761', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2154"></a><tt class="py-lineno">2154</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-762" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-762', 'ports', 'link-510');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-763" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-763', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2155"></a><tt class="py-lineno">2155</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2156"></a><tt class="py-lineno">2156</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2157"></a><tt class="py-lineno">2157</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2158"></a><tt class="py-lineno">2158</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentDevicesResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2159"></a><tt class="py-lineno">2159</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2160"></a><tt class="py-lineno">2160</tt> <tt class="py-line"> <tt class="py-string">" Switches view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2161"></a><tt class="py-lineno">2161</tt> <tt class="py-line"> <tt id="link-764" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-764', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2162"></a><tt class="py-lineno">2162</tt> <tt class="py-line"> <tt class="py-string">" Switches view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2163"></a><tt class="py-lineno">2163</tt> <tt class="py-line"> </tt>
-<a name="L2164"></a><tt class="py-lineno">2164</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-765" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-765', 'links', 'link-514');">links</a></tt><tt class="py-op">[</tt> <tt id="link-766" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-766', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-767" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-767', 'links', 'link-514');">links</a></tt><tt class="py-op">[</tt> <tt id="link-768" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-768', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2165"></a><tt class="py-lineno">2165</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-769" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareLinks" class="py-name" href="#" onclick="return doclink('link-769', 'compareLinks', 'link-597');">compareLinks</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2166"></a><tt class="py-lineno">2166</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> <tt class="py-name">mnLinks</tt><tt class="py-op">,</tt> </tt>
-<a name="L2167"></a><tt class="py-lineno">2167</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-770" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-770', 'links', 'link-514');">links</a></tt><tt class="py-op">[</tt> <tt id="link-771" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-771', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2168"></a><tt class="py-lineno">2168</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2169"></a><tt class="py-lineno">2169</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2170"></a><tt class="py-lineno">2170</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2171"></a><tt class="py-lineno">2171</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentLinksResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2172"></a><tt class="py-lineno">2172</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2173"></a><tt class="py-lineno">2173</tt> <tt class="py-line"> <tt class="py-string">" links view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2174"></a><tt class="py-lineno">2174</tt> <tt class="py-line"> <tt id="link-772" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-772', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2175"></a><tt class="py-lineno">2175</tt> <tt class="py-line"> <tt class="py-string">" links view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2176"></a><tt class="py-lineno">2176</tt> <tt class="py-line"> </tt>
-<a name="L2177"></a><tt class="py-lineno">2177</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-773" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-773', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-774" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-774', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-775" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-775', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-776" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-776', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2178"></a><tt class="py-lineno">2178</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-777" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareHosts" class="py-name" href="#" onclick="return doclink('link-777', 'compareHosts', 'link-605');">compareHosts</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2179"></a><tt class="py-lineno">2179</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt><tt class="py-op">,</tt> </tt>
-<a name="L2180"></a><tt class="py-lineno">2180</tt> <tt class="py-line"> <tt id="link-778" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-778', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-779" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-779', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2181"></a><tt class="py-lineno">2181</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2182"></a><tt class="py-lineno">2182</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2183"></a><tt class="py-lineno">2183</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2184"></a><tt class="py-lineno">2184</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentHostsResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2185"></a><tt class="py-lineno">2185</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2186"></a><tt class="py-lineno">2186</tt> <tt class="py-line"> <tt class="py-string">" hosts exist in Mininet"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2187"></a><tt class="py-lineno">2187</tt> <tt class="py-line"> <tt id="link-780" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-780', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2188"></a><tt class="py-lineno">2188</tt> <tt class="py-line"> <tt class="py-string">" hosts don't match Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2189"></a><tt class="py-lineno">2189</tt> <tt class="py-line"> <tt class="py-comment"># CHECKING HOST ATTACHMENT POINTS</tt> </tt>
-<a name="L2190"></a><tt class="py-lineno">2190</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2191"></a><tt class="py-lineno">2191</tt> <tt class="py-line"> <tt class="py-name">zeroHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2192"></a><tt class="py-lineno">2192</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: topo-HA/obelisk specific mappings:</tt> </tt>
-<a name="L2193"></a><tt class="py-lineno">2193</tt> <tt class="py-line"> <tt class="py-comment"># key is mac and value is dpid</tt> </tt>
-<a name="L2194"></a><tt class="py-lineno">2194</tt> <tt class="py-line"> <tt class="py-name">mappings</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L2195"></a><tt class="py-lineno">2195</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># hosts 1 through 28</tt> </tt>
-<a name="L2196"></a><tt class="py-lineno">2196</tt> <tt class="py-line"> <tt class="py-comment"># set up correct variables:</tt> </tt>
-<a name="L2197"></a><tt class="py-lineno">2197</tt> <tt class="py-line"> <tt class="py-name">macId</tt> <tt class="py-op">=</tt> <tt class="py-string">"00:"</tt> <tt class="py-op">*</tt> <tt class="py-number">5</tt> <tt class="py-op">+</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"0x"</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L2198"></a><tt class="py-lineno">2198</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2199"></a><tt class="py-lineno">2199</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"1000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2200"></a><tt class="py-lineno">2200</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L2201"></a><tt class="py-lineno">2201</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"2000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2202"></a><tt class="py-lineno">2202</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L2203"></a><tt class="py-lineno">2203</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"3000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2204"></a><tt class="py-lineno">2204</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L2205"></a><tt class="py-lineno">2205</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"3004"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2206"></a><tt class="py-lineno">2206</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">5</tt><tt class="py-op">:</tt> </tt>
-<a name="L2207"></a><tt class="py-lineno">2207</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"5000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2208"></a><tt class="py-lineno">2208</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">6</tt><tt class="py-op">:</tt> </tt>
-<a name="L2209"></a><tt class="py-lineno">2209</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"6000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2210"></a><tt class="py-lineno">2210</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">7</tt><tt class="py-op">:</tt> </tt>
-<a name="L2211"></a><tt class="py-lineno">2211</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"6007"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2212"></a><tt class="py-lineno">2212</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">8</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-number">17</tt><tt class="py-op">:</tt> </tt>
-<a name="L2213"></a><tt class="py-lineno">2213</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'3'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2214"></a><tt class="py-lineno">2214</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">dpid</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2215"></a><tt class="py-lineno">2215</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">18</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-number">27</tt><tt class="py-op">:</tt> </tt>
-<a name="L2216"></a><tt class="py-lineno">2216</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'6'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2217"></a><tt class="py-lineno">2217</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">dpid</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2218"></a><tt class="py-lineno">2218</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">28</tt><tt class="py-op">:</tt> </tt>
-<a name="L2219"></a><tt class="py-lineno">2219</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"2800"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L2220"></a><tt class="py-lineno">2220</tt> <tt class="py-line"> <tt class="py-name">mappings</tt><tt class="py-op">[</tt> <tt class="py-name">macId</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceId</tt> </tt>
-<a name="L2221"></a><tt class="py-lineno">2221</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-781" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-781', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-782" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-782', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-783" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-783', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-784" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-784', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2222"></a><tt class="py-lineno">2222</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-785" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-785', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-786" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-786', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2223"></a><tt class="py-lineno">2223</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-787" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-787', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"There are no hosts discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2224"></a><tt class="py-lineno">2224</tt> <tt class="py-line"> <tt class="py-name">zeroHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2225"></a><tt class="py-lineno">2225</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2226"></a><tt class="py-lineno">2226</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt id="link-788" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-788', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-789" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-789', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2227"></a><tt class="py-lineno">2227</tt> <tt class="py-line"> <tt class="py-name">mac</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2228"></a><tt class="py-lineno">2228</tt> <tt class="py-line"> <tt id="link-790" class="py-name" targets="Variable TestON.bin.cli.location=TestON.bin.cli-module.html#location,Variable TestON.core.teston.location=TestON.core.teston-module.html#location"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-790', 'location', 'link-790');">location</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2229"></a><tt class="py-lineno">2229</tt> <tt class="py-line"> <tt class="py-name">device</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2230"></a><tt class="py-lineno">2230</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2231"></a><tt class="py-lineno">2231</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2232"></a><tt class="py-lineno">2232</tt> <tt class="py-line"> <tt class="py-name">mac</tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'mac'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2233"></a><tt class="py-lineno">2233</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">mac</tt><tt class="py-op">,</tt> <tt class="py-string">"mac field could not be found for this host object"</tt> </tt>
-<a name="L2234"></a><tt class="py-lineno">2234</tt> <tt class="py-line"> </tt>
-<a name="L2235"></a><tt class="py-lineno">2235</tt> <tt class="py-line"> <tt id="link-791" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-791', 'location', 'link-790');">location</a></tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'location'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2236"></a><tt class="py-lineno">2236</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt id="link-792" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-792', 'location', 'link-790');">location</a></tt><tt class="py-op">,</tt> <tt class="py-string">"location field could not be found for this host object"</tt> </tt>
-<a name="L2237"></a><tt class="py-lineno">2237</tt> <tt class="py-line"> </tt>
-<a name="L2238"></a><tt class="py-lineno">2238</tt> <tt class="py-line"> <tt class="py-comment"># Trim the protocol identifier off deviceId</tt> </tt>
-<a name="L2239"></a><tt class="py-lineno">2239</tt> <tt class="py-line"> <tt class="py-name">device</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-793" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-793', 'location', 'link-790');">location</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'elementId'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">':'</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L2240"></a><tt class="py-lineno">2240</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">device</tt><tt class="py-op">,</tt> <tt class="py-string">"elementId field could not be found for this host location object"</tt> </tt>
-<a name="L2241"></a><tt class="py-lineno">2241</tt> <tt class="py-line"> </tt>
-<a name="L2242"></a><tt class="py-lineno">2242</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt id="link-794" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-794', 'location', 'link-790');">location</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'port'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2243"></a><tt class="py-lineno">2243</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-string">"port field could not be found for this host location object"</tt> </tt>
-<a name="L2244"></a><tt class="py-lineno">2244</tt> <tt class="py-line"> </tt>
-<a name="L2245"></a><tt class="py-lineno">2245</tt> <tt class="py-line"> <tt class="py-comment"># Now check if this matches where they should be</tt> </tt>
-<a name="L2246"></a><tt class="py-lineno">2246</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">mac</tt> <tt class="py-keyword">and</tt> <tt class="py-name">device</tt> <tt class="py-keyword">and</tt> <tt class="py-name">port</tt><tt class="py-op">:</tt> </tt>
-<a name="L2247"></a><tt class="py-lineno">2247</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-string">"1"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2248"></a><tt class="py-lineno">2248</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-795" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-795', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-796" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-796', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"The attachment port is incorrect for "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2249"></a><tt class="py-lineno">2249</tt> <tt class="py-line"> <tt class="py-string">"host "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2250"></a><tt class="py-lineno">2250</tt> <tt class="py-line"> <tt class="py-string">". Expected: 1 Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2251"></a><tt class="py-lineno">2251</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2252"></a><tt class="py-lineno">2252</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">device</tt> <tt class="py-op">!=</tt> <tt class="py-name">mappings</tt><tt class="py-op">[</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2253"></a><tt class="py-lineno">2253</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-797" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-797', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-798" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-798', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"The attachment device is incorrect for "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2254"></a><tt class="py-lineno">2254</tt> <tt class="py-line"> <tt class="py-string">"host "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2255"></a><tt class="py-lineno">2255</tt> <tt class="py-line"> <tt class="py-string">". Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">mappings</tt><tt class="py-op">[</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2256"></a><tt class="py-lineno">2256</tt> <tt class="py-line"> <tt class="py-string">" Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">device</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2257"></a><tt class="py-lineno">2257</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2258"></a><tt class="py-lineno">2258</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2259"></a><tt class="py-lineno">2259</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2260"></a><tt class="py-lineno">2260</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2261"></a><tt class="py-lineno">2261</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-799" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-799', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Json object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2262"></a><tt class="py-lineno">2262</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-800" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-800', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-801" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-801', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2263"></a><tt class="py-lineno">2263</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L2264"></a><tt class="py-lineno">2264</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2265"></a><tt class="py-lineno">2265</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-802" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-802', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-803" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-803', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"No hosts json output or \"Error\""</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2266"></a><tt class="py-lineno">2266</tt> <tt class="py-line"> <tt class="py-string">" in output. hosts = "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2267"></a><tt class="py-lineno">2267</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-804" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-804', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-805" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-805', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2268"></a><tt class="py-lineno">2268</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">zeroHosts</tt> <tt class="py-keyword">is</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L2269"></a><tt class="py-lineno">2269</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2270"></a><tt class="py-lineno">2270</tt> <tt class="py-line"> </tt>
-<a name="L2271"></a><tt class="py-lineno">2271</tt> <tt class="py-line"> <tt class="py-comment"># END CHECKING HOST ATTACHMENT POINTS</tt> </tt>
-<a name="L2272"></a><tt class="py-lineno">2272</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">devicesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentDevicesResult</tt> </tt>
-<a name="L2273"></a><tt class="py-lineno">2273</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">linksResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentLinksResult</tt> </tt>
-<a name="L2274"></a><tt class="py-lineno">2274</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentHostsResult</tt> </tt>
-<a name="L2275"></a><tt class="py-lineno">2275</tt> <tt class="py-line"> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L2276"></a><tt class="py-lineno">2276</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> </tt>
-<a name="L2277"></a><tt class="py-lineno">2277</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">devicesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">linksResults</tt> </tt>
-<a name="L2278"></a><tt class="py-lineno">2278</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ipResult</tt> <tt class="py-keyword">and</tt> </tt>
-<a name="L2279"></a><tt class="py-lineno">2279</tt> <tt class="py-line"> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2280"></a><tt class="py-lineno">2280</tt> <tt class="py-line"> </tt>
-<a name="L2281"></a><tt class="py-lineno">2281</tt> <tt class="py-line"> <tt class="py-comment"># Compare json objects for hosts and dataplane clusters</tt> </tt>
-<a name="L2282"></a><tt class="py-lineno">2282</tt> <tt class="py-line"> </tt>
-<a name="L2283"></a><tt class="py-lineno">2283</tt> <tt class="py-line"> <tt class="py-comment"># hosts</tt> </tt>
-<a name="L2284"></a><tt class="py-lineno">2284</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-806" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-806', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Hosts view is consistent across all ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2285"></a><tt class="py-lineno">2285</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2286"></a><tt class="py-lineno">2286</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-807" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-807', 'controller', 'link-523');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-808" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-808', 'hosts', 'link-159');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2287"></a><tt class="py-lineno">2287</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-809" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-809', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2288"></a><tt class="py-lineno">2288</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-810" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-810', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-811" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-811', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2289"></a><tt class="py-lineno">2289</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-812" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-812', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-813" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-813', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt id="link-814" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-814', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2290"></a><tt class="py-lineno">2290</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L2291"></a><tt class="py-lineno">2291</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># hosts not consistent</tt> </tt>
-<a name="L2292"></a><tt class="py-lineno">2292</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-815" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-815', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-816" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-816', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"hosts from ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2293"></a><tt class="py-lineno">2293</tt> <tt class="py-line"> <tt class="py-string">" is inconsistent with ONOS1"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2294"></a><tt class="py-lineno">2294</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-817" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-817', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-818" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-818', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-819" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-819', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2295"></a><tt class="py-lineno">2295</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2296"></a><tt class="py-lineno">2296</tt> <tt class="py-line"> </tt>
-<a name="L2297"></a><tt class="py-lineno">2297</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2298"></a><tt class="py-lineno">2298</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-820" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-820', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-821" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-821', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS hosts from ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2299"></a><tt class="py-lineno">2299</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2300"></a><tt class="py-lineno">2300</tt> <tt class="py-line"> <tt class="py-name">consistentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2301"></a><tt class="py-lineno">2301</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-822" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-822', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2302"></a><tt class="py-lineno">2302</tt> <tt class="py-line"> <tt class="py-string">" hosts response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2303"></a><tt class="py-lineno">2303</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-823" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-823', 'hosts', 'link-159');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-824" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-824', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2304"></a><tt class="py-lineno">2304</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2305"></a><tt class="py-lineno">2305</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2306"></a><tt class="py-lineno">2306</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentHostsResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2307"></a><tt class="py-lineno">2307</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Hosts view is consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2308"></a><tt class="py-lineno">2308</tt> <tt class="py-line"> <tt id="link-825" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-825', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of hosts"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2309"></a><tt class="py-lineno">2309</tt> <tt class="py-line"> </tt>
-<a name="L2310"></a><tt class="py-lineno">2310</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-826" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-826', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Hosts information is correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2311"></a><tt class="py-lineno">2311</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ipResult</tt> </tt>
-<a name="L2312"></a><tt class="py-lineno">2312</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2313"></a><tt class="py-lineno">2313</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2314"></a><tt class="py-lineno">2314</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">hostsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2315"></a><tt class="py-lineno">2315</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Host information is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2316"></a><tt class="py-lineno">2316</tt> <tt class="py-line"> <tt id="link-827" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-827', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Host information is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2317"></a><tt class="py-lineno">2317</tt> <tt class="py-line"> </tt>
-<a name="L2318"></a><tt class="py-lineno">2318</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-828" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-828', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Host attachment points to the network"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2319"></a><tt class="py-lineno">2319</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2320"></a><tt class="py-lineno">2320</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2321"></a><tt class="py-lineno">2321</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">hostAttachmentResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2322"></a><tt class="py-lineno">2322</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Hosts are correctly attached to the network"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2323"></a><tt class="py-lineno">2323</tt> <tt class="py-line"> <tt id="link-829" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-829', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS did not correctly attach hosts to the network"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2324"></a><tt class="py-lineno">2324</tt> <tt class="py-line"> </tt>
-<a name="L2325"></a><tt class="py-lineno">2325</tt> <tt class="py-line"> <tt class="py-comment"># Strongly connected clusters of devices</tt> </tt>
-<a name="L2326"></a><tt class="py-lineno">2326</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-830" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-830', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Clusters view is consistent across all ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2327"></a><tt class="py-lineno">2327</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2328"></a><tt class="py-lineno">2328</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-831" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-831', 'controller', 'link-523');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-832" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-832', 'clusters', 'link-518');">clusters</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2329"></a><tt class="py-lineno">2329</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-833" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-833', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2330"></a><tt class="py-lineno">2330</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-834" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-834', 'clusters', 'link-518');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-835" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-835', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2331"></a><tt class="py-lineno">2331</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-836" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-836', 'clusters', 'link-518');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-837" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-837', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt id="link-838" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-838', 'clusters', 'link-518');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2332"></a><tt class="py-lineno">2332</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L2333"></a><tt class="py-lineno">2333</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># clusters not consistent</tt> </tt>
-<a name="L2334"></a><tt class="py-lineno">2334</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-839" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-839', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-840" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-840', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"clusters from ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2335"></a><tt class="py-lineno">2335</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2336"></a><tt class="py-lineno">2336</tt> <tt class="py-line"> <tt class="py-string">" is inconsistent with ONOS1"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2337"></a><tt class="py-lineno">2337</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2338"></a><tt class="py-lineno">2338</tt> <tt class="py-line"> </tt>
-<a name="L2339"></a><tt class="py-lineno">2339</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2340"></a><tt class="py-lineno">2340</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-841" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-841', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-842" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-842', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting dataplane clusters "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2341"></a><tt class="py-lineno">2341</tt> <tt class="py-line"> <tt class="py-string">"from ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2342"></a><tt class="py-lineno">2342</tt> <tt class="py-line"> <tt class="py-name">consistentClustersResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2343"></a><tt class="py-lineno">2343</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-843" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-843', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2344"></a><tt class="py-lineno">2344</tt> <tt class="py-line"> <tt class="py-string">" clusters response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2345"></a><tt class="py-lineno">2345</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-844" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-844', 'clusters', 'link-518');">clusters</a></tt><tt class="py-op">[</tt> <tt id="link-845" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-845', 'controller', 'link-523');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2346"></a><tt class="py-lineno">2346</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2347"></a><tt class="py-lineno">2347</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2348"></a><tt class="py-lineno">2348</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentClustersResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2349"></a><tt class="py-lineno">2349</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Clusters view is consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2350"></a><tt class="py-lineno">2350</tt> <tt class="py-line"> <tt id="link-846" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-846', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of clusters"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2351"></a><tt class="py-lineno">2351</tt> <tt class="py-line"> </tt>
-<a name="L2352"></a><tt class="py-lineno">2352</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-847" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-847', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"There is only one SCC"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2353"></a><tt class="py-lineno">2353</tt> <tt class="py-line"> <tt class="py-comment"># there should always only be one cluster</tt> </tt>
-<a name="L2354"></a><tt class="py-lineno">2354</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2355"></a><tt class="py-lineno">2355</tt> <tt class="py-line"> <tt class="py-name">numClusters</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-848" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-848', 'clusters', 'link-518');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2356"></a><tt class="py-lineno">2356</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2357"></a><tt class="py-lineno">2357</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-849" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-849', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing clusters[0]: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2358"></a><tt class="py-lineno">2358</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-850" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-850', 'clusters', 'link-518');">clusters</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2359"></a><tt class="py-lineno">2359</tt> <tt class="py-line"> <tt class="py-name">clusterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2360"></a><tt class="py-lineno">2360</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">numClusters</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2361"></a><tt class="py-lineno">2361</tt> <tt class="py-line"> <tt class="py-name">clusterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2362"></a><tt class="py-lineno">2362</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2363"></a><tt class="py-lineno">2363</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> </tt>
-<a name="L2364"></a><tt class="py-lineno">2364</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">numClusters</tt><tt class="py-op">,</tt> </tt>
-<a name="L2365"></a><tt class="py-lineno">2365</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS shows 1 SCC"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2366"></a><tt class="py-lineno">2366</tt> <tt class="py-line"> <tt id="link-851" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-851', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS shows "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">numClusters</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" SCCs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2367"></a><tt class="py-lineno">2367</tt> <tt class="py-line"> </tt>
-<a name="L2368"></a><tt class="py-lineno">2368</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">devicesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">linksResults</tt> </tt>
-<a name="L2369"></a><tt class="py-lineno">2369</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentHostsResult</tt> </tt>
-<a name="L2370"></a><tt class="py-lineno">2370</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-name">consistentClustersResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">clusterResults</tt> </tt>
-<a name="L2371"></a><tt class="py-lineno">2371</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-name">ipResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2372"></a><tt class="py-lineno">2372</tt> <tt class="py-line"> </tt>
-<a name="L2373"></a><tt class="py-lineno">2373</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-name">topoResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op"><=</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2374"></a><tt class="py-lineno">2374</tt> <tt class="py-line"> <tt class="py-name">note</tt> <tt class="py-op">=</tt> <tt class="py-string">"note it takes about "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">cliTime</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L2375"></a><tt class="py-lineno">2375</tt> <tt class="py-line"> <tt class="py-string">" seconds for the test to make all the cli calls to fetch "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2376"></a><tt class="py-lineno">2376</tt> <tt class="py-line"> <tt class="py-string">"the topology from each ONOS instance"</tt> </tt>
-<a name="L2377"></a><tt class="py-lineno">2377</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-852" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-852', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L2378"></a><tt class="py-lineno">2378</tt> <tt class="py-line"> <tt class="py-string">"Very crass estimate for topology discovery/convergence( "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2379"></a><tt class="py-lineno">2379</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">note</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ): "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">elapsed</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" seconds, "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2380"></a><tt class="py-lineno">2380</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" tries"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2381"></a><tt class="py-lineno">2381</tt> <tt class="py-line"> </tt>
-<a name="L2382"></a><tt class="py-lineno">2382</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-853" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-853', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Device information is correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2383"></a><tt class="py-lineno">2383</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2384"></a><tt class="py-lineno">2384</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2385"></a><tt class="py-lineno">2385</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">devicesResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2386"></a><tt class="py-lineno">2386</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Device information is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2387"></a><tt class="py-lineno">2387</tt> <tt class="py-line"> <tt id="link-854" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-854', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Device information is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2388"></a><tt class="py-lineno">2388</tt> <tt class="py-line"> </tt>
-<a name="L2389"></a><tt class="py-lineno">2389</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-855" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-855', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Links are correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2390"></a><tt class="py-lineno">2390</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2391"></a><tt class="py-lineno">2391</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2392"></a><tt class="py-lineno">2392</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linksResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2393"></a><tt class="py-lineno">2393</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2394"></a><tt class="py-lineno">2394</tt> <tt class="py-line"> <tt id="link-856" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-856', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Links are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2395"></a><tt class="py-lineno">2395</tt> <tt class="py-line"> </tt>
-<a name="L2396"></a><tt class="py-lineno">2396</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-857" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-857', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Hosts are correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2397"></a><tt class="py-lineno">2397</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2398"></a><tt class="py-lineno">2398</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2399"></a><tt class="py-lineno">2399</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">hostsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2400"></a><tt class="py-lineno">2400</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Hosts are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2401"></a><tt class="py-lineno">2401</tt> <tt class="py-line"> <tt id="link-858" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-858', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Hosts are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2402"></a><tt class="py-lineno">2402</tt> <tt class="py-line"> </tt>
-<a name="L2403"></a><tt class="py-lineno">2403</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: move this to an ONOS state case</tt> </tt>
-<a name="L2404"></a><tt class="py-lineno">2404</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-859" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-859', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Checking ONOS nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2405"></a><tt class="py-lineno">2405</tt> <tt class="py-line"> <tt class="py-name">nodesOutput</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2406"></a><tt class="py-lineno">2406</tt> <tt class="py-line"> <tt class="py-name">nodeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2407"></a><tt class="py-lineno">2407</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2408"></a><tt class="py-lineno">2408</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2409"></a><tt class="py-lineno">2409</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-860" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-860', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-861" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-861', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2410"></a><tt class="py-lineno">2410</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"nodes-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2411"></a><tt class="py-lineno">2411</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2412"></a><tt class="py-lineno">2412</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2413"></a><tt class="py-lineno">2413</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2414"></a><tt class="py-lineno">2414</tt> <tt class="py-line"> </tt>
-<a name="L2415"></a><tt class="py-lineno">2415</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2416"></a><tt class="py-lineno">2416</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2417"></a><tt class="py-lineno">2417</tt> <tt class="py-line"> <tt class="py-name">nodesOutput</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2418"></a><tt class="py-lineno">2418</tt> <tt class="py-line"> <tt class="py-name">ips</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-862" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-862', 'nodes', 'link-9');">nodes</a></tt> <tt class="py-op">]</tt> </tt>
-<a name="L2419"></a><tt class="py-lineno">2419</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">nodesOutput</tt><tt class="py-op">:</tt> </tt>
-<a name="L2420"></a><tt class="py-lineno">2420</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2421"></a><tt class="py-lineno">2421</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2422"></a><tt class="py-lineno">2422</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L2423"></a><tt class="py-lineno">2423</tt> <tt class="py-line"> <tt class="py-name">currentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2424"></a><tt class="py-lineno">2424</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">node</tt><tt class="py-op">[</tt><tt class="py-string">'ip'</tt><tt class="py-op">]</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ips</tt><tt class="py-op">:</tt> <tt class="py-comment"># node in nodes() output is in cell</tt> </tt>
-<a name="L2425"></a><tt class="py-lineno">2425</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">node</tt><tt class="py-op">[</tt><tt class="py-string">'state'</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'ACTIVE'</tt><tt class="py-op">:</tt> </tt>
-<a name="L2426"></a><tt class="py-lineno">2426</tt> <tt class="py-line"> <tt class="py-name">currentResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2427"></a><tt class="py-lineno">2427</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2428"></a><tt class="py-lineno">2428</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-863" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-863', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-864" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-864', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in ONOS node availability"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2429"></a><tt class="py-lineno">2429</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-865" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-865', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-866" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-866', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2430"></a><tt class="py-lineno">2430</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt><tt class="py-op">,</tt> </tt>
-<a name="L2431"></a><tt class="py-lineno">2431</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2432"></a><tt class="py-lineno">2432</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L2433"></a><tt class="py-lineno">2433</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2434"></a><tt class="py-lineno">2434</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2435"></a><tt class="py-lineno">2435</tt> <tt class="py-line"> <tt class="py-name">nodeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">nodeResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentResult</tt> </tt>
-<a name="L2436"></a><tt class="py-lineno">2436</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2437"></a><tt class="py-lineno">2437</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-867" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-867', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-868" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-868', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing nodes output"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2438"></a><tt class="py-lineno">2438</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-869" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-869', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2439"></a><tt class="py-lineno">2439</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">nodeResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2440"></a><tt class="py-lineno">2440</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Nodes check successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2441"></a><tt class="py-lineno">2441</tt> <tt class="py-line"> <tt id="link-870" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-870', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Nodes check NOT successful"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2442"></a><tt class="py-lineno">2442</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE9"></a><div id="HAsanity.CASE9-def"><a name="L2443"></a><tt class="py-lineno">2443</tt> <a class="py-toggle" href="#" id="HAsanity.CASE9-toggle" onclick="return toggle('HAsanity.CASE9');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE9">CASE9</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE9-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE9-expanded"><a name="L2444"></a><tt class="py-lineno">2444</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2445"></a><tt class="py-lineno">2445</tt> <tt class="py-line"><tt class="py-docstring"> Link s3-s28 down</tt> </tt>
-<a name="L2446"></a><tt class="py-lineno">2446</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2447"></a><tt class="py-lineno">2447</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2448"></a><tt class="py-lineno">2448</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2449"></a><tt class="py-lineno">2449</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2450"></a><tt class="py-lineno">2450</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2451"></a><tt class="py-lineno">2451</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2452"></a><tt class="py-lineno">2452</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-871" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-871', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2453"></a><tt class="py-lineno">2453</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: You should probably run a topology check after this</tt> </tt>
-<a name="L2454"></a><tt class="py-lineno">2454</tt> <tt class="py-line"> </tt>
-<a name="L2455"></a><tt class="py-lineno">2455</tt> <tt class="py-line"> <tt class="py-name">linkSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2456"></a><tt class="py-lineno">2456</tt> <tt class="py-line"> </tt>
-<a name="L2457"></a><tt class="py-lineno">2457</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Turn off a link to ensure that Link Discovery "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2458"></a><tt class="py-lineno">2458</tt> <tt class="py-line"> <tt class="py-string">"is working properly"</tt> </tt>
-<a name="L2459"></a><tt class="py-lineno">2459</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-872" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-872', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2460"></a><tt class="py-lineno">2460</tt> <tt class="py-line"> </tt>
-<a name="L2461"></a><tt class="py-lineno">2461</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-873" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-873', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Kill Link between s3 and s28"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2462"></a><tt class="py-lineno">2462</tt> <tt class="py-line"> <tt class="py-name">LinkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-874" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#link"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-874', 'link', 'link-874');">link</a></tt><tt class="py-op">(</tt> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-string">"s3"</tt><tt class="py-op">,</tt> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-string">"s28"</tt><tt class="py-op">,</tt> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"down"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2463"></a><tt class="py-lineno">2463</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-875" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-875', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">linkSleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2464"></a><tt class="py-lineno">2464</tt> <tt class="py-line"> <tt class="py-string">" seconds for link down to be discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2465"></a><tt class="py-lineno">2465</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">linkSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2466"></a><tt class="py-lineno">2466</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">LinkDown</tt><tt class="py-op">,</tt> </tt>
-<a name="L2467"></a><tt class="py-lineno">2467</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link down successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2468"></a><tt class="py-lineno">2468</tt> <tt class="py-line"> <tt id="link-876" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-876', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to bring link down"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2469"></a><tt class="py-lineno">2469</tt> <tt class="py-line"> <tt class="py-comment"># TODO do some sort of check here</tt> </tt>
-<a name="L2470"></a><tt class="py-lineno">2470</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE10"></a><div id="HAsanity.CASE10-def"><a name="L2471"></a><tt class="py-lineno">2471</tt> <a class="py-toggle" href="#" id="HAsanity.CASE10-toggle" onclick="return toggle('HAsanity.CASE10');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE10">CASE10</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE10-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE10-expanded"><a name="L2472"></a><tt class="py-lineno">2472</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2473"></a><tt class="py-lineno">2473</tt> <tt class="py-line"><tt class="py-docstring"> Link s3-s28 up</tt> </tt>
-<a name="L2474"></a><tt class="py-lineno">2474</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2475"></a><tt class="py-lineno">2475</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2476"></a><tt class="py-lineno">2476</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2477"></a><tt class="py-lineno">2477</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2478"></a><tt class="py-lineno">2478</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2479"></a><tt class="py-lineno">2479</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2480"></a><tt class="py-lineno">2480</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-877" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-877', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2481"></a><tt class="py-lineno">2481</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: You should probably run a topology check after this</tt> </tt>
-<a name="L2482"></a><tt class="py-lineno">2482</tt> <tt class="py-line"> </tt>
-<a name="L2483"></a><tt class="py-lineno">2483</tt> <tt class="py-line"> <tt class="py-name">linkSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2484"></a><tt class="py-lineno">2484</tt> <tt class="py-line"> </tt>
-<a name="L2485"></a><tt class="py-lineno">2485</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Restore a link to ensure that Link Discovery is "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L2486"></a><tt class="py-lineno">2486</tt> <tt class="py-line"> <tt class="py-string">"working properly"</tt> </tt>
-<a name="L2487"></a><tt class="py-lineno">2487</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-878" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-878', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2488"></a><tt class="py-lineno">2488</tt> <tt class="py-line"> </tt>
-<a name="L2489"></a><tt class="py-lineno">2489</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-879" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-879', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Bring link between s3 and s28 back up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2490"></a><tt class="py-lineno">2490</tt> <tt class="py-line"> <tt class="py-name">LinkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-880" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-880', 'link', 'link-874');">link</a></tt><tt class="py-op">(</tt> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-string">"s3"</tt><tt class="py-op">,</tt> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-string">"s28"</tt><tt class="py-op">,</tt> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2491"></a><tt class="py-lineno">2491</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-881" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-881', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">linkSleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2492"></a><tt class="py-lineno">2492</tt> <tt class="py-line"> <tt class="py-string">" seconds for link up to be discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2493"></a><tt class="py-lineno">2493</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">linkSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2494"></a><tt class="py-lineno">2494</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">LinkUp</tt><tt class="py-op">,</tt> </tt>
-<a name="L2495"></a><tt class="py-lineno">2495</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link up successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2496"></a><tt class="py-lineno">2496</tt> <tt class="py-line"> <tt id="link-882" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-882', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to bring link up"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2497"></a><tt class="py-lineno">2497</tt> <tt class="py-line"> <tt class="py-comment"># TODO do some sort of check here</tt> </tt>
-<a name="L2498"></a><tt class="py-lineno">2498</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE11"></a><div id="HAsanity.CASE11-def"><a name="L2499"></a><tt class="py-lineno">2499</tt> <a class="py-toggle" href="#" id="HAsanity.CASE11-toggle" onclick="return toggle('HAsanity.CASE11');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE11">CASE11</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE11-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE11-expanded"><a name="L2500"></a><tt class="py-lineno">2500</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2501"></a><tt class="py-lineno">2501</tt> <tt class="py-line"><tt class="py-docstring"> Switch Down</tt> </tt>
-<a name="L2502"></a><tt class="py-lineno">2502</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2503"></a><tt class="py-lineno">2503</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: You should probably run a topology check after this</tt> </tt>
-<a name="L2504"></a><tt class="py-lineno">2504</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2505"></a><tt class="py-lineno">2505</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2506"></a><tt class="py-lineno">2506</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2507"></a><tt class="py-lineno">2507</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2508"></a><tt class="py-lineno">2508</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2509"></a><tt class="py-lineno">2509</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-883" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-883', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2510"></a><tt class="py-lineno">2510</tt> <tt class="py-line"> </tt>
-<a name="L2511"></a><tt class="py-lineno">2511</tt> <tt class="py-line"> <tt class="py-name">switchSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'SwitchDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2512"></a><tt class="py-lineno">2512</tt> <tt class="py-line"> </tt>
-<a name="L2513"></a><tt class="py-lineno">2513</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Killing a switch to ensure it is discovered correctly"</tt> </tt>
-<a name="L2514"></a><tt class="py-lineno">2514</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-884" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-884', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2515"></a><tt class="py-lineno">2515</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'switch'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2516"></a><tt class="py-lineno">2516</tt> <tt class="py-line"> <tt class="py-name">switchDPID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'dpid'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2517"></a><tt class="py-lineno">2517</tt> <tt class="py-line"> </tt>
-<a name="L2518"></a><tt class="py-lineno">2518</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Make this switch parameterizable</tt> </tt>
-<a name="L2519"></a><tt class="py-lineno">2519</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-885" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-885', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Kill "</tt> <tt class="py-op">+</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2520"></a><tt class="py-lineno">2520</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-886" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-886', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Deleting "</tt> <tt class="py-op">+</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2521"></a><tt class="py-lineno">2521</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-887" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.delSwitch()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delSwitch"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.delSwitch" class="py-name" href="#" onclick="return doclink('link-887', 'delSwitch', 'link-887');">delSwitch</a></tt><tt class="py-op">(</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2522"></a><tt class="py-lineno">2522</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-888" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-888', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">switchSleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2523"></a><tt class="py-lineno">2523</tt> <tt class="py-line"> <tt class="py-string">" seconds for switch down to be discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2524"></a><tt class="py-lineno">2524</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">switchSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2525"></a><tt class="py-lineno">2525</tt> <tt class="py-line"> <tt class="py-name">device</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-889" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-889', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-name">switchDPID</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2526"></a><tt class="py-lineno">2526</tt> <tt class="py-line"> <tt class="py-comment"># Peek at the deleted switch</tt> </tt>
-<a name="L2527"></a><tt class="py-lineno">2527</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-890" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-890', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">device</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2528"></a><tt class="py-lineno">2528</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2529"></a><tt class="py-lineno">2529</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">device</tt> <tt class="py-keyword">and</tt> <tt class="py-name">device</tt><tt class="py-op">[</tt> <tt class="py-string">'available'</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L2530"></a><tt class="py-lineno">2530</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2531"></a><tt class="py-lineno">2531</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">result</tt><tt class="py-op">,</tt> </tt>
-<a name="L2532"></a><tt class="py-lineno">2532</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Kill switch successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2533"></a><tt class="py-lineno">2533</tt> <tt class="py-line"> <tt id="link-891" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-891', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to kill switch?"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2534"></a><tt class="py-lineno">2534</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE12"></a><div id="HAsanity.CASE12-def"><a name="L2535"></a><tt class="py-lineno">2535</tt> <a class="py-toggle" href="#" id="HAsanity.CASE12-toggle" onclick="return toggle('HAsanity.CASE12');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE12">CASE12</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE12-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE12-expanded"><a name="L2536"></a><tt class="py-lineno">2536</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2537"></a><tt class="py-lineno">2537</tt> <tt class="py-line"><tt class="py-docstring"> Switch Up</tt> </tt>
-<a name="L2538"></a><tt class="py-lineno">2538</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2539"></a><tt class="py-lineno">2539</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: You should probably run a topology check after this</tt> </tt>
-<a name="L2540"></a><tt class="py-lineno">2540</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2541"></a><tt class="py-lineno">2541</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2542"></a><tt class="py-lineno">2542</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2543"></a><tt class="py-lineno">2543</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2544"></a><tt class="py-lineno">2544</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2545"></a><tt class="py-lineno">2545</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-892" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-892', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2546"></a><tt class="py-lineno">2546</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS1Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS1Port not defined"</tt> </tt>
-<a name="L2547"></a><tt class="py-lineno">2547</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS2Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS2Port not defined"</tt> </tt>
-<a name="L2548"></a><tt class="py-lineno">2548</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS3Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS3Port not defined"</tt> </tt>
-<a name="L2549"></a><tt class="py-lineno">2549</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS4Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS4Port not defined"</tt> </tt>
-<a name="L2550"></a><tt class="py-lineno">2550</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS5Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS5Port not defined"</tt> </tt>
-<a name="L2551"></a><tt class="py-lineno">2551</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS6Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS6Port not defined"</tt> </tt>
-<a name="L2552"></a><tt class="py-lineno">2552</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">ONOS7Port</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOS7Port not defined"</tt> </tt>
-<a name="L2553"></a><tt class="py-lineno">2553</tt> <tt class="py-line"> </tt>
-<a name="L2554"></a><tt class="py-lineno">2554</tt> <tt class="py-line"> <tt class="py-name">switchSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'SwitchDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2555"></a><tt class="py-lineno">2555</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'switch'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2556"></a><tt class="py-lineno">2556</tt> <tt class="py-line"> <tt class="py-name">switchDPID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'dpid'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2557"></a><tt class="py-lineno">2557</tt> <tt class="py-line"> <tt id="link-893" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-893', 'links', 'link-514');">links</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'links'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2558"></a><tt class="py-lineno">2558</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Adding a switch to ensure it is discovered correctly"</tt> </tt>
-<a name="L2559"></a><tt class="py-lineno">2559</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-894" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-894', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2560"></a><tt class="py-lineno">2560</tt> <tt class="py-line"> </tt>
-<a name="L2561"></a><tt class="py-lineno">2561</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-895" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-895', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add back "</tt> <tt class="py-op">+</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2562"></a><tt class="py-lineno">2562</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-896" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addSwitch"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-896', 'addSwitch', 'link-896');">addSwitch</a></tt><tt class="py-op">(</tt> <tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-name">switchDPID</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2563"></a><tt class="py-lineno">2563</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">peer</tt> <tt class="py-keyword">in</tt> <tt id="link-897" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-897', 'links', 'link-514');">links</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2564"></a><tt class="py-lineno">2564</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-898" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addLink"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-898', 'addLink', 'link-898');">addLink</a></tt><tt class="py-op">(</tt> <tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">peer</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2565"></a><tt class="py-lineno">2565</tt> <tt class="py-line"> <tt class="py-name">ipList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2566"></a><tt class="py-lineno">2566</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2567"></a><tt class="py-lineno">2567</tt> <tt class="py-line"> <tt class="py-name">ipList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-899" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-899', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2568"></a><tt class="py-lineno">2568</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-900" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController" class="py-name" href="#" onclick="return doclink('link-900', 'assignSwController', 'link-78');">assignSwController</a></tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt><tt class="py-op">=</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">ipList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2569"></a><tt class="py-lineno">2569</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-901" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-901', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">switchSleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2570"></a><tt class="py-lineno">2570</tt> <tt class="py-line"> <tt class="py-string">" seconds for switch up to be discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2571"></a><tt class="py-lineno">2571</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">switchSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2572"></a><tt class="py-lineno">2572</tt> <tt class="py-line"> <tt class="py-name">device</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-902" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-902', 'getDevice', 'link-90');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-name">switchDPID</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2573"></a><tt class="py-lineno">2573</tt> <tt class="py-line"> <tt class="py-comment"># Peek at the deleted switch</tt> </tt>
-<a name="L2574"></a><tt class="py-lineno">2574</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-903" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-903', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">device</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2575"></a><tt class="py-lineno">2575</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2576"></a><tt class="py-lineno">2576</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">device</tt> <tt class="py-keyword">and</tt> <tt class="py-name">device</tt><tt class="py-op">[</tt> <tt class="py-string">'available'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2577"></a><tt class="py-lineno">2577</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2578"></a><tt class="py-lineno">2578</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">result</tt><tt class="py-op">,</tt> </tt>
-<a name="L2579"></a><tt class="py-lineno">2579</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"add switch successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2580"></a><tt class="py-lineno">2580</tt> <tt class="py-line"> <tt id="link-904" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-904', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to add switch?"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2581"></a><tt class="py-lineno">2581</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE13"></a><div id="HAsanity.CASE13-def"><a name="L2582"></a><tt class="py-lineno">2582</tt> <a class="py-toggle" href="#" id="HAsanity.CASE13-toggle" onclick="return toggle('HAsanity.CASE13');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE13">CASE13</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE13-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE13-expanded"><a name="L2583"></a><tt class="py-lineno">2583</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2584"></a><tt class="py-lineno">2584</tt> <tt class="py-line"><tt class="py-docstring"> Clean up</tt> </tt>
-<a name="L2585"></a><tt class="py-lineno">2585</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2586"></a><tt class="py-lineno">2586</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L2587"></a><tt class="py-lineno">2587</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2588"></a><tt class="py-lineno">2588</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2589"></a><tt class="py-lineno">2589</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2590"></a><tt class="py-lineno">2590</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2591"></a><tt class="py-lineno">2591</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2592"></a><tt class="py-lineno">2592</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-905" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-905', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2593"></a><tt class="py-lineno">2593</tt> <tt class="py-line"> </tt>
-<a name="L2594"></a><tt class="py-lineno">2594</tt> <tt class="py-line"> <tt class="py-comment"># printing colors to terminal</tt> </tt>
-<a name="L2595"></a><tt class="py-lineno">2595</tt> <tt class="py-line"> <tt class="py-name">colors</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-string">'cyan'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[96m'</tt><tt class="py-op">,</tt> <tt class="py-string">'purple'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[95m'</tt><tt class="py-op">,</tt> </tt>
-<a name="L2596"></a><tt class="py-lineno">2596</tt> <tt class="py-line"> <tt class="py-string">'blue'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[94m'</tt><tt class="py-op">,</tt> <tt class="py-string">'green'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[92m'</tt><tt class="py-op">,</tt> </tt>
-<a name="L2597"></a><tt class="py-lineno">2597</tt> <tt class="py-line"> <tt class="py-string">'yellow'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[93m'</tt><tt class="py-op">,</tt> <tt class="py-string">'red'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[91m'</tt><tt class="py-op">,</tt> <tt class="py-string">'end'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[0m'</tt> <tt class="py-op">}</tt> </tt>
-<a name="L2598"></a><tt class="py-lineno">2598</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-906" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-906', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Test Cleanup"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2599"></a><tt class="py-lineno">2599</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-907" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-907', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Killing tcpdumps"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2600"></a><tt class="py-lineno">2600</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-908" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopTcpdump()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopTcpdump,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.stopTcpdump()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#stopTcpdump"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopTcpdump
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.stopTcpdump" class="py-name" href="#" onclick="return doclink('link-908', 'stopTcpdump', 'link-908');">stopTcpdump</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2601"></a><tt class="py-lineno">2601</tt> <tt class="py-line"> </tt>
-<a name="L2602"></a><tt class="py-lineno">2602</tt> <tt class="py-line"> <tt class="py-name">testname</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> </tt>
-<a name="L2603"></a><tt class="py-lineno">2603</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BACKUP'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"True"</tt><tt class="py-op">:</tt> </tt>
-<a name="L2604"></a><tt class="py-lineno">2604</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-909" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-909', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Copying MN pcap and ONOS log files to test station"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2605"></a><tt class="py-lineno">2605</tt> <tt class="py-line"> <tt class="py-name">teststationUser</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BACKUP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'TESTONUSER'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2606"></a><tt class="py-lineno">2606</tt> <tt class="py-line"> <tt class="py-name">teststationIP</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BACKUP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'TESTONIP'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2607"></a><tt class="py-lineno">2607</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: MN Pcap file is being saved to ~/packet_captures</tt> </tt>
-<a name="L2608"></a><tt class="py-lineno">2608</tt> <tt class="py-line"> <tt class="py-comment"># scp this file as MN and TestON aren't necessarily the same vm</tt> </tt>
-<a name="L2609"></a><tt class="py-lineno">2609</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: scp</tt> </tt>
-<a name="L2610"></a><tt class="py-lineno">2610</tt> <tt class="py-line"> <tt class="py-comment"># mn files</tt> </tt>
-<a name="L2611"></a><tt class="py-lineno">2611</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Load these from params</tt> </tt>
-<a name="L2612"></a><tt class="py-lineno">2612</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: must end in /</tt> </tt>
-<a name="L2613"></a><tt class="py-lineno">2613</tt> <tt class="py-line"> <tt class="py-name">logFolder</tt> <tt class="py-op">=</tt> <tt class="py-string">"/opt/onos/log/"</tt> </tt>
-<a name="L2614"></a><tt class="py-lineno">2614</tt> <tt class="py-line"> <tt class="py-name">logFiles</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">"karaf.log"</tt><tt class="py-op">,</tt> <tt class="py-string">"karaf.log.1"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2615"></a><tt class="py-lineno">2615</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: must end in /</tt> </tt>
-<a name="L2616"></a><tt class="py-lineno">2616</tt> <tt class="py-line"> <tt class="py-name">dstDir</tt> <tt class="py-op">=</tt> <tt class="py-string">"~/packet_captures/"</tt> </tt>
-<a name="L2617"></a><tt class="py-lineno">2617</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">f</tt> <tt class="py-keyword">in</tt> <tt class="py-name">logFiles</tt><tt class="py-op">:</tt> </tt>
-<a name="L2618"></a><tt class="py-lineno">2618</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-910" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-910', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2619"></a><tt class="py-lineno">2619</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-911" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-911', 'sendline', 'link-911');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"scp sdn@"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2620"></a><tt class="py-lineno">2620</tt> <tt class="py-line"> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">logFolder</tt> <tt class="py-op">+</tt> <tt class="py-name">f</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2621"></a><tt class="py-lineno">2621</tt> <tt class="py-line"> <tt class="py-name">teststationUser</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2622"></a><tt class="py-lineno">2622</tt> <tt class="py-line"> <tt class="py-name">teststationIP</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2623"></a><tt class="py-lineno">2623</tt> <tt class="py-line"> <tt class="py-name">dstDir</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">testname</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2624"></a><tt class="py-lineno">2624</tt> <tt class="py-line"> <tt class="py-string">"-"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">"-"</tt> <tt class="py-op">+</tt> <tt class="py-name">f</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2625"></a><tt class="py-lineno">2625</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2626"></a><tt class="py-lineno">2626</tt> <tt class="py-line"> </tt>
-<a name="L2627"></a><tt class="py-lineno">2627</tt> <tt class="py-line"> <tt class="py-comment"># std*.log's</tt> </tt>
-<a name="L2628"></a><tt class="py-lineno">2628</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: must end in /</tt> </tt>
-<a name="L2629"></a><tt class="py-lineno">2629</tt> <tt class="py-line"> <tt class="py-name">logFolder</tt> <tt class="py-op">=</tt> <tt class="py-string">"/opt/onos/var/"</tt> </tt>
-<a name="L2630"></a><tt class="py-lineno">2630</tt> <tt class="py-line"> <tt class="py-name">logFiles</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">"stderr.log"</tt><tt class="py-op">,</tt> <tt class="py-string">"stdout.log"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2631"></a><tt class="py-lineno">2631</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: must end in /</tt> </tt>
-<a name="L2632"></a><tt class="py-lineno">2632</tt> <tt class="py-line"> <tt class="py-name">dstDir</tt> <tt class="py-op">=</tt> <tt class="py-string">"~/packet_captures/"</tt> </tt>
-<a name="L2633"></a><tt class="py-lineno">2633</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">f</tt> <tt class="py-keyword">in</tt> <tt class="py-name">logFiles</tt><tt class="py-op">:</tt> </tt>
-<a name="L2634"></a><tt class="py-lineno">2634</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-912" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-912', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2635"></a><tt class="py-lineno">2635</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-913" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-913', 'sendline', 'link-911');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"scp sdn@"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2636"></a><tt class="py-lineno">2636</tt> <tt class="py-line"> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">logFolder</tt> <tt class="py-op">+</tt> <tt class="py-name">f</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2637"></a><tt class="py-lineno">2637</tt> <tt class="py-line"> <tt class="py-name">teststationUser</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2638"></a><tt class="py-lineno">2638</tt> <tt class="py-line"> <tt class="py-name">teststationIP</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2639"></a><tt class="py-lineno">2639</tt> <tt class="py-line"> <tt class="py-name">dstDir</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">testname</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2640"></a><tt class="py-lineno">2640</tt> <tt class="py-line"> <tt class="py-string">"-"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">"-"</tt> <tt class="py-op">+</tt> <tt class="py-name">f</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2641"></a><tt class="py-lineno">2641</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2642"></a><tt class="py-lineno">2642</tt> <tt class="py-line"> <tt class="py-comment"># sleep so scp can finish</tt> </tt>
-<a name="L2643"></a><tt class="py-lineno">2643</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2644"></a><tt class="py-lineno">2644</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-914" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-914', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Packing and rotating pcap archives"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2645"></a><tt class="py-lineno">2645</tt> <tt class="py-line"> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">system</tt><tt class="py-op">(</tt> <tt class="py-string">"~/TestON/dependencies/rotate.sh "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">testname</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2646"></a><tt class="py-lineno">2646</tt> <tt class="py-line"> </tt>
-<a name="L2647"></a><tt class="py-lineno">2647</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-915" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-915', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Stopping Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2648"></a><tt class="py-lineno">2648</tt> <tt class="py-line"> <tt class="py-name">mnResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-916" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet" class="py-name" href="#" onclick="return doclink('link-916', 'stopNet', 'link-916');">stopNet</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2649"></a><tt class="py-lineno">2649</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">mnResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2650"></a><tt class="py-lineno">2650</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Mininet stopped"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2651"></a><tt class="py-lineno">2651</tt> <tt class="py-line"> <tt id="link-917" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-917', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"MN cleanup NOT successful"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2652"></a><tt class="py-lineno">2652</tt> <tt class="py-line"> </tt>
-<a name="L2653"></a><tt class="py-lineno">2653</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-918" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-918', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Checking ONOS Logs for errors"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2654"></a><tt class="py-lineno">2654</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-919" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-919', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2655"></a><tt class="py-lineno">2655</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">colors</tt><tt class="py-op">[</tt> <tt class="py-string">'purple'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">"Checking logs for errors on "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L2656"></a><tt class="py-lineno">2656</tt> <tt class="py-line"> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">colors</tt><tt class="py-op">[</tt> <tt class="py-string">'end'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2657"></a><tt class="py-lineno">2657</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-920" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.checkLogs()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#checkLogs"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.checkLogs" class="py-name" href="#" onclick="return doclink('link-920', 'checkLogs', 'link-920');">checkLogs</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2658"></a><tt class="py-lineno">2658</tt> <tt class="py-line"> </tt>
-<a name="L2659"></a><tt class="py-lineno">2659</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2660"></a><tt class="py-lineno">2660</tt> <tt class="py-line"> <tt class="py-name">timerLog</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt> <tt class="py-op">+</tt> <tt class="py-string">"/Timers.csv"</tt><tt class="py-op">,</tt> <tt class="py-string">'w'</tt><tt class="py-op">)</tt> </tt>
-<a name="L2661"></a><tt class="py-lineno">2661</tt> <tt class="py-line"> <tt class="py-comment"># Overwrite with empty line and close</tt> </tt>
-<a name="L2662"></a><tt class="py-lineno">2662</tt> <tt class="py-line"> <tt class="py-name">labels</tt> <tt class="py-op">=</tt> <tt class="py-string">"Gossip Intents"</tt> </tt>
-<a name="L2663"></a><tt class="py-lineno">2663</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">gossipTime</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2664"></a><tt class="py-lineno">2664</tt> <tt class="py-line"> <tt class="py-name">timerLog</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt> <tt class="py-name">labels</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-name">data</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2665"></a><tt class="py-lineno">2665</tt> <tt class="py-line"> <tt class="py-name">timerLog</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2666"></a><tt class="py-lineno">2666</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L2667"></a><tt class="py-lineno">2667</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-921" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-921', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2668"></a><tt class="py-lineno">2668</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE14"></a><div id="HAsanity.CASE14-def"><a name="L2669"></a><tt class="py-lineno">2669</tt> <a class="py-toggle" href="#" id="HAsanity.CASE14-toggle" onclick="return toggle('HAsanity.CASE14');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE14">CASE14</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE14-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE14-expanded"><a name="L2670"></a><tt class="py-lineno">2670</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2671"></a><tt class="py-lineno">2671</tt> <tt class="py-line"><tt class="py-docstring"> start election app on all onos nodes</tt> </tt>
-<a name="L2672"></a><tt class="py-lineno">2672</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2673"></a><tt class="py-lineno">2673</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2674"></a><tt class="py-lineno">2674</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2675"></a><tt class="py-lineno">2675</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2676"></a><tt class="py-lineno">2676</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2677"></a><tt class="py-lineno">2677</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-922" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-922', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2678"></a><tt class="py-lineno">2678</tt> <tt class="py-line"> </tt>
-<a name="L2679"></a><tt class="py-lineno">2679</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-923" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-923', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt><tt class="py-string">"Start Leadership Election app"</tt><tt class="py-op">)</tt> </tt>
-<a name="L2680"></a><tt class="py-lineno">2680</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-924" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-924', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install leadership election app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2681"></a><tt class="py-lineno">2681</tt> <tt class="py-line"> <tt class="py-name">appResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-925" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-925', 'activateApp', 'link-124');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2682"></a><tt class="py-lineno">2682</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2683"></a><tt class="py-lineno">2683</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2684"></a><tt class="py-lineno">2684</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2685"></a><tt class="py-lineno">2685</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Election app installed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2686"></a><tt class="py-lineno">2686</tt> <tt class="py-line"> <tt id="link-926" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-926', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something went wrong with installing Leadership election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2687"></a><tt class="py-lineno">2687</tt> <tt class="py-line"> </tt>
-<a name="L2688"></a><tt class="py-lineno">2688</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-927" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-927', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Run for election on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2689"></a><tt class="py-lineno">2689</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2690"></a><tt class="py-lineno">2690</tt> <tt class="py-line"> <tt id="link-928" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-928', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2691"></a><tt class="py-lineno">2691</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-929" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-929', 'cli', 'link-223');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2692"></a><tt class="py-lineno">2692</tt> <tt class="py-line"> <tt id="link-930" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-930', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt id="link-931" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestRun()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestRun"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestRun" class="py-name" href="#" onclick="return doclink('link-931', 'electionTestRun', 'link-931');">electionTestRun</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2693"></a><tt class="py-lineno">2693</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-932" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-932', 'cli', 'link-223');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2694"></a><tt class="py-lineno">2694</tt> <tt class="py-line"> <tt class="py-name">leader</tt> <tt class="py-op">=</tt> <tt id="link-933" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-933', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt id="link-934" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-934', 'electionTestLeader', 'link-705');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2695"></a><tt class="py-lineno">2695</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leader</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">leader</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2696"></a><tt class="py-lineno">2696</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-935" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-935', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-936" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-936', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt id="link-937" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-937', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": Leader for the election app "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2697"></a><tt class="py-lineno">2697</tt> <tt class="py-line"> <tt class="py-string">"should be an ONOS node, instead got '"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2698"></a><tt class="py-lineno">2698</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"'"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2699"></a><tt class="py-lineno">2699</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2700"></a><tt class="py-lineno">2700</tt> <tt class="py-line"> <tt id="link-938" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-938', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2701"></a><tt class="py-lineno">2701</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2702"></a><tt class="py-lineno">2702</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2703"></a><tt class="py-lineno">2703</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">leaderResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2704"></a><tt class="py-lineno">2704</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully ran for leadership"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2705"></a><tt class="py-lineno">2705</tt> <tt class="py-line"> <tt id="link-939" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-939', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to run for leadership"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2706"></a><tt class="py-lineno">2706</tt> <tt class="py-line"> </tt>
-<a name="L2707"></a><tt class="py-lineno">2707</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-940" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-940', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check that each node shows the same leader"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2708"></a><tt class="py-lineno">2708</tt> <tt class="py-line"> <tt class="py-name">sameLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2709"></a><tt class="py-lineno">2709</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt id="link-941" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-941', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2710"></a><tt class="py-lineno">2710</tt> <tt class="py-line"> <tt class="py-name">sameLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2711"></a><tt class="py-lineno">2711</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-942" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-942', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-943" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-943', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Results of electionTestLeader is order of main.CLIs:"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2712"></a><tt class="py-lineno">2712</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-944" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-944', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2713"></a><tt class="py-lineno">2713</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2714"></a><tt class="py-lineno">2714</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2715"></a><tt class="py-lineno">2715</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">sameLeader</tt><tt class="py-op">,</tt> </tt>
-<a name="L2716"></a><tt class="py-lineno">2716</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Leadership is consistent for the election topic"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2717"></a><tt class="py-lineno">2717</tt> <tt class="py-line"> <tt id="link-945" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-945', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Nodes have different leaders"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2718"></a><tt class="py-lineno">2718</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE15"></a><div id="HAsanity.CASE15-def"><a name="L2719"></a><tt class="py-lineno">2719</tt> <a class="py-toggle" href="#" id="HAsanity.CASE15-toggle" onclick="return toggle('HAsanity.CASE15');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE15">CASE15</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE15-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE15-expanded"><a name="L2720"></a><tt class="py-lineno">2720</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2721"></a><tt class="py-lineno">2721</tt> <tt class="py-line"><tt class="py-docstring"> Check that Leadership Election is still functional</tt> </tt>
-<a name="L2722"></a><tt class="py-lineno">2722</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2723"></a><tt class="py-lineno">2723</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2724"></a><tt class="py-lineno">2724</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2725"></a><tt class="py-lineno">2725</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2726"></a><tt class="py-lineno">2726</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2727"></a><tt class="py-lineno">2727</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2728"></a><tt class="py-lineno">2728</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-946" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-946', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2729"></a><tt class="py-lineno">2729</tt> <tt class="py-line"> </tt>
-<a name="L2730"></a><tt class="py-lineno">2730</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2731"></a><tt class="py-lineno">2731</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Check that Leadership Election is still functional"</tt> </tt>
-<a name="L2732"></a><tt class="py-lineno">2732</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-947" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-947', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2733"></a><tt class="py-lineno">2733</tt> <tt class="py-line"> </tt>
-<a name="L2734"></a><tt class="py-lineno">2734</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-948" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-948', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check that each node shows the same leader"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2735"></a><tt class="py-lineno">2735</tt> <tt class="py-line"> <tt class="py-name">sameLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2736"></a><tt class="py-lineno">2736</tt> <tt class="py-line"> <tt id="link-949" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-949', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2737"></a><tt class="py-lineno">2737</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-950" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-950', 'cli', 'link-223');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2738"></a><tt class="py-lineno">2738</tt> <tt class="py-line"> <tt class="py-name">leader</tt> <tt class="py-op">=</tt> <tt id="link-951" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-951', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt id="link-952" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-952', 'electionTestLeader', 'link-705');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2739"></a><tt class="py-lineno">2739</tt> <tt class="py-line"> <tt id="link-953" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-953', 'leaders', 'link-181');">leaders</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2740"></a><tt class="py-lineno">2740</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt id="link-954" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-954', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2741"></a><tt class="py-lineno">2741</tt> <tt class="py-line"> <tt class="py-name">sameLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2742"></a><tt class="py-lineno">2742</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-955" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-955', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-956" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-956', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Results of electionTestLeader is order of main.CLIs:"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2743"></a><tt class="py-lineno">2743</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-957" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-957', 'leaders', 'link-181');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2744"></a><tt class="py-lineno">2744</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2745"></a><tt class="py-lineno">2745</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2746"></a><tt class="py-lineno">2746</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">sameLeader</tt><tt class="py-op">,</tt> </tt>
-<a name="L2747"></a><tt class="py-lineno">2747</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Leadership is consistent for the election topic"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2748"></a><tt class="py-lineno">2748</tt> <tt class="py-line"> <tt id="link-958" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-958', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Nodes have different leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2749"></a><tt class="py-lineno">2749</tt> <tt class="py-line"> </tt>
-<a name="L2750"></a><tt class="py-lineno">2750</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-959" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-959', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Find current leader and withdraw"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2751"></a><tt class="py-lineno">2751</tt> <tt class="py-line"> <tt class="py-name">leader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-960" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-960', 'electionTestLeader', 'link-705');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2752"></a><tt class="py-lineno">2752</tt> <tt class="py-line"> <tt class="py-comment"># do some sanity checking on leader before using it</tt> </tt>
-<a name="L2753"></a><tt class="py-lineno">2753</tt> <tt class="py-line"> <tt class="py-name">withdrawResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2754"></a><tt class="py-lineno">2754</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leader</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">leader</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2755"></a><tt class="py-lineno">2755</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-961" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-961', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-962" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-962', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2756"></a><tt class="py-lineno">2756</tt> <tt class="py-line"> <tt class="py-string">"Leader for the election app should be an ONOS node,"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2757"></a><tt class="py-lineno">2757</tt> <tt class="py-line"> <tt class="py-string">"instead got '"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"'"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2758"></a><tt class="py-lineno">2758</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2759"></a><tt class="py-lineno">2759</tt> <tt class="py-line"> <tt class="py-name">oldLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L2760"></a><tt class="py-lineno">2760</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2761"></a><tt class="py-lineno">2761</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leader</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-963" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-963', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">:</tt> </tt>
-<a name="L2762"></a><tt class="py-lineno">2762</tt> <tt class="py-line"> <tt class="py-name">oldLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2763"></a><tt class="py-lineno">2763</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L2764"></a><tt class="py-lineno">2764</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> <tt class="py-comment"># FOR/ELSE statement</tt> </tt>
-<a name="L2765"></a><tt class="py-lineno">2765</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-964" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-964', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-965" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-965', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Leader election, could not find current leader"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2766"></a><tt class="py-lineno">2766</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">oldLeader</tt><tt class="py-op">:</tt> </tt>
-<a name="L2767"></a><tt class="py-lineno">2767</tt> <tt class="py-line"> <tt class="py-name">withdrawResult</tt> <tt class="py-op">=</tt> <tt class="py-name">oldLeader</tt><tt class="py-op">.</tt><tt id="link-966" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestWithdraw()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestWithdraw"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestWithdraw" class="py-name" href="#" onclick="return doclink('link-966', 'electionTestWithdraw', 'link-966');">electionTestWithdraw</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2768"></a><tt class="py-lineno">2768</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2769"></a><tt class="py-lineno">2769</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2770"></a><tt class="py-lineno">2770</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">withdrawResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2771"></a><tt class="py-lineno">2771</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Node was withdrawn from election"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2772"></a><tt class="py-lineno">2772</tt> <tt class="py-line"> <tt id="link-967" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-967', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Node was not withdrawn from election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2773"></a><tt class="py-lineno">2773</tt> <tt class="py-line"> </tt>
-<a name="L2774"></a><tt class="py-lineno">2774</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-968" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-968', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Make sure new leader is elected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2775"></a><tt class="py-lineno">2775</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: use threads</tt> </tt>
-<a name="L2776"></a><tt class="py-lineno">2776</tt> <tt class="py-line"> <tt class="py-name">leaderList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2777"></a><tt class="py-lineno">2777</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-969" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-969', 'cli', 'link-223');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L2778"></a><tt class="py-lineno">2778</tt> <tt class="py-line"> <tt class="py-name">leaderN</tt> <tt class="py-op">=</tt> <tt id="link-970" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-970', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt id="link-971" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-971', 'electionTestLeader', 'link-705');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2779"></a><tt class="py-lineno">2779</tt> <tt class="py-line"> <tt class="py-name">leaderList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2780"></a><tt class="py-lineno">2780</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">==</tt> <tt class="py-name">leader</tt><tt class="py-op">:</tt> </tt>
-<a name="L2781"></a><tt class="py-lineno">2781</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-972" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-972', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-973" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-973', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt id="link-974" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-974', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" still sees "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2782"></a><tt class="py-lineno">2782</tt> <tt class="py-line"> <tt class="py-string">" as leader after they withdrew"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2783"></a><tt class="py-lineno">2783</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2784"></a><tt class="py-lineno">2784</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2785"></a><tt class="py-lineno">2785</tt> <tt class="py-line"> <tt class="py-comment"># error in response</tt> </tt>
-<a name="L2786"></a><tt class="py-lineno">2786</tt> <tt class="py-line"> <tt class="py-comment"># TODO: add check for "Command not found:" in the driver, this</tt> </tt>
-<a name="L2787"></a><tt class="py-lineno">2787</tt> <tt class="py-line"> <tt class="py-comment"># means the app isn't loaded</tt> </tt>
-<a name="L2788"></a><tt class="py-lineno">2788</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-975" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-975', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-976" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-976', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Something is wrong with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2789"></a><tt class="py-lineno">2789</tt> <tt class="py-line"> <tt class="py-string">"electionTestLeader function, "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2790"></a><tt class="py-lineno">2790</tt> <tt class="py-line"> <tt class="py-string">"check the error logs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2791"></a><tt class="py-lineno">2791</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2792"></a><tt class="py-lineno">2792</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leaderN</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L2793"></a><tt class="py-lineno">2793</tt> <tt class="py-line"> <tt class="py-comment"># node may not have recieved the event yet</tt> </tt>
-<a name="L2794"></a><tt class="py-lineno">2794</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">7</tt><tt class="py-op">)</tt> </tt>
-<a name="L2795"></a><tt class="py-lineno">2795</tt> <tt class="py-line"> <tt class="py-name">leaderN</tt> <tt class="py-op">=</tt> <tt id="link-977" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-977', 'cli', 'link-223');">cli</a></tt><tt class="py-op">.</tt><tt id="link-978" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-978', 'electionTestLeader', 'link-705');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2796"></a><tt class="py-lineno">2796</tt> <tt class="py-line"> <tt class="py-name">leaderList</tt><tt class="py-op">.</tt><tt class="py-name">pop</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2797"></a><tt class="py-lineno">2797</tt> <tt class="py-line"> <tt class="py-name">leaderList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2798"></a><tt class="py-lineno">2798</tt> <tt class="py-line"> <tt class="py-name">consistentLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2799"></a><tt class="py-lineno">2799</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">leaderList</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L2800"></a><tt class="py-lineno">2800</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-979" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-979', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Each Election-app sees '"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2801"></a><tt class="py-lineno">2801</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leaderList</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2802"></a><tt class="py-lineno">2802</tt> <tt class="py-line"> <tt class="py-string">"' as the leader"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2803"></a><tt class="py-lineno">2803</tt> <tt class="py-line"> <tt class="py-name">consistentLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2804"></a><tt class="py-lineno">2804</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2805"></a><tt class="py-lineno">2805</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-980" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-980', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-981" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-981', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2806"></a><tt class="py-lineno">2806</tt> <tt class="py-line"> <tt class="py-string">"Inconsistent responses for leader of Election-app:"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2807"></a><tt class="py-lineno">2807</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">n</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">leaderList</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2808"></a><tt class="py-lineno">2808</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-982" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-982', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-983" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-983', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">n</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2809"></a><tt class="py-lineno">2809</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leaderList</tt><tt class="py-op">[</tt> <tt class="py-name">n</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2810"></a><tt class="py-lineno">2810</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">leaderResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentLeader</tt> </tt>
-<a name="L2811"></a><tt class="py-lineno">2811</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2812"></a><tt class="py-lineno">2812</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2813"></a><tt class="py-lineno">2813</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">leaderResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2814"></a><tt class="py-lineno">2814</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Leadership election passed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2815"></a><tt class="py-lineno">2815</tt> <tt class="py-line"> <tt id="link-984" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-984', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something went wrong with Leadership election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2816"></a><tt class="py-lineno">2816</tt> <tt class="py-line"> </tt>
-<a name="L2817"></a><tt class="py-lineno">2817</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-985" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-985', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Run for election on old leader( just so everyone "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2818"></a><tt class="py-lineno">2818</tt> <tt class="py-line"> <tt class="py-string">"is in the hat )"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2819"></a><tt class="py-lineno">2819</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">oldLeader</tt><tt class="py-op">:</tt> </tt>
-<a name="L2820"></a><tt class="py-lineno">2820</tt> <tt class="py-line"> <tt class="py-name">runResult</tt> <tt class="py-op">=</tt> <tt class="py-name">oldLeader</tt><tt class="py-op">.</tt><tt id="link-986" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestRun" class="py-name" href="#" onclick="return doclink('link-986', 'electionTestRun', 'link-931');">electionTestRun</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2821"></a><tt class="py-lineno">2821</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2822"></a><tt class="py-lineno">2822</tt> <tt class="py-line"> <tt class="py-name">runResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2823"></a><tt class="py-lineno">2823</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2824"></a><tt class="py-lineno">2824</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2825"></a><tt class="py-lineno">2825</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">runResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2826"></a><tt class="py-lineno">2826</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App re-ran for election"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2827"></a><tt class="py-lineno">2827</tt> <tt class="py-line"> <tt id="link-987" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-987', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"App failed to run for election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2828"></a><tt class="py-lineno">2828</tt> <tt class="py-line"> </tt>
-<a name="L2829"></a><tt class="py-lineno">2829</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-988" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-988', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Leader did not change when old leader re-ran"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2830"></a><tt class="py-lineno">2830</tt> <tt class="py-line"> <tt class="py-name">afterRun</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-989" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-989', 'electionTestLeader', 'link-705');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2831"></a><tt class="py-lineno">2831</tt> <tt class="py-line"> <tt class="py-comment"># verify leader didn't just change</tt> </tt>
-<a name="L2832"></a><tt class="py-lineno">2832</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">afterRun</tt> <tt class="py-op">==</tt> <tt class="py-name">leaderList</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2833"></a><tt class="py-lineno">2833</tt> <tt class="py-line"> <tt class="py-name">afterResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2834"></a><tt class="py-lineno">2834</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2835"></a><tt class="py-lineno">2835</tt> <tt class="py-line"> <tt class="py-name">afterResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2836"></a><tt class="py-lineno">2836</tt> <tt class="py-line"> </tt>
-<a name="L2837"></a><tt class="py-lineno">2837</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L2838"></a><tt class="py-lineno">2838</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2839"></a><tt class="py-lineno">2839</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">afterResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L2840"></a><tt class="py-lineno">2840</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Old leader successfully re-ran for election"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2841"></a><tt class="py-lineno">2841</tt> <tt class="py-line"> <tt id="link-990" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-990', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something went wrong with Leadership election after "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2842"></a><tt class="py-lineno">2842</tt> <tt class="py-line"> <tt class="py-string">"the old leader re-ran for election"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L2843"></a><tt class="py-lineno">2843</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE16"></a><div id="HAsanity.CASE16-def"><a name="L2844"></a><tt class="py-lineno">2844</tt> <a class="py-toggle" href="#" id="HAsanity.CASE16-toggle" onclick="return toggle('HAsanity.CASE16');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE16">CASE16</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE16-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE16-expanded"><a name="L2845"></a><tt class="py-lineno">2845</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2846"></a><tt class="py-lineno">2846</tt> <tt class="py-line"><tt class="py-docstring"> Install Distributed Primitives app</tt> </tt>
-<a name="L2847"></a><tt class="py-lineno">2847</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2848"></a><tt class="py-lineno">2848</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L2849"></a><tt class="py-lineno">2849</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2850"></a><tt class="py-lineno">2850</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2851"></a><tt class="py-lineno">2851</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2852"></a><tt class="py-lineno">2852</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2853"></a><tt class="py-lineno">2853</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-991" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-991', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2854"></a><tt class="py-lineno">2854</tt> <tt class="py-line"> </tt>
-<a name="L2855"></a><tt class="py-lineno">2855</tt> <tt class="py-line"> <tt class="py-comment"># Variables for the distributed primitives tests</tt> </tt>
-<a name="L2856"></a><tt class="py-lineno">2856</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">pCounterName</tt> </tt>
-<a name="L2857"></a><tt class="py-lineno">2857</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">iCounterName</tt> </tt>
-<a name="L2858"></a><tt class="py-lineno">2858</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">pCounterValue</tt> </tt>
-<a name="L2859"></a><tt class="py-lineno">2859</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">iCounterValue</tt> </tt>
-<a name="L2860"></a><tt class="py-lineno">2860</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">onosSet</tt> </tt>
-<a name="L2861"></a><tt class="py-lineno">2861</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">onosSetName</tt> </tt>
-<a name="L2862"></a><tt class="py-lineno">2862</tt> <tt class="py-line"> <tt class="py-name">pCounterName</tt> <tt class="py-op">=</tt> <tt class="py-string">"TestON-Partitions"</tt> </tt>
-<a name="L2863"></a><tt class="py-lineno">2863</tt> <tt class="py-line"> <tt class="py-name">iCounterName</tt> <tt class="py-op">=</tt> <tt class="py-string">"TestON-inMemory"</tt> </tt>
-<a name="L2864"></a><tt class="py-lineno">2864</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2865"></a><tt class="py-lineno">2865</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2866"></a><tt class="py-lineno">2866</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L2867"></a><tt class="py-lineno">2867</tt> <tt class="py-line"> <tt class="py-name">onosSetName</tt> <tt class="py-op">=</tt> <tt class="py-string">"TestON-set"</tt> </tt>
-<a name="L2868"></a><tt class="py-lineno">2868</tt> <tt class="py-line"> </tt>
-<a name="L2869"></a><tt class="py-lineno">2869</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Install Primitives app"</tt> </tt>
-<a name="L2870"></a><tt class="py-lineno">2870</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-992" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-992', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2871"></a><tt class="py-lineno">2871</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-993" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-993', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install Primitives app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2872"></a><tt class="py-lineno">2872</tt> <tt class="py-line"> <tt class="py-name">appName</tt> <tt class="py-op">=</tt> <tt class="py-string">"org.onosproject.distributedprimitives"</tt> </tt>
-<a name="L2873"></a><tt class="py-lineno">2873</tt> <tt class="py-line"> <tt class="py-name">appResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-994" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-994', 'activateApp', 'link-124');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2874"></a><tt class="py-lineno">2874</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2875"></a><tt class="py-lineno">2875</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2876"></a><tt class="py-lineno">2876</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Primitives app activated"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2877"></a><tt class="py-lineno">2877</tt> <tt class="py-line"> <tt id="link-995" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-995', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Primitives app not activated"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2878"></a><tt class="py-lineno">2878</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt> <tt class="py-comment"># To allow all nodes to activate</tt> </tt>
-</div><a name="L2879"></a><tt class="py-lineno">2879</tt> <tt class="py-line"> </tt>
-<a name="HAsanity.CASE17"></a><div id="HAsanity.CASE17-def"><a name="L2880"></a><tt class="py-lineno">2880</tt> <a class="py-toggle" href="#" id="HAsanity.CASE17-toggle" onclick="return toggle('HAsanity.CASE17');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE17">CASE17</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsanity.CASE17-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsanity.CASE17-expanded"><a name="L2881"></a><tt class="py-lineno">2881</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L2882"></a><tt class="py-lineno">2882</tt> <tt class="py-line"><tt class="py-docstring"> Check for basic functionality with distributed primitives</tt> </tt>
-<a name="L2883"></a><tt class="py-lineno">2883</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L2884"></a><tt class="py-lineno">2884</tt> <tt class="py-line"> <tt class="py-comment"># Make sure variables are defined/set</tt> </tt>
-<a name="L2885"></a><tt class="py-lineno">2885</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2886"></a><tt class="py-lineno">2886</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2887"></a><tt class="py-lineno">2887</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2888"></a><tt class="py-lineno">2888</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2889"></a><tt class="py-lineno">2889</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-996" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-996', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2890"></a><tt class="py-lineno">2890</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">pCounterName</tt><tt class="py-op">,</tt> <tt class="py-string">"pCounterName not defined"</tt> </tt>
-<a name="L2891"></a><tt class="py-lineno">2891</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-string">"iCounterName not defined"</tt> </tt>
-<a name="L2892"></a><tt class="py-lineno">2892</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-string">"onosSetName not defined"</tt> </tt>
-<a name="L2893"></a><tt class="py-lineno">2893</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: assert fails if value is 0/None/Empty/False</tt> </tt>
-<a name="L2894"></a><tt class="py-lineno">2894</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2895"></a><tt class="py-lineno">2895</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> </tt>
-<a name="L2896"></a><tt class="py-lineno">2896</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2897"></a><tt class="py-lineno">2897</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-997" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-997', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-998" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-998', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pCounterValue not defined, setting to 0"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2898"></a><tt class="py-lineno">2898</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2899"></a><tt class="py-lineno">2899</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2900"></a><tt class="py-lineno">2900</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> </tt>
-<a name="L2901"></a><tt class="py-lineno">2901</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2902"></a><tt class="py-lineno">2902</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-999" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-999', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1000" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1000', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"iCounterValue not defined, setting to 0"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2903"></a><tt class="py-lineno">2903</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2904"></a><tt class="py-lineno">2904</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2905"></a><tt class="py-lineno">2905</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt> </tt>
-<a name="L2906"></a><tt class="py-lineno">2906</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2907"></a><tt class="py-lineno">2907</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1001" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1001', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1002" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1002', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onosSet not defined, setting to empty Set"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2908"></a><tt class="py-lineno">2908</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L2909"></a><tt class="py-lineno">2909</tt> <tt class="py-line"> <tt class="py-comment"># Variables for the distributed primitives tests. These are local only</tt> </tt>
-<a name="L2910"></a><tt class="py-lineno">2910</tt> <tt class="py-line"> <tt class="py-name">addValue</tt> <tt class="py-op">=</tt> <tt class="py-string">"a"</tt> </tt>
-<a name="L2911"></a><tt class="py-lineno">2911</tt> <tt class="py-line"> <tt class="py-name">addAllValue</tt> <tt class="py-op">=</tt> <tt class="py-string">"a b c d e f"</tt> </tt>
-<a name="L2912"></a><tt class="py-lineno">2912</tt> <tt class="py-line"> <tt class="py-name">retainValue</tt> <tt class="py-op">=</tt> <tt class="py-string">"c d e f"</tt> </tt>
-<a name="L2913"></a><tt class="py-lineno">2913</tt> <tt class="py-line"> </tt>
-<a name="L2914"></a><tt class="py-lineno">2914</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Check for basic functionality with distributed "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2915"></a><tt class="py-lineno">2915</tt> <tt class="py-line"> <tt class="py-string">"primitives"</tt> </tt>
-<a name="L2916"></a><tt class="py-lineno">2916</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1003" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-1003', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2917"></a><tt class="py-lineno">2917</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Test the methods of the distributed "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2918"></a><tt class="py-lineno">2918</tt> <tt class="py-line"> <tt class="py-string">"primitives (counters and sets) throught the cli"</tt> </tt>
-<a name="L2919"></a><tt class="py-lineno">2919</tt> <tt class="py-line"> <tt class="py-comment"># DISTRIBUTED ATOMIC COUNTERS</tt> </tt>
-<a name="L2920"></a><tt class="py-lineno">2920</tt> <tt class="py-line"> <tt class="py-comment"># Partitioned counters</tt> </tt>
-<a name="L2921"></a><tt class="py-lineno">2921</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1004" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1004', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Increment then get a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2922"></a><tt class="py-lineno">2922</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2923"></a><tt class="py-lineno">2923</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2924"></a><tt class="py-lineno">2924</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2925"></a><tt class="py-lineno">2925</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2926"></a><tt class="py-lineno">2926</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1005" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1005', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1006" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counterTestAddAndGet"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1006', 'counterTestAddAndGet', 'link-1006');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2927"></a><tt class="py-lineno">2927</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterAddAndGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2928"></a><tt class="py-lineno">2928</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2929"></a><tt class="py-lineno">2929</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2930"></a><tt class="py-lineno">2930</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2931"></a><tt class="py-lineno">2931</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2932"></a><tt class="py-lineno">2932</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2933"></a><tt class="py-lineno">2933</tt> <tt class="py-line"> </tt>
-<a name="L2934"></a><tt class="py-lineno">2934</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2935"></a><tt class="py-lineno">2935</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2936"></a><tt class="py-lineno">2936</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2937"></a><tt class="py-lineno">2937</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L2938"></a><tt class="py-lineno">2938</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2939"></a><tt class="py-lineno">2939</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L2940"></a><tt class="py-lineno">2940</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L2941"></a><tt class="py-lineno">2941</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L2942"></a><tt class="py-lineno">2942</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L2943"></a><tt class="py-lineno">2943</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1007" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1007', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1008" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1008', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L2944"></a><tt class="py-lineno">2944</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2945"></a><tt class="py-lineno">2945</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2946"></a><tt class="py-lineno">2946</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2947"></a><tt class="py-lineno">2947</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2948"></a><tt class="py-lineno">2948</tt> <tt class="py-line"> <tt id="link-1009" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1009', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2949"></a><tt class="py-lineno">2949</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2950"></a><tt class="py-lineno">2950</tt> <tt class="py-line"> </tt>
-<a name="L2951"></a><tt class="py-lineno">2951</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1010" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1010', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get then Increment a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2952"></a><tt class="py-lineno">2952</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2953"></a><tt class="py-lineno">2953</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2954"></a><tt class="py-lineno">2954</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2955"></a><tt class="py-lineno">2955</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2956"></a><tt class="py-lineno">2956</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1011" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1011', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1012" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counterTestGetAndAdd"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd" class="py-name" href="#" onclick="return doclink('link-1012', 'counterTestGetAndAdd', 'link-1012');">counterTestGetAndAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2957"></a><tt class="py-lineno">2957</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterGetAndAdd-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2958"></a><tt class="py-lineno">2958</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2959"></a><tt class="py-lineno">2959</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2960"></a><tt class="py-lineno">2960</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2961"></a><tt class="py-lineno">2961</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2962"></a><tt class="py-lineno">2962</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2963"></a><tt class="py-lineno">2963</tt> <tt class="py-line"> </tt>
-<a name="L2964"></a><tt class="py-lineno">2964</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2965"></a><tt class="py-lineno">2965</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2966"></a><tt class="py-lineno">2966</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2967"></a><tt class="py-lineno">2967</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L2968"></a><tt class="py-lineno">2968</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2969"></a><tt class="py-lineno">2969</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L2970"></a><tt class="py-lineno">2970</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L2971"></a><tt class="py-lineno">2971</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L2972"></a><tt class="py-lineno">2972</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L2973"></a><tt class="py-lineno">2973</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1013" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1013', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1014" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1014', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L2974"></a><tt class="py-lineno">2974</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2975"></a><tt class="py-lineno">2975</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2976"></a><tt class="py-lineno">2976</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2977"></a><tt class="py-lineno">2977</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2978"></a><tt class="py-lineno">2978</tt> <tt class="py-line"> <tt id="link-1015" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1015', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2979"></a><tt class="py-lineno">2979</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2980"></a><tt class="py-lineno">2980</tt> <tt class="py-line"> </tt>
-<a name="L2981"></a><tt class="py-lineno">2981</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1016" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1016', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2982"></a><tt class="py-lineno">2982</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1017" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1017', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1018" class="py-name" targets="Function TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#counterCheck,Function TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#counterCheck,Function TestON.tests.HAsanity.dependencies.Counters.counterCheck()=TestON.tests.HAsanity.dependencies.Counters-module.html#counterCheck,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#counterCheck"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1018', 'counterCheck', 'link-1018');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">pCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2983"></a><tt class="py-lineno">2983</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2984"></a><tt class="py-lineno">2984</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L2985"></a><tt class="py-lineno">2985</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2986"></a><tt class="py-lineno">2986</tt> <tt class="py-line"> <tt id="link-1019" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1019', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2987"></a><tt class="py-lineno">2987</tt> <tt class="py-line"> </tt>
-<a name="L2988"></a><tt class="py-lineno">2988</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1020" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1020', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add -8 to then get a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2989"></a><tt class="py-lineno">2989</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2990"></a><tt class="py-lineno">2990</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2991"></a><tt class="py-lineno">2991</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2992"></a><tt class="py-lineno">2992</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2993"></a><tt class="py-lineno">2993</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1021" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1021', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1022" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1022', 'counterTestAddAndGet', 'link-1006');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2994"></a><tt class="py-lineno">2994</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2995"></a><tt class="py-lineno">2995</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L2996"></a><tt class="py-lineno">2996</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-op">-</tt><tt class="py-number">8</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2997"></a><tt class="py-lineno">2997</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-op">-</tt><tt class="py-number">8</tt> </tt>
-<a name="L2998"></a><tt class="py-lineno">2998</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2999"></a><tt class="py-lineno">2999</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3000"></a><tt class="py-lineno">3000</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3001"></a><tt class="py-lineno">3001</tt> <tt class="py-line"> </tt>
-<a name="L3002"></a><tt class="py-lineno">3002</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3003"></a><tt class="py-lineno">3003</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3004"></a><tt class="py-lineno">3004</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3005"></a><tt class="py-lineno">3005</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3006"></a><tt class="py-lineno">3006</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3007"></a><tt class="py-lineno">3007</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3008"></a><tt class="py-lineno">3008</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L3009"></a><tt class="py-lineno">3009</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3010"></a><tt class="py-lineno">3010</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3011"></a><tt class="py-lineno">3011</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1023" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1023', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1024" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1024', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L3012"></a><tt class="py-lineno">3012</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3013"></a><tt class="py-lineno">3013</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3014"></a><tt class="py-lineno">3014</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3015"></a><tt class="py-lineno">3015</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3016"></a><tt class="py-lineno">3016</tt> <tt class="py-line"> <tt id="link-1025" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1025', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3017"></a><tt class="py-lineno">3017</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3018"></a><tt class="py-lineno">3018</tt> <tt class="py-line"> </tt>
-<a name="L3019"></a><tt class="py-lineno">3019</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1026" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1026', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add 5 to then get a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3020"></a><tt class="py-lineno">3020</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3021"></a><tt class="py-lineno">3021</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3022"></a><tt class="py-lineno">3022</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3023"></a><tt class="py-lineno">3023</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3024"></a><tt class="py-lineno">3024</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1027" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1027', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1028" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1028', 'counterTestAddAndGet', 'link-1006');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3025"></a><tt class="py-lineno">3025</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3026"></a><tt class="py-lineno">3026</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3027"></a><tt class="py-lineno">3027</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-number">5</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3028"></a><tt class="py-lineno">3028</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L3029"></a><tt class="py-lineno">3029</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3030"></a><tt class="py-lineno">3030</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3031"></a><tt class="py-lineno">3031</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3032"></a><tt class="py-lineno">3032</tt> <tt class="py-line"> </tt>
-<a name="L3033"></a><tt class="py-lineno">3033</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3034"></a><tt class="py-lineno">3034</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3035"></a><tt class="py-lineno">3035</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3036"></a><tt class="py-lineno">3036</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3037"></a><tt class="py-lineno">3037</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3038"></a><tt class="py-lineno">3038</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3039"></a><tt class="py-lineno">3039</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L3040"></a><tt class="py-lineno">3040</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3041"></a><tt class="py-lineno">3041</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3042"></a><tt class="py-lineno">3042</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1029" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1029', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1030" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1030', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L3043"></a><tt class="py-lineno">3043</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3044"></a><tt class="py-lineno">3044</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3045"></a><tt class="py-lineno">3045</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3046"></a><tt class="py-lineno">3046</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3047"></a><tt class="py-lineno">3047</tt> <tt class="py-line"> <tt id="link-1031" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1031', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3048"></a><tt class="py-lineno">3048</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3049"></a><tt class="py-lineno">3049</tt> <tt class="py-line"> </tt>
-<a name="L3050"></a><tt class="py-lineno">3050</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1032" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1032', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get then add 5 to a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3051"></a><tt class="py-lineno">3051</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3052"></a><tt class="py-lineno">3052</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3053"></a><tt class="py-lineno">3053</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3054"></a><tt class="py-lineno">3054</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3055"></a><tt class="py-lineno">3055</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1033" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1033', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1034" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd" class="py-name" href="#" onclick="return doclink('link-1034', 'counterTestGetAndAdd', 'link-1012');">counterTestGetAndAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3056"></a><tt class="py-lineno">3056</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3057"></a><tt class="py-lineno">3057</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3058"></a><tt class="py-lineno">3058</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-number">5</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3059"></a><tt class="py-lineno">3059</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3060"></a><tt class="py-lineno">3060</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L3061"></a><tt class="py-lineno">3061</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3062"></a><tt class="py-lineno">3062</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3063"></a><tt class="py-lineno">3063</tt> <tt class="py-line"> </tt>
-<a name="L3064"></a><tt class="py-lineno">3064</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3065"></a><tt class="py-lineno">3065</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3066"></a><tt class="py-lineno">3066</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3067"></a><tt class="py-lineno">3067</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3068"></a><tt class="py-lineno">3068</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3069"></a><tt class="py-lineno">3069</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3070"></a><tt class="py-lineno">3070</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L3071"></a><tt class="py-lineno">3071</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3072"></a><tt class="py-lineno">3072</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3073"></a><tt class="py-lineno">3073</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1035" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1035', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1036" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1036', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L3074"></a><tt class="py-lineno">3074</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3075"></a><tt class="py-lineno">3075</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3076"></a><tt class="py-lineno">3076</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3077"></a><tt class="py-lineno">3077</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3078"></a><tt class="py-lineno">3078</tt> <tt class="py-line"> <tt id="link-1037" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1037', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3079"></a><tt class="py-lineno">3079</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3080"></a><tt class="py-lineno">3080</tt> <tt class="py-line"> </tt>
-<a name="L3081"></a><tt class="py-lineno">3081</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1038" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1038', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3082"></a><tt class="py-lineno">3082</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1039" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1039', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1040" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1040', 'counterCheck', 'link-1018');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">pCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3083"></a><tt class="py-lineno">3083</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3084"></a><tt class="py-lineno">3084</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L3085"></a><tt class="py-lineno">3085</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3086"></a><tt class="py-lineno">3086</tt> <tt class="py-line"> <tt id="link-1041" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1041', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3087"></a><tt class="py-lineno">3087</tt> <tt class="py-line"> </tt>
-<a name="L3088"></a><tt class="py-lineno">3088</tt> <tt class="py-line"> <tt class="py-comment"># In-Memory counters</tt> </tt>
-<a name="L3089"></a><tt class="py-lineno">3089</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1042" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1042', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Increment and get an in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3090"></a><tt class="py-lineno">3090</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3091"></a><tt class="py-lineno">3091</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3092"></a><tt class="py-lineno">3092</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3093"></a><tt class="py-lineno">3093</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3094"></a><tt class="py-lineno">3094</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1043" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1043', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1044" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1044', 'counterTestAddAndGet', 'link-1006');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3095"></a><tt class="py-lineno">3095</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"icounterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3096"></a><tt class="py-lineno">3096</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3097"></a><tt class="py-lineno">3097</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3098"></a><tt class="py-lineno">3098</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L3099"></a><tt class="py-lineno">3099</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3100"></a><tt class="py-lineno">3100</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3101"></a><tt class="py-lineno">3101</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3102"></a><tt class="py-lineno">3102</tt> <tt class="py-line"> </tt>
-<a name="L3103"></a><tt class="py-lineno">3103</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3104"></a><tt class="py-lineno">3104</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3105"></a><tt class="py-lineno">3105</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3106"></a><tt class="py-lineno">3106</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3107"></a><tt class="py-lineno">3107</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3108"></a><tt class="py-lineno">3108</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3109"></a><tt class="py-lineno">3109</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L3110"></a><tt class="py-lineno">3110</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3111"></a><tt class="py-lineno">3111</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3112"></a><tt class="py-lineno">3112</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1045" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1045', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1046" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1046', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in the in-memory "</tt> </tt>
-<a name="L3113"></a><tt class="py-lineno">3113</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3114"></a><tt class="py-lineno">3114</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3115"></a><tt class="py-lineno">3115</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">iCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3116"></a><tt class="py-lineno">3116</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3117"></a><tt class="py-lineno">3117</tt> <tt class="py-line"> <tt id="link-1047" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1047', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3118"></a><tt class="py-lineno">3118</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3119"></a><tt class="py-lineno">3119</tt> <tt class="py-line"> </tt>
-<a name="L3120"></a><tt class="py-lineno">3120</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1048" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1048', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get then Increment a in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3121"></a><tt class="py-lineno">3121</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3122"></a><tt class="py-lineno">3122</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3123"></a><tt class="py-lineno">3123</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3124"></a><tt class="py-lineno">3124</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3125"></a><tt class="py-lineno">3125</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1049" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1049', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1050" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd" class="py-name" href="#" onclick="return doclink('link-1050', 'counterTestGetAndAdd', 'link-1012');">counterTestGetAndAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3126"></a><tt class="py-lineno">3126</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterGetAndAdd-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3127"></a><tt class="py-lineno">3127</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3128"></a><tt class="py-lineno">3128</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3129"></a><tt class="py-lineno">3129</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3130"></a><tt class="py-lineno">3130</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L3131"></a><tt class="py-lineno">3131</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3132"></a><tt class="py-lineno">3132</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3133"></a><tt class="py-lineno">3133</tt> <tt class="py-line"> </tt>
-<a name="L3134"></a><tt class="py-lineno">3134</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3135"></a><tt class="py-lineno">3135</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3136"></a><tt class="py-lineno">3136</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3137"></a><tt class="py-lineno">3137</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3138"></a><tt class="py-lineno">3138</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3139"></a><tt class="py-lineno">3139</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3140"></a><tt class="py-lineno">3140</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L3141"></a><tt class="py-lineno">3141</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3142"></a><tt class="py-lineno">3142</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3143"></a><tt class="py-lineno">3143</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1051" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1051', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1052" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1052', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in in-memory "</tt> </tt>
-<a name="L3144"></a><tt class="py-lineno">3144</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3145"></a><tt class="py-lineno">3145</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3146"></a><tt class="py-lineno">3146</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">iCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3147"></a><tt class="py-lineno">3147</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3148"></a><tt class="py-lineno">3148</tt> <tt class="py-line"> <tt id="link-1053" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1053', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3149"></a><tt class="py-lineno">3149</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3150"></a><tt class="py-lineno">3150</tt> <tt class="py-line"> </tt>
-<a name="L3151"></a><tt class="py-lineno">3151</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1054" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1054', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3152"></a><tt class="py-lineno">3152</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1055" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1055', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1056" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1056', 'counterCheck', 'link-1018');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3153"></a><tt class="py-lineno">3153</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3154"></a><tt class="py-lineno">3154</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L3155"></a><tt class="py-lineno">3155</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3156"></a><tt class="py-lineno">3156</tt> <tt class="py-line"> <tt id="link-1057" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1057', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3157"></a><tt class="py-lineno">3157</tt> <tt class="py-line"> </tt>
-<a name="L3158"></a><tt class="py-lineno">3158</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1058" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1058', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add -8 to then get a in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3159"></a><tt class="py-lineno">3159</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3160"></a><tt class="py-lineno">3160</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3161"></a><tt class="py-lineno">3161</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3162"></a><tt class="py-lineno">3162</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3163"></a><tt class="py-lineno">3163</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1059" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1059', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1060" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1060', 'counterTestAddAndGet', 'link-1006');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3164"></a><tt class="py-lineno">3164</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3165"></a><tt class="py-lineno">3165</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3166"></a><tt class="py-lineno">3166</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-op">-</tt><tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3167"></a><tt class="py-lineno">3167</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-op">-</tt><tt class="py-number">8</tt> </tt>
-<a name="L3168"></a><tt class="py-lineno">3168</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3169"></a><tt class="py-lineno">3169</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3170"></a><tt class="py-lineno">3170</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3171"></a><tt class="py-lineno">3171</tt> <tt class="py-line"> </tt>
-<a name="L3172"></a><tt class="py-lineno">3172</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3173"></a><tt class="py-lineno">3173</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3174"></a><tt class="py-lineno">3174</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3175"></a><tt class="py-lineno">3175</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3176"></a><tt class="py-lineno">3176</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3177"></a><tt class="py-lineno">3177</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3178"></a><tt class="py-lineno">3178</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L3179"></a><tt class="py-lineno">3179</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3180"></a><tt class="py-lineno">3180</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3181"></a><tt class="py-lineno">3181</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1061" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1061', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1062" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1062', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in in-memory "</tt> </tt>
-<a name="L3182"></a><tt class="py-lineno">3182</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3183"></a><tt class="py-lineno">3183</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3184"></a><tt class="py-lineno">3184</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3185"></a><tt class="py-lineno">3185</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3186"></a><tt class="py-lineno">3186</tt> <tt class="py-line"> <tt id="link-1063" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1063', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3187"></a><tt class="py-lineno">3187</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3188"></a><tt class="py-lineno">3188</tt> <tt class="py-line"> </tt>
-<a name="L3189"></a><tt class="py-lineno">3189</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1064" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1064', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add 5 to then get a in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3190"></a><tt class="py-lineno">3190</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3191"></a><tt class="py-lineno">3191</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3192"></a><tt class="py-lineno">3192</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3193"></a><tt class="py-lineno">3193</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3194"></a><tt class="py-lineno">3194</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1065" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1065', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1066" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-1066', 'counterTestAddAndGet', 'link-1006');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3195"></a><tt class="py-lineno">3195</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3196"></a><tt class="py-lineno">3196</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3197"></a><tt class="py-lineno">3197</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-number">5</tt><tt class="py-op">,</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3198"></a><tt class="py-lineno">3198</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L3199"></a><tt class="py-lineno">3199</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3200"></a><tt class="py-lineno">3200</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3201"></a><tt class="py-lineno">3201</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3202"></a><tt class="py-lineno">3202</tt> <tt class="py-line"> </tt>
-<a name="L3203"></a><tt class="py-lineno">3203</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3204"></a><tt class="py-lineno">3204</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3205"></a><tt class="py-lineno">3205</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3206"></a><tt class="py-lineno">3206</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3207"></a><tt class="py-lineno">3207</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3208"></a><tt class="py-lineno">3208</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3209"></a><tt class="py-lineno">3209</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L3210"></a><tt class="py-lineno">3210</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3211"></a><tt class="py-lineno">3211</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3212"></a><tt class="py-lineno">3212</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1067" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1067', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1068" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1068', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in in-memory "</tt> </tt>
-<a name="L3213"></a><tt class="py-lineno">3213</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3214"></a><tt class="py-lineno">3214</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3215"></a><tt class="py-lineno">3215</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3216"></a><tt class="py-lineno">3216</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3217"></a><tt class="py-lineno">3217</tt> <tt class="py-line"> <tt id="link-1069" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1069', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3218"></a><tt class="py-lineno">3218</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3219"></a><tt class="py-lineno">3219</tt> <tt class="py-line"> </tt>
-<a name="L3220"></a><tt class="py-lineno">3220</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1070" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1070', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get then add 5 to a in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3221"></a><tt class="py-lineno">3221</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3222"></a><tt class="py-lineno">3222</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3223"></a><tt class="py-lineno">3223</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3224"></a><tt class="py-lineno">3224</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3225"></a><tt class="py-lineno">3225</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1071" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1071', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1072" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd" class="py-name" href="#" onclick="return doclink('link-1072', 'counterTestGetAndAdd', 'link-1012');">counterTestGetAndAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3226"></a><tt class="py-lineno">3226</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3227"></a><tt class="py-lineno">3227</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3228"></a><tt class="py-lineno">3228</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-number">5</tt><tt class="py-op">,</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3229"></a><tt class="py-lineno">3229</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3230"></a><tt class="py-lineno">3230</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L3231"></a><tt class="py-lineno">3231</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3232"></a><tt class="py-lineno">3232</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3233"></a><tt class="py-lineno">3233</tt> <tt class="py-line"> </tt>
-<a name="L3234"></a><tt class="py-lineno">3234</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3235"></a><tt class="py-lineno">3235</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3236"></a><tt class="py-lineno">3236</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3237"></a><tt class="py-lineno">3237</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L3238"></a><tt class="py-lineno">3238</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L3239"></a><tt class="py-lineno">3239</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L3240"></a><tt class="py-lineno">3240</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L3241"></a><tt class="py-lineno">3241</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L3242"></a><tt class="py-lineno">3242</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L3243"></a><tt class="py-lineno">3243</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1073" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1073', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1074" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1074', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in in-memory "</tt> </tt>
-<a name="L3244"></a><tt class="py-lineno">3244</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3245"></a><tt class="py-lineno">3245</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L3246"></a><tt class="py-lineno">3246</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">iCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3247"></a><tt class="py-lineno">3247</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3248"></a><tt class="py-lineno">3248</tt> <tt class="py-line"> <tt id="link-1075" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1075', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3249"></a><tt class="py-lineno">3249</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3250"></a><tt class="py-lineno">3250</tt> <tt class="py-line"> </tt>
-<a name="L3251"></a><tt class="py-lineno">3251</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1076" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1076', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3252"></a><tt class="py-lineno">3252</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1077" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1077', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1078" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1078', 'counterCheck', 'link-1018');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3253"></a><tt class="py-lineno">3253</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3254"></a><tt class="py-lineno">3254</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L3255"></a><tt class="py-lineno">3255</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3256"></a><tt class="py-lineno">3256</tt> <tt class="py-line"> <tt id="link-1079" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1079', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3257"></a><tt class="py-lineno">3257</tt> <tt class="py-line"> </tt>
-<a name="L3258"></a><tt class="py-lineno">3258</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1080" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1080', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check counters are consistant across nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3259"></a><tt class="py-lineno">3259</tt> <tt class="py-line"> <tt class="py-name">onosCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3260"></a><tt class="py-lineno">3260</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3261"></a><tt class="py-lineno">3261</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3262"></a><tt class="py-lineno">3262</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1081" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1081', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1082" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counters"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters" class="py-name" href="#" onclick="return doclink('link-1082', 'counters', 'link-1082');">counters</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3263"></a><tt class="py-lineno">3263</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counters-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3264"></a><tt class="py-lineno">3264</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3265"></a><tt class="py-lineno">3265</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3266"></a><tt class="py-lineno">3266</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3267"></a><tt class="py-lineno">3267</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3268"></a><tt class="py-lineno">3268</tt> <tt class="py-line"> <tt class="py-name">onosCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3269"></a><tt class="py-lineno">3269</tt> <tt class="py-line"> <tt class="py-name">tmp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosCounters</tt> <tt class="py-op">]</tt> </tt>
-<a name="L3270"></a><tt class="py-lineno">3270</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt> <tt class="py-name">tmp</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3271"></a><tt class="py-lineno">3271</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1083" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1083', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Counters are consistent across all nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3272"></a><tt class="py-lineno">3272</tt> <tt class="py-line"> <tt class="py-name">consistentCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3273"></a><tt class="py-lineno">3273</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3274"></a><tt class="py-lineno">3274</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1084" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1084', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1085" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1085', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters are not consistent across all nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3275"></a><tt class="py-lineno">3275</tt> <tt class="py-line"> <tt class="py-name">consistentCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3276"></a><tt class="py-lineno">3276</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3277"></a><tt class="py-lineno">3277</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3278"></a><tt class="py-lineno">3278</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS counters are consistent "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3279"></a><tt class="py-lineno">3279</tt> <tt class="py-line"> <tt class="py-string">"across nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3280"></a><tt class="py-lineno">3280</tt> <tt class="py-line"> <tt id="link-1086" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1086', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS Counters are inconsistent "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3281"></a><tt class="py-lineno">3281</tt> <tt class="py-line"> <tt class="py-string">"across nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3282"></a><tt class="py-lineno">3282</tt> <tt class="py-line"> </tt>
-<a name="L3283"></a><tt class="py-lineno">3283</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1087" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1087', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3284"></a><tt class="py-lineno">3284</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1088" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1088', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1089" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1089', 'counterCheck', 'link-1018');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3285"></a><tt class="py-lineno">3285</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">incrementCheck</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L3286"></a><tt class="py-lineno">3286</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1090" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-1090', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-1091" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-1091', 'counterCheck', 'link-1018');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3287"></a><tt class="py-lineno">3287</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3288"></a><tt class="py-lineno">3288</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L3289"></a><tt class="py-lineno">3289</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3290"></a><tt class="py-lineno">3290</tt> <tt class="py-line"> <tt id="link-1092" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1092', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3291"></a><tt class="py-lineno">3291</tt> <tt class="py-line"> </tt>
-<a name="L3292"></a><tt class="py-lineno">3292</tt> <tt class="py-line"> <tt class="py-comment"># DISTRIBUTED SETS</tt> </tt>
-<a name="L3293"></a><tt class="py-lineno">3293</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1093" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1093', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set get"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3294"></a><tt class="py-lineno">3294</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3295"></a><tt class="py-lineno">3295</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3296"></a><tt class="py-lineno">3296</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3297"></a><tt class="py-lineno">3297</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3298"></a><tt class="py-lineno">3298</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1094" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1094', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1095" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestGet"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1095', 'setTestGet', 'link-1095');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3299"></a><tt class="py-lineno">3299</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3300"></a><tt class="py-lineno">3300</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3301"></a><tt class="py-lineno">3301</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3302"></a><tt class="py-lineno">3302</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3303"></a><tt class="py-lineno">3303</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3304"></a><tt class="py-lineno">3304</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3305"></a><tt class="py-lineno">3305</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3306"></a><tt class="py-lineno">3306</tt> <tt class="py-line"> </tt>
-<a name="L3307"></a><tt class="py-lineno">3307</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3308"></a><tt class="py-lineno">3308</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3309"></a><tt class="py-lineno">3309</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3310"></a><tt class="py-lineno">3310</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3311"></a><tt class="py-lineno">3311</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3312"></a><tt class="py-lineno">3312</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3313"></a><tt class="py-lineno">3313</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3314"></a><tt class="py-lineno">3314</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1096" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1096', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1097" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1097', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3315"></a><tt class="py-lineno">3315</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3316"></a><tt class="py-lineno">3316</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3317"></a><tt class="py-lineno">3317</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3318"></a><tt class="py-lineno">3318</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1098" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1098', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3319"></a><tt class="py-lineno">3319</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1099" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1099', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3320"></a><tt class="py-lineno">3320</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3321"></a><tt class="py-lineno">3321</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3322"></a><tt class="py-lineno">3322</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3323"></a><tt class="py-lineno">3323</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1100" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1100', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1101" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1101', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3324"></a><tt class="py-lineno">3324</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3325"></a><tt class="py-lineno">3325</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3326"></a><tt class="py-lineno">3326</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3327"></a><tt class="py-lineno">3327</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3328"></a><tt class="py-lineno">3328</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3329"></a><tt class="py-lineno">3329</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3330"></a><tt class="py-lineno">3330</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3331"></a><tt class="py-lineno">3331</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">getResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3332"></a><tt class="py-lineno">3332</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set elements are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3333"></a><tt class="py-lineno">3333</tt> <tt class="py-line"> <tt id="link-1102" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1102', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set elements are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3334"></a><tt class="py-lineno">3334</tt> <tt class="py-line"> </tt>
-<a name="L3335"></a><tt class="py-lineno">3335</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1103" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1103', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set size"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3336"></a><tt class="py-lineno">3336</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3337"></a><tt class="py-lineno">3337</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3338"></a><tt class="py-lineno">3338</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3339"></a><tt class="py-lineno">3339</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1104" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1104', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1105" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestSize"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1105', 'setTestSize', 'link-1105');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3340"></a><tt class="py-lineno">3340</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3341"></a><tt class="py-lineno">3341</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3342"></a><tt class="py-lineno">3342</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3343"></a><tt class="py-lineno">3343</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3344"></a><tt class="py-lineno">3344</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3345"></a><tt class="py-lineno">3345</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3346"></a><tt class="py-lineno">3346</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3347"></a><tt class="py-lineno">3347</tt> <tt class="py-line"> </tt>
-<a name="L3348"></a><tt class="py-lineno">3348</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3349"></a><tt class="py-lineno">3349</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3350"></a><tt class="py-lineno">3350</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3351"></a><tt class="py-lineno">3351</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3352"></a><tt class="py-lineno">3352</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1106" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1106', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1107" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1107', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3353"></a><tt class="py-lineno">3353</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3354"></a><tt class="py-lineno">3354</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3355"></a><tt class="py-lineno">3355</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3356"></a><tt class="py-lineno">3356</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3357"></a><tt class="py-lineno">3357</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">sizeResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3358"></a><tt class="py-lineno">3358</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set sizes are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3359"></a><tt class="py-lineno">3359</tt> <tt class="py-line"> <tt id="link-1108" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1108', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set sizes are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3360"></a><tt class="py-lineno">3360</tt> <tt class="py-line"> </tt>
-<a name="L3361"></a><tt class="py-lineno">3361</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1109" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1109', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set add()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3362"></a><tt class="py-lineno">3362</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">add</tt><tt class="py-op">(</tt> <tt class="py-name">addValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3363"></a><tt class="py-lineno">3363</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3364"></a><tt class="py-lineno">3364</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3365"></a><tt class="py-lineno">3365</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3366"></a><tt class="py-lineno">3366</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1110" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1110', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1111" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestAdd"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd" class="py-name" href="#" onclick="return doclink('link-1111', 'setTestAdd', 'link-1111');">setTestAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3367"></a><tt class="py-lineno">3367</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestAdd-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3368"></a><tt class="py-lineno">3368</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3369"></a><tt class="py-lineno">3369</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3370"></a><tt class="py-lineno">3370</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3371"></a><tt class="py-lineno">3371</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3372"></a><tt class="py-lineno">3372</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3373"></a><tt class="py-lineno">3373</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3374"></a><tt class="py-lineno">3374</tt> <tt class="py-line"> </tt>
-<a name="L3375"></a><tt class="py-lineno">3375</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3376"></a><tt class="py-lineno">3376</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3377"></a><tt class="py-lineno">3377</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3378"></a><tt class="py-lineno">3378</tt> <tt class="py-line"> <tt class="py-name">addResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3379"></a><tt class="py-lineno">3379</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3380"></a><tt class="py-lineno">3380</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3381"></a><tt class="py-lineno">3381</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3382"></a><tt class="py-lineno">3382</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3383"></a><tt class="py-lineno">3383</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3384"></a><tt class="py-lineno">3384</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L3385"></a><tt class="py-lineno">3385</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3386"></a><tt class="py-lineno">3386</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3387"></a><tt class="py-lineno">3387</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3388"></a><tt class="py-lineno">3388</tt> <tt class="py-line"> <tt class="py-name">addResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3389"></a><tt class="py-lineno">3389</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3390"></a><tt class="py-lineno">3390</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3391"></a><tt class="py-lineno">3391</tt> <tt class="py-line"> <tt class="py-name">addResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3392"></a><tt class="py-lineno">3392</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3393"></a><tt class="py-lineno">3393</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1112" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1112', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1113" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1113', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set add"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3394"></a><tt class="py-lineno">3394</tt> <tt class="py-line"> </tt>
-<a name="L3395"></a><tt class="py-lineno">3395</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3396"></a><tt class="py-lineno">3396</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3397"></a><tt class="py-lineno">3397</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3398"></a><tt class="py-lineno">3398</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3399"></a><tt class="py-lineno">3399</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3400"></a><tt class="py-lineno">3400</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1114" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1114', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1115" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1115', 'setTestGet', 'link-1095');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3401"></a><tt class="py-lineno">3401</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3402"></a><tt class="py-lineno">3402</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3403"></a><tt class="py-lineno">3403</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3404"></a><tt class="py-lineno">3404</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3405"></a><tt class="py-lineno">3405</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3406"></a><tt class="py-lineno">3406</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3407"></a><tt class="py-lineno">3407</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3408"></a><tt class="py-lineno">3408</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3409"></a><tt class="py-lineno">3409</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3410"></a><tt class="py-lineno">3410</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3411"></a><tt class="py-lineno">3411</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3412"></a><tt class="py-lineno">3412</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3413"></a><tt class="py-lineno">3413</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3414"></a><tt class="py-lineno">3414</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3415"></a><tt class="py-lineno">3415</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1116" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1116', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1117" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1117', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3416"></a><tt class="py-lineno">3416</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3417"></a><tt class="py-lineno">3417</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3418"></a><tt class="py-lineno">3418</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3419"></a><tt class="py-lineno">3419</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1118" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1118', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3420"></a><tt class="py-lineno">3420</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1119" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1119', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3421"></a><tt class="py-lineno">3421</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3422"></a><tt class="py-lineno">3422</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3423"></a><tt class="py-lineno">3423</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3424"></a><tt class="py-lineno">3424</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1120" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1120', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1121" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1121', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3425"></a><tt class="py-lineno">3425</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3426"></a><tt class="py-lineno">3426</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3427"></a><tt class="py-lineno">3427</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3428"></a><tt class="py-lineno">3428</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3429"></a><tt class="py-lineno">3429</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3430"></a><tt class="py-lineno">3430</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3431"></a><tt class="py-lineno">3431</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3432"></a><tt class="py-lineno">3432</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3433"></a><tt class="py-lineno">3433</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3434"></a><tt class="py-lineno">3434</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1122" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1122', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1123" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1123', 'setTestSize', 'link-1105');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3435"></a><tt class="py-lineno">3435</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3436"></a><tt class="py-lineno">3436</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3437"></a><tt class="py-lineno">3437</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3438"></a><tt class="py-lineno">3438</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3439"></a><tt class="py-lineno">3439</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3440"></a><tt class="py-lineno">3440</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3441"></a><tt class="py-lineno">3441</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3442"></a><tt class="py-lineno">3442</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3443"></a><tt class="py-lineno">3443</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3444"></a><tt class="py-lineno">3444</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3445"></a><tt class="py-lineno">3445</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3446"></a><tt class="py-lineno">3446</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1124" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1124', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1125" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1125', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3447"></a><tt class="py-lineno">3447</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3448"></a><tt class="py-lineno">3448</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3449"></a><tt class="py-lineno">3449</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3450"></a><tt class="py-lineno">3450</tt> <tt class="py-line"> <tt class="py-name">addResults</tt> <tt class="py-op">=</tt> <tt class="py-name">addResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3451"></a><tt class="py-lineno">3451</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3452"></a><tt class="py-lineno">3452</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">addResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3453"></a><tt class="py-lineno">3453</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set add correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3454"></a><tt class="py-lineno">3454</tt> <tt class="py-line"> <tt id="link-1126" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1126', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set add was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3455"></a><tt class="py-lineno">3455</tt> <tt class="py-line"> </tt>
-<a name="L3456"></a><tt class="py-lineno">3456</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1127" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1127', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set addAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3457"></a><tt class="py-lineno">3457</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt id="link-1128" class="py-name" targets="Method TestON.core.dicttoobject.DictToObject.update()=TestON.core.dicttoobject.DictToObject-class.html#update,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#update"><a title="TestON.core.dicttoobject.DictToObject.update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update" class="py-name" href="#" onclick="return doclink('link-1128', 'update', 'link-1128');">update</a></tt><tt class="py-op">(</tt> <tt class="py-name">addAllValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3458"></a><tt class="py-lineno">3458</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3459"></a><tt class="py-lineno">3459</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3460"></a><tt class="py-lineno">3460</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3461"></a><tt class="py-lineno">3461</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1129" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1129', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1130" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd" class="py-name" href="#" onclick="return doclink('link-1130', 'setTestAdd', 'link-1111');">setTestAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3462"></a><tt class="py-lineno">3462</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestAddAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3463"></a><tt class="py-lineno">3463</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3464"></a><tt class="py-lineno">3464</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3465"></a><tt class="py-lineno">3465</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3466"></a><tt class="py-lineno">3466</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3467"></a><tt class="py-lineno">3467</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3468"></a><tt class="py-lineno">3468</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3469"></a><tt class="py-lineno">3469</tt> <tt class="py-line"> </tt>
-<a name="L3470"></a><tt class="py-lineno">3470</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3471"></a><tt class="py-lineno">3471</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3472"></a><tt class="py-lineno">3472</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3473"></a><tt class="py-lineno">3473</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3474"></a><tt class="py-lineno">3474</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3475"></a><tt class="py-lineno">3475</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3476"></a><tt class="py-lineno">3476</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3477"></a><tt class="py-lineno">3477</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3478"></a><tt class="py-lineno">3478</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3479"></a><tt class="py-lineno">3479</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L3480"></a><tt class="py-lineno">3480</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3481"></a><tt class="py-lineno">3481</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3482"></a><tt class="py-lineno">3482</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3483"></a><tt class="py-lineno">3483</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3484"></a><tt class="py-lineno">3484</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3485"></a><tt class="py-lineno">3485</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3486"></a><tt class="py-lineno">3486</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3487"></a><tt class="py-lineno">3487</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addAllResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3488"></a><tt class="py-lineno">3488</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1131" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1131', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1132" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1132', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set addAll"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3489"></a><tt class="py-lineno">3489</tt> <tt class="py-line"> </tt>
-<a name="L3490"></a><tt class="py-lineno">3490</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3491"></a><tt class="py-lineno">3491</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3492"></a><tt class="py-lineno">3492</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3493"></a><tt class="py-lineno">3493</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3494"></a><tt class="py-lineno">3494</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3495"></a><tt class="py-lineno">3495</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1133" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1133', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1134" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1134', 'setTestGet', 'link-1095');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3496"></a><tt class="py-lineno">3496</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3497"></a><tt class="py-lineno">3497</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3498"></a><tt class="py-lineno">3498</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3499"></a><tt class="py-lineno">3499</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3500"></a><tt class="py-lineno">3500</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3501"></a><tt class="py-lineno">3501</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3502"></a><tt class="py-lineno">3502</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3503"></a><tt class="py-lineno">3503</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3504"></a><tt class="py-lineno">3504</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3505"></a><tt class="py-lineno">3505</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3506"></a><tt class="py-lineno">3506</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3507"></a><tt class="py-lineno">3507</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3508"></a><tt class="py-lineno">3508</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3509"></a><tt class="py-lineno">3509</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3510"></a><tt class="py-lineno">3510</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1135" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1135', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1136" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1136', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3511"></a><tt class="py-lineno">3511</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3512"></a><tt class="py-lineno">3512</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3513"></a><tt class="py-lineno">3513</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3514"></a><tt class="py-lineno">3514</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1137" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1137', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3515"></a><tt class="py-lineno">3515</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1138" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1138', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3516"></a><tt class="py-lineno">3516</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3517"></a><tt class="py-lineno">3517</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3518"></a><tt class="py-lineno">3518</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3519"></a><tt class="py-lineno">3519</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1139" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1139', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1140" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1140', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3520"></a><tt class="py-lineno">3520</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3521"></a><tt class="py-lineno">3521</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3522"></a><tt class="py-lineno">3522</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3523"></a><tt class="py-lineno">3523</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3524"></a><tt class="py-lineno">3524</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3525"></a><tt class="py-lineno">3525</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3526"></a><tt class="py-lineno">3526</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3527"></a><tt class="py-lineno">3527</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3528"></a><tt class="py-lineno">3528</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3529"></a><tt class="py-lineno">3529</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1141" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1141', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1142" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1142', 'setTestSize', 'link-1105');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3530"></a><tt class="py-lineno">3530</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3531"></a><tt class="py-lineno">3531</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3532"></a><tt class="py-lineno">3532</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3533"></a><tt class="py-lineno">3533</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3534"></a><tt class="py-lineno">3534</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3535"></a><tt class="py-lineno">3535</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3536"></a><tt class="py-lineno">3536</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3537"></a><tt class="py-lineno">3537</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3538"></a><tt class="py-lineno">3538</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3539"></a><tt class="py-lineno">3539</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3540"></a><tt class="py-lineno">3540</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3541"></a><tt class="py-lineno">3541</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1143" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1143', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1144" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1144', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3542"></a><tt class="py-lineno">3542</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3543"></a><tt class="py-lineno">3543</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3544"></a><tt class="py-lineno">3544</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3545"></a><tt class="py-lineno">3545</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">addAllResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3546"></a><tt class="py-lineno">3546</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3547"></a><tt class="py-lineno">3547</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">addAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3548"></a><tt class="py-lineno">3548</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3549"></a><tt class="py-lineno">3549</tt> <tt class="py-line"> <tt id="link-1145" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1145', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3550"></a><tt class="py-lineno">3550</tt> <tt class="py-line"> </tt>
-<a name="L3551"></a><tt class="py-lineno">3551</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1146" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1146', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set contains()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3552"></a><tt class="py-lineno">3552</tt> <tt class="py-line"> <tt class="py-name">containsResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3553"></a><tt class="py-lineno">3553</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3554"></a><tt class="py-lineno">3554</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3555"></a><tt class="py-lineno">3555</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1147" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1147', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1148" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1148', 'setTestGet', 'link-1095');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3556"></a><tt class="py-lineno">3556</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setContains-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3557"></a><tt class="py-lineno">3557</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3558"></a><tt class="py-lineno">3558</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"values"</tt><tt class="py-op">:</tt> <tt class="py-name">addValue</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3559"></a><tt class="py-lineno">3559</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3560"></a><tt class="py-lineno">3560</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3561"></a><tt class="py-lineno">3561</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3562"></a><tt class="py-lineno">3562</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3563"></a><tt class="py-lineno">3563</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: This is the tuple</tt> </tt>
-<a name="L3564"></a><tt class="py-lineno">3564</tt> <tt class="py-line"> <tt class="py-name">containsResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3565"></a><tt class="py-lineno">3565</tt> <tt class="py-line"> </tt>
-<a name="L3566"></a><tt class="py-lineno">3566</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3567"></a><tt class="py-lineno">3567</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3568"></a><tt class="py-lineno">3568</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">containsResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3569"></a><tt class="py-lineno">3569</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3570"></a><tt class="py-lineno">3570</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3571"></a><tt class="py-lineno">3571</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">containsResults</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L3572"></a><tt class="py-lineno">3572</tt> <tt class="py-line"> <tt class="py-name">containsResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L3573"></a><tt class="py-lineno">3573</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3574"></a><tt class="py-lineno">3574</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">containsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3575"></a><tt class="py-lineno">3575</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set contains is functional"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3576"></a><tt class="py-lineno">3576</tt> <tt class="py-line"> <tt id="link-1149" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1149', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set contains failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3577"></a><tt class="py-lineno">3577</tt> <tt class="py-line"> </tt>
-<a name="L3578"></a><tt class="py-lineno">3578</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1150" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1150', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set containsAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3579"></a><tt class="py-lineno">3579</tt> <tt class="py-line"> <tt class="py-name">containsAllResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3580"></a><tt class="py-lineno">3580</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3581"></a><tt class="py-lineno">3581</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3582"></a><tt class="py-lineno">3582</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1151" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1151', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1152" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1152', 'setTestGet', 'link-1095');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3583"></a><tt class="py-lineno">3583</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setContainsAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3584"></a><tt class="py-lineno">3584</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3585"></a><tt class="py-lineno">3585</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"values"</tt><tt class="py-op">:</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3586"></a><tt class="py-lineno">3586</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3587"></a><tt class="py-lineno">3587</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3588"></a><tt class="py-lineno">3588</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3589"></a><tt class="py-lineno">3589</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3590"></a><tt class="py-lineno">3590</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: This is the tuple</tt> </tt>
-<a name="L3591"></a><tt class="py-lineno">3591</tt> <tt class="py-line"> <tt class="py-name">containsAllResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3592"></a><tt class="py-lineno">3592</tt> <tt class="py-line"> </tt>
-<a name="L3593"></a><tt class="py-lineno">3593</tt> <tt class="py-line"> <tt class="py-name">containsAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3594"></a><tt class="py-lineno">3594</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3595"></a><tt class="py-lineno">3595</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">containsResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3596"></a><tt class="py-lineno">3596</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3597"></a><tt class="py-lineno">3597</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3598"></a><tt class="py-lineno">3598</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">containsResults</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L3599"></a><tt class="py-lineno">3599</tt> <tt class="py-line"> <tt class="py-name">containsResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L3600"></a><tt class="py-lineno">3600</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3601"></a><tt class="py-lineno">3601</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">containsAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3602"></a><tt class="py-lineno">3602</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set containsAll is functional"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3603"></a><tt class="py-lineno">3603</tt> <tt class="py-line"> <tt id="link-1153" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1153', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set containsAll failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3604"></a><tt class="py-lineno">3604</tt> <tt class="py-line"> </tt>
-<a name="L3605"></a><tt class="py-lineno">3605</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1154" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1154', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set remove()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3606"></a><tt class="py-lineno">3606</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt> <tt class="py-name">addValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3607"></a><tt class="py-lineno">3607</tt> <tt class="py-line"> <tt class="py-name">removeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3608"></a><tt class="py-lineno">3608</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3609"></a><tt class="py-lineno">3609</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3610"></a><tt class="py-lineno">3610</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1155" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1155', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1156" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestRemove"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove" class="py-name" href="#" onclick="return doclink('link-1156', 'setTestRemove', 'link-1156');">setTestRemove</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3611"></a><tt class="py-lineno">3611</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestRemove-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3612"></a><tt class="py-lineno">3612</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3613"></a><tt class="py-lineno">3613</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3614"></a><tt class="py-lineno">3614</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3615"></a><tt class="py-lineno">3615</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3616"></a><tt class="py-lineno">3616</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3617"></a><tt class="py-lineno">3617</tt> <tt class="py-line"> <tt class="py-name">removeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3618"></a><tt class="py-lineno">3618</tt> <tt class="py-line"> </tt>
-<a name="L3619"></a><tt class="py-lineno">3619</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3620"></a><tt class="py-lineno">3620</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3621"></a><tt class="py-lineno">3621</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3622"></a><tt class="py-lineno">3622</tt> <tt class="py-line"> <tt class="py-name">removeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3623"></a><tt class="py-lineno">3623</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3624"></a><tt class="py-lineno">3624</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3625"></a><tt class="py-lineno">3625</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3626"></a><tt class="py-lineno">3626</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3627"></a><tt class="py-lineno">3627</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">removeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3628"></a><tt class="py-lineno">3628</tt> <tt class="py-line"> <tt class="py-comment"># not in set, probably fine</tt> </tt>
-<a name="L3629"></a><tt class="py-lineno">3629</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3630"></a><tt class="py-lineno">3630</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">removeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3631"></a><tt class="py-lineno">3631</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3632"></a><tt class="py-lineno">3632</tt> <tt class="py-line"> <tt class="py-name">removeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3633"></a><tt class="py-lineno">3633</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3634"></a><tt class="py-lineno">3634</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3635"></a><tt class="py-lineno">3635</tt> <tt class="py-line"> <tt class="py-name">removeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3636"></a><tt class="py-lineno">3636</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3637"></a><tt class="py-lineno">3637</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1157" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1157', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1158" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1158', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set remove"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3638"></a><tt class="py-lineno">3638</tt> <tt class="py-line"> </tt>
-<a name="L3639"></a><tt class="py-lineno">3639</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3640"></a><tt class="py-lineno">3640</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3641"></a><tt class="py-lineno">3641</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3642"></a><tt class="py-lineno">3642</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3643"></a><tt class="py-lineno">3643</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3644"></a><tt class="py-lineno">3644</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1159" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1159', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1160" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1160', 'setTestGet', 'link-1095');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3645"></a><tt class="py-lineno">3645</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3646"></a><tt class="py-lineno">3646</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3647"></a><tt class="py-lineno">3647</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3648"></a><tt class="py-lineno">3648</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3649"></a><tt class="py-lineno">3649</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3650"></a><tt class="py-lineno">3650</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3651"></a><tt class="py-lineno">3651</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3652"></a><tt class="py-lineno">3652</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3653"></a><tt class="py-lineno">3653</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3654"></a><tt class="py-lineno">3654</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3655"></a><tt class="py-lineno">3655</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3656"></a><tt class="py-lineno">3656</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3657"></a><tt class="py-lineno">3657</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3658"></a><tt class="py-lineno">3658</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3659"></a><tt class="py-lineno">3659</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1161" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1161', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1162" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1162', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3660"></a><tt class="py-lineno">3660</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3661"></a><tt class="py-lineno">3661</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3662"></a><tt class="py-lineno">3662</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3663"></a><tt class="py-lineno">3663</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1163" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1163', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3664"></a><tt class="py-lineno">3664</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1164" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1164', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3665"></a><tt class="py-lineno">3665</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3666"></a><tt class="py-lineno">3666</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3667"></a><tt class="py-lineno">3667</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3668"></a><tt class="py-lineno">3668</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1165" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1165', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1166" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1166', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3669"></a><tt class="py-lineno">3669</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3670"></a><tt class="py-lineno">3670</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3671"></a><tt class="py-lineno">3671</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3672"></a><tt class="py-lineno">3672</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3673"></a><tt class="py-lineno">3673</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3674"></a><tt class="py-lineno">3674</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3675"></a><tt class="py-lineno">3675</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3676"></a><tt class="py-lineno">3676</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3677"></a><tt class="py-lineno">3677</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3678"></a><tt class="py-lineno">3678</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1167" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1167', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1168" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1168', 'setTestSize', 'link-1105');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3679"></a><tt class="py-lineno">3679</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3680"></a><tt class="py-lineno">3680</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3681"></a><tt class="py-lineno">3681</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3682"></a><tt class="py-lineno">3682</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3683"></a><tt class="py-lineno">3683</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3684"></a><tt class="py-lineno">3684</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3685"></a><tt class="py-lineno">3685</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3686"></a><tt class="py-lineno">3686</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3687"></a><tt class="py-lineno">3687</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3688"></a><tt class="py-lineno">3688</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3689"></a><tt class="py-lineno">3689</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3690"></a><tt class="py-lineno">3690</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1169" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1169', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1170" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1170', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3691"></a><tt class="py-lineno">3691</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3692"></a><tt class="py-lineno">3692</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3693"></a><tt class="py-lineno">3693</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3694"></a><tt class="py-lineno">3694</tt> <tt class="py-line"> <tt class="py-name">removeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">removeResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3695"></a><tt class="py-lineno">3695</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3696"></a><tt class="py-lineno">3696</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">removeResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3697"></a><tt class="py-lineno">3697</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set remove correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3698"></a><tt class="py-lineno">3698</tt> <tt class="py-line"> <tt id="link-1171" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1171', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set remove was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3699"></a><tt class="py-lineno">3699</tt> <tt class="py-line"> </tt>
-<a name="L3700"></a><tt class="py-lineno">3700</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1172" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1172', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set removeAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3701"></a><tt class="py-lineno">3701</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">difference_update</tt><tt class="py-op">(</tt> <tt class="py-name">addAllValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3702"></a><tt class="py-lineno">3702</tt> <tt class="py-line"> <tt class="py-name">removeAllResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3703"></a><tt class="py-lineno">3703</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3704"></a><tt class="py-lineno">3704</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L3705"></a><tt class="py-lineno">3705</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3706"></a><tt class="py-lineno">3706</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1173" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1173', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1174" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove" class="py-name" href="#" onclick="return doclink('link-1174', 'setTestRemove', 'link-1156');">setTestRemove</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3707"></a><tt class="py-lineno">3707</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestRemoveAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3708"></a><tt class="py-lineno">3708</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3709"></a><tt class="py-lineno">3709</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3710"></a><tt class="py-lineno">3710</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3711"></a><tt class="py-lineno">3711</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3712"></a><tt class="py-lineno">3712</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3713"></a><tt class="py-lineno">3713</tt> <tt class="py-line"> <tt class="py-name">removeAllResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3714"></a><tt class="py-lineno">3714</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L3715"></a><tt class="py-lineno">3715</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1175" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1175', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L3716"></a><tt class="py-lineno">3716</tt> <tt class="py-line"> </tt>
-<a name="L3717"></a><tt class="py-lineno">3717</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3718"></a><tt class="py-lineno">3718</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3719"></a><tt class="py-lineno">3719</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3720"></a><tt class="py-lineno">3720</tt> <tt class="py-line"> <tt class="py-name">removeAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3721"></a><tt class="py-lineno">3721</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3722"></a><tt class="py-lineno">3722</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeAllResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3723"></a><tt class="py-lineno">3723</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3724"></a><tt class="py-lineno">3724</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3725"></a><tt class="py-lineno">3725</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">removeAllResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3726"></a><tt class="py-lineno">3726</tt> <tt class="py-line"> <tt class="py-comment"># not in set, probably fine</tt> </tt>
-<a name="L3727"></a><tt class="py-lineno">3727</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3728"></a><tt class="py-lineno">3728</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">removeAllResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3729"></a><tt class="py-lineno">3729</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3730"></a><tt class="py-lineno">3730</tt> <tt class="py-line"> <tt class="py-name">removeAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3731"></a><tt class="py-lineno">3731</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3732"></a><tt class="py-lineno">3732</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3733"></a><tt class="py-lineno">3733</tt> <tt class="py-line"> <tt class="py-name">removeAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3734"></a><tt class="py-lineno">3734</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeAllResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3735"></a><tt class="py-lineno">3735</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1176" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1176', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1177" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1177', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set removeAll"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3736"></a><tt class="py-lineno">3736</tt> <tt class="py-line"> </tt>
-<a name="L3737"></a><tt class="py-lineno">3737</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3738"></a><tt class="py-lineno">3738</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3739"></a><tt class="py-lineno">3739</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3740"></a><tt class="py-lineno">3740</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3741"></a><tt class="py-lineno">3741</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3742"></a><tt class="py-lineno">3742</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1178" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1178', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1179" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1179', 'setTestGet', 'link-1095');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3743"></a><tt class="py-lineno">3743</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3744"></a><tt class="py-lineno">3744</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3745"></a><tt class="py-lineno">3745</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3746"></a><tt class="py-lineno">3746</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3747"></a><tt class="py-lineno">3747</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3748"></a><tt class="py-lineno">3748</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3749"></a><tt class="py-lineno">3749</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3750"></a><tt class="py-lineno">3750</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3751"></a><tt class="py-lineno">3751</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3752"></a><tt class="py-lineno">3752</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3753"></a><tt class="py-lineno">3753</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3754"></a><tt class="py-lineno">3754</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3755"></a><tt class="py-lineno">3755</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3756"></a><tt class="py-lineno">3756</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3757"></a><tt class="py-lineno">3757</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1180" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1180', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1181" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1181', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3758"></a><tt class="py-lineno">3758</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3759"></a><tt class="py-lineno">3759</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3760"></a><tt class="py-lineno">3760</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3761"></a><tt class="py-lineno">3761</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1182" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1182', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3762"></a><tt class="py-lineno">3762</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1183" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1183', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3763"></a><tt class="py-lineno">3763</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3764"></a><tt class="py-lineno">3764</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3765"></a><tt class="py-lineno">3765</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3766"></a><tt class="py-lineno">3766</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1184" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1184', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1185" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1185', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3767"></a><tt class="py-lineno">3767</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3768"></a><tt class="py-lineno">3768</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3769"></a><tt class="py-lineno">3769</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3770"></a><tt class="py-lineno">3770</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3771"></a><tt class="py-lineno">3771</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3772"></a><tt class="py-lineno">3772</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3773"></a><tt class="py-lineno">3773</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3774"></a><tt class="py-lineno">3774</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3775"></a><tt class="py-lineno">3775</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3776"></a><tt class="py-lineno">3776</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1186" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1186', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1187" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1187', 'setTestSize', 'link-1105');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3777"></a><tt class="py-lineno">3777</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3778"></a><tt class="py-lineno">3778</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3779"></a><tt class="py-lineno">3779</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3780"></a><tt class="py-lineno">3780</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3781"></a><tt class="py-lineno">3781</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3782"></a><tt class="py-lineno">3782</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3783"></a><tt class="py-lineno">3783</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3784"></a><tt class="py-lineno">3784</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3785"></a><tt class="py-lineno">3785</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3786"></a><tt class="py-lineno">3786</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3787"></a><tt class="py-lineno">3787</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3788"></a><tt class="py-lineno">3788</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1188" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1188', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1189" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1189', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3789"></a><tt class="py-lineno">3789</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3790"></a><tt class="py-lineno">3790</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3791"></a><tt class="py-lineno">3791</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3792"></a><tt class="py-lineno">3792</tt> <tt class="py-line"> <tt class="py-name">removeAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">removeAllResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3793"></a><tt class="py-lineno">3793</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3794"></a><tt class="py-lineno">3794</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">removeAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3795"></a><tt class="py-lineno">3795</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set removeAll correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3796"></a><tt class="py-lineno">3796</tt> <tt class="py-line"> <tt id="link-1190" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1190', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set removeAll was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3797"></a><tt class="py-lineno">3797</tt> <tt class="py-line"> </tt>
-<a name="L3798"></a><tt class="py-lineno">3798</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1191" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1191', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set addAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3799"></a><tt class="py-lineno">3799</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt id="link-1192" class="py-name"><a title="TestON.core.dicttoobject.DictToObject.update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update" class="py-name" href="#" onclick="return doclink('link-1192', 'update', 'link-1128');">update</a></tt><tt class="py-op">(</tt> <tt class="py-name">addAllValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3800"></a><tt class="py-lineno">3800</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3801"></a><tt class="py-lineno">3801</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3802"></a><tt class="py-lineno">3802</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3803"></a><tt class="py-lineno">3803</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1193" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1193', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1194" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd" class="py-name" href="#" onclick="return doclink('link-1194', 'setTestAdd', 'link-1111');">setTestAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3804"></a><tt class="py-lineno">3804</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestAddAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3805"></a><tt class="py-lineno">3805</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3806"></a><tt class="py-lineno">3806</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3807"></a><tt class="py-lineno">3807</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3808"></a><tt class="py-lineno">3808</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3809"></a><tt class="py-lineno">3809</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3810"></a><tt class="py-lineno">3810</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3811"></a><tt class="py-lineno">3811</tt> <tt class="py-line"> </tt>
-<a name="L3812"></a><tt class="py-lineno">3812</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3813"></a><tt class="py-lineno">3813</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3814"></a><tt class="py-lineno">3814</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3815"></a><tt class="py-lineno">3815</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3816"></a><tt class="py-lineno">3816</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3817"></a><tt class="py-lineno">3817</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3818"></a><tt class="py-lineno">3818</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3819"></a><tt class="py-lineno">3819</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3820"></a><tt class="py-lineno">3820</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3821"></a><tt class="py-lineno">3821</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L3822"></a><tt class="py-lineno">3822</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3823"></a><tt class="py-lineno">3823</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3824"></a><tt class="py-lineno">3824</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3825"></a><tt class="py-lineno">3825</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3826"></a><tt class="py-lineno">3826</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3827"></a><tt class="py-lineno">3827</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3828"></a><tt class="py-lineno">3828</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3829"></a><tt class="py-lineno">3829</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addAllResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3830"></a><tt class="py-lineno">3830</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1195" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1195', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1196" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1196', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set addAll"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3831"></a><tt class="py-lineno">3831</tt> <tt class="py-line"> </tt>
-<a name="L3832"></a><tt class="py-lineno">3832</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3833"></a><tt class="py-lineno">3833</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3834"></a><tt class="py-lineno">3834</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3835"></a><tt class="py-lineno">3835</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3836"></a><tt class="py-lineno">3836</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3837"></a><tt class="py-lineno">3837</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1197" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1197', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1198" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1198', 'setTestGet', 'link-1095');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3838"></a><tt class="py-lineno">3838</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3839"></a><tt class="py-lineno">3839</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3840"></a><tt class="py-lineno">3840</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3841"></a><tt class="py-lineno">3841</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3842"></a><tt class="py-lineno">3842</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3843"></a><tt class="py-lineno">3843</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3844"></a><tt class="py-lineno">3844</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3845"></a><tt class="py-lineno">3845</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3846"></a><tt class="py-lineno">3846</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3847"></a><tt class="py-lineno">3847</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3848"></a><tt class="py-lineno">3848</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3849"></a><tt class="py-lineno">3849</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3850"></a><tt class="py-lineno">3850</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3851"></a><tt class="py-lineno">3851</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3852"></a><tt class="py-lineno">3852</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1199" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1199', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1200" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1200', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3853"></a><tt class="py-lineno">3853</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3854"></a><tt class="py-lineno">3854</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3855"></a><tt class="py-lineno">3855</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3856"></a><tt class="py-lineno">3856</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1201" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1201', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3857"></a><tt class="py-lineno">3857</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1202" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1202', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3858"></a><tt class="py-lineno">3858</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3859"></a><tt class="py-lineno">3859</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3860"></a><tt class="py-lineno">3860</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3861"></a><tt class="py-lineno">3861</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1203" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1203', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1204" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1204', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3862"></a><tt class="py-lineno">3862</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3863"></a><tt class="py-lineno">3863</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3864"></a><tt class="py-lineno">3864</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3865"></a><tt class="py-lineno">3865</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3866"></a><tt class="py-lineno">3866</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3867"></a><tt class="py-lineno">3867</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3868"></a><tt class="py-lineno">3868</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3869"></a><tt class="py-lineno">3869</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3870"></a><tt class="py-lineno">3870</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3871"></a><tt class="py-lineno">3871</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1205" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1205', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1206" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1206', 'setTestSize', 'link-1105');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3872"></a><tt class="py-lineno">3872</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3873"></a><tt class="py-lineno">3873</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3874"></a><tt class="py-lineno">3874</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3875"></a><tt class="py-lineno">3875</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3876"></a><tt class="py-lineno">3876</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3877"></a><tt class="py-lineno">3877</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3878"></a><tt class="py-lineno">3878</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3879"></a><tt class="py-lineno">3879</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3880"></a><tt class="py-lineno">3880</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3881"></a><tt class="py-lineno">3881</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3882"></a><tt class="py-lineno">3882</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3883"></a><tt class="py-lineno">3883</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1207" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1207', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1208" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1208', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3884"></a><tt class="py-lineno">3884</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3885"></a><tt class="py-lineno">3885</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3886"></a><tt class="py-lineno">3886</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3887"></a><tt class="py-lineno">3887</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">addAllResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3888"></a><tt class="py-lineno">3888</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3889"></a><tt class="py-lineno">3889</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">addAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3890"></a><tt class="py-lineno">3890</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3891"></a><tt class="py-lineno">3891</tt> <tt class="py-line"> <tt id="link-1209" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1209', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3892"></a><tt class="py-lineno">3892</tt> <tt class="py-line"> </tt>
-<a name="L3893"></a><tt class="py-lineno">3893</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1210" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1210', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set clear()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3894"></a><tt class="py-lineno">3894</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">clear</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3895"></a><tt class="py-lineno">3895</tt> <tt class="py-line"> <tt class="py-name">clearResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3896"></a><tt class="py-lineno">3896</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3897"></a><tt class="py-lineno">3897</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3898"></a><tt class="py-lineno">3898</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1211" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1211', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1212" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove" class="py-name" href="#" onclick="return doclink('link-1212', 'setTestRemove', 'link-1156');">setTestRemove</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3899"></a><tt class="py-lineno">3899</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestClear-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3900"></a><tt class="py-lineno">3900</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-string">" "</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-comment"># Values doesn't matter</tt> </tt>
-<a name="L3901"></a><tt class="py-lineno">3901</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"clear"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3902"></a><tt class="py-lineno">3902</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3903"></a><tt class="py-lineno">3903</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3904"></a><tt class="py-lineno">3904</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3905"></a><tt class="py-lineno">3905</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3906"></a><tt class="py-lineno">3906</tt> <tt class="py-line"> <tt class="py-name">clearResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3907"></a><tt class="py-lineno">3907</tt> <tt class="py-line"> </tt>
-<a name="L3908"></a><tt class="py-lineno">3908</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3909"></a><tt class="py-lineno">3909</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3910"></a><tt class="py-lineno">3910</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3911"></a><tt class="py-lineno">3911</tt> <tt class="py-line"> <tt class="py-name">clearResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3912"></a><tt class="py-lineno">3912</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3913"></a><tt class="py-lineno">3913</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">clearResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3914"></a><tt class="py-lineno">3914</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3915"></a><tt class="py-lineno">3915</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3916"></a><tt class="py-lineno">3916</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">clearResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3917"></a><tt class="py-lineno">3917</tt> <tt class="py-line"> <tt class="py-comment"># Nothing set, probably fine</tt> </tt>
-<a name="L3918"></a><tt class="py-lineno">3918</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3919"></a><tt class="py-lineno">3919</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">clearResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3920"></a><tt class="py-lineno">3920</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3921"></a><tt class="py-lineno">3921</tt> <tt class="py-line"> <tt class="py-name">clearResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3922"></a><tt class="py-lineno">3922</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3923"></a><tt class="py-lineno">3923</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3924"></a><tt class="py-lineno">3924</tt> <tt class="py-line"> <tt class="py-name">clearResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3925"></a><tt class="py-lineno">3925</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">clearResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3926"></a><tt class="py-lineno">3926</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1213" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1213', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1214" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1214', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set clear"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3927"></a><tt class="py-lineno">3927</tt> <tt class="py-line"> </tt>
-<a name="L3928"></a><tt class="py-lineno">3928</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3929"></a><tt class="py-lineno">3929</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3930"></a><tt class="py-lineno">3930</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3931"></a><tt class="py-lineno">3931</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3932"></a><tt class="py-lineno">3932</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3933"></a><tt class="py-lineno">3933</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1215" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1215', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1216" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1216', 'setTestGet', 'link-1095');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3934"></a><tt class="py-lineno">3934</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3935"></a><tt class="py-lineno">3935</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3936"></a><tt class="py-lineno">3936</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3937"></a><tt class="py-lineno">3937</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3938"></a><tt class="py-lineno">3938</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3939"></a><tt class="py-lineno">3939</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3940"></a><tt class="py-lineno">3940</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3941"></a><tt class="py-lineno">3941</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3942"></a><tt class="py-lineno">3942</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3943"></a><tt class="py-lineno">3943</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3944"></a><tt class="py-lineno">3944</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3945"></a><tt class="py-lineno">3945</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3946"></a><tt class="py-lineno">3946</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3947"></a><tt class="py-lineno">3947</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3948"></a><tt class="py-lineno">3948</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1217" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1217', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1218" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1218', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3949"></a><tt class="py-lineno">3949</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3950"></a><tt class="py-lineno">3950</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3951"></a><tt class="py-lineno">3951</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3952"></a><tt class="py-lineno">3952</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1219" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1219', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3953"></a><tt class="py-lineno">3953</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1220" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1220', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3954"></a><tt class="py-lineno">3954</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3955"></a><tt class="py-lineno">3955</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3956"></a><tt class="py-lineno">3956</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3957"></a><tt class="py-lineno">3957</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1221" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1221', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1222" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1222', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3958"></a><tt class="py-lineno">3958</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3959"></a><tt class="py-lineno">3959</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3960"></a><tt class="py-lineno">3960</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3961"></a><tt class="py-lineno">3961</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3962"></a><tt class="py-lineno">3962</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3963"></a><tt class="py-lineno">3963</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3964"></a><tt class="py-lineno">3964</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3965"></a><tt class="py-lineno">3965</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3966"></a><tt class="py-lineno">3966</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3967"></a><tt class="py-lineno">3967</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1223" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1223', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1224" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1224', 'setTestSize', 'link-1105');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3968"></a><tt class="py-lineno">3968</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3969"></a><tt class="py-lineno">3969</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3970"></a><tt class="py-lineno">3970</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3971"></a><tt class="py-lineno">3971</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3972"></a><tt class="py-lineno">3972</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3973"></a><tt class="py-lineno">3973</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3974"></a><tt class="py-lineno">3974</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3975"></a><tt class="py-lineno">3975</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3976"></a><tt class="py-lineno">3976</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3977"></a><tt class="py-lineno">3977</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3978"></a><tt class="py-lineno">3978</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3979"></a><tt class="py-lineno">3979</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1225" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1225', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1226" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1226', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3980"></a><tt class="py-lineno">3980</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3981"></a><tt class="py-lineno">3981</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3982"></a><tt class="py-lineno">3982</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3983"></a><tt class="py-lineno">3983</tt> <tt class="py-line"> <tt class="py-name">clearResults</tt> <tt class="py-op">=</tt> <tt class="py-name">clearResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3984"></a><tt class="py-lineno">3984</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3985"></a><tt class="py-lineno">3985</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">clearResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3986"></a><tt class="py-lineno">3986</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set clear correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3987"></a><tt class="py-lineno">3987</tt> <tt class="py-line"> <tt id="link-1227" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1227', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set clear was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3988"></a><tt class="py-lineno">3988</tt> <tt class="py-line"> </tt>
-<a name="L3989"></a><tt class="py-lineno">3989</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1228" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1228', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set addAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3990"></a><tt class="py-lineno">3990</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt id="link-1229" class="py-name"><a title="TestON.core.dicttoobject.DictToObject.update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update" class="py-name" href="#" onclick="return doclink('link-1229', 'update', 'link-1128');">update</a></tt><tt class="py-op">(</tt> <tt class="py-name">addAllValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3991"></a><tt class="py-lineno">3991</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3992"></a><tt class="py-lineno">3992</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3993"></a><tt class="py-lineno">3993</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3994"></a><tt class="py-lineno">3994</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1230" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1230', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1231" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd" class="py-name" href="#" onclick="return doclink('link-1231', 'setTestAdd', 'link-1111');">setTestAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3995"></a><tt class="py-lineno">3995</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestAddAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3996"></a><tt class="py-lineno">3996</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3997"></a><tt class="py-lineno">3997</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3998"></a><tt class="py-lineno">3998</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3999"></a><tt class="py-lineno">3999</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4000"></a><tt class="py-lineno">4000</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4001"></a><tt class="py-lineno">4001</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4002"></a><tt class="py-lineno">4002</tt> <tt class="py-line"> </tt>
-<a name="L4003"></a><tt class="py-lineno">4003</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L4004"></a><tt class="py-lineno">4004</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L4005"></a><tt class="py-lineno">4005</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L4006"></a><tt class="py-lineno">4006</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4007"></a><tt class="py-lineno">4007</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4008"></a><tt class="py-lineno">4008</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4009"></a><tt class="py-lineno">4009</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L4010"></a><tt class="py-lineno">4010</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L4011"></a><tt class="py-lineno">4011</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4012"></a><tt class="py-lineno">4012</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L4013"></a><tt class="py-lineno">4013</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L4014"></a><tt class="py-lineno">4014</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L4015"></a><tt class="py-lineno">4015</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L4016"></a><tt class="py-lineno">4016</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4017"></a><tt class="py-lineno">4017</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L4018"></a><tt class="py-lineno">4018</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L4019"></a><tt class="py-lineno">4019</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4020"></a><tt class="py-lineno">4020</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addAllResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4021"></a><tt class="py-lineno">4021</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1232" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1232', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1233" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1233', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set addAll"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4022"></a><tt class="py-lineno">4022</tt> <tt class="py-line"> </tt>
-<a name="L4023"></a><tt class="py-lineno">4023</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L4024"></a><tt class="py-lineno">4024</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4025"></a><tt class="py-lineno">4025</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4026"></a><tt class="py-lineno">4026</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4027"></a><tt class="py-lineno">4027</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4028"></a><tt class="py-lineno">4028</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1234" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1234', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1235" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1235', 'setTestGet', 'link-1095');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4029"></a><tt class="py-lineno">4029</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4030"></a><tt class="py-lineno">4030</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4031"></a><tt class="py-lineno">4031</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4032"></a><tt class="py-lineno">4032</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4033"></a><tt class="py-lineno">4033</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4034"></a><tt class="py-lineno">4034</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4035"></a><tt class="py-lineno">4035</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4036"></a><tt class="py-lineno">4036</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4037"></a><tt class="py-lineno">4037</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4038"></a><tt class="py-lineno">4038</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4039"></a><tt class="py-lineno">4039</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4040"></a><tt class="py-lineno">4040</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4041"></a><tt class="py-lineno">4041</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L4042"></a><tt class="py-lineno">4042</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L4043"></a><tt class="py-lineno">4043</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1236" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1236', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1237" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1237', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4044"></a><tt class="py-lineno">4044</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4045"></a><tt class="py-lineno">4045</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4046"></a><tt class="py-lineno">4046</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4047"></a><tt class="py-lineno">4047</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1238" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1238', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4048"></a><tt class="py-lineno">4048</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1239" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1239', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4049"></a><tt class="py-lineno">4049</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4050"></a><tt class="py-lineno">4050</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L4051"></a><tt class="py-lineno">4051</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L4052"></a><tt class="py-lineno">4052</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1240" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1240', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1241" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1241', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4053"></a><tt class="py-lineno">4053</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4054"></a><tt class="py-lineno">4054</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4055"></a><tt class="py-lineno">4055</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4056"></a><tt class="py-lineno">4056</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4057"></a><tt class="py-lineno">4057</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L4058"></a><tt class="py-lineno">4058</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4059"></a><tt class="py-lineno">4059</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4060"></a><tt class="py-lineno">4060</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4061"></a><tt class="py-lineno">4061</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4062"></a><tt class="py-lineno">4062</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1242" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1242', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1243" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1243', 'setTestSize', 'link-1105');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4063"></a><tt class="py-lineno">4063</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4064"></a><tt class="py-lineno">4064</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4065"></a><tt class="py-lineno">4065</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4066"></a><tt class="py-lineno">4066</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4067"></a><tt class="py-lineno">4067</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4068"></a><tt class="py-lineno">4068</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4069"></a><tt class="py-lineno">4069</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4070"></a><tt class="py-lineno">4070</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4071"></a><tt class="py-lineno">4071</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4072"></a><tt class="py-lineno">4072</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L4073"></a><tt class="py-lineno">4073</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4074"></a><tt class="py-lineno">4074</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1244" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1244', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1245" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1245', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4075"></a><tt class="py-lineno">4075</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4076"></a><tt class="py-lineno">4076</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4077"></a><tt class="py-lineno">4077</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4078"></a><tt class="py-lineno">4078</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">addAllResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L4079"></a><tt class="py-lineno">4079</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L4080"></a><tt class="py-lineno">4080</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">addAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L4081"></a><tt class="py-lineno">4081</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L4082"></a><tt class="py-lineno">4082</tt> <tt class="py-line"> <tt id="link-1246" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1246', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4083"></a><tt class="py-lineno">4083</tt> <tt class="py-line"> </tt>
-<a name="L4084"></a><tt class="py-lineno">4084</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1247" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-1247', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set retain()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4085"></a><tt class="py-lineno">4085</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">intersection_update</tt><tt class="py-op">(</tt> <tt class="py-name">retainValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4086"></a><tt class="py-lineno">4086</tt> <tt class="py-line"> <tt class="py-name">retainResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4087"></a><tt class="py-lineno">4087</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4088"></a><tt class="py-lineno">4088</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4089"></a><tt class="py-lineno">4089</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1248" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1248', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1249" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove" class="py-name" href="#" onclick="return doclink('link-1249', 'setTestRemove', 'link-1156');">setTestRemove</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4090"></a><tt class="py-lineno">4090</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestRetain-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4091"></a><tt class="py-lineno">4091</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">retainValue</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L4092"></a><tt class="py-lineno">4092</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"retain"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4093"></a><tt class="py-lineno">4093</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4094"></a><tt class="py-lineno">4094</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4095"></a><tt class="py-lineno">4095</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4096"></a><tt class="py-lineno">4096</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4097"></a><tt class="py-lineno">4097</tt> <tt class="py-line"> <tt class="py-name">retainResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4098"></a><tt class="py-lineno">4098</tt> <tt class="py-line"> </tt>
-<a name="L4099"></a><tt class="py-lineno">4099</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L4100"></a><tt class="py-lineno">4100</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L4101"></a><tt class="py-lineno">4101</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L4102"></a><tt class="py-lineno">4102</tt> <tt class="py-line"> <tt class="py-name">retainResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4103"></a><tt class="py-lineno">4103</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4104"></a><tt class="py-lineno">4104</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">retainResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4105"></a><tt class="py-lineno">4105</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L4106"></a><tt class="py-lineno">4106</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L4107"></a><tt class="py-lineno">4107</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">retainResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4108"></a><tt class="py-lineno">4108</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L4109"></a><tt class="py-lineno">4109</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L4110"></a><tt class="py-lineno">4110</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">retainResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L4111"></a><tt class="py-lineno">4111</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L4112"></a><tt class="py-lineno">4112</tt> <tt class="py-line"> <tt class="py-name">retainResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4113"></a><tt class="py-lineno">4113</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L4114"></a><tt class="py-lineno">4114</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L4115"></a><tt class="py-lineno">4115</tt> <tt class="py-line"> <tt class="py-name">retainResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4116"></a><tt class="py-lineno">4116</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">retainResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L4117"></a><tt class="py-lineno">4117</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1250" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1250', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1251" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1251', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set retain"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4118"></a><tt class="py-lineno">4118</tt> <tt class="py-line"> </tt>
-<a name="L4119"></a><tt class="py-lineno">4119</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L4120"></a><tt class="py-lineno">4120</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4121"></a><tt class="py-lineno">4121</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4122"></a><tt class="py-lineno">4122</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4123"></a><tt class="py-lineno">4123</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4124"></a><tt class="py-lineno">4124</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1252" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1252', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1253" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1253', 'setTestGet', 'link-1095');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4125"></a><tt class="py-lineno">4125</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4126"></a><tt class="py-lineno">4126</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4127"></a><tt class="py-lineno">4127</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4128"></a><tt class="py-lineno">4128</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4129"></a><tt class="py-lineno">4129</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4130"></a><tt class="py-lineno">4130</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4131"></a><tt class="py-lineno">4131</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4132"></a><tt class="py-lineno">4132</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4133"></a><tt class="py-lineno">4133</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4134"></a><tt class="py-lineno">4134</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4135"></a><tt class="py-lineno">4135</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4136"></a><tt class="py-lineno">4136</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4137"></a><tt class="py-lineno">4137</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L4138"></a><tt class="py-lineno">4138</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L4139"></a><tt class="py-lineno">4139</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1254" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1254', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1255" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1255', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4140"></a><tt class="py-lineno">4140</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4141"></a><tt class="py-lineno">4141</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4142"></a><tt class="py-lineno">4142</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4143"></a><tt class="py-lineno">4143</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1256" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1256', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4144"></a><tt class="py-lineno">4144</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1257" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1257', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4145"></a><tt class="py-lineno">4145</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4146"></a><tt class="py-lineno">4146</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L4147"></a><tt class="py-lineno">4147</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L4148"></a><tt class="py-lineno">4148</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1258" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1258', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1259" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1259', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4149"></a><tt class="py-lineno">4149</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4150"></a><tt class="py-lineno">4150</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4151"></a><tt class="py-lineno">4151</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4152"></a><tt class="py-lineno">4152</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4153"></a><tt class="py-lineno">4153</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L4154"></a><tt class="py-lineno">4154</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4155"></a><tt class="py-lineno">4155</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4156"></a><tt class="py-lineno">4156</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L4157"></a><tt class="py-lineno">4157</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4158"></a><tt class="py-lineno">4158</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1260" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1260', 'Thread', 'link-56');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1261" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1261', 'setTestSize', 'link-1105');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L4159"></a><tt class="py-lineno">4159</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L4160"></a><tt class="py-lineno">4160</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4161"></a><tt class="py-lineno">4161</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4162"></a><tt class="py-lineno">4162</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4163"></a><tt class="py-lineno">4163</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L4164"></a><tt class="py-lineno">4164</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L4165"></a><tt class="py-lineno">4165</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4166"></a><tt class="py-lineno">4166</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L4167"></a><tt class="py-lineno">4167</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L4168"></a><tt class="py-lineno">4168</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L4169"></a><tt class="py-lineno">4169</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L4170"></a><tt class="py-lineno">4170</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1262" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1262', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1263" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1263', 'error', 'link-50');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4171"></a><tt class="py-lineno">4171</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4172"></a><tt class="py-lineno">4172</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L4173"></a><tt class="py-lineno">4173</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L4174"></a><tt class="py-lineno">4174</tt> <tt class="py-line"> <tt class="py-name">retainResults</tt> <tt class="py-op">=</tt> <tt class="py-name">retainResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L4175"></a><tt class="py-lineno">4175</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L4176"></a><tt class="py-lineno">4176</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">retainResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L4177"></a><tt class="py-lineno">4177</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set retain correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L4178"></a><tt class="py-lineno">4178</tt> <tt class="py-line"> <tt id="link-1264" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1264', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set retain was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-</div></div><a name="L4179"></a><tt class="py-lineno">4179</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.HAsanity.HAsanity-class.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.HAsanity.HAsanity-class.html
deleted file mode 100644
index e619aed..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.HAsanity.HAsanity-class.html
+++ /dev/null
@@ -1,538 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsanity.HAsanity.HAsanity</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsanity-module.html">Package HAsanity</a> ::
- <a href="TestON.tests.HAsanity.HAsanity-module.html">Module HAsanity</a> ::
- Class HAsanity
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class HAsanity</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE1" class="summary-sig-name">CASE1</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- CASE1 is to compile ONOS and push it to the test machines</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE2"></a><span class="summary-sig-name">CASE2</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Assign devices to controllers</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE21"></a><span class="summary-sig-name">CASE21</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Assign mastership to controllers</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE21">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE3"></a><span class="summary-sig-name">CASE3</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Assign intents</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE3">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE4"></a><span class="summary-sig-name">CASE4</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Ping across added host intents</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE4">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE5"></a><span class="summary-sig-name">CASE5</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Reading state of ONOS</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE5">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE6" class="summary-sig-name">CASE6</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- The Failure case.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE6">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE7"></a><span class="summary-sig-name">CASE7</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Check state after ONOS failure</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE7">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE8"></a><span class="summary-sig-name">CASE8</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Compare topo</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE8">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE9"></a><span class="summary-sig-name">CASE9</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Link s3-s28 down</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE9">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE10"></a><span class="summary-sig-name">CASE10</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Link s3-s28 up</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE10">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE11"></a><span class="summary-sig-name">CASE11</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Switch Down</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE11">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE12"></a><span class="summary-sig-name">CASE12</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Switch Up</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE12">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE13"></a><span class="summary-sig-name">CASE13</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Clean up</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE13">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE14"></a><span class="summary-sig-name">CASE14</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- start election app on all onos nodes</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE14">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE15"></a><span class="summary-sig-name">CASE15</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Check that Leadership Election is still functional</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE15">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE16"></a><span class="summary-sig-name">CASE16</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Install Distributed Primitives app</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE16">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE17"></a><span class="summary-sig-name">CASE17</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Check for basic functionality with distributed primitives</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE17">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="CASE1"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">CASE1</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">main</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE1">source code</a></span>
- </td>
- </tr></table>
-
- <p>CASE1 is to compile ONOS and push it to the test machines</p>
- <p>Startup sequence: cell <name> onos-verify-cell NOTE: temporary -
- onos-remove-raft-logs onos-uninstall start mininet git pull mvn clean
- install onos-package onos-install -f onos-wait-for-start start cli
- sessions start tcpdump</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="CASE6"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">CASE6</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">main</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.HAsanity.HAsanity-pysrc.html#HAsanity.CASE6">source code</a></span>
- </td>
- </tr></table>
-
- <p>The Failure case. Since this is the Sanity test, we do nothing.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies-module.html
deleted file mode 100644
index 0545956..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies-module.html
+++ /dev/null
@@ -1,167 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsanity.dependencies</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsanity-module.html">Package HAsanity</a> ::
- Package dependencies
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsanity.dependencies-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package dependencies</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAsanity.dependencies-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.dependencies.Counters-module.html">TestON.tests.HAsanity.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.dependencies.obelisk-module.html">TestON.tests.HAsanity.dependencies.obelisk</a></strong> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies-pysrc.html
deleted file mode 100644
index 47d675c..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies-pysrc.html
+++ /dev/null
@@ -1,124 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsanity.dependencies</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsanity-module.html">Package HAsanity</a> ::
- Package dependencies
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsanity.dependencies-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAsanity.dependencies-module.html">Package TestON.tests.HAsanity.dependencies</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies.Counters-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies.Counters-module.html
deleted file mode 100644
index 50c9b52..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies.Counters-module.html
+++ /dev/null
@@ -1,195 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsanity.dependencies.Counters</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsanity-module.html">Package HAsanity</a> ::
- <a href="TestON.tests.HAsanity.dependencies-module.html">Package dependencies</a> ::
- Module Counters
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsanity.dependencies.Counters-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module Counters</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAsanity.dependencies.Counters-pysrc.html">source code</a></span></p>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Functions</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Functions"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.dependencies.Counters-pysrc.html#__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="counterCheck"></a><span class="summary-sig-name">counterCheck</span>(<span class="summary-sig-arg">counterName</span>,
- <span class="summary-sig-arg">counterValue</span>)</span><br />
- Add Text here</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.dependencies.Counters-pysrc.html#counterCheck">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies.Counters-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies.Counters-pysrc.html
deleted file mode 100644
index 16becc5..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies.Counters-pysrc.html
+++ /dev/null
@@ -1,182 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsanity.dependencies.Counters</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsanity-module.html">Package HAsanity</a> ::
- <a href="TestON.tests.HAsanity.dependencies-module.html">Package dependencies</a> ::
- Module Counters
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsanity.dependencies.Counters-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAsanity.dependencies.Counters-module.html">Module TestON.tests.HAsanity.dependencies.Counters</a></h1>
-<pre class="py-src">
-<a name="__init__"></a><div id="__init__-def"><a name="L1"></a><tt class="py-lineno"> 1</tt> <a class="py-toggle" href="#" id="__init__-toggle" onclick="return toggle('__init__');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.dependencies.Counters-module.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="__init__-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="__init__-expanded"><a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"> </tt>
-<a name="counterCheck"></a><div id="counterCheck-def"><a name="L4"></a><tt class="py-lineno"> 4</tt> <a class="py-toggle" href="#" id="counterCheck-toggle" onclick="return toggle('counterCheck');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.dependencies.Counters-module.html#counterCheck">counterCheck</a><tt class="py-op">(</tt> <tt class="py-param">counterName</tt><tt class="py-op">,</tt> <tt class="py-param">counterValue</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="counterCheck-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="counterCheck-expanded"><a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"> Add Text here</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> <tt class="py-name">correctResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"> <tt class="py-comment"># Get onos counters results</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"> <tt class="py-name">onosCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module TestON.core.Thread=TestON.core.Thread-module.html,Class TestON.core.Thread.Thread=TestON.core.Thread.Thread-class.html"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1', 'Thread', 'link-1');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counters"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters" class="py-name" href="#" onclick="return doclink('link-2', 'counters', 'link-2');">counters</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counters-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"> <tt class="py-name">onosCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"> <tt class="py-name">tmp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosCounters</tt> <tt class="py-op">]</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt> <tt class="py-name">tmp</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> <tt class="py-name">consistent</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> <tt class="py-name">consistent</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-3', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-4', 'error', 'link-4');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS nodes have different values for counters"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">:</tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-5', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt> <tt class="py-op">)</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> <tt class="py-comment"># Check for correct values</tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-6', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-7" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-7', 'error', 'link-4');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Could not parse counters response from ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-8', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-name">onosValue</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">database</tt> <tt class="py-keyword">in</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-name">database</tt> <tt class="py-op">=</tt> <tt class="py-name">database</tt><tt class="py-op">.</tt><tt class="py-name">values</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">counter</tt> <tt class="py-keyword">in</tt> <tt class="py-name">database</tt><tt class="py-op">:</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">counter</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'name'</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">counterName</tt><tt class="py-op">:</tt> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-name">onosValue</tt> <tt class="py-op">=</tt> <tt class="py-name">counter</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'value'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-10', 'error', 'link-4');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" counters result "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> <tt class="py-string">"is not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> <tt class="py-name">correctResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosValue</tt> <tt class="py-op">==</tt> <tt class="py-name">counterValue</tt><tt class="py-op">:</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-11', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">counterName</tt> <tt class="py-op">+</tt> <tt class="py-string">" counter value is correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-12', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-13', 'error', 'link-4');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">counterName</tt> <tt class="py-op">+</tt> <tt class="py-string">" counter value is incorrect,"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-string">" expected value: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">counterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" current value: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosValue</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt class="py-name">correctResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">consistent</tt> <tt class="py-keyword">and</tt> <tt class="py-name">correctResults</tt> </tt>
-</div><a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies.obelisk-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies.obelisk-module.html
deleted file mode 100644
index 6a244f5..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies.obelisk-module.html
+++ /dev/null
@@ -1,208 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsanity.dependencies.obelisk</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsanity-module.html">Package HAsanity</a> ::
- <a href="TestON.tests.HAsanity.dependencies-module.html">Package dependencies</a> ::
- Module obelisk
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsanity.dependencies.obelisk-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module obelisk</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAsanity.dependencies.obelisk-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html" class="summary-name">ObeliskTopo</a>
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Functions</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Functions"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="run"></a><span class="summary-sig-name">run</span>()</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.dependencies.obelisk-pysrc.html#run">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="topos"></a><span class="summary-name">topos</span> = <code title="{'obelisk':(lambda: ObeliskTopo())}">{'obelisk':(lambda: ObeliskTopo())}</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.tests.HAsanity.dependencies'"><code class="variable-quote">'</code><code class="variable-string">TestON.tests.HAsanity.dependencies</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies.obelisk-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies.obelisk-pysrc.html
deleted file mode 100644
index 6d0f34c..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies.obelisk-pysrc.html
+++ /dev/null
@@ -1,273 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsanity.dependencies.obelisk</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsanity-module.html">Package HAsanity</a> ::
- <a href="TestON.tests.HAsanity.dependencies-module.html">Package dependencies</a> ::
- Module obelisk
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsanity.dependencies.obelisk-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAsanity.dependencies.obelisk-module.html">Module TestON.tests.HAsanity.dependencies.obelisk</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">mininet</tt><tt class="py-op">.</tt><tt class="py-name">topo</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Topo</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"> </tt>
-<a name="ObeliskTopo"></a><div id="ObeliskTopo-def"><a name="L5"></a><tt class="py-lineno"> 5</tt> <a class="py-toggle" href="#" id="ObeliskTopo-toggle" onclick="return toggle('ObeliskTopo');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html">ObeliskTopo</a><tt class="py-op">(</tt> <tt class="py-base-class">Topo</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ObeliskTopo-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="ObeliskTopo-expanded"><a name="ObeliskTopo.__init__"></a><div id="ObeliskTopo.__init__-def"><a name="L6"></a><tt class="py-lineno"> 6</tt> <a class="py-toggle" href="#" id="ObeliskTopo.__init__-toggle" onclick="return toggle('ObeliskTopo.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ObeliskTopo.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="ObeliskTopo.__init__-expanded"><a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"> <tt class="py-name">Topo</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-0', '__init__', 'link-0');">__init__</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> <tt class="py-name">topSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addSwitch"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-1', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s1'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'1000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> <tt class="py-name">leftTopSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-2', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s2'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'2000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"> <tt class="py-name">rightTopSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-3', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s5'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'5000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"> <tt class="py-name">leftBotSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-4', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s3'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'3000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"> <tt class="py-name">rightBotSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-5', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s6'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'6000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"> <tt class="py-name">midBotSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-6', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s28'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'2800'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"> <tt class="py-name">topHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addHost"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-7', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt> <tt class="py-string">'h1'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"> <tt class="py-name">leftTopHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-8', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h2'</tt><tt class="py-op">)</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"> <tt class="py-name">rightTopHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-9', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h5'</tt><tt class="py-op">)</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"> <tt class="py-name">leftBotHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-10', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h3'</tt><tt class="py-op">)</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"> <tt class="py-name">rightBotHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-11', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h6'</tt><tt class="py-op">)</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"> <tt class="py-name">midBotHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-12', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h28'</tt><tt class="py-op">)</tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addLink"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-13', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">topSwitch</tt><tt class="py-op">,</tt><tt class="py-name">topHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-14', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">leftTopHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-15', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">rightTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightTopHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-16', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">leftBotHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-17', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">rightBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightBotHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-18', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">midBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">midBotHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-19', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightTopSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-20', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">topSwitch</tt><tt class="py-op">,</tt><tt class="py-name">leftTopSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-21', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">topSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightTopSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-22', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">leftBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-23', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">rightTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-24', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">midBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-25', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">midBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> <tt class="py-name">agg1Switch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-26', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s4'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'3004'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> <tt class="py-name">agg2Switch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-27', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s7'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'6007'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-name">agg1Host</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-28', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h4'</tt><tt class="py-op">)</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-name">agg2Host</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-29', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h7'</tt><tt class="py-op">)</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-30', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">agg1Switch</tt><tt class="py-op">,</tt><tt class="py-name">agg1Host</tt><tt class="py-op">)</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-31', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">agg2Switch</tt><tt class="py-op">,</tt><tt class="py-name">agg2Host</tt><tt class="py-op">)</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-32', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">agg1Switch</tt><tt class="py-op">,</tt> <tt class="py-name">leftBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-33', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">agg2Switch</tt><tt class="py-op">,</tt> <tt class="py-name">rightBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">8</tt><tt class="py-op">)</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-34', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-string">'30'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-name">host</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-35', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">)</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-36', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">host</tt><tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-37', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">agg1Switch</tt><tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">18</tt><tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-38', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-string">'60'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-name">host</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-39', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-40', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">host</tt><tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-41', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">agg2Switch</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> </tt>
-<a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"><tt id="link-42" class="py-name" targets="Variable TestON.tests.HAclusterRestart.dependencies.obelisk.topos=TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#topos,Variable TestON.tests.HAminorityRestart.dependencies.obelisk.topos=TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#topos,Variable TestON.tests.HAsanity.dependencies.obelisk.topos=TestON.tests.HAsanity.dependencies.obelisk-module.html#topos,Variable TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.topos=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#topos"><a title="TestON.tests.HAclusterRestart.dependencies.obelisk.topos
-TestON.tests.HAminorityRestart.dependencies.obelisk.topos
-TestON.tests.HAsanity.dependencies.obelisk.topos
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.topos" class="py-name" href="#" onclick="return doclink('link-42', 'topos', 'link-42');">topos</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-string">'obelisk'</tt><tt class="py-op">:</tt> <tt class="py-op">(</tt><tt class="py-keyword">lambda</tt><tt class="py-op">:</tt> <tt id="link-43" class="py-name" targets="Class TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html,Class TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html,Class TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html,Class TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html"><a title="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo" class="py-name" href="#" onclick="return doclink('link-43', 'ObeliskTopo', 'link-43');">ObeliskTopo</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">}</tt> </tt>
-<a name="L59"></a><tt class="py-lineno">59</tt> <tt class="py-line"> </tt>
-<a name="run"></a><div id="run-def"><a name="L60"></a><tt class="py-lineno">60</tt> <a class="py-toggle" href="#" id="run-toggle" onclick="return toggle('run');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsanity.dependencies.obelisk-module.html#run">run</a><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="run-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="run-expanded"><a name="L61"></a><tt class="py-lineno">61</tt> <tt class="py-line"> <tt class="py-name">topo</tt> <tt class="py-op">=</tt> <tt id="link-44" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo" class="py-name" href="#" onclick="return doclink('link-44', 'ObeliskTopo', 'link-43');">ObeliskTopo</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno">62</tt> <tt class="py-line"> <tt id="link-45" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#net"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-45', 'net', 'link-45');">net</a></tt> <tt class="py-op">=</tt> <tt class="py-name">Mininet</tt><tt class="py-op">(</tt> <tt class="py-name">topo</tt><tt class="py-op">=</tt><tt class="py-name">topo</tt><tt class="py-op">,</tt> <tt id="link-46" class="py-name" targets="Package TestON.drivers.common.api.controller=TestON.drivers.common.api.controller-module.html"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-46', 'controller', 'link-46');">controller</a></tt><tt class="py-op">=</tt><tt class="py-name">RemoteController</tt><tt class="py-op">,</tt> <tt class="py-name">autoSetMacs</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno">63</tt> <tt class="py-line"> <tt id="link-47" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-47', 'net', 'link-45');">net</a></tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno">64</tt> <tt class="py-line"> <tt id="link-48" class="py-name" targets="Class TestON.bin.cli.CLI=TestON.bin.cli.CLI-class.html,Class TestON.drivers.common.clidriver.CLI=TestON.drivers.common.clidriver.CLI-class.html"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-48', 'CLI', 'link-48');">CLI</a></tt><tt class="py-op">(</tt> <tt id="link-49" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-49', 'net', 'link-45');">net</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno">65</tt> <tt class="py-line"> <tt id="link-50" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-50', 'net', 'link-45');">net</a></tt><tt class="py-op">.</tt><tt id="link-51" class="py-name" targets="Method TestON.bin.cli.TestThread.stop()=TestON.bin.cli.TestThread-class.html#stop"><a title="TestON.bin.cli.TestThread.stop" class="py-name" href="#" onclick="return doclink('link-51', 'stop', 'link-51');">stop</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L66"></a><tt class="py-lineno">66</tt> <tt class="py-line"> </tt>
-<a name="L67"></a><tt class="py-lineno">67</tt> <tt class="py-line"><tt class="py-keyword">if</tt> <tt class="py-name">__name__</tt> <tt class="py-op">==</tt> <tt class="py-string">'__main__'</tt><tt class="py-op">:</tt> </tt>
-<a name="L68"></a><tt class="py-lineno">68</tt> <tt class="py-line"> <tt class="py-name">setLogLevel</tt><tt class="py-op">(</tt> <tt class="py-string">'info'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno">69</tt> <tt class="py-line"> <tt id="link-52" class="py-name" targets="Method TestON.bin.cli.TestThread.run()=TestON.bin.cli.TestThread-class.html#run,Method TestON.core.Thread.Thread.run()=TestON.core.Thread.Thread-class.html#run,Method TestON.core.teston.TestON.run()=TestON.core.teston.TestON-class.html#run,Function TestON.tests.HAclusterRestart.dependencies.obelisk.run()=TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#run,Function TestON.tests.HAminorityRestart.dependencies.obelisk.run()=TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#run,Function TestON.tests.HAsanity.dependencies.obelisk.run()=TestON.tests.HAsanity.dependencies.obelisk-module.html#run,Function TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#run"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-52', 'run', 'link-52');">run</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno">70</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html
deleted file mode 100644
index e3d93c1..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html
+++ /dev/null
@@ -1,298 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsanity-module.html">Package HAsanity</a> ::
- <a href="TestON.tests.HAsanity.dependencies-module.html">Package dependencies</a> ::
- <a href="TestON.tests.HAsanity.dependencies.obelisk-module.html">Module obelisk</a> ::
- Class ObeliskTopo
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ObeliskTopo</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAsanity.dependencies.obelisk-pysrc.html#ObeliskTopo">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_obelisktop_3" name="class_hierarchy_for_obelisktop_3">
-<area shape="rect" id="node1" href="TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html" title="ObeliskTopo" alt="" coords="21,62,115,87"/>
-<area shape="rect" id="node2" href="javascript:void(0);" title="mininet.topo.Topo" alt="" coords="5,6,131,31"/>
-</map>
- <img src="class_hierarchy_for_obelisktop_3.gif" alt='' usemap="#class_hierarchy_for_obelisktop_3" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Topo object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsanity.dependencies.obelisk-pysrc.html#ObeliskTopo.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>mininet.topo.Topo</code></b>:
- <code>addHost</code>,
- <code>addLink</code>,
- <code>addNode</code>,
- <code>addPort</code>,
- <code>addSwitch</code>,
- <code>build</code>,
- <code>convertTo</code>,
- <code>hosts</code>,
- <code>isSwitch</code>,
- <code>iterLinks</code>,
- <code>linkInfo</code>,
- <code>links</code>,
- <code>nodeInfo</code>,
- <code>nodes</code>,
- <code>port</code>,
- <code>setNodeInfo</code>,
- <code>setlinkInfo</code>,
- <code>switches</code>
- </p>
- <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code>mininet.topo.Topo</code></b> (private):
- <code>_linkEntry</code>
- </p></div>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== STATIC METHODS ==================== -->
-<a name="section-StaticMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Static Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-StaticMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>mininet.topo.Topo</code></b>:
- <code>sorted</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.HAsanity.dependencies.obelisk-pysrc.html#ObeliskTopo.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>Topo object. Optional named parameters: hinfo: default host options
- sopts: default switch options lopts: default link options calls
- build()</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart-module.html
deleted file mode 100644
index 2532258..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart-module.html
+++ /dev/null
@@ -1,172 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsingleInstanceRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package HAsingleInstanceRestart
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsingleInstanceRestart-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package HAsingleInstanceRestart</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html">TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart</a></strong>: <em class="summary">Description: This test is to determine if a single
- instance ONOS 'cluster' can handle a restart</em> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html">TestON.tests.HAsingleInstanceRestart.dependencies</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.obelisk</a></strong> </li>
- </ul>
- </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart-pysrc.html
deleted file mode 100644
index 458fb7b..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsingleInstanceRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package HAsingleInstanceRestart
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsingleInstanceRestart-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAsingleInstanceRestart-module.html">Package TestON.tests.HAsingleInstanceRestart</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html
deleted file mode 100644
index 752fba5..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html
+++ /dev/null
@@ -1,194 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart-module.html">Package HAsingleInstanceRestart</a> ::
- Module HAsingleInstanceRestart
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module HAsingleInstanceRestart</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html">source code</a></span></p>
-<pre class="literalblock">
-
-Description: This test is to determine if a single
- instance ONOS 'cluster' can handle a restart
-
-List of test cases:
-CASE1: Compile ONOS and push it to the test machines
-CASE2: Assign devices to controllers
-CASE21: Assign mastership to controllers
-CASE3: Assign intents
-CASE4: Ping across added host intents
-CASE5: Reading state of ONOS
-CASE6: The Failure case.
-CASE7: Check state after control plane failure
-CASE8: Compare topo
-CASE9: Link s3-s28 down
-CASE10: Link s3-s28 up
-CASE11: Switch down
-CASE12: Switch up
-CASE13: Clean up
-CASE14: start election app on all onos nodes
-CASE15: Check that Leadership Election is still functional
-CASE16: Install Distributed Primitives app
-CASE17: Check for basic functionality with distributed primitives
-
-</pre>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html" class="summary-name">HAsingleInstanceRestart</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html
deleted file mode 100644
index 8db3836..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html
+++ /dev/null
@@ -1,3706 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart-module.html">Package HAsingleInstanceRestart</a> ::
- Module HAsingleInstanceRestart
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html">Module TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-docstring">Description: This test is to determine if a single</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-docstring"> instance ONOS 'cluster' can handle a restart</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-docstring">List of test cases:</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring">CASE1: Compile ONOS and push it to the test machines</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring">CASE2: Assign devices to controllers</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-docstring">CASE21: Assign mastership to controllers</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-docstring">CASE3: Assign intents</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-docstring">CASE4: Ping across added host intents</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-docstring">CASE5: Reading state of ONOS</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-docstring">CASE6: The Failure case.</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-docstring">CASE7: Check state after control plane failure</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-docstring">CASE8: Compare topo</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-docstring">CASE9: Link s3-s28 down</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-docstring">CASE10: Link s3-s28 up</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-docstring">CASE11: Switch down</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-docstring">CASE12: Switch up</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">CASE13: Clean up</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">CASE14: start election app on all onos nodes</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">CASE15: Check that Leadership Election is still functional</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">CASE16: Install Distributed Primitives app</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">CASE17: Check for basic functionality with distributed primitives</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart"></a><div id="HAsingleInstanceRestart-def"><a name="L27"></a><tt class="py-lineno"> 27</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart-toggle" onclick="return toggle('HAsingleInstanceRestart');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="HAsingleInstanceRestart-expanded"><a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.__init__"></a><div id="HAsingleInstanceRestart.__init__-def"><a name="L29"></a><tt class="py-lineno"> 29</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.__init__-toggle" onclick="return toggle('HAsingleInstanceRestart.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.__init__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.__init__-expanded"><a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE1"></a><div id="HAsingleInstanceRestart.CASE1-def"><a name="L32"></a><tt class="py-lineno"> 32</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE1-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE1">CASE1</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE1-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE1-expanded"><a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-docstring"> CASE1 is to compile ONOS and push it to the test machines</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> Startup sequence:</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> cell <name></tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"> onos-verify-cell</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"> NOTE: temporary - onos-remove-raft-logs</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring"> onos-uninstall</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring"> start mininet</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring"> git pull</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-docstring"> mvn clean install</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring"> onos-package</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> onos-install -f</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> onos-wait-for-start</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-docstring"> start cli sessions</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-docstring"> start tcpdump</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">imp</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS Single node cluster restart "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-string">"HA test - initialization"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-2', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Setting up test environment"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Setup the test environment including "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-string">"installing ONOS, starting Mininet and ONOS"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-string">"cli sessions."</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-comment"># TODO: save all the timers and output them for plotting</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-comment"># load some variables from the params file</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">PULLCODE</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'Git'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'True'</tt><tt class="py-op">:</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">PULLCODE</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">gitBranch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'branch'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'num_controllers'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt><tt class="py-op">:</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op"><</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">:</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">fileName</tt> <tt class="py-op">=</tt> <tt class="py-string">"Counters"</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt id="link-3" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-3', 'path', 'link-3');">path</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'imports'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'path'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Module TestON.tests.HAclusterRestart.dependencies.Counters=TestON.tests.HAclusterRestart.dependencies.Counters-module.html,Module TestON.tests.HAminorityRestart.dependencies.Counters=TestON.tests.HAminorityRestart.dependencies.Counters-module.html,Module TestON.tests.HAsanity.dependencies.Counters=TestON.tests.HAsanity.dependencies.Counters-module.html,Module TestON.tests.HAsingleInstanceRestart.dependencies.Counters=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-4', 'Counters', 'link-4');">Counters</a></tt> <tt class="py-op">=</tt> <tt class="py-name">imp</tt><tt class="py-op">.</tt><tt class="py-name">load_source</tt><tt class="py-op">(</tt> <tt class="py-name">fileName</tt><tt class="py-op">,</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt id="link-5" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-5', 'path', 'link-3');">path</a></tt> <tt class="py-op">+</tt> <tt class="py-name">fileName</tt> <tt class="py-op">+</tt> <tt class="py-string">".py"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt> <tt class="py-keyword">as</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-6', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-name">e</tt> <tt class="py-op">)</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.core.teston.TestON.cleanup()=TestON.core.teston.TestON-class.html#cleanup"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-7', 'cleanup', 'link-7');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-8', 'exit', 'link-8');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#nodes,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#nodes"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-9', 'nodes', 'link-9');">nodes</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">ipList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">'ONOScli'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-10', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">'ONOS'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">ipList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-11', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-12', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Create cell file"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">cellAppString</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'appString'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile" class="py-name" href="#" onclick="return doclink('link-13', 'createCellFile', 'link-13');">createCellFile</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-name">cellName</tt><tt class="py-op">,</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">cellAppString</tt><tt class="py-op">,</tt> <tt class="py-name">ipList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-14', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Applying cell variable to environment"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">cellResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell,Method TestON.drivers.common.cli.onosdriver.OnosDriver.setCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell" class="py-name" href="#" onclick="return doclink('link-15', 'setCell', 'link-15');">setCell</a></tt><tt class="py-op">(</tt> <tt class="py-name">cellName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">verifyResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell" class="py-name" href="#" onclick="return doclink('link-16', 'verifyCell', 'link-16');">verifyCell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno"> 100</tt> <tt class="py-line"> </tt>
-<a name="L101"></a><tt class="py-lineno"> 101</tt> <tt class="py-line"> <tt class="py-comment"># FIXME:this is short term fix</tt> </tt>
-<a name="L102"></a><tt class="py-lineno"> 102</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-17', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Removing raft logs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno"> 103</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosRemoveRaftLogs()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosRemoveRaftLogs"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosRemoveRaftLogs" class="py-name" href="#" onclick="return doclink('link-18', 'onosRemoveRaftLogs', 'link-18');">onosRemoveRaftLogs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno"> 104</tt> <tt class="py-line"> </tt>
-<a name="L105"></a><tt class="py-lineno"> 105</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-19', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Uninstalling ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno"> 106</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-20', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L107"></a><tt class="py-lineno"> 107</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall" class="py-name" href="#" onclick="return doclink('link-21', 'onosUninstall', 'link-21');">onosUninstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno"> 108</tt> <tt class="py-line"> </tt>
-<a name="L109"></a><tt class="py-lineno"> 109</tt> <tt class="py-line"> <tt class="py-comment"># Make sure ONOS is DEAD</tt> </tt>
-<a name="L110"></a><tt class="py-lineno"> 110</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-22', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Killing any ONOS processes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno"> 111</tt> <tt class="py-line"> <tt class="py-name">killResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L112"></a><tt class="py-lineno"> 112</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-23', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L113"></a><tt class="py-lineno"> 113</tt> <tt class="py-line"> <tt class="py-name">killed</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosKill()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosKill"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosKill" class="py-name" href="#" onclick="return doclink('link-24', 'onosKill', 'link-24');">onosKill</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno"> 114</tt> <tt class="py-line"> <tt class="py-name">killResults</tt> <tt class="py-op">=</tt> <tt class="py-name">killResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">killed</tt> </tt>
-<a name="L115"></a><tt class="py-lineno"> 115</tt> <tt class="py-line"> </tt>
-<a name="L116"></a><tt class="py-lineno"> 116</tt> <tt class="py-line"> <tt class="py-name">cleanInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L117"></a><tt class="py-lineno"> 117</tt> <tt class="py-line"> <tt class="py-name">gitPullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L118"></a><tt class="py-lineno"> 118</tt> <tt class="py-line"> </tt>
-<a name="L119"></a><tt class="py-lineno"> 119</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-25', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno"> 120</tt> <tt class="py-line"> <tt class="py-comment"># scp topo file to mininet</tt> </tt>
-<a name="L121"></a><tt class="py-lineno"> 121</tt> <tt class="py-line"> <tt class="py-comment"># TODO: move to params?</tt> </tt>
-<a name="L122"></a><tt class="py-lineno"> 122</tt> <tt class="py-line"> <tt class="py-name">topoName</tt> <tt class="py-op">=</tt> <tt class="py-string">"obelisk.py"</tt> </tt>
-<a name="L123"></a><tt class="py-lineno"> 123</tt> <tt class="py-line"> <tt class="py-name">filePath</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">home</tt> <tt class="py-op">+</tt> <tt class="py-string">"/tools/test/topos/"</tt> </tt>
-<a name="L124"></a><tt class="py-lineno"> 124</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#copyMininetFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile" class="py-name" href="#" onclick="return doclink('link-26', 'copyMininetFile', 'link-26');">copyMininetFile</a></tt><tt class="py-op">(</tt> <tt class="py-name">topoName</tt><tt class="py-op">,</tt> <tt class="py-name">filePath</tt><tt class="py-op">,</tt> </tt>
-<a name="L125"></a><tt class="py-lineno"> 125</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L126"></a><tt class="py-lineno"> 126</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L127"></a><tt class="py-lineno"> 127</tt> <tt class="py-line"> <tt class="py-name">mnResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet" class="py-name" href="#" onclick="return doclink('link-27', 'startNet', 'link-27');">startNet</a></tt><tt class="py-op">(</tt> <tt class="py-op">)</tt> </tt>
-<a name="L128"></a><tt class="py-lineno"> 128</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">mnResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L129"></a><tt class="py-lineno"> 129</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Mininet Started"</tt><tt class="py-op">,</tt> </tt>
-<a name="L130"></a><tt class="py-lineno"> 130</tt> <tt class="py-line"> <tt id="link-28" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-28', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error starting Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L131"></a><tt class="py-lineno"> 131</tt> <tt class="py-line"> </tt>
-<a name="L132"></a><tt class="py-lineno"> 132</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-29', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Git checkout and pull "</tt> <tt class="py-op">+</tt> <tt class="py-name">gitBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno"> 133</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">PULLCODE</tt><tt class="py-op">:</tt> </tt>
-<a name="L134"></a><tt class="py-lineno"> 134</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitCheckout"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout" class="py-name" href="#" onclick="return doclink('link-30', 'gitCheckout', 'link-30');">gitCheckout</a></tt><tt class="py-op">(</tt> <tt class="py-name">gitBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno"> 135</tt> <tt class="py-line"> <tt class="py-name">gitPullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-31', 'gitPull', 'link-31');">gitPull</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno"> 136</tt> <tt class="py-line"> <tt class="py-comment"># values of 1 or 3 are good</tt> </tt>
-<a name="L137"></a><tt class="py-lineno"> 137</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_lesser</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">gitPullResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L138"></a><tt class="py-lineno"> 138</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Git pull successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L139"></a><tt class="py-lineno"> 139</tt> <tt class="py-line"> <tt id="link-32" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-32', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Git pull failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L140"></a><tt class="py-lineno"> 140</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion,Method TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion
-TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion" class="py-name" href="#" onclick="return doclink('link-33', 'getVersion', 'link-33');">getVersion</a></tt><tt class="py-op">(</tt> <tt class="py-name">report</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno"> 141</tt> <tt class="py-line"> </tt>
-<a name="L142"></a><tt class="py-lineno"> 142</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-34', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Using mvn clean install"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno"> 143</tt> <tt class="py-line"> <tt class="py-name">cleanInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L144"></a><tt class="py-lineno"> 144</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">PULLCODE</tt> <tt class="py-keyword">and</tt> <tt class="py-name">gitPullResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L145"></a><tt class="py-lineno"> 145</tt> <tt class="py-line"> <tt class="py-name">cleanInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cleanInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall" class="py-name" href="#" onclick="return doclink('link-35', 'cleanInstall', 'link-35');">cleanInstall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno"> 146</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L147"></a><tt class="py-lineno"> 147</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-36', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Did not pull new code so skipping mvn "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L148"></a><tt class="py-lineno"> 148</tt> <tt class="py-line"> <tt class="py-string">"clean install"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L149"></a><tt class="py-lineno"> 149</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L150"></a><tt class="py-lineno"> 150</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">cleanInstallResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L151"></a><tt class="py-lineno"> 151</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"MCI successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L152"></a><tt class="py-lineno"> 152</tt> <tt class="py-line"> <tt id="link-37" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-37', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"MCI failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno"> 153</tt> <tt class="py-line"> <tt class="py-comment"># GRAPHS</tt> </tt>
-<a name="L154"></a><tt class="py-lineno"> 154</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: important params here:</tt> </tt>
-<a name="L155"></a><tt class="py-lineno"> 155</tt> <tt class="py-line"> <tt class="py-comment"># job = name of Jenkins job</tt> </tt>
-<a name="L156"></a><tt class="py-lineno"> 156</tt> <tt class="py-line"> <tt class="py-comment"># Plot Name = Plot-HA, only can be used if multiple plots</tt> </tt>
-<a name="L157"></a><tt class="py-lineno"> 157</tt> <tt class="py-line"> <tt class="py-comment"># index = The number of the graph under plot name</tt> </tt>
-<a name="L158"></a><tt class="py-lineno"> 158</tt> <tt class="py-line"> <tt class="py-name">job</tt> <tt class="py-op">=</tt> <tt class="py-string">"HAsingleInstanceRestart"</tt> </tt>
-<a name="L159"></a><tt class="py-lineno"> 159</tt> <tt class="py-line"> <tt class="py-name">plotName</tt> <tt class="py-op">=</tt> <tt class="py-string">"Plot-HA"</tt> </tt>
-<a name="L160"></a><tt class="py-lineno"> 160</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">=</tt> <tt class="py-string">'<ac:structured-macro ac:name="html">\n'</tt> </tt>
-<a name="L161"></a><tt class="py-lineno"> 161</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">+=</tt> <tt class="py-string">'<ac:plain-text-body><![CDATA[\n'</tt> </tt>
-<a name="L162"></a><tt class="py-lineno"> 162</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">+=</tt> <tt class="py-string">'<iframe src="https://onos-jenkins.onlab.us/job/'</tt> <tt class="py-op">+</tt> <tt class="py-name">job</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L163"></a><tt class="py-lineno"> 163</tt> <tt class="py-line"> <tt class="py-string">'/plot/'</tt> <tt class="py-op">+</tt> <tt class="py-name">plotName</tt> <tt class="py-op">+</tt> <tt class="py-string">'/getPlot?index=0'</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L164"></a><tt class="py-lineno"> 164</tt> <tt class="py-line"> <tt class="py-string">'&width=500&height=300"'</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L165"></a><tt class="py-lineno"> 165</tt> <tt class="py-line"> <tt class="py-string">'noborder="0" width="500" height="300" scrolling="yes" '</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L166"></a><tt class="py-lineno"> 166</tt> <tt class="py-line"> <tt class="py-string">'seamless="seamless"></iframe>\n'</tt> </tt>
-<a name="L167"></a><tt class="py-lineno"> 167</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">+=</tt> <tt class="py-string">']]></ac:plain-text-body>\n'</tt> </tt>
-<a name="L168"></a><tt class="py-lineno"> 168</tt> <tt class="py-line"> <tt class="py-name">graphs</tt> <tt class="py-op">+=</tt> <tt class="py-string">'</ac:structured-macro>\n'</tt> </tt>
-<a name="L169"></a><tt class="py-lineno"> 169</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-38', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">wiki</tt><tt class="py-op">(</tt><tt class="py-name">graphs</tt><tt class="py-op">)</tt> </tt>
-<a name="L170"></a><tt class="py-lineno"> 170</tt> <tt class="py-line"> </tt>
-<a name="L171"></a><tt class="py-lineno"> 171</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L172"></a><tt class="py-lineno"> 172</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-39', 'nodes', 'link-9');">nodes</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L173"></a><tt class="py-lineno"> 173</tt> <tt class="py-line"> <tt class="py-name">ipList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L174"></a><tt class="py-lineno"> 174</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L175"></a><tt class="py-lineno"> 175</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">'ONOScli'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L176"></a><tt class="py-lineno"> 176</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-40', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">'ONOS'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno"> 177</tt> <tt class="py-line"> <tt class="py-name">ipList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-41', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L178"></a><tt class="py-lineno"> 178</tt> <tt class="py-line"> </tt>
-<a name="L179"></a><tt class="py-lineno"> 179</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile" class="py-name" href="#" onclick="return doclink('link-42', 'createCellFile', 'link-13');">createCellFile</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-string">"SingleHA"</tt><tt class="py-op">,</tt> </tt>
-<a name="L180"></a><tt class="py-lineno"> 180</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L181"></a><tt class="py-lineno"> 181</tt> <tt class="py-line"> <tt class="py-name">cellAppString</tt><tt class="py-op">,</tt> <tt class="py-name">ipList</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L182"></a><tt class="py-lineno"> 182</tt> <tt class="py-line"> <tt class="py-name">cellResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell" class="py-name" href="#" onclick="return doclink('link-43', 'setCell', 'link-15');">setCell</a></tt><tt class="py-op">(</tt> <tt class="py-string">"SingleHA"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L183"></a><tt class="py-lineno"> 183</tt> <tt class="py-line"> <tt class="py-name">verifyResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell" class="py-name" href="#" onclick="return doclink('link-44', 'verifyCell', 'link-16');">verifyCell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L184"></a><tt class="py-lineno"> 184</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-45', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Creating ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L185"></a><tt class="py-lineno"> 185</tt> <tt class="py-line"> <tt class="py-name">packageResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage" class="py-name" href="#" onclick="return doclink('link-46', 'onosPackage', 'link-46');">onosPackage</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L186"></a><tt class="py-lineno"> 186</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">packageResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L187"></a><tt class="py-lineno"> 187</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS package successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L188"></a><tt class="py-lineno"> 188</tt> <tt class="py-line"> <tt id="link-47" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-47', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS package failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L189"></a><tt class="py-lineno"> 189</tt> <tt class="py-line"> </tt>
-<a name="L190"></a><tt class="py-lineno"> 190</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-48', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Installing ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno"> 191</tt> <tt class="py-line"> <tt class="py-name">onosInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall" class="py-name" href="#" onclick="return doclink('link-49', 'onosInstall', 'link-49');">onosInstall</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L192"></a><tt class="py-lineno"> 192</tt> <tt class="py-line"> <tt class="py-name">options</tt><tt class="py-op">=</tt><tt class="py-string">"-f"</tt><tt class="py-op">,</tt> <tt class="py-name">node</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-50', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L193"></a><tt class="py-lineno"> 193</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">onosInstallResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L194"></a><tt class="py-lineno"> 194</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS install successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L195"></a><tt class="py-lineno"> 195</tt> <tt class="py-line"> <tt id="link-51" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-51', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS install failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L196"></a><tt class="py-lineno"> 196</tt> <tt class="py-line"> </tt>
-<a name="L197"></a><tt class="py-lineno"> 197</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-52', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Checking if ONOS is up yet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L198"></a><tt class="py-lineno"> 198</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L199"></a><tt class="py-lineno"> 199</tt> <tt class="py-line"> <tt class="py-name">onos1Isup</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.isup()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-53', 'isup', 'link-53');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-54', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L200"></a><tt class="py-lineno"> 200</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onos1Isup</tt><tt class="py-op">:</tt> </tt>
-<a name="L201"></a><tt class="py-lineno"> 201</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L202"></a><tt class="py-lineno"> 202</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">onos1Isup</tt><tt class="py-op">,</tt> </tt>
-<a name="L203"></a><tt class="py-lineno"> 203</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS startup successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L204"></a><tt class="py-lineno"> 204</tt> <tt class="py-line"> <tt id="link-55" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-55', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS startup failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno"> 205</tt> <tt class="py-line"> </tt>
-<a name="L206"></a><tt class="py-lineno"> 206</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-56', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-57', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting ONOS CLI sessions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L207"></a><tt class="py-lineno"> 207</tt> <tt class="py-line"> <tt class="py-name">cliResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#startOnosCli"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli" class="py-name" href="#" onclick="return doclink('link-58', 'startOnosCli', 'link-58');">startOnosCli</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-59', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L208"></a><tt class="py-lineno"> 208</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">cliResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L209"></a><tt class="py-lineno"> 209</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS cli startup successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L210"></a><tt class="py-lineno"> 210</tt> <tt class="py-line"> <tt id="link-60" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-60', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS cli startup failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno"> 211</tt> <tt class="py-line"> </tt>
-<a name="L212"></a><tt class="py-lineno"> 212</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'tcpdump'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-string">"true"</tt><tt class="py-op">:</tt> </tt>
-<a name="L213"></a><tt class="py-lineno"> 213</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-61', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start Packet Capture MN"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L214"></a><tt class="py-lineno"> 214</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startTcpdump()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startTcpdump,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.startTcpdump()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#startTcpdump"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startTcpdump
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.startTcpdump" class="py-name" href="#" onclick="return doclink('link-62', 'startTcpdump', 'link-62');">startTcpdump</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L215"></a><tt class="py-lineno"> 215</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MNtcpdump'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'folder'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> <tt class="py-op">)</tt> </tt>
-<a name="L216"></a><tt class="py-lineno"> 216</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">"-MN.pcap"</tt><tt class="py-op">,</tt> </tt>
-<a name="L217"></a><tt class="py-lineno"> 217</tt> <tt class="py-line"> <tt class="py-name">intf</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MNtcpdump'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'intf'</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L218"></a><tt class="py-lineno"> 218</tt> <tt class="py-line"> <tt class="py-name">port</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MNtcpdump'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L219"></a><tt class="py-lineno"> 219</tt> <tt class="py-line"> </tt>
-<a name="L220"></a><tt class="py-lineno"> 220</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-63', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"App Ids check"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L221"></a><tt class="py-lineno"> 221</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appToIDCheck"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-64', 'appToIDCheck', 'link-64');">appToIDCheck</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L222"></a><tt class="py-lineno"> 222</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L223"></a><tt class="py-lineno"> 223</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-65', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#apps,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#apps"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-66', 'apps', 'link-66');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L224"></a><tt class="py-lineno"> 224</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-67', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appIDs"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-68', 'appIDs', 'link-68');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L225"></a><tt class="py-lineno"> 225</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L226"></a><tt class="py-lineno"> 226</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L227"></a><tt class="py-lineno"> 227</tt> <tt class="py-line"> <tt id="link-69" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-69', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L228"></a><tt class="py-lineno"> 228</tt> <tt class="py-line"> </tt>
-<a name="L229"></a><tt class="py-lineno"> 229</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">cliResults</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L230"></a><tt class="py-lineno"> 230</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-70', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-71" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-71', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Failed to start ONOS, stopping test"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L231"></a><tt class="py-lineno"> 231</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-72', 'cleanup', 'link-7');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L232"></a><tt class="py-lineno"> 232</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-73', 'exit', 'link-8');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L233"></a><tt class="py-lineno"> 233</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE2"></a><div id="HAsingleInstanceRestart.CASE2-def"><a name="L234"></a><tt class="py-lineno"> 234</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE2-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE2">CASE2</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE2-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE2-expanded"><a name="L235"></a><tt class="py-lineno"> 235</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L236"></a><tt class="py-lineno"> 236</tt> <tt class="py-line"><tt class="py-docstring"> Assign devices to controllers</tt> </tt>
-<a name="L237"></a><tt class="py-lineno"> 237</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L238"></a><tt class="py-lineno"> 238</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L239"></a><tt class="py-lineno"> 239</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L240"></a><tt class="py-lineno"> 240</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L241"></a><tt class="py-lineno"> 241</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L242"></a><tt class="py-lineno"> 242</tt> <tt class="py-line"> </tt>
-<a name="L243"></a><tt class="py-lineno"> 243</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-74', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assigning devices to controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L244"></a><tt class="py-lineno"> 244</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Assign switches to ONOS using 'ovs-vsctl' "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L245"></a><tt class="py-lineno"> 245</tt> <tt class="py-line"> <tt class="py-string">"and check that an ONOS node becomes the "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L246"></a><tt class="py-lineno"> 246</tt> <tt class="py-line"> <tt class="py-string">"master of the device."</tt> </tt>
-<a name="L247"></a><tt class="py-lineno"> 247</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-75', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assign switches to controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L248"></a><tt class="py-lineno"> 248</tt> <tt class="py-line"> </tt>
-<a name="L249"></a><tt class="py-lineno"> 249</tt> <tt class="py-line"> <tt class="py-name">ipList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L250"></a><tt class="py-lineno"> 250</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L251"></a><tt class="py-lineno"> 251</tt> <tt class="py-line"> <tt class="py-name">ipList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-76', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L252"></a><tt class="py-lineno"> 252</tt> <tt class="py-line"> <tt class="py-name">swList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L253"></a><tt class="py-lineno"> 253</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L254"></a><tt class="py-lineno"> 254</tt> <tt class="py-line"> <tt class="py-name">swList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L255"></a><tt class="py-lineno"> 255</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignSwController"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController" class="py-name" href="#" onclick="return doclink('link-77', 'assignSwController', 'link-77');">assignSwController</a></tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt><tt class="py-op">=</tt><tt class="py-name">swList</tt><tt class="py-op">,</tt> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">ipList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L256"></a><tt class="py-lineno"> 256</tt> <tt class="py-line"> </tt>
-<a name="L257"></a><tt class="py-lineno"> 257</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L258"></a><tt class="py-lineno"> 258</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L259"></a><tt class="py-lineno"> 259</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwController()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwController"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwController" class="py-name" href="#" onclick="return doclink('link-78', 'getSwController', 'link-78');">getSwController</a></tt><tt class="py-op">(</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno"> 260</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L261"></a><tt class="py-lineno"> 261</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-79', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno"> 262</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L263"></a><tt class="py-lineno"> 263</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-80', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L264"></a><tt class="py-lineno"> 264</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">search</tt><tt class="py-op">(</tt> <tt class="py-string">"tcp:"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-81', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L265"></a><tt class="py-lineno"> 265</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">mastershipCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L266"></a><tt class="py-lineno"> 266</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L267"></a><tt class="py-lineno"> 267</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L268"></a><tt class="py-lineno"> 268</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L269"></a><tt class="py-lineno"> 269</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-82', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Switch mastership assigned correctly"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L270"></a><tt class="py-lineno"> 270</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L271"></a><tt class="py-lineno"> 271</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L272"></a><tt class="py-lineno"> 272</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">mastershipCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L273"></a><tt class="py-lineno"> 273</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Switch mastership assigned correctly"</tt><tt class="py-op">,</tt> </tt>
-<a name="L274"></a><tt class="py-lineno"> 274</tt> <tt class="py-line"> <tt id="link-83" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-83', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Switches not assigned correctly to controllers"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L275"></a><tt class="py-lineno"> 275</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE21"></a><div id="HAsingleInstanceRestart.CASE21-def"><a name="L276"></a><tt class="py-lineno"> 276</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE21-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE21');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE21">CASE21</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE21-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE21-expanded"><a name="L277"></a><tt class="py-lineno"> 277</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L278"></a><tt class="py-lineno"> 278</tt> <tt class="py-line"><tt class="py-docstring"> Assign mastership to controllers</tt> </tt>
-<a name="L279"></a><tt class="py-lineno"> 279</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L280"></a><tt class="py-lineno"> 280</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L281"></a><tt class="py-lineno"> 281</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L282"></a><tt class="py-lineno"> 282</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L283"></a><tt class="py-lineno"> 283</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L284"></a><tt class="py-lineno"> 284</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-84', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L285"></a><tt class="py-lineno"> 285</tt> <tt class="py-line"> </tt>
-<a name="L286"></a><tt class="py-lineno"> 286</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-85', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assigning Controller roles for switches"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L287"></a><tt class="py-lineno"> 287</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Check that ONOS is connected to each "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L288"></a><tt class="py-lineno"> 288</tt> <tt class="py-line"> <tt class="py-string">"device. Then manually assign"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L289"></a><tt class="py-lineno"> 289</tt> <tt class="py-line"> <tt class="py-string">" mastership to specific ONOS nodes using"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L290"></a><tt class="py-lineno"> 290</tt> <tt class="py-line"> <tt class="py-string">" 'device-role'"</tt> </tt>
-<a name="L291"></a><tt class="py-lineno"> 291</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-86', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Assign mastership of switches to specific controllers"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L292"></a><tt class="py-lineno"> 292</tt> <tt class="py-line"> <tt class="py-name">roleCall</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L293"></a><tt class="py-lineno"> 293</tt> <tt class="py-line"> <tt class="py-name">roleCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L294"></a><tt class="py-lineno"> 294</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L295"></a><tt class="py-lineno"> 295</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># switches 1 through 28</tt> </tt>
-<a name="L296"></a><tt class="py-lineno"> 296</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-87', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-comment"># ONOS1</tt> </tt>
-<a name="L297"></a><tt class="py-lineno"> 297</tt> <tt class="py-line"> <tt class="py-comment"># set up correct variables:</tt> </tt>
-<a name="L298"></a><tt class="py-lineno"> 298</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L299"></a><tt class="py-lineno"> 299</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getDevice"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-88', 'getDevice', 'link-88');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"1000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L300"></a><tt class="py-lineno"> 300</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L301"></a><tt class="py-lineno"> 301</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-89', 'getDevice', 'link-88');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"2000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L302"></a><tt class="py-lineno"> 302</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L303"></a><tt class="py-lineno"> 303</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-90', 'getDevice', 'link-88');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"3000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L304"></a><tt class="py-lineno"> 304</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L305"></a><tt class="py-lineno"> 305</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-91', 'getDevice', 'link-88');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"3004"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L306"></a><tt class="py-lineno"> 306</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">5</tt><tt class="py-op">:</tt> </tt>
-<a name="L307"></a><tt class="py-lineno"> 307</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-92', 'getDevice', 'link-88');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"5000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L308"></a><tt class="py-lineno"> 308</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">6</tt><tt class="py-op">:</tt> </tt>
-<a name="L309"></a><tt class="py-lineno"> 309</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-93', 'getDevice', 'link-88');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"6000"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L310"></a><tt class="py-lineno"> 310</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">7</tt><tt class="py-op">:</tt> </tt>
-<a name="L311"></a><tt class="py-lineno"> 311</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-94', 'getDevice', 'link-88');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"6007"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L312"></a><tt class="py-lineno"> 312</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">8</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-number">17</tt><tt class="py-op">:</tt> </tt>
-<a name="L313"></a><tt class="py-lineno"> 313</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'3'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L314"></a><tt class="py-lineno"> 314</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-95', 'getDevice', 'link-88');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L315"></a><tt class="py-lineno"> 315</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">18</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-number">27</tt><tt class="py-op">:</tt> </tt>
-<a name="L316"></a><tt class="py-lineno"> 316</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'6'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L317"></a><tt class="py-lineno"> 317</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-96', 'getDevice', 'link-88');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L318"></a><tt class="py-lineno"> 318</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">28</tt><tt class="py-op">:</tt> </tt>
-<a name="L319"></a><tt class="py-lineno"> 319</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-97', 'getDevice', 'link-88');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-string">"2800"</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L320"></a><tt class="py-lineno"> 320</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L321"></a><tt class="py-lineno"> 321</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-98', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-99', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"You didn't write an else statement for "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L322"></a><tt class="py-lineno"> 322</tt> <tt class="py-line"> <tt class="py-string">"switch s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L323"></a><tt class="py-lineno"> 323</tt> <tt class="py-line"> <tt class="py-comment"># Assign switch</tt> </tt>
-<a name="L324"></a><tt class="py-lineno"> 324</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">deviceId</tt><tt class="py-op">,</tt> <tt class="py-string">"No device id for s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" in ONOS"</tt> </tt>
-<a name="L325"></a><tt class="py-lineno"> 325</tt> <tt class="py-line"> <tt class="py-comment"># TODO: make this controller dynamic</tt> </tt>
-<a name="L326"></a><tt class="py-lineno"> 326</tt> <tt class="py-line"> <tt class="py-name">roleCall</tt> <tt class="py-op">=</tt> <tt class="py-name">roleCall</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deviceRole()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deviceRole"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deviceRole" class="py-name" href="#" onclick="return doclink('link-100', 'deviceRole', 'link-100');">deviceRole</a></tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt><tt class="py-op">,</tt> </tt>
-<a name="L327"></a><tt class="py-lineno"> 327</tt> <tt class="py-line"> <tt class="py-name">ip</tt> <tt class="py-op">)</tt> </tt>
-<a name="L328"></a><tt class="py-lineno"> 328</tt> <tt class="py-line"> <tt class="py-comment"># Check assignment</tt> </tt>
-<a name="L329"></a><tt class="py-lineno"> 329</tt> <tt class="py-line"> <tt class="py-name">master</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getRole()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getRole"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getRole" class="py-name" href="#" onclick="return doclink('link-101', 'getRole', 'link-101');">getRole</a></tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'master'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L330"></a><tt class="py-lineno"> 330</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ip</tt> <tt class="py-keyword">in</tt> <tt class="py-name">master</tt><tt class="py-op">:</tt> </tt>
-<a name="L331"></a><tt class="py-lineno"> 331</tt> <tt class="py-line"> <tt class="py-name">roleCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">roleCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L332"></a><tt class="py-lineno"> 332</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L333"></a><tt class="py-lineno"> 333</tt> <tt class="py-line"> <tt class="py-name">roleCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">roleCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L334"></a><tt class="py-lineno"> 334</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-102', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-103', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, controller "</tt> <tt class="py-op">+</tt> <tt class="py-name">ip</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L335"></a><tt class="py-lineno"> 335</tt> <tt class="py-line"> <tt class="py-string">" master "</tt> <tt class="py-op">+</tt> <tt class="py-string">"of device "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L336"></a><tt class="py-lineno"> 336</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">deviceId</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">". Master is "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L337"></a><tt class="py-lineno"> 337</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">master</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L338"></a><tt class="py-lineno"> 338</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">,</tt> <tt class="py-name">AssertionError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L339"></a><tt class="py-lineno"> 339</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-104', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Something is wrong with ONOS device view"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L340"></a><tt class="py-lineno"> 340</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-105', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-106" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#devices"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-106', 'devices', 'link-106');">devices</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L341"></a><tt class="py-lineno"> 341</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L342"></a><tt class="py-lineno"> 342</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L343"></a><tt class="py-lineno"> 343</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">roleCall</tt><tt class="py-op">,</tt> </tt>
-<a name="L344"></a><tt class="py-lineno"> 344</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Re-assigned switch mastership to designated controller"</tt><tt class="py-op">,</tt> </tt>
-<a name="L345"></a><tt class="py-lineno"> 345</tt> <tt class="py-line"> <tt id="link-107" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-107', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something wrong with deviceRole calls"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L346"></a><tt class="py-lineno"> 346</tt> <tt class="py-line"> </tt>
-<a name="L347"></a><tt class="py-lineno"> 347</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-108', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check mastership was correctly assigned"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L348"></a><tt class="py-lineno"> 348</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L349"></a><tt class="py-lineno"> 349</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L350"></a><tt class="py-lineno"> 350</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">roleCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L351"></a><tt class="py-lineno"> 351</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Switches were successfully reassigned to designated "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L352"></a><tt class="py-lineno"> 352</tt> <tt class="py-line"> <tt class="py-string">"controller"</tt><tt class="py-op">,</tt> </tt>
-<a name="L353"></a><tt class="py-lineno"> 353</tt> <tt class="py-line"> <tt id="link-109" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-109', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Switches were not successfully reassigned"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L354"></a><tt class="py-lineno"> 354</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE3"></a><div id="HAsingleInstanceRestart.CASE3-def"><a name="L355"></a><tt class="py-lineno"> 355</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE3-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE3');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE3">CASE3</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE3-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE3-expanded"><a name="L356"></a><tt class="py-lineno"> 356</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L357"></a><tt class="py-lineno"> 357</tt> <tt class="py-line"><tt class="py-docstring"> Assign intents</tt> </tt>
-<a name="L358"></a><tt class="py-lineno"> 358</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L359"></a><tt class="py-lineno"> 359</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L360"></a><tt class="py-lineno"> 360</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L361"></a><tt class="py-lineno"> 361</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L362"></a><tt class="py-lineno"> 362</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L363"></a><tt class="py-lineno"> 363</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L364"></a><tt class="py-lineno"> 364</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: we must reinstall intents until we have a persistant intent</tt> </tt>
-<a name="L365"></a><tt class="py-lineno"> 365</tt> <tt class="py-line"> <tt class="py-comment"># datastore!</tt> </tt>
-<a name="L366"></a><tt class="py-lineno"> 366</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-110', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Adding host Intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L367"></a><tt class="py-lineno"> 367</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Discover hosts by using pingall then "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L368"></a><tt class="py-lineno"> 368</tt> <tt class="py-line"> <tt class="py-string">"assign predetermined host-to-host intents."</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L369"></a><tt class="py-lineno"> 369</tt> <tt class="py-line"> <tt class="py-string">" After installation, check that the intent"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L370"></a><tt class="py-lineno"> 370</tt> <tt class="py-line"> <tt class="py-string">" is distributed to all nodes and the state"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L371"></a><tt class="py-lineno"> 371</tt> <tt class="py-line"> <tt class="py-string">" is INSTALLED"</tt> </tt>
-<a name="L372"></a><tt class="py-lineno"> 372</tt> <tt class="py-line"> </tt>
-<a name="L373"></a><tt class="py-lineno"> 373</tt> <tt class="py-line"> <tt class="py-comment"># install onos-app-fwd</tt> </tt>
-<a name="L374"></a><tt class="py-lineno"> 374</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-111', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install reactive forwarding app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L375"></a><tt class="py-lineno"> 375</tt> <tt class="py-line"> <tt class="py-name">installResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#activateApp,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#activateApp"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-112', 'activateApp', 'link-112');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.fwd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L376"></a><tt class="py-lineno"> 376</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">installResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L377"></a><tt class="py-lineno"> 377</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Install fwd successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L378"></a><tt class="py-lineno"> 378</tt> <tt class="py-line"> <tt id="link-113" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-113', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Install fwd failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L379"></a><tt class="py-lineno"> 379</tt> <tt class="py-line"> </tt>
-<a name="L380"></a><tt class="py-lineno"> 380</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-114', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check app ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L381"></a><tt class="py-lineno"> 381</tt> <tt class="py-line"> <tt class="py-name">appCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-115" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-115', 'appToIDCheck', 'link-64');">appToIDCheck</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L382"></a><tt class="py-lineno"> 382</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L383"></a><tt class="py-lineno"> 383</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-116', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-117', 'apps', 'link-66');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L384"></a><tt class="py-lineno"> 384</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-118', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-119', 'appIDs', 'link-68');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L385"></a><tt class="py-lineno"> 385</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L386"></a><tt class="py-lineno"> 386</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L387"></a><tt class="py-lineno"> 387</tt> <tt class="py-line"> <tt id="link-120" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-120', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L388"></a><tt class="py-lineno"> 388</tt> <tt class="py-line"> </tt>
-<a name="L389"></a><tt class="py-lineno"> 389</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-121" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-121', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Discovering Hosts( Via pingall for now )"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L390"></a><tt class="py-lineno"> 390</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: Once we have a host discovery mechanism, use that instead</tt> </tt>
-<a name="L391"></a><tt class="py-lineno"> 391</tt> <tt class="py-line"> <tt class="py-comment"># REACTIVE FWD test</tt> </tt>
-<a name="L392"></a><tt class="py-lineno"> 392</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L393"></a><tt class="py-lineno"> 393</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># Retry if pingall fails first time</tt> </tt>
-<a name="L394"></a><tt class="py-lineno"> 394</tt> <tt class="py-line"> <tt class="py-name">time1</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L395"></a><tt class="py-lineno"> 395</tt> <tt class="py-line"> <tt class="py-name">pingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingall"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall" class="py-name" href="#" onclick="return doclink('link-122', 'pingall', 'link-122');">pingall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L396"></a><tt class="py-lineno"> 396</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L397"></a><tt class="py-lineno"> 397</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L398"></a><tt class="py-lineno"> 398</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L399"></a><tt class="py-lineno"> 399</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L400"></a><tt class="py-lineno"> 400</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Reactive Pingall test passed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L401"></a><tt class="py-lineno"> 401</tt> <tt class="py-line"> <tt id="link-123" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-123', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Reactive Pingall failed, "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L402"></a><tt class="py-lineno"> 402</tt> <tt class="py-line"> <tt class="py-string">"one or more ping pairs failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L403"></a><tt class="py-lineno"> 403</tt> <tt class="py-line"> <tt class="py-name">time2</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L404"></a><tt class="py-lineno"> 404</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-124" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-124', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Time for pingall: %2f seconds"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L405"></a><tt class="py-lineno"> 405</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">time2</tt> <tt class="py-op">-</tt> <tt class="py-name">time1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L406"></a><tt class="py-lineno"> 406</tt> <tt class="py-line"> <tt class="py-comment"># timeout for fwd flows</tt> </tt>
-<a name="L407"></a><tt class="py-lineno"> 407</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">11</tt> <tt class="py-op">)</tt> </tt>
-<a name="L408"></a><tt class="py-lineno"> 408</tt> <tt class="py-line"> <tt class="py-comment"># uninstall onos-app-fwd</tt> </tt>
-<a name="L409"></a><tt class="py-lineno"> 409</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-125', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Uninstall reactive forwarding app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L410"></a><tt class="py-lineno"> 410</tt> <tt class="py-line"> <tt class="py-name">uninstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-126" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.deactivateApp()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#deactivateApp,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deactivateApp()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deactivateApp"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.deactivateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deactivateApp" class="py-name" href="#" onclick="return doclink('link-126', 'deactivateApp', 'link-126');">deactivateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.fwd"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L411"></a><tt class="py-lineno"> 411</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">uninstallResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L412"></a><tt class="py-lineno"> 412</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Uninstall fwd successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L413"></a><tt class="py-lineno"> 413</tt> <tt class="py-line"> <tt id="link-127" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-127', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Uninstall fwd failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L414"></a><tt class="py-lineno"> 414</tt> <tt class="py-line"> </tt>
-<a name="L415"></a><tt class="py-lineno"> 415</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-128', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check app ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L416"></a><tt class="py-lineno"> 416</tt> <tt class="py-line"> <tt class="py-name">appCheck2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck" class="py-name" href="#" onclick="return doclink('link-129', 'appToIDCheck', 'link-64');">appToIDCheck</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L417"></a><tt class="py-lineno"> 417</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">appCheck2</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L418"></a><tt class="py-lineno"> 418</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-130" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-130', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-131', 'apps', 'link-66');">apps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L419"></a><tt class="py-lineno"> 419</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-132', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs" class="py-name" href="#" onclick="return doclink('link-133', 'appIDs', 'link-68');">appIDs</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L420"></a><tt class="py-lineno"> 420</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appCheck2</tt><tt class="py-op">,</tt> </tt>
-<a name="L421"></a><tt class="py-lineno"> 421</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App Ids seem to be correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L422"></a><tt class="py-lineno"> 422</tt> <tt class="py-line"> <tt id="link-134" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-134', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something is wrong with app Ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L423"></a><tt class="py-lineno"> 423</tt> <tt class="py-line"> </tt>
-<a name="L424"></a><tt class="py-lineno"> 424</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-135', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add host intents via cli"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L425"></a><tt class="py-lineno"> 425</tt> <tt class="py-line"> <tt class="py-name">intentIds</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L426"></a><tt class="py-lineno"> 426</tt> <tt class="py-line"> <tt class="py-comment"># TODO: move the host numbers to params</tt> </tt>
-<a name="L427"></a><tt class="py-lineno"> 427</tt> <tt class="py-line"> <tt class="py-comment"># Maybe look at all the paths we ping?</tt> </tt>
-<a name="L428"></a><tt class="py-lineno"> 428</tt> <tt class="py-line"> <tt class="py-name">intentAddResult</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L429"></a><tt class="py-lineno"> 429</tt> <tt class="py-line"> <tt class="py-name">hostResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L430"></a><tt class="py-lineno"> 430</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-number">18</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L431"></a><tt class="py-lineno"> 431</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-136" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-136', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Adding host intent between h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L432"></a><tt class="py-lineno"> 432</tt> <tt class="py-line"> <tt class="py-string">" and h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L433"></a><tt class="py-lineno"> 433</tt> <tt class="py-line"> <tt class="py-name">host1</tt> <tt class="py-op">=</tt> <tt class="py-string">"00:00:00:00:00:"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L434"></a><tt class="py-lineno"> 434</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L435"></a><tt class="py-lineno"> 435</tt> <tt class="py-line"> <tt class="py-name">host2</tt> <tt class="py-op">=</tt> <tt class="py-string">"00:00:00:00:00:"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L436"></a><tt class="py-lineno"> 436</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L437"></a><tt class="py-lineno"> 437</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: getHost can return None</tt> </tt>
-<a name="L438"></a><tt class="py-lineno"> 438</tt> <tt class="py-line"> <tt class="py-name">host1Dict</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getHost()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getHost,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getHost()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getHost"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getHost
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getHost" class="py-name" href="#" onclick="return doclink('link-137', 'getHost', 'link-137');">getHost</a></tt><tt class="py-op">(</tt> <tt class="py-name">host1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L439"></a><tt class="py-lineno"> 439</tt> <tt class="py-line"> <tt class="py-name">host2Dict</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getHost
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getHost" class="py-name" href="#" onclick="return doclink('link-138', 'getHost', 'link-137');">getHost</a></tt><tt class="py-op">(</tt> <tt class="py-name">host2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L440"></a><tt class="py-lineno"> 440</tt> <tt class="py-line"> <tt class="py-name">host1Id</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L441"></a><tt class="py-lineno"> 441</tt> <tt class="py-line"> <tt class="py-name">host2Id</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L442"></a><tt class="py-lineno"> 442</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">host1Dict</tt> <tt class="py-keyword">and</tt> <tt class="py-name">host2Dict</tt><tt class="py-op">:</tt> </tt>
-<a name="L443"></a><tt class="py-lineno"> 443</tt> <tt class="py-line"> <tt class="py-name">host1Id</tt> <tt class="py-op">=</tt> <tt class="py-name">host1Dict</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L444"></a><tt class="py-lineno"> 444</tt> <tt class="py-line"> <tt class="py-name">host2Id</tt> <tt class="py-op">=</tt> <tt class="py-name">host2Dict</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L445"></a><tt class="py-lineno"> 445</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">host1Id</tt> <tt class="py-keyword">and</tt> <tt class="py-name">host2Id</tt><tt class="py-op">:</tt> </tt>
-<a name="L446"></a><tt class="py-lineno"> 446</tt> <tt class="py-line"> <tt class="py-name">tmpId</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-139" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addHostIntent()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addHostIntent,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addHostIntent()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addHostIntent"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addHostIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addHostIntent" class="py-name" href="#" onclick="return doclink('link-139', 'addHostIntent', 'link-139');">addHostIntent</a></tt><tt class="py-op">(</tt> <tt class="py-name">host1Id</tt><tt class="py-op">,</tt> <tt class="py-name">host2Id</tt> <tt class="py-op">)</tt> </tt>
-<a name="L447"></a><tt class="py-lineno"> 447</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tmpId</tt><tt class="py-op">:</tt> </tt>
-<a name="L448"></a><tt class="py-lineno"> 448</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-140" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-140', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Added intent with id: "</tt> <tt class="py-op">+</tt> <tt class="py-name">tmpId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L449"></a><tt class="py-lineno"> 449</tt> <tt class="py-line"> <tt class="py-name">intentIds</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">tmpId</tt> <tt class="py-op">)</tt> </tt>
-<a name="L450"></a><tt class="py-lineno"> 450</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L451"></a><tt class="py-lineno"> 451</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-141" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-141', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-142', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"addHostIntent returned: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L452"></a><tt class="py-lineno"> 452</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">tmpId</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L453"></a><tt class="py-lineno"> 453</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L454"></a><tt class="py-lineno"> 454</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-143', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-144" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-144', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error, getHost() failed for h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L455"></a><tt class="py-lineno"> 455</tt> <tt class="py-line"> <tt class="py-string">" and/or h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L456"></a><tt class="py-lineno"> 456</tt> <tt class="py-line"> <tt id="link-145" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#hosts,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#hosts"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-145', 'hosts', 'link-145');">hosts</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-146" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-146', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L457"></a><tt class="py-lineno"> 457</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-147', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Hosts output: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L458"></a><tt class="py-lineno"> 458</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L459"></a><tt class="py-lineno"> 459</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-148" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-148', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-149" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-149', 'hosts', 'link-145');">hosts</a></tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L460"></a><tt class="py-lineno"> 460</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L461"></a><tt class="py-lineno"> 461</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L462"></a><tt class="py-lineno"> 462</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L463"></a><tt class="py-lineno"> 463</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L464"></a><tt class="py-lineno"> 464</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-150" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-150', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-151" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-151', 'hosts', 'link-145');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L465"></a><tt class="py-lineno"> 465</tt> <tt class="py-line"> <tt class="py-name">hostResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L466"></a><tt class="py-lineno"> 466</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">hostResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L467"></a><tt class="py-lineno"> 467</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Found a host id for each host"</tt><tt class="py-op">,</tt> </tt>
-<a name="L468"></a><tt class="py-lineno"> 468</tt> <tt class="py-line"> <tt id="link-152" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-152', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error looking up host ids"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L469"></a><tt class="py-lineno"> 469</tt> <tt class="py-line"> </tt>
-<a name="L470"></a><tt class="py-lineno"> 470</tt> <tt class="py-line"> <tt class="py-name">intentStart</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L471"></a><tt class="py-lineno"> 471</tt> <tt class="py-line"> <tt class="py-name">onosIds</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllIntentsId"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId" class="py-name" href="#" onclick="return doclink('link-153', 'getAllIntentsId', 'link-153');">getAllIntentsId</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L472"></a><tt class="py-lineno"> 472</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-154" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-154', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Submitted intents: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">intentIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L473"></a><tt class="py-lineno"> 473</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-155', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents in ONOS: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L474"></a><tt class="py-lineno"> 474</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-156" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intent"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-156', 'intent', 'link-156');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentIds</tt><tt class="py-op">:</tt> </tt>
-<a name="L475"></a><tt class="py-lineno"> 475</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-157" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-157', 'intent', 'link-156');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosIds</tt><tt class="py-op">:</tt> </tt>
-<a name="L476"></a><tt class="py-lineno"> 476</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> <tt class="py-comment"># intent submitted is in onos</tt> </tt>
-<a name="L477"></a><tt class="py-lineno"> 477</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L478"></a><tt class="py-lineno"> 478</tt> <tt class="py-line"> <tt class="py-name">intentAddResult</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L479"></a><tt class="py-lineno"> 479</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">intentAddResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L480"></a><tt class="py-lineno"> 480</tt> <tt class="py-line"> <tt class="py-name">intentStop</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L481"></a><tt class="py-lineno"> 481</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L482"></a><tt class="py-lineno"> 482</tt> <tt class="py-line"> <tt class="py-name">intentStop</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L483"></a><tt class="py-lineno"> 483</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L484"></a><tt class="py-lineno"> 484</tt> <tt class="py-line"> <tt id="link-158" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intents,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intents"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-158', 'intents', 'link-158');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-159" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-159', 'intents', 'link-158');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L485"></a><tt class="py-lineno"> 485</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L486"></a><tt class="py-lineno"> 486</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L487"></a><tt class="py-lineno"> 487</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-160" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-160', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-string">'Count'</tt><tt class="py-op">,</tt> <tt class="py-string">'ID'</tt><tt class="py-op">,</tt> <tt class="py-string">'State'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L488"></a><tt class="py-lineno"> 488</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L489"></a><tt class="py-lineno"> 489</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L490"></a><tt class="py-lineno"> 490</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-161" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-161', 'intent', 'link-156');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-162" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-162', 'intents', 'link-158');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L491"></a><tt class="py-lineno"> 491</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-163" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-163', 'intent', 'link-156');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L492"></a><tt class="py-lineno"> 492</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"INSTALLED"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L493"></a><tt class="py-lineno"> 493</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L494"></a><tt class="py-lineno"> 494</tt> <tt class="py-line"> <tt class="py-name">intentId</tt> <tt class="py-op">=</tt> <tt id="link-164" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-164', 'intent', 'link-156');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L495"></a><tt class="py-lineno"> 495</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L496"></a><tt class="py-lineno"> 496</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L497"></a><tt class="py-lineno"> 497</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-165" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-165', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L498"></a><tt class="py-lineno"> 498</tt> <tt class="py-line"> <tt class="py-comment"># add submitted intents not in the store</tt> </tt>
-<a name="L499"></a><tt class="py-lineno"> 499</tt> <tt class="py-line"> <tt class="py-name">tmplist</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt> <tt class="py-op">]</tt> </tt>
-<a name="L500"></a><tt class="py-lineno"> 500</tt> <tt class="py-line"> <tt class="py-name">missingIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L501"></a><tt class="py-lineno"> 501</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentIds</tt><tt class="py-op">:</tt> </tt>
-<a name="L502"></a><tt class="py-lineno"> 502</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">tmplist</tt><tt class="py-op">:</tt> </tt>
-<a name="L503"></a><tt class="py-lineno"> 503</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-string">" - "</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L504"></a><tt class="py-lineno"> 504</tt> <tt class="py-line"> <tt class="py-name">missingIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L505"></a><tt class="py-lineno"> 505</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L506"></a><tt class="py-lineno"> 506</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt><tt class="py-op">:</tt> </tt>
-<a name="L507"></a><tt class="py-lineno"> 507</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L508"></a><tt class="py-lineno"> 508</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-166" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-166', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L509"></a><tt class="py-lineno"> 509</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">s</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L510"></a><tt class="py-lineno"> 510</tt> <tt class="py-line"> <tt id="link-167" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#leaders"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-167', 'leaders', 'link-167');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-168', 'leaders', 'link-167');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L511"></a><tt class="py-lineno"> 511</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L512"></a><tt class="py-lineno"> 512</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L513"></a><tt class="py-lineno"> 513</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-169" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-169', 'leaders', 'link-167');">leaders</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L514"></a><tt class="py-lineno"> 514</tt> <tt class="py-line"> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-170" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-170', 'leaders', 'link-167');">leaders</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L515"></a><tt class="py-lineno"> 515</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-171" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-171', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedLeaders</tt><tt class="py-op">,</tt> </tt>
-<a name="L516"></a><tt class="py-lineno"> 516</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L517"></a><tt class="py-lineno"> 517</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L518"></a><tt class="py-lineno"> 518</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L519"></a><tt class="py-lineno"> 519</tt> <tt class="py-line"> <tt class="py-comment"># check for all intent partitions</tt> </tt>
-<a name="L520"></a><tt class="py-lineno"> 520</tt> <tt class="py-line"> <tt class="py-name">topics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L521"></a><tt class="py-lineno"> 521</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">14</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L522"></a><tt class="py-lineno"> 522</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"intent-partition-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L523"></a><tt class="py-lineno"> 523</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-172" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-172', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">topics</tt> <tt class="py-op">)</tt> </tt>
-<a name="L524"></a><tt class="py-lineno"> 524</tt> <tt class="py-line"> <tt class="py-name">ONOStopics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-string">'topic'</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">]</tt> </tt>
-<a name="L525"></a><tt class="py-lineno"> 525</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">in</tt> <tt class="py-name">topics</tt><tt class="py-op">:</tt> </tt>
-<a name="L526"></a><tt class="py-lineno"> 526</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOStopics</tt><tt class="py-op">:</tt> </tt>
-<a name="L527"></a><tt class="py-lineno"> 527</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-173', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-174" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-174', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error: "</tt> <tt class="py-op">+</tt> <tt class="py-name">topic</tt> <tt class="py-op">+</tt> </tt>
-<a name="L528"></a><tt class="py-lineno"> 528</tt> <tt class="py-line"> <tt class="py-string">" not in leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L529"></a><tt class="py-lineno"> 529</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L530"></a><tt class="py-lineno"> 530</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L531"></a><tt class="py-lineno"> 531</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-175" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-175', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-176" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-176', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"leaders() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L532"></a><tt class="py-lineno"> 532</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L533"></a><tt class="py-lineno"> 533</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-177" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-177', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L534"></a><tt class="py-lineno"> 534</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-178" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-178', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-179" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-179', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-180" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-180', 'leaders', 'link-167');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L535"></a><tt class="py-lineno"> 535</tt> <tt class="py-line"> <tt class="py-comment"># Check all nodes</tt> </tt>
-<a name="L536"></a><tt class="py-lineno"> 536</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">missing</tt><tt class="py-op">:</tt> </tt>
-<a name="L537"></a><tt class="py-lineno"> 537</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-181" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-181', 'leaders', 'link-167');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L538"></a><tt class="py-lineno"> 538</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-182" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-182', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS1 leaders output: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L539"></a><tt class="py-lineno"> 539</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L540"></a><tt class="py-lineno"> 540</tt> <tt class="py-line"> </tt>
-<a name="L541"></a><tt class="py-lineno"> 541</tt> <tt class="py-line"> <tt id="link-183" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#partitions"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-183', 'partitions', 'link-183');">partitions</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-184" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-184', 'partitions', 'link-183');">partitions</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L542"></a><tt class="py-lineno"> 542</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L543"></a><tt class="py-lineno"> 543</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-185" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-185', 'partitions', 'link-183');">partitions</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L544"></a><tt class="py-lineno"> 544</tt> <tt class="py-line"> <tt class="py-name">parsedPartitions</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-186" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-186', 'partitions', 'link-183');">partitions</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L545"></a><tt class="py-lineno"> 545</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-187" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-187', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPartitions</tt><tt class="py-op">,</tt> </tt>
-<a name="L546"></a><tt class="py-lineno"> 546</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L547"></a><tt class="py-lineno"> 547</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L548"></a><tt class="py-lineno"> 548</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L549"></a><tt class="py-lineno"> 549</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for a leader in all paritions</tt> </tt>
-<a name="L550"></a><tt class="py-lineno"> 550</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for consistency among nodes</tt> </tt>
-<a name="L551"></a><tt class="py-lineno"> 551</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L552"></a><tt class="py-lineno"> 552</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-188" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-188', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-189" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-189', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"partitions() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L553"></a><tt class="py-lineno"> 553</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L554"></a><tt class="py-lineno"> 554</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-190" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-190', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing partitions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L555"></a><tt class="py-lineno"> 555</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-191" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-191', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-192" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-192', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-193" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-193', 'partitions', 'link-183');">partitions</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L556"></a><tt class="py-lineno"> 556</tt> <tt class="py-line"> <tt id="link-194" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#pendingMap"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-194', 'pendingMap', 'link-194');">pendingMap</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-195" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-195', 'pendingMap', 'link-194');">pendingMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L557"></a><tt class="py-lineno"> 557</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L558"></a><tt class="py-lineno"> 558</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-196" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-196', 'pendingMap', 'link-194');">pendingMap</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L559"></a><tt class="py-lineno"> 559</tt> <tt class="py-line"> <tt class="py-name">parsedPending</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-197" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-197', 'pendingMap', 'link-194');">pendingMap</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L560"></a><tt class="py-lineno"> 560</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-198" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-198', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPending</tt><tt class="py-op">,</tt> </tt>
-<a name="L561"></a><tt class="py-lineno"> 561</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L562"></a><tt class="py-lineno"> 562</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L563"></a><tt class="py-lineno"> 563</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L564"></a><tt class="py-lineno"> 564</tt> <tt class="py-line"> <tt class="py-comment"># TODO check something here?</tt> </tt>
-<a name="L565"></a><tt class="py-lineno"> 565</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L566"></a><tt class="py-lineno"> 566</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-199" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-199', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-200" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-200', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pendingMap() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L567"></a><tt class="py-lineno"> 567</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L568"></a><tt class="py-lineno"> 568</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-201" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-201', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing pending map"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L569"></a><tt class="py-lineno"> 569</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-202" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-202', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-203" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-203', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-204" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-204', 'pendingMap', 'link-194');">pendingMap</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L570"></a><tt class="py-lineno"> 570</tt> <tt class="py-line"> </tt>
-<a name="L571"></a><tt class="py-lineno"> 571</tt> <tt class="py-line"> <tt class="py-name">intentAddResult</tt> <tt class="py-op">=</tt> <tt class="py-name">bool</tt><tt class="py-op">(</tt> <tt class="py-name">intentAddResult</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">missingIntents</tt> <tt class="py-keyword">and</tt> </tt>
-<a name="L572"></a><tt class="py-lineno"> 572</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">)</tt> </tt>
-<a name="L573"></a><tt class="py-lineno"> 573</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">intentAddResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L574"></a><tt class="py-lineno"> 574</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-205" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-205', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-206" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-206', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in pushing host intents to ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L575"></a><tt class="py-lineno"> 575</tt> <tt class="py-line"> </tt>
-<a name="L576"></a><tt class="py-lineno"> 576</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-207" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-207', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Intent Anti-Entropy dispersion"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L577"></a><tt class="py-lineno"> 577</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">100</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L578"></a><tt class="py-lineno"> 578</tt> <tt class="py-line"> <tt class="py-name">correct</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L579"></a><tt class="py-lineno"> 579</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-208" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-208', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Submitted intents: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">intentIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L580"></a><tt class="py-lineno"> 580</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-209" class="py-name" targets="Module TestON.bin.cli=TestON.bin.cli-module.html,Package TestON.drivers.common.cli=TestON.drivers.common.cli-module.html"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-209', 'cli', 'link-209');">cli</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L581"></a><tt class="py-lineno"> 581</tt> <tt class="py-line"> <tt class="py-name">onosIds</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L582"></a><tt class="py-lineno"> 582</tt> <tt class="py-line"> <tt class="py-name">ids</tt> <tt class="py-op">=</tt> <tt id="link-210" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-210', 'cli', 'link-209');">cli</a></tt><tt class="py-op">.</tt><tt id="link-211" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId" class="py-name" href="#" onclick="return doclink('link-211', 'getAllIntentsId', 'link-153');">getAllIntentsId</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L583"></a><tt class="py-lineno"> 583</tt> <tt class="py-line"> <tt class="py-name">onosIds</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">ids</tt> <tt class="py-op">)</tt> </tt>
-<a name="L584"></a><tt class="py-lineno"> 584</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-212" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-212', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents in "</tt> <tt class="py-op">+</tt> <tt id="link-213" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-213', 'cli', 'link-209');">cli</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L585"></a><tt class="py-lineno"> 585</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">onosIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L586"></a><tt class="py-lineno"> 586</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">ids</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">sorted</tt><tt class="py-op">(</tt> <tt class="py-name">intentIds</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L587"></a><tt class="py-lineno"> 587</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-214" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-214', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Set of intent IDs doesn't match"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L588"></a><tt class="py-lineno"> 588</tt> <tt class="py-line"> <tt class="py-name">correct</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L589"></a><tt class="py-lineno"> 589</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L590"></a><tt class="py-lineno"> 590</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L591"></a><tt class="py-lineno"> 591</tt> <tt class="py-line"> <tt id="link-215" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-215', 'intents', 'link-158');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-216" class="py-name"><a title="TestON.bin.cli
-TestON.drivers.common.cli" class="py-name" href="#" onclick="return doclink('link-216', 'cli', 'link-209');">cli</a></tt><tt class="py-op">.</tt><tt id="link-217" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-217', 'intents', 'link-158');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L592"></a><tt class="py-lineno"> 592</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-218" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-218', 'intent', 'link-156');">intent</a></tt> <tt class="py-keyword">in</tt> <tt id="link-219" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-219', 'intents', 'link-158');">intents</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L593"></a><tt class="py-lineno"> 593</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-220" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-220', 'intent', 'link-156');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">"INSTALLED"</tt><tt class="py-op">:</tt> </tt>
-<a name="L594"></a><tt class="py-lineno"> 594</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-221" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-221', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Intent "</tt> <tt class="py-op">+</tt> <tt id="link-222" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-222', 'intent', 'link-156');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> </tt>
-<a name="L595"></a><tt class="py-lineno"> 595</tt> <tt class="py-line"> <tt class="py-string">" is "</tt> <tt class="py-op">+</tt> <tt id="link-223" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-223', 'intent', 'link-156');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L596"></a><tt class="py-lineno"> 596</tt> <tt class="py-line"> <tt class="py-name">correct</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L597"></a><tt class="py-lineno"> 597</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L598"></a><tt class="py-lineno"> 598</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">correct</tt><tt class="py-op">:</tt> </tt>
-<a name="L599"></a><tt class="py-lineno"> 599</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L600"></a><tt class="py-lineno"> 600</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L601"></a><tt class="py-lineno"> 601</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L602"></a><tt class="py-lineno"> 602</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">intentStop</tt><tt class="py-op">:</tt> </tt>
-<a name="L603"></a><tt class="py-lineno"> 603</tt> <tt class="py-line"> <tt class="py-name">intentStop</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L604"></a><tt class="py-lineno"> 604</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">gossipTime</tt> </tt>
-<a name="L605"></a><tt class="py-lineno"> 605</tt> <tt class="py-line"> <tt class="py-name">gossipTime</tt> <tt class="py-op">=</tt> <tt class="py-name">intentStop</tt> <tt class="py-op">-</tt> <tt class="py-name">intentStart</tt> </tt>
-<a name="L606"></a><tt class="py-lineno"> 606</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-224" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-224', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"It took about "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">gossipTime</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L607"></a><tt class="py-lineno"> 607</tt> <tt class="py-line"> <tt class="py-string">" seconds for all intents to appear in each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L608"></a><tt class="py-lineno"> 608</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: make this time configurable/calculate based off of number of</tt> </tt>
-<a name="L609"></a><tt class="py-lineno"> 609</tt> <tt class="py-line"> <tt class="py-comment"># nodes and gossip rounds</tt> </tt>
-<a name="L610"></a><tt class="py-lineno"> 610</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_greater_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L611"></a><tt class="py-lineno"> 611</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-number">40</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">gossipTime</tt><tt class="py-op">,</tt> </tt>
-<a name="L612"></a><tt class="py-lineno"> 612</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ECM anti-entropy for intents worked within "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L613"></a><tt class="py-lineno"> 613</tt> <tt class="py-line"> <tt class="py-string">"expected time"</tt><tt class="py-op">,</tt> </tt>
-<a name="L614"></a><tt class="py-lineno"> 614</tt> <tt class="py-line"> <tt id="link-225" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-225', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intent ECM anti-entropy took too long"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L615"></a><tt class="py-lineno"> 615</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">gossipTime</tt> <tt class="py-op"><=</tt> <tt class="py-number">40</tt><tt class="py-op">:</tt> </tt>
-<a name="L616"></a><tt class="py-lineno"> 616</tt> <tt class="py-line"> <tt class="py-name">intentAddResult</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L617"></a><tt class="py-lineno"> 617</tt> <tt class="py-line"> </tt>
-<a name="L618"></a><tt class="py-lineno"> 618</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">intentAddResult</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"key"</tt> <tt class="py-keyword">in</tt> <tt id="link-226" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-226', 'pendingMap', 'link-194');">pendingMap</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L619"></a><tt class="py-lineno"> 619</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L620"></a><tt class="py-lineno"> 620</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L621"></a><tt class="py-lineno"> 621</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-227" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-227', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Sleeping 60 seconds to see if intents are found"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L622"></a><tt class="py-lineno"> 622</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L623"></a><tt class="py-lineno"> 623</tt> <tt class="py-line"> <tt class="py-name">onosIds</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-228" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId" class="py-name" href="#" onclick="return doclink('link-228', 'getAllIntentsId', 'link-153');">getAllIntentsId</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L624"></a><tt class="py-lineno"> 624</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-229" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-229', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Submitted intents: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">intentIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L625"></a><tt class="py-lineno"> 625</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-230" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-230', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Intents in ONOS: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosIds</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L626"></a><tt class="py-lineno"> 626</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L627"></a><tt class="py-lineno"> 627</tt> <tt class="py-line"> <tt id="link-231" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-231', 'intents', 'link-158');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-232" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-232', 'intents', 'link-158');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L628"></a><tt class="py-lineno"> 628</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L629"></a><tt class="py-lineno"> 629</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-233" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-233', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-string">'Count'</tt><tt class="py-op">,</tt> <tt class="py-string">'ID'</tt><tt class="py-op">,</tt> <tt class="py-string">'State'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L630"></a><tt class="py-lineno"> 630</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L631"></a><tt class="py-lineno"> 631</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L632"></a><tt class="py-lineno"> 632</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-234" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-234', 'intent', 'link-156');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-235" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-235', 'intents', 'link-158');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L633"></a><tt class="py-lineno"> 633</tt> <tt class="py-line"> <tt class="py-comment"># Iter through intents of a node</tt> </tt>
-<a name="L634"></a><tt class="py-lineno"> 634</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-236" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-236', 'intent', 'link-156');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L635"></a><tt class="py-lineno"> 635</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"INSTALLED"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L636"></a><tt class="py-lineno"> 636</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L637"></a><tt class="py-lineno"> 637</tt> <tt class="py-line"> <tt class="py-name">intentId</tt> <tt class="py-op">=</tt> <tt id="link-237" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-237', 'intent', 'link-156');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L638"></a><tt class="py-lineno"> 638</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L639"></a><tt class="py-lineno"> 639</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L640"></a><tt class="py-lineno"> 640</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-238" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-238', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L641"></a><tt class="py-lineno"> 641</tt> <tt class="py-line"> <tt class="py-comment"># add submitted intents not in the store</tt> </tt>
-<a name="L642"></a><tt class="py-lineno"> 642</tt> <tt class="py-line"> <tt class="py-name">tmplist</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt> <tt class="py-op">]</tt> </tt>
-<a name="L643"></a><tt class="py-lineno"> 643</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentIds</tt><tt class="py-op">:</tt> </tt>
-<a name="L644"></a><tt class="py-lineno"> 644</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">tmplist</tt><tt class="py-op">:</tt> </tt>
-<a name="L645"></a><tt class="py-lineno"> 645</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-string">" - "</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L646"></a><tt class="py-lineno"> 646</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L647"></a><tt class="py-lineno"> 647</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt><tt class="py-op">:</tt> </tt>
-<a name="L648"></a><tt class="py-lineno"> 648</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L649"></a><tt class="py-lineno"> 649</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-239" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-239', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L650"></a><tt class="py-lineno"> 650</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">s</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L651"></a><tt class="py-lineno"> 651</tt> <tt class="py-line"> <tt id="link-240" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-240', 'leaders', 'link-167');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-241" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-241', 'leaders', 'link-167');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L652"></a><tt class="py-lineno"> 652</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L653"></a><tt class="py-lineno"> 653</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L654"></a><tt class="py-lineno"> 654</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-242" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-242', 'leaders', 'link-167');">leaders</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L655"></a><tt class="py-lineno"> 655</tt> <tt class="py-line"> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-243" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-243', 'leaders', 'link-167');">leaders</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L656"></a><tt class="py-lineno"> 656</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-244" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-244', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedLeaders</tt><tt class="py-op">,</tt> </tt>
-<a name="L657"></a><tt class="py-lineno"> 657</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L658"></a><tt class="py-lineno"> 658</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L659"></a><tt class="py-lineno"> 659</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L660"></a><tt class="py-lineno"> 660</tt> <tt class="py-line"> <tt class="py-comment"># check for all intent partitions</tt> </tt>
-<a name="L661"></a><tt class="py-lineno"> 661</tt> <tt class="py-line"> <tt class="py-comment"># check for election</tt> </tt>
-<a name="L662"></a><tt class="py-lineno"> 662</tt> <tt class="py-line"> <tt class="py-name">topics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L663"></a><tt class="py-lineno"> 663</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">14</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L664"></a><tt class="py-lineno"> 664</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"intent-partition-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L665"></a><tt class="py-lineno"> 665</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: this should only be after we start the app</tt> </tt>
-<a name="L666"></a><tt class="py-lineno"> 666</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L667"></a><tt class="py-lineno"> 667</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-245" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-245', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">topics</tt> <tt class="py-op">)</tt> </tt>
-<a name="L668"></a><tt class="py-lineno"> 668</tt> <tt class="py-line"> <tt class="py-name">ONOStopics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-string">'topic'</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">]</tt> </tt>
-<a name="L669"></a><tt class="py-lineno"> 669</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">in</tt> <tt class="py-name">topics</tt><tt class="py-op">:</tt> </tt>
-<a name="L670"></a><tt class="py-lineno"> 670</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOStopics</tt><tt class="py-op">:</tt> </tt>
-<a name="L671"></a><tt class="py-lineno"> 671</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-246" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-246', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-247" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-247', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error: "</tt> <tt class="py-op">+</tt> <tt class="py-name">topic</tt> <tt class="py-op">+</tt> </tt>
-<a name="L672"></a><tt class="py-lineno"> 672</tt> <tt class="py-line"> <tt class="py-string">" not in leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L673"></a><tt class="py-lineno"> 673</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L674"></a><tt class="py-lineno"> 674</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L675"></a><tt class="py-lineno"> 675</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-248" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-248', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-249" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-249', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"leaders() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L676"></a><tt class="py-lineno"> 676</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L677"></a><tt class="py-lineno"> 677</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-250" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-250', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L678"></a><tt class="py-lineno"> 678</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-251" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-251', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-252" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-252', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-253" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-253', 'leaders', 'link-167');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L679"></a><tt class="py-lineno"> 679</tt> <tt class="py-line"> <tt class="py-comment"># Check all nodes</tt> </tt>
-<a name="L680"></a><tt class="py-lineno"> 680</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">missing</tt><tt class="py-op">:</tt> </tt>
-<a name="L681"></a><tt class="py-lineno"> 681</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-254" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-254', 'leaders', 'link-167');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L682"></a><tt class="py-lineno"> 682</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-255" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-255', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS1 leaders output: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L683"></a><tt class="py-lineno"> 683</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L684"></a><tt class="py-lineno"> 684</tt> <tt class="py-line"> <tt id="link-256" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-256', 'partitions', 'link-183');">partitions</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-257" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-257', 'partitions', 'link-183');">partitions</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L685"></a><tt class="py-lineno"> 685</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L686"></a><tt class="py-lineno"> 686</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-258" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-258', 'partitions', 'link-183');">partitions</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L687"></a><tt class="py-lineno"> 687</tt> <tt class="py-line"> <tt class="py-name">parsedPartitions</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-259" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-259', 'partitions', 'link-183');">partitions</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L688"></a><tt class="py-lineno"> 688</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-260" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-260', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPartitions</tt><tt class="py-op">,</tt> </tt>
-<a name="L689"></a><tt class="py-lineno"> 689</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L690"></a><tt class="py-lineno"> 690</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L691"></a><tt class="py-lineno"> 691</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L692"></a><tt class="py-lineno"> 692</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for a leader in all paritions</tt> </tt>
-<a name="L693"></a><tt class="py-lineno"> 693</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for consistency among nodes</tt> </tt>
-<a name="L694"></a><tt class="py-lineno"> 694</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L695"></a><tt class="py-lineno"> 695</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-261" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-261', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-262" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-262', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"partitions() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L696"></a><tt class="py-lineno"> 696</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L697"></a><tt class="py-lineno"> 697</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-263" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-263', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing partitions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L698"></a><tt class="py-lineno"> 698</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-264" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-264', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-265" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-265', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-266" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-266', 'partitions', 'link-183');">partitions</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L699"></a><tt class="py-lineno"> 699</tt> <tt class="py-line"> <tt id="link-267" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-267', 'pendingMap', 'link-194');">pendingMap</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-268" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-268', 'pendingMap', 'link-194');">pendingMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L700"></a><tt class="py-lineno"> 700</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L701"></a><tt class="py-lineno"> 701</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-269" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-269', 'pendingMap', 'link-194');">pendingMap</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L702"></a><tt class="py-lineno"> 702</tt> <tt class="py-line"> <tt class="py-name">parsedPending</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-270" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-270', 'pendingMap', 'link-194');">pendingMap</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L703"></a><tt class="py-lineno"> 703</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-271" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-271', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPending</tt><tt class="py-op">,</tt> </tt>
-<a name="L704"></a><tt class="py-lineno"> 704</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L705"></a><tt class="py-lineno"> 705</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L706"></a><tt class="py-lineno"> 706</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L707"></a><tt class="py-lineno"> 707</tt> <tt class="py-line"> <tt class="py-comment"># TODO check something here?</tt> </tt>
-<a name="L708"></a><tt class="py-lineno"> 708</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L709"></a><tt class="py-lineno"> 709</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-272" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-272', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-273" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-273', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pendingMap() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L710"></a><tt class="py-lineno"> 710</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L711"></a><tt class="py-lineno"> 711</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-274" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-274', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing pending map"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L712"></a><tt class="py-lineno"> 712</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-275" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-275', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-276" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-276', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-277" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-277', 'pendingMap', 'link-194');">pendingMap</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L713"></a><tt class="py-lineno"> 713</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE4"></a><div id="HAsingleInstanceRestart.CASE4-def"><a name="L714"></a><tt class="py-lineno"> 714</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE4-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE4');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE4">CASE4</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE4-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE4-expanded"><a name="L715"></a><tt class="py-lineno"> 715</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L716"></a><tt class="py-lineno"> 716</tt> <tt class="py-line"><tt class="py-docstring"> Ping across added host intents</tt> </tt>
-<a name="L717"></a><tt class="py-lineno"> 717</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L718"></a><tt class="py-lineno"> 718</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L719"></a><tt class="py-lineno"> 719</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L720"></a><tt class="py-lineno"> 720</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L721"></a><tt class="py-lineno"> 721</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L722"></a><tt class="py-lineno"> 722</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L723"></a><tt class="py-lineno"> 723</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-278" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-278', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Verify connectivity by sendind traffic across Intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L724"></a><tt class="py-lineno"> 724</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Ping across added host intents to check "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L725"></a><tt class="py-lineno"> 725</tt> <tt class="py-line"> <tt class="py-string">"functionality and check the state of "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L726"></a><tt class="py-lineno"> 726</tt> <tt class="py-line"> <tt class="py-string">"the intent"</tt> </tt>
-<a name="L727"></a><tt class="py-lineno"> 727</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-279" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-279', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Ping across added host intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L728"></a><tt class="py-lineno"> 728</tt> <tt class="py-line"> <tt class="py-name">PingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L729"></a><tt class="py-lineno"> 729</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-number">18</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L730"></a><tt class="py-lineno"> 730</tt> <tt class="py-line"> <tt class="py-name">ping</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-280" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingHost()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingHost,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingHost()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingHost"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingHost
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingHost" class="py-name" href="#" onclick="return doclink('link-280', 'pingHost', 'link-280');">pingHost</a></tt><tt class="py-op">(</tt> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-string">"h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L731"></a><tt class="py-lineno"> 731</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-string">"h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L732"></a><tt class="py-lineno"> 732</tt> <tt class="py-line"> <tt class="py-name">PingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">PingResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ping</tt> </tt>
-<a name="L733"></a><tt class="py-lineno"> 733</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ping</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L734"></a><tt class="py-lineno"> 734</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-281" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-281', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Ping failed between h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L735"></a><tt class="py-lineno"> 735</tt> <tt class="py-line"> <tt class="py-string">" and h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L736"></a><tt class="py-lineno"> 736</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ping</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L737"></a><tt class="py-lineno"> 737</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-282" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-282', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Ping test passed!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L738"></a><tt class="py-lineno"> 738</tt> <tt class="py-line"> <tt class="py-comment"># Don't set PingResult or you'd override failures</tt> </tt>
-<a name="L739"></a><tt class="py-lineno"> 739</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">PingResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L740"></a><tt class="py-lineno"> 740</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-283" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-283', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-284" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-284', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L741"></a><tt class="py-lineno"> 741</tt> <tt class="py-line"> <tt class="py-string">"Intents have not been installed correctly, pings failed."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L742"></a><tt class="py-lineno"> 742</tt> <tt class="py-line"> <tt class="py-comment"># TODO: pretty print</tt> </tt>
-<a name="L743"></a><tt class="py-lineno"> 743</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-285" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-285', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS1 intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L744"></a><tt class="py-lineno"> 744</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L745"></a><tt class="py-lineno"> 745</tt> <tt class="py-line"> <tt class="py-name">tmpIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-286" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-286', 'intents', 'link-158');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L746"></a><tt class="py-lineno"> 746</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-287" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-287', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">tmpIntents</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L747"></a><tt class="py-lineno"> 747</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L748"></a><tt class="py-lineno"> 748</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L749"></a><tt class="py-lineno"> 749</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L750"></a><tt class="py-lineno"> 750</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L751"></a><tt class="py-lineno"> 751</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-288" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-288', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">tmpIntents</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L752"></a><tt class="py-lineno"> 752</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L753"></a><tt class="py-lineno"> 753</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L754"></a><tt class="py-lineno"> 754</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">PingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L755"></a><tt class="py-lineno"> 755</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents have been installed correctly and pings work"</tt><tt class="py-op">,</tt> </tt>
-<a name="L756"></a><tt class="py-lineno"> 756</tt> <tt class="py-line"> <tt id="link-289" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-289', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intents have not been installed correctly, pings failed."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L757"></a><tt class="py-lineno"> 757</tt> <tt class="py-line"> </tt>
-<a name="L758"></a><tt class="py-lineno"> 758</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-290" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-290', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check Intent state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L759"></a><tt class="py-lineno"> 759</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L760"></a><tt class="py-lineno"> 760</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L761"></a><tt class="py-lineno"> 761</tt> <tt class="py-line"> <tt id="link-291" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-291', 'intents', 'link-158');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-292" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-292', 'intents', 'link-158');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L762"></a><tt class="py-lineno"> 762</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L763"></a><tt class="py-lineno"> 763</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-293" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-293', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-string">'Count'</tt><tt class="py-op">,</tt> <tt class="py-string">'ID'</tt><tt class="py-op">,</tt> <tt class="py-string">'State'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L764"></a><tt class="py-lineno"> 764</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L765"></a><tt class="py-lineno"> 765</tt> <tt class="py-line"> <tt class="py-comment"># Iter through intents of a node</tt> </tt>
-<a name="L766"></a><tt class="py-lineno"> 766</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L767"></a><tt class="py-lineno"> 767</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-294" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-294', 'intent', 'link-156');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-295" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-295', 'intents', 'link-158');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L768"></a><tt class="py-lineno"> 768</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-296" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-296', 'intent', 'link-156');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L769"></a><tt class="py-lineno"> 769</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"INSTALLED"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L770"></a><tt class="py-lineno"> 770</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L771"></a><tt class="py-lineno"> 771</tt> <tt class="py-line"> <tt class="py-name">intentId</tt> <tt class="py-op">=</tt> <tt id="link-297" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-297', 'intent', 'link-156');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L772"></a><tt class="py-lineno"> 772</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L773"></a><tt class="py-lineno"> 773</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L774"></a><tt class="py-lineno"> 774</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-298" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-298', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing intents."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L775"></a><tt class="py-lineno"> 775</tt> <tt class="py-line"> <tt class="py-comment"># Print states</tt> </tt>
-<a name="L776"></a><tt class="py-lineno"> 776</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L777"></a><tt class="py-lineno"> 777</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt><tt class="py-op">:</tt> </tt>
-<a name="L778"></a><tt class="py-lineno"> 778</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L779"></a><tt class="py-lineno"> 779</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-299" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-299', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L780"></a><tt class="py-lineno"> 780</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">s</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L781"></a><tt class="py-lineno"> 781</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">installedCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L782"></a><tt class="py-lineno"> 782</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents are all INSTALLED"</tt><tt class="py-op">,</tt> </tt>
-<a name="L783"></a><tt class="py-lineno"> 783</tt> <tt class="py-line"> <tt id="link-300" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-300', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intents are not all in "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L784"></a><tt class="py-lineno"> 784</tt> <tt class="py-line"> <tt class="py-string">"INSTALLED state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L785"></a><tt class="py-lineno"> 785</tt> <tt class="py-line"> </tt>
-<a name="L786"></a><tt class="py-lineno"> 786</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-301" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-301', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check leadership of topics"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L787"></a><tt class="py-lineno"> 787</tt> <tt class="py-line"> <tt id="link-302" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-302', 'leaders', 'link-167');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-303" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-303', 'leaders', 'link-167');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L788"></a><tt class="py-lineno"> 788</tt> <tt class="py-line"> <tt class="py-name">topicCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L789"></a><tt class="py-lineno"> 789</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L790"></a><tt class="py-lineno"> 790</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-304" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-304', 'leaders', 'link-167');">leaders</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L791"></a><tt class="py-lineno"> 791</tt> <tt class="py-line"> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-305" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-305', 'leaders', 'link-167');">leaders</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L792"></a><tt class="py-lineno"> 792</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-306" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-306', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedLeaders</tt><tt class="py-op">,</tt> </tt>
-<a name="L793"></a><tt class="py-lineno"> 793</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L794"></a><tt class="py-lineno"> 794</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L795"></a><tt class="py-lineno"> 795</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L796"></a><tt class="py-lineno"> 796</tt> <tt class="py-line"> <tt class="py-comment"># check for all intent partitions</tt> </tt>
-<a name="L797"></a><tt class="py-lineno"> 797</tt> <tt class="py-line"> <tt class="py-comment"># check for election</tt> </tt>
-<a name="L798"></a><tt class="py-lineno"> 798</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Look at Devices as topics now that it uses this system</tt> </tt>
-<a name="L799"></a><tt class="py-lineno"> 799</tt> <tt class="py-line"> <tt class="py-name">topics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L800"></a><tt class="py-lineno"> 800</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">14</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L801"></a><tt class="py-lineno"> 801</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"intent-partition-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L802"></a><tt class="py-lineno"> 802</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: this should only be after we start the app</tt> </tt>
-<a name="L803"></a><tt class="py-lineno"> 803</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: topics.append( "org.onosproject.election" )</tt> </tt>
-<a name="L804"></a><tt class="py-lineno"> 804</tt> <tt class="py-line"> <tt class="py-comment"># Print leaders output</tt> </tt>
-<a name="L805"></a><tt class="py-lineno"> 805</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-307" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-307', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">topics</tt> <tt class="py-op">)</tt> </tt>
-<a name="L806"></a><tt class="py-lineno"> 806</tt> <tt class="py-line"> <tt class="py-name">ONOStopics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-string">'topic'</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">]</tt> </tt>
-<a name="L807"></a><tt class="py-lineno"> 807</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">in</tt> <tt class="py-name">topics</tt><tt class="py-op">:</tt> </tt>
-<a name="L808"></a><tt class="py-lineno"> 808</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOStopics</tt><tt class="py-op">:</tt> </tt>
-<a name="L809"></a><tt class="py-lineno"> 809</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-308" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-308', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-309" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-309', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error: "</tt> <tt class="py-op">+</tt> <tt class="py-name">topic</tt> <tt class="py-op">+</tt> </tt>
-<a name="L810"></a><tt class="py-lineno"> 810</tt> <tt class="py-line"> <tt class="py-string">" not in leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L811"></a><tt class="py-lineno"> 811</tt> <tt class="py-line"> <tt class="py-name">topicCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L812"></a><tt class="py-lineno"> 812</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L813"></a><tt class="py-lineno"> 813</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-310" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-310', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-311" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-311', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"leaders() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L814"></a><tt class="py-lineno"> 814</tt> <tt class="py-line"> <tt class="py-name">topicCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L815"></a><tt class="py-lineno"> 815</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L816"></a><tt class="py-lineno"> 816</tt> <tt class="py-line"> <tt class="py-name">topicCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L817"></a><tt class="py-lineno"> 817</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-312" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-312', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L818"></a><tt class="py-lineno"> 818</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-313" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-313', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-314" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-314', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-315" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-315', 'leaders', 'link-167');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L819"></a><tt class="py-lineno"> 819</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Check for a leader of these topics</tt> </tt>
-<a name="L820"></a><tt class="py-lineno"> 820</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">topicCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L821"></a><tt class="py-lineno"> 821</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"intent Partitions is in leaders"</tt><tt class="py-op">,</tt> </tt>
-<a name="L822"></a><tt class="py-lineno"> 822</tt> <tt class="py-line"> <tt id="link-316" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-316', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Some topics were lost "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L823"></a><tt class="py-lineno"> 823</tt> <tt class="py-line"> <tt class="py-comment"># Print partitions</tt> </tt>
-<a name="L824"></a><tt class="py-lineno"> 824</tt> <tt class="py-line"> <tt id="link-317" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-317', 'partitions', 'link-183');">partitions</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-318" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-318', 'partitions', 'link-183');">partitions</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L825"></a><tt class="py-lineno"> 825</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L826"></a><tt class="py-lineno"> 826</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-319" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-319', 'partitions', 'link-183');">partitions</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L827"></a><tt class="py-lineno"> 827</tt> <tt class="py-line"> <tt class="py-name">parsedPartitions</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-320" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-320', 'partitions', 'link-183');">partitions</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L828"></a><tt class="py-lineno"> 828</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-321" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-321', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPartitions</tt><tt class="py-op">,</tt> </tt>
-<a name="L829"></a><tt class="py-lineno"> 829</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L830"></a><tt class="py-lineno"> 830</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L831"></a><tt class="py-lineno"> 831</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L832"></a><tt class="py-lineno"> 832</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for a leader in all paritions</tt> </tt>
-<a name="L833"></a><tt class="py-lineno"> 833</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for consistency among nodes</tt> </tt>
-<a name="L834"></a><tt class="py-lineno"> 834</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L835"></a><tt class="py-lineno"> 835</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-322" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-322', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-323" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-323', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"partitions() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L836"></a><tt class="py-lineno"> 836</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L837"></a><tt class="py-lineno"> 837</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-324" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-324', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing partitions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L838"></a><tt class="py-lineno"> 838</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-325" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-325', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-326" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-326', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-327" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-327', 'partitions', 'link-183');">partitions</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L839"></a><tt class="py-lineno"> 839</tt> <tt class="py-line"> <tt class="py-comment"># Print Pending Map</tt> </tt>
-<a name="L840"></a><tt class="py-lineno"> 840</tt> <tt class="py-line"> <tt id="link-328" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-328', 'pendingMap', 'link-194');">pendingMap</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-329" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-329', 'pendingMap', 'link-194');">pendingMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L841"></a><tt class="py-lineno"> 841</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L842"></a><tt class="py-lineno"> 842</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-330" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-330', 'pendingMap', 'link-194');">pendingMap</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L843"></a><tt class="py-lineno"> 843</tt> <tt class="py-line"> <tt class="py-name">parsedPending</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-331" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-331', 'pendingMap', 'link-194');">pendingMap</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L844"></a><tt class="py-lineno"> 844</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-332" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-332', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPending</tt><tt class="py-op">,</tt> </tt>
-<a name="L845"></a><tt class="py-lineno"> 845</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L846"></a><tt class="py-lineno"> 846</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L847"></a><tt class="py-lineno"> 847</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L848"></a><tt class="py-lineno"> 848</tt> <tt class="py-line"> <tt class="py-comment"># TODO check something here?</tt> </tt>
-<a name="L849"></a><tt class="py-lineno"> 849</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L850"></a><tt class="py-lineno"> 850</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-333" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-333', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-334" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-334', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pendingMap() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L851"></a><tt class="py-lineno"> 851</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L852"></a><tt class="py-lineno"> 852</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-335" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-335', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing pending map"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L853"></a><tt class="py-lineno"> 853</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-336" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-336', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-337" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-337', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-338" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-338', 'pendingMap', 'link-194');">pendingMap</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L854"></a><tt class="py-lineno"> 854</tt> <tt class="py-line"> </tt>
-<a name="L855"></a><tt class="py-lineno"> 855</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">installedCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L856"></a><tt class="py-lineno"> 856</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-339" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-339', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting 60 seconds to see if the state of "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L857"></a><tt class="py-lineno"> 857</tt> <tt class="py-line"> <tt class="py-string">"intents change"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L858"></a><tt class="py-lineno"> 858</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">60</tt> <tt class="py-op">)</tt> </tt>
-<a name="L859"></a><tt class="py-lineno"> 859</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L860"></a><tt class="py-lineno"> 860</tt> <tt class="py-line"> <tt id="link-340" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-340', 'intents', 'link-158');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-341" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-341', 'intents', 'link-158');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L861"></a><tt class="py-lineno"> 861</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L862"></a><tt class="py-lineno"> 862</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-342" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-342', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt class="py-string">'Count'</tt><tt class="py-op">,</tt> <tt class="py-string">'ID'</tt><tt class="py-op">,</tt> <tt class="py-string">'State'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L863"></a><tt class="py-lineno"> 863</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L864"></a><tt class="py-lineno"> 864</tt> <tt class="py-line"> <tt class="py-comment"># Iter through intents of a node</tt> </tt>
-<a name="L865"></a><tt class="py-lineno"> 865</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L866"></a><tt class="py-lineno"> 866</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-343" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-343', 'intent', 'link-156');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-344" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-344', 'intents', 'link-158');">intents</a></tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L867"></a><tt class="py-lineno"> 867</tt> <tt class="py-line"> <tt class="py-name">state</tt> <tt class="py-op">=</tt> <tt id="link-345" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-345', 'intent', 'link-156');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'state'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L868"></a><tt class="py-lineno"> 868</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"INSTALLED"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">state</tt><tt class="py-op">:</tt> </tt>
-<a name="L869"></a><tt class="py-lineno"> 869</tt> <tt class="py-line"> <tt class="py-name">installedCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L870"></a><tt class="py-lineno"> 870</tt> <tt class="py-line"> <tt class="py-name">intentId</tt> <tt class="py-op">=</tt> <tt id="link-346" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-346', 'intent', 'link-156');">intent</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'id'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt> </tt>
-<a name="L871"></a><tt class="py-lineno"> 871</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">intentId</tt><tt class="py-op">,</tt> <tt class="py-name">state</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L872"></a><tt class="py-lineno"> 872</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L873"></a><tt class="py-lineno"> 873</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-347" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-347', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing intents."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L874"></a><tt class="py-lineno"> 874</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L875"></a><tt class="py-lineno"> 875</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentStates</tt><tt class="py-op">:</tt> </tt>
-<a name="L876"></a><tt class="py-lineno"> 876</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L877"></a><tt class="py-lineno"> 877</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-348" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-348', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"%-6s%-15s%-15s"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L878"></a><tt class="py-lineno"> 878</tt> <tt class="py-line"> <tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">s</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L879"></a><tt class="py-lineno"> 879</tt> <tt class="py-line"> <tt id="link-349" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-349', 'leaders', 'link-167');">leaders</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-350" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-350', 'leaders', 'link-167');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L880"></a><tt class="py-lineno"> 880</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L881"></a><tt class="py-lineno"> 881</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L882"></a><tt class="py-lineno"> 882</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-351" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-351', 'leaders', 'link-167');">leaders</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L883"></a><tt class="py-lineno"> 883</tt> <tt class="py-line"> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-352" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-352', 'leaders', 'link-167');">leaders</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L884"></a><tt class="py-lineno"> 884</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-353" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-353', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedLeaders</tt><tt class="py-op">,</tt> </tt>
-<a name="L885"></a><tt class="py-lineno"> 885</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L886"></a><tt class="py-lineno"> 886</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L887"></a><tt class="py-lineno"> 887</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L888"></a><tt class="py-lineno"> 888</tt> <tt class="py-line"> <tt class="py-comment"># check for all intent partitions</tt> </tt>
-<a name="L889"></a><tt class="py-lineno"> 889</tt> <tt class="py-line"> <tt class="py-comment"># check for election</tt> </tt>
-<a name="L890"></a><tt class="py-lineno"> 890</tt> <tt class="py-line"> <tt class="py-name">topics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L891"></a><tt class="py-lineno"> 891</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">14</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L892"></a><tt class="py-lineno"> 892</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"intent-partition-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L893"></a><tt class="py-lineno"> 893</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: this should only be after we start the app</tt> </tt>
-<a name="L894"></a><tt class="py-lineno"> 894</tt> <tt class="py-line"> <tt class="py-name">topics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L895"></a><tt class="py-lineno"> 895</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-354" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-354', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">topics</tt> <tt class="py-op">)</tt> </tt>
-<a name="L896"></a><tt class="py-lineno"> 896</tt> <tt class="py-line"> <tt class="py-name">ONOStopics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-string">'topic'</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parsedLeaders</tt> <tt class="py-op">]</tt> </tt>
-<a name="L897"></a><tt class="py-lineno"> 897</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">in</tt> <tt class="py-name">topics</tt><tt class="py-op">:</tt> </tt>
-<a name="L898"></a><tt class="py-lineno"> 898</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">topic</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOStopics</tt><tt class="py-op">:</tt> </tt>
-<a name="L899"></a><tt class="py-lineno"> 899</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-355" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-355', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-356" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-356', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error: "</tt> <tt class="py-op">+</tt> <tt class="py-name">topic</tt> <tt class="py-op">+</tt> </tt>
-<a name="L900"></a><tt class="py-lineno"> 900</tt> <tt class="py-line"> <tt class="py-string">" not in leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L901"></a><tt class="py-lineno"> 901</tt> <tt class="py-line"> <tt class="py-name">missing</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L902"></a><tt class="py-lineno"> 902</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L903"></a><tt class="py-lineno"> 903</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-357" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-357', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-358" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-358', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"leaders() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L904"></a><tt class="py-lineno"> 904</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L905"></a><tt class="py-lineno"> 905</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-359" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-359', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing leaders"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L906"></a><tt class="py-lineno"> 906</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-360" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-360', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-361" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-361', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-362" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-362', 'leaders', 'link-167');">leaders</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L907"></a><tt class="py-lineno"> 907</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">missing</tt><tt class="py-op">:</tt> </tt>
-<a name="L908"></a><tt class="py-lineno"> 908</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-363" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-363', 'leaders', 'link-167');">leaders</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L909"></a><tt class="py-lineno"> 909</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-364" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-364', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS1 leaders output: \n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L910"></a><tt class="py-lineno"> 910</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">response</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L911"></a><tt class="py-lineno"> 911</tt> <tt class="py-line"> <tt id="link-365" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-365', 'partitions', 'link-183');">partitions</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-366" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-366', 'partitions', 'link-183');">partitions</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L912"></a><tt class="py-lineno"> 912</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L913"></a><tt class="py-lineno"> 913</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-367" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-367', 'partitions', 'link-183');">partitions</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L914"></a><tt class="py-lineno"> 914</tt> <tt class="py-line"> <tt class="py-name">parsedPartitions</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-368" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-368', 'partitions', 'link-183');">partitions</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L915"></a><tt class="py-lineno"> 915</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-369" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-369', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPartitions</tt><tt class="py-op">,</tt> </tt>
-<a name="L916"></a><tt class="py-lineno"> 916</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L917"></a><tt class="py-lineno"> 917</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L918"></a><tt class="py-lineno"> 918</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L919"></a><tt class="py-lineno"> 919</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for a leader in all paritions</tt> </tt>
-<a name="L920"></a><tt class="py-lineno"> 920</tt> <tt class="py-line"> <tt class="py-comment"># TODO check for consistency among nodes</tt> </tt>
-<a name="L921"></a><tt class="py-lineno"> 921</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L922"></a><tt class="py-lineno"> 922</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-370" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-370', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-371" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-371', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"partitions() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L923"></a><tt class="py-lineno"> 923</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L924"></a><tt class="py-lineno"> 924</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-372" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-372', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing partitions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L925"></a><tt class="py-lineno"> 925</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-373" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-373', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-374" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-374', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-375" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions" class="py-name" href="#" onclick="return doclink('link-375', 'partitions', 'link-183');">partitions</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L926"></a><tt class="py-lineno"> 926</tt> <tt class="py-line"> <tt id="link-376" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-376', 'pendingMap', 'link-194');">pendingMap</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-377" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-377', 'pendingMap', 'link-194');">pendingMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L927"></a><tt class="py-lineno"> 927</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L928"></a><tt class="py-lineno"> 928</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-378" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-378', 'pendingMap', 'link-194');">pendingMap</a></tt> <tt class="py-op">:</tt> </tt>
-<a name="L929"></a><tt class="py-lineno"> 929</tt> <tt class="py-line"> <tt class="py-name">parsedPending</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-379" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-379', 'pendingMap', 'link-194');">pendingMap</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L930"></a><tt class="py-lineno"> 930</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-380" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-380', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">parsedPending</tt><tt class="py-op">,</tt> </tt>
-<a name="L931"></a><tt class="py-lineno"> 931</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L932"></a><tt class="py-lineno"> 932</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L933"></a><tt class="py-lineno"> 933</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L934"></a><tt class="py-lineno"> 934</tt> <tt class="py-line"> <tt class="py-comment"># TODO check something here?</tt> </tt>
-<a name="L935"></a><tt class="py-lineno"> 935</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L936"></a><tt class="py-lineno"> 936</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-381" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-381', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-382" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-382', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pendingMap() returned None"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L937"></a><tt class="py-lineno"> 937</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L938"></a><tt class="py-lineno"> 938</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-383" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-383', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing pending map"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L939"></a><tt class="py-lineno"> 939</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-384" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-384', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-385" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-385', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-386" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap" class="py-name" href="#" onclick="return doclink('link-386', 'pendingMap', 'link-194');">pendingMap</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L940"></a><tt class="py-lineno"> 940</tt> <tt class="py-line"> <tt class="py-comment"># Print flowrules</tt> </tt>
-<a name="L941"></a><tt class="py-lineno"> 941</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-387" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-387', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-388" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#flows,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#flows"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-388', 'flows', 'link-388');">flows</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L942"></a><tt class="py-lineno"> 942</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-389" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-389', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Wait a minute then ping again"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L943"></a><tt class="py-lineno"> 943</tt> <tt class="py-line"> <tt class="py-comment"># the wait is above</tt> </tt>
-<a name="L944"></a><tt class="py-lineno"> 944</tt> <tt class="py-line"> <tt class="py-name">PingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L945"></a><tt class="py-lineno"> 945</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-number">18</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L946"></a><tt class="py-lineno"> 946</tt> <tt class="py-line"> <tt class="py-name">ping</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-390" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingHost
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingHost" class="py-name" href="#" onclick="return doclink('link-390', 'pingHost', 'link-280');">pingHost</a></tt><tt class="py-op">(</tt> <tt class="py-name">src</tt><tt class="py-op">=</tt><tt class="py-string">"h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L947"></a><tt class="py-lineno"> 947</tt> <tt class="py-line"> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-string">"h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L948"></a><tt class="py-lineno"> 948</tt> <tt class="py-line"> <tt class="py-name">PingResult</tt> <tt class="py-op">=</tt> <tt class="py-name">PingResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ping</tt> </tt>
-<a name="L949"></a><tt class="py-lineno"> 949</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ping</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L950"></a><tt class="py-lineno"> 950</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-391" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-391', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Ping failed between h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L951"></a><tt class="py-lineno"> 951</tt> <tt class="py-line"> <tt class="py-string">" and h"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L952"></a><tt class="py-lineno"> 952</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ping</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L953"></a><tt class="py-lineno"> 953</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-392" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-392', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Ping test passed!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L954"></a><tt class="py-lineno"> 954</tt> <tt class="py-line"> <tt class="py-comment"># Don't set PingResult or you'd override failures</tt> </tt>
-<a name="L955"></a><tt class="py-lineno"> 955</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">PingResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L956"></a><tt class="py-lineno"> 956</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-393" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-393', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-394" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-394', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L957"></a><tt class="py-lineno"> 957</tt> <tt class="py-line"> <tt class="py-string">"Intents have not been installed correctly, pings failed."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L958"></a><tt class="py-lineno"> 958</tt> <tt class="py-line"> <tt class="py-comment"># TODO: pretty print</tt> </tt>
-<a name="L959"></a><tt class="py-lineno"> 959</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-395" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-395', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS1 intents: "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L960"></a><tt class="py-lineno"> 960</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L961"></a><tt class="py-lineno"> 961</tt> <tt class="py-line"> <tt class="py-name">tmpIntents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-396" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-396', 'intents', 'link-158');">intents</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L962"></a><tt class="py-lineno"> 962</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-397" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-397', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">tmpIntents</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L963"></a><tt class="py-lineno"> 963</tt> <tt class="py-line"> <tt class="py-name">sort_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L964"></a><tt class="py-lineno"> 964</tt> <tt class="py-line"> <tt class="py-name">indent</tt><tt class="py-op">=</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> </tt>
-<a name="L965"></a><tt class="py-lineno"> 965</tt> <tt class="py-line"> <tt class="py-name">separators</tt><tt class="py-op">=</tt><tt class="py-op">(</tt> <tt class="py-string">','</tt><tt class="py-op">,</tt> <tt class="py-string">': '</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L966"></a><tt class="py-lineno"> 966</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L967"></a><tt class="py-lineno"> 967</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-398" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-398', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">tmpIntents</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L968"></a><tt class="py-lineno"> 968</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L969"></a><tt class="py-lineno"> 969</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L970"></a><tt class="py-lineno"> 970</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">PingResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L971"></a><tt class="py-lineno"> 971</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents have been installed correctly and pings work"</tt><tt class="py-op">,</tt> </tt>
-<a name="L972"></a><tt class="py-lineno"> 972</tt> <tt class="py-line"> <tt id="link-399" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-399', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Intents have not been installed correctly, pings failed."</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L973"></a><tt class="py-lineno"> 973</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE5"></a><div id="HAsingleInstanceRestart.CASE5-def"><a name="L974"></a><tt class="py-lineno"> 974</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE5-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE5');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE5">CASE5</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE5-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE5-expanded"><a name="L975"></a><tt class="py-lineno"> 975</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L976"></a><tt class="py-lineno"> 976</tt> <tt class="py-line"><tt class="py-docstring"> Reading state of ONOS</tt> </tt>
-<a name="L977"></a><tt class="py-lineno"> 977</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L978"></a><tt class="py-lineno"> 978</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L979"></a><tt class="py-lineno"> 979</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L980"></a><tt class="py-lineno"> 980</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L981"></a><tt class="py-lineno"> 981</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L982"></a><tt class="py-lineno"> 982</tt> <tt class="py-line"> </tt>
-<a name="L983"></a><tt class="py-lineno"> 983</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-400" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-400', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Setting up and gathering data for current state"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L984"></a><tt class="py-lineno"> 984</tt> <tt class="py-line"> <tt class="py-comment"># The general idea for this test case is to pull the state of</tt> </tt>
-<a name="L985"></a><tt class="py-lineno"> 985</tt> <tt class="py-line"> <tt class="py-comment"># ( intents,flows, topology,... ) from each ONOS node</tt> </tt>
-<a name="L986"></a><tt class="py-lineno"> 986</tt> <tt class="py-line"> <tt class="py-comment"># We can then compare them with each other and also with past states</tt> </tt>
-<a name="L987"></a><tt class="py-lineno"> 987</tt> <tt class="py-line"> </tt>
-<a name="L988"></a><tt class="py-lineno"> 988</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-401" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-401', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check that each switch has a master"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L989"></a><tt class="py-lineno"> 989</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">mastershipState</tt> </tt>
-<a name="L990"></a><tt class="py-lineno"> 990</tt> <tt class="py-line"> <tt class="py-name">mastershipState</tt> <tt class="py-op">=</tt> <tt class="py-string">'[]'</tt> </tt>
-<a name="L991"></a><tt class="py-lineno"> 991</tt> <tt class="py-line"> </tt>
-<a name="L992"></a><tt class="py-lineno"> 992</tt> <tt class="py-line"> <tt class="py-comment"># Assert that each device has a master</tt> </tt>
-<a name="L993"></a><tt class="py-lineno"> 993</tt> <tt class="py-line"> <tt id="link-402" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#rolesNotNull"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-402', 'rolesNotNull', 'link-402');">rolesNotNull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-403" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-403', 'rolesNotNull', 'link-402');">rolesNotNull</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L994"></a><tt class="py-lineno"> 994</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L995"></a><tt class="py-lineno"> 995</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L996"></a><tt class="py-lineno"> 996</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt id="link-404" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-404', 'rolesNotNull', 'link-402');">rolesNotNull</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L997"></a><tt class="py-lineno"> 997</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Each device has a master"</tt><tt class="py-op">,</tt> </tt>
-<a name="L998"></a><tt class="py-lineno"> 998</tt> <tt class="py-line"> <tt id="link-405" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-405', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Some devices don't have a master assigned"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L999"></a><tt class="py-lineno"> 999</tt> <tt class="py-line"> </tt>
-<a name="L1000"></a><tt class="py-lineno">1000</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-406" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-406', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the Mastership of each switch"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1001"></a><tt class="py-lineno">1001</tt> <tt class="py-line"> <tt class="py-name">ONOS1Mastership</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-407" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.roles()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#roles"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.roles" class="py-name" href="#" onclick="return doclink('link-407', 'roles', 'link-407');">roles</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1002"></a><tt class="py-lineno">1002</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Make this a meaningful check</tt> </tt>
-<a name="L1003"></a><tt class="py-lineno">1003</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOS1Mastership</tt> <tt class="py-keyword">or</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOS1Mastership</tt><tt class="py-op">:</tt> </tt>
-<a name="L1004"></a><tt class="py-lineno">1004</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-408" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-408', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-409" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-409', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS roles"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1005"></a><tt class="py-lineno">1005</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-410" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-410', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> </tt>
-<a name="L1006"></a><tt class="py-lineno">1006</tt> <tt class="py-line"> <tt class="py-string">"ONOS1 mastership response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1007"></a><tt class="py-lineno">1007</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOS1Mastership</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1008"></a><tt class="py-lineno">1008</tt> <tt class="py-line"> <tt class="py-name">consistentMastership</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1009"></a><tt class="py-lineno">1009</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1010"></a><tt class="py-lineno">1010</tt> <tt class="py-line"> <tt class="py-name">mastershipState</tt> <tt class="py-op">=</tt> <tt class="py-name">ONOS1Mastership</tt> </tt>
-<a name="L1011"></a><tt class="py-lineno">1011</tt> <tt class="py-line"> <tt class="py-name">consistentMastership</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1012"></a><tt class="py-lineno">1012</tt> <tt class="py-line"> </tt>
-<a name="L1013"></a><tt class="py-lineno">1013</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-411" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-411', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the intents from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1014"></a><tt class="py-lineno">1014</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">intentState</tt> </tt>
-<a name="L1015"></a><tt class="py-lineno">1015</tt> <tt class="py-line"> <tt class="py-name">intentState</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1016"></a><tt class="py-lineno">1016</tt> <tt class="py-line"> <tt class="py-name">ONOS1Intents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-412" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-412', 'intents', 'link-158');">intents</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1017"></a><tt class="py-lineno">1017</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1018"></a><tt class="py-lineno">1018</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOS1Intents</tt> <tt class="py-keyword">or</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOS1Intents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1019"></a><tt class="py-lineno">1019</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-413" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-413', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-414" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-414', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1020"></a><tt class="py-lineno">1020</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-415" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-415', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS1 intents response: "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOS1Intents</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1021"></a><tt class="py-lineno">1021</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1022"></a><tt class="py-lineno">1022</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1023"></a><tt class="py-lineno">1023</tt> <tt class="py-line"> </tt>
-<a name="L1024"></a><tt class="py-lineno">1024</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-416" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-416', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the flows from each controller"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1025"></a><tt class="py-lineno">1025</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">flowState</tt> </tt>
-<a name="L1026"></a><tt class="py-lineno">1026</tt> <tt class="py-line"> <tt class="py-name">flowState</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1027"></a><tt class="py-lineno">1027</tt> <tt class="py-line"> <tt class="py-name">flowCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1028"></a><tt class="py-lineno">1028</tt> <tt class="py-line"> <tt class="py-name">ONOS1Flows</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-417" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-417', 'flows', 'link-388');">flows</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1029"></a><tt class="py-lineno">1029</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOS1Flows</tt> <tt class="py-keyword">or</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOS1Flows</tt><tt class="py-op">:</tt> </tt>
-<a name="L1030"></a><tt class="py-lineno">1030</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-418" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-418', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-419" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-419', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS flows"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1031"></a><tt class="py-lineno">1031</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-420" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-420', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS1 flows repsponse: "</tt> <tt class="py-op">+</tt> <tt class="py-name">ONOS1Flows</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1032"></a><tt class="py-lineno">1032</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1033"></a><tt class="py-lineno">1033</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Do a better check, maybe compare flows on switches?</tt> </tt>
-<a name="L1034"></a><tt class="py-lineno">1034</tt> <tt class="py-line"> <tt class="py-name">flowState</tt> <tt class="py-op">=</tt> <tt class="py-name">ONOS1Flows</tt> </tt>
-<a name="L1035"></a><tt class="py-lineno">1035</tt> <tt class="py-line"> <tt class="py-name">flowCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1036"></a><tt class="py-lineno">1036</tt> <tt class="py-line"> </tt>
-<a name="L1037"></a><tt class="py-lineno">1037</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-421" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-421', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the OF Table entries"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1038"></a><tt class="py-lineno">1038</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt id="link-422" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-422', 'flows', 'link-388');">flows</a></tt> </tt>
-<a name="L1039"></a><tt class="py-lineno">1039</tt> <tt class="py-line"> <tt id="link-423" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-423', 'flows', 'link-388');">flows</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1040"></a><tt class="py-lineno">1040</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1041"></a><tt class="py-lineno">1041</tt> <tt class="py-line"> <tt id="link-424" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-424', 'flows', 'link-388');">flows</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-425" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getFlowTable()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getFlowTable"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getFlowTable" class="py-name" href="#" onclick="return doclink('link-425', 'getFlowTable', 'link-425');">getFlowTable</a></tt><tt class="py-op">(</tt> <tt class="py-number">1.3</tt><tt class="py-op">,</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1042"></a><tt class="py-lineno">1042</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">flowCheck</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1043"></a><tt class="py-lineno">1043</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">table</tt> <tt class="py-keyword">in</tt> <tt id="link-426" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-426', 'flows', 'link-388');">flows</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1044"></a><tt class="py-lineno">1044</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-427" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-427', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">table</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1045"></a><tt class="py-lineno">1045</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Compare switch flow tables with ONOS flow tables</tt> </tt>
-<a name="L1046"></a><tt class="py-lineno">1046</tt> <tt class="py-line"> </tt>
-<a name="L1047"></a><tt class="py-lineno">1047</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-428" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-428', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Collecting topology information from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1048"></a><tt class="py-lineno">1048</tt> <tt class="py-line"> <tt id="link-429" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-429', 'devices', 'link-106');">devices</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1049"></a><tt class="py-lineno">1049</tt> <tt class="py-line"> <tt id="link-430" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-430', 'devices', 'link-106');">devices</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-431" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-431', 'devices', 'link-106');">devices</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1050"></a><tt class="py-lineno">1050</tt> <tt class="py-line"> <tt id="link-432" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-432', 'hosts', 'link-145');">hosts</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1051"></a><tt class="py-lineno">1051</tt> <tt class="py-line"> <tt id="link-433" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-433', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-434" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-434', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1052"></a><tt class="py-lineno">1052</tt> <tt class="py-line"> <tt id="link-435" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#ports"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-435', 'ports', 'link-435');">ports</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1053"></a><tt class="py-lineno">1053</tt> <tt class="py-line"> <tt id="link-436" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-436', 'ports', 'link-435');">ports</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-437" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-437', 'ports', 'link-435');">ports</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1054"></a><tt class="py-lineno">1054</tt> <tt class="py-line"> <tt id="link-438" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#links,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#links"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-438', 'links', 'link-438');">links</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1055"></a><tt class="py-lineno">1055</tt> <tt class="py-line"> <tt id="link-439" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-439', 'links', 'link-438');">links</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-440" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-440', 'links', 'link-438');">links</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1056"></a><tt class="py-lineno">1056</tt> <tt class="py-line"> <tt id="link-441" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#clusters"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-441', 'clusters', 'link-441');">clusters</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1057"></a><tt class="py-lineno">1057</tt> <tt class="py-line"> <tt id="link-442" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-442', 'clusters', 'link-441');">clusters</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-443" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-443', 'clusters', 'link-441');">clusters</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1058"></a><tt class="py-lineno">1058</tt> <tt class="py-line"> </tt>
-<a name="L1059"></a><tt class="py-lineno">1059</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-444" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-444', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Each host has an IP address"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1060"></a><tt class="py-lineno">1060</tt> <tt class="py-line"> <tt class="py-name">ipResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1061"></a><tt class="py-lineno">1061</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-445" class="py-name" targets="Package TestON.drivers.common.api.controller=TestON.drivers.common.api.controller-module.html"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-445', 'controller', 'link-445');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-446" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-446', 'hosts', 'link-145');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1062"></a><tt class="py-lineno">1062</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-447" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-447', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1063"></a><tt class="py-lineno">1063</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt id="link-448" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-448', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-449" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-449', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1064"></a><tt class="py-lineno">1064</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">host</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'ipAddresses'</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1065"></a><tt class="py-lineno">1065</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-450" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-450', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-451" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-451', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1066"></a><tt class="py-lineno">1066</tt> <tt class="py-line"> <tt class="py-string">"DEBUG:Error with host ips on controller"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1067"></a><tt class="py-lineno">1067</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1068"></a><tt class="py-lineno">1068</tt> <tt class="py-line"> <tt class="py-name">ipResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1069"></a><tt class="py-lineno">1069</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1070"></a><tt class="py-lineno">1070</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1071"></a><tt class="py-lineno">1071</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">ipResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1072"></a><tt class="py-lineno">1072</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"The ips of the hosts aren't empty"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1073"></a><tt class="py-lineno">1073</tt> <tt class="py-line"> <tt id="link-452" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-452', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"The ip of at least one host is missing"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1074"></a><tt class="py-lineno">1074</tt> <tt class="py-line"> </tt>
-<a name="L1075"></a><tt class="py-lineno">1075</tt> <tt class="py-line"> <tt class="py-comment"># there should always only be one cluster</tt> </tt>
-<a name="L1076"></a><tt class="py-lineno">1076</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-453" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-453', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"There is only one dataplane cluster"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1077"></a><tt class="py-lineno">1077</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1078"></a><tt class="py-lineno">1078</tt> <tt class="py-line"> <tt class="py-name">numClusters</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-454" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-454', 'clusters', 'link-441');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1079"></a><tt class="py-lineno">1079</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1080"></a><tt class="py-lineno">1080</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-455" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-455', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Error parsing clusters[0]: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1081"></a><tt class="py-lineno">1081</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-456" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-456', 'clusters', 'link-441');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1082"></a><tt class="py-lineno">1082</tt> <tt class="py-line"> <tt class="py-name">clusterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1083"></a><tt class="py-lineno">1083</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">numClusters</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1084"></a><tt class="py-lineno">1084</tt> <tt class="py-line"> <tt class="py-name">clusterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1085"></a><tt class="py-lineno">1085</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1086"></a><tt class="py-lineno">1086</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1087"></a><tt class="py-lineno">1087</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">numClusters</tt><tt class="py-op">,</tt> </tt>
-<a name="L1088"></a><tt class="py-lineno">1088</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS shows 1 SCC"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1089"></a><tt class="py-lineno">1089</tt> <tt class="py-line"> <tt id="link-457" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-457', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS shows "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">numClusters</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" SCCs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1090"></a><tt class="py-lineno">1090</tt> <tt class="py-line"> </tt>
-<a name="L1091"></a><tt class="py-lineno">1091</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-458" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-458', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Comparing ONOS topology to MN"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1092"></a><tt class="py-lineno">1092</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1093"></a><tt class="py-lineno">1093</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1094"></a><tt class="py-lineno">1094</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1095"></a><tt class="py-lineno">1095</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-459" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitches()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitches"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitches" class="py-name" href="#" onclick="return doclink('link-459', 'getSwitches', 'link-459');">getSwitches</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1096"></a><tt class="py-lineno">1096</tt> <tt class="py-line"> <tt class="py-name">mnLinks</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-460" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getLinks()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getLinks"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getLinks" class="py-name" href="#" onclick="return doclink('link-460', 'getLinks', 'link-460');">getLinks</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1097"></a><tt class="py-lineno">1097</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-461" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getHosts"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts" class="py-name" href="#" onclick="return doclink('link-461', 'getHosts', 'link-461');">getHosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1098"></a><tt class="py-lineno">1098</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-462" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-462', 'controller', 'link-445');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1099"></a><tt class="py-lineno">1099</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-463" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-463', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1100"></a><tt class="py-lineno">1100</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-464" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-464', 'devices', 'link-106');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-465" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-465', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt id="link-466" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-466', 'ports', 'link-435');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-467" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-467', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L1101"></a><tt class="py-lineno">1101</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-468" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-468', 'devices', 'link-106');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-469" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-469', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L1102"></a><tt class="py-lineno">1102</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-470" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-470', 'ports', 'link-435');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-471" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-471', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1103"></a><tt class="py-lineno">1103</tt> <tt class="py-line"> </tt>
-<a name="L1104"></a><tt class="py-lineno">1104</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-472" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareSwitches()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareSwitches"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareSwitches" class="py-name" href="#" onclick="return doclink('link-472', 'compareSwitches', 'link-472');">compareSwitches</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1105"></a><tt class="py-lineno">1105</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> </tt>
-<a name="L1106"></a><tt class="py-lineno">1106</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-473" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-473', 'devices', 'link-106');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-474" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-474', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1107"></a><tt class="py-lineno">1107</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-475" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-475', 'ports', 'link-435');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-476" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-476', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1108"></a><tt class="py-lineno">1108</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1109"></a><tt class="py-lineno">1109</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1110"></a><tt class="py-lineno">1110</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1111"></a><tt class="py-lineno">1111</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentDevicesResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1112"></a><tt class="py-lineno">1112</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1113"></a><tt class="py-lineno">1113</tt> <tt class="py-line"> <tt class="py-string">" Switches view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1114"></a><tt class="py-lineno">1114</tt> <tt class="py-line"> <tt id="link-477" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-477', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1115"></a><tt class="py-lineno">1115</tt> <tt class="py-line"> <tt class="py-string">" Switches view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1116"></a><tt class="py-lineno">1116</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-478" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-478', 'links', 'link-438');">links</a></tt><tt class="py-op">[</tt> <tt id="link-479" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-479', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-480" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-480', 'links', 'link-438');">links</a></tt><tt class="py-op">[</tt> <tt id="link-481" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-481', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1117"></a><tt class="py-lineno">1117</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-482" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareLinks()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareLinks"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareLinks" class="py-name" href="#" onclick="return doclink('link-482', 'compareLinks', 'link-482');">compareLinks</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1118"></a><tt class="py-lineno">1118</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> <tt class="py-name">mnLinks</tt><tt class="py-op">,</tt> </tt>
-<a name="L1119"></a><tt class="py-lineno">1119</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-483" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-483', 'links', 'link-438');">links</a></tt><tt class="py-op">[</tt> <tt id="link-484" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-484', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1120"></a><tt class="py-lineno">1120</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1121"></a><tt class="py-lineno">1121</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1122"></a><tt class="py-lineno">1122</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1123"></a><tt class="py-lineno">1123</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentLinksResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1124"></a><tt class="py-lineno">1124</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1125"></a><tt class="py-lineno">1125</tt> <tt class="py-line"> <tt class="py-string">" links view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1126"></a><tt class="py-lineno">1126</tt> <tt class="py-line"> <tt id="link-485" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-485', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1127"></a><tt class="py-lineno">1127</tt> <tt class="py-line"> <tt class="py-string">" links view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1128"></a><tt class="py-lineno">1128</tt> <tt class="py-line"> </tt>
-<a name="L1129"></a><tt class="py-lineno">1129</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-486" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-486', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-487" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-487', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-488" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-488', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-489" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-489', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1130"></a><tt class="py-lineno">1130</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-490" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareHosts()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareHosts"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareHosts" class="py-name" href="#" onclick="return doclink('link-490', 'compareHosts', 'link-490');">compareHosts</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1131"></a><tt class="py-lineno">1131</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt><tt class="py-op">,</tt> </tt>
-<a name="L1132"></a><tt class="py-lineno">1132</tt> <tt class="py-line"> <tt id="link-491" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-491', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-492" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-492', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1133"></a><tt class="py-lineno">1133</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1134"></a><tt class="py-lineno">1134</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1135"></a><tt class="py-lineno">1135</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1136"></a><tt class="py-lineno">1136</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentHostsResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1137"></a><tt class="py-lineno">1137</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1138"></a><tt class="py-lineno">1138</tt> <tt class="py-line"> <tt class="py-string">" hosts exist in Mininet"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1139"></a><tt class="py-lineno">1139</tt> <tt class="py-line"> <tt id="link-493" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-493', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1140"></a><tt class="py-lineno">1140</tt> <tt class="py-line"> <tt class="py-string">" hosts don't match Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1141"></a><tt class="py-lineno">1141</tt> <tt class="py-line"> </tt>
-<a name="L1142"></a><tt class="py-lineno">1142</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">devicesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentDevicesResult</tt> </tt>
-<a name="L1143"></a><tt class="py-lineno">1143</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">linksResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentLinksResult</tt> </tt>
-<a name="L1144"></a><tt class="py-lineno">1144</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentHostsResult</tt> </tt>
-<a name="L1145"></a><tt class="py-lineno">1145</tt> <tt class="py-line"> </tt>
-<a name="L1146"></a><tt class="py-lineno">1146</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-494" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-494', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Device information is correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1147"></a><tt class="py-lineno">1147</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1148"></a><tt class="py-lineno">1148</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1149"></a><tt class="py-lineno">1149</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">devicesResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1150"></a><tt class="py-lineno">1150</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Device information is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1151"></a><tt class="py-lineno">1151</tt> <tt class="py-line"> <tt id="link-495" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-495', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Device information is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1152"></a><tt class="py-lineno">1152</tt> <tt class="py-line"> </tt>
-<a name="L1153"></a><tt class="py-lineno">1153</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-496" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-496', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Links are correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1154"></a><tt class="py-lineno">1154</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1155"></a><tt class="py-lineno">1155</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1156"></a><tt class="py-lineno">1156</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">linksResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1157"></a><tt class="py-lineno">1157</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1158"></a><tt class="py-lineno">1158</tt> <tt class="py-line"> <tt id="link-497" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-497', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Links are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1159"></a><tt class="py-lineno">1159</tt> <tt class="py-line"> </tt>
-<a name="L1160"></a><tt class="py-lineno">1160</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-498" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-498', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Hosts are correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1161"></a><tt class="py-lineno">1161</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1162"></a><tt class="py-lineno">1162</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1163"></a><tt class="py-lineno">1163</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">hostsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1164"></a><tt class="py-lineno">1164</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Hosts are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1165"></a><tt class="py-lineno">1165</tt> <tt class="py-line"> <tt id="link-499" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-499', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Hosts are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1166"></a><tt class="py-lineno">1166</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE6"></a><div id="HAsingleInstanceRestart.CASE6-def"><a name="L1167"></a><tt class="py-lineno">1167</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE6-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE6');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE6">CASE6</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE6-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE6-expanded"><a name="L1168"></a><tt class="py-lineno">1168</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1169"></a><tt class="py-lineno">1169</tt> <tt class="py-line"><tt class="py-docstring"> The Failure case.</tt> </tt>
-<a name="L1170"></a><tt class="py-lineno">1170</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1171"></a><tt class="py-lineno">1171</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1172"></a><tt class="py-lineno">1172</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1173"></a><tt class="py-lineno">1173</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1174"></a><tt class="py-lineno">1174</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1175"></a><tt class="py-lineno">1175</tt> <tt class="py-line"> </tt>
-<a name="L1176"></a><tt class="py-lineno">1176</tt> <tt class="py-line"> <tt class="py-comment"># Reset non-persistent variables</tt> </tt>
-<a name="L1177"></a><tt class="py-lineno">1177</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1178"></a><tt class="py-lineno">1178</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1179"></a><tt class="py-lineno">1179</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1180"></a><tt class="py-lineno">1180</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-500" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-500', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-501" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-501', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"iCounterValue not defined, setting to 0"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1181"></a><tt class="py-lineno">1181</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1182"></a><tt class="py-lineno">1182</tt> <tt class="py-line"> </tt>
-<a name="L1183"></a><tt class="py-lineno">1183</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-502" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-502', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Restart ONOS node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1184"></a><tt class="py-lineno">1184</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Killing ONOS process and restart cli "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1185"></a><tt class="py-lineno">1185</tt> <tt class="py-line"> <tt class="py-string">"sessions once onos is up."</tt> </tt>
-<a name="L1186"></a><tt class="py-lineno">1186</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-503" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-503', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Killing ONOS processes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1187"></a><tt class="py-lineno">1187</tt> <tt class="py-line"> <tt class="py-name">killResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-504" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosKill" class="py-name" href="#" onclick="return doclink('link-504', 'onosKill', 'link-24');">onosKill</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-505" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-505', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1188"></a><tt class="py-lineno">1188</tt> <tt class="py-line"> <tt class="py-name">start</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1189"></a><tt class="py-lineno">1189</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">killResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1190"></a><tt class="py-lineno">1190</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS Killed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1191"></a><tt class="py-lineno">1191</tt> <tt class="py-line"> <tt id="link-506" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-506', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error killing ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1192"></a><tt class="py-lineno">1192</tt> <tt class="py-line"> </tt>
-<a name="L1193"></a><tt class="py-lineno">1193</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-507" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-507', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Checking if ONOS is up yet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1194"></a><tt class="py-lineno">1194</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1195"></a><tt class="py-lineno">1195</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">count</tt> <tt class="py-op"><</tt> <tt class="py-number">10</tt><tt class="py-op">:</tt> </tt>
-<a name="L1196"></a><tt class="py-lineno">1196</tt> <tt class="py-line"> <tt class="py-name">onos1Isup</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-508" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-508', 'isup', 'link-53');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-509" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-509', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1197"></a><tt class="py-lineno">1197</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onos1Isup</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1198"></a><tt class="py-lineno">1198</tt> <tt class="py-line"> <tt class="py-name">elapsed</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">start</tt> </tt>
-<a name="L1199"></a><tt class="py-lineno">1199</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L1200"></a><tt class="py-lineno">1200</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1201"></a><tt class="py-lineno">1201</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-name">count</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1202"></a><tt class="py-lineno">1202</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">onos1Isup</tt><tt class="py-op">,</tt> </tt>
-<a name="L1203"></a><tt class="py-lineno">1203</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS is back up"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1204"></a><tt class="py-lineno">1204</tt> <tt class="py-line"> <tt id="link-510" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-510', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS failed to start"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1205"></a><tt class="py-lineno">1205</tt> <tt class="py-line"> </tt>
-<a name="L1206"></a><tt class="py-lineno">1206</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-511" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-511', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-512" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-512', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting ONOS CLI sessions"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1207"></a><tt class="py-lineno">1207</tt> <tt class="py-line"> <tt class="py-name">cliResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-513" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli" class="py-name" href="#" onclick="return doclink('link-513', 'startOnosCli', 'link-58');">startOnosCli</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-514" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-514', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1208"></a><tt class="py-lineno">1208</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">cliResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1209"></a><tt class="py-lineno">1209</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS cli startup successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1210"></a><tt class="py-lineno">1210</tt> <tt class="py-line"> <tt id="link-515" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-515', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS cli startup failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1211"></a><tt class="py-lineno">1211</tt> <tt class="py-line"> </tt>
-<a name="L1212"></a><tt class="py-lineno">1212</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">elapsed</tt><tt class="py-op">:</tt> </tt>
-<a name="L1213"></a><tt class="py-lineno">1213</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-516" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-516', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"ESTIMATE: ONOS took %s seconds to restart"</tt> <tt class="py-op">%</tt> </tt>
-<a name="L1214"></a><tt class="py-lineno">1214</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">elapsed</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1215"></a><tt class="py-lineno">1215</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">restartTime</tt> <tt class="py-op">=</tt> <tt class="py-name">elapsed</tt> </tt>
-<a name="L1216"></a><tt class="py-lineno">1216</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1217"></a><tt class="py-lineno">1217</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">restartTime</tt> <tt class="py-op">=</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> </tt>
-<a name="L1218"></a><tt class="py-lineno">1218</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1219"></a><tt class="py-lineno">1219</tt> <tt class="py-line"> <tt class="py-comment"># rerun on election apps</tt> </tt>
-<a name="L1220"></a><tt class="py-lineno">1220</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-517" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestRun()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestRun"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestRun" class="py-name" href="#" onclick="return doclink('link-517', 'electionTestRun', 'link-517');">electionTestRun</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1221"></a><tt class="py-lineno">1221</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE7"></a><div id="HAsingleInstanceRestart.CASE7-def"><a name="L1222"></a><tt class="py-lineno">1222</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE7-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE7');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE7">CASE7</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE7-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE7-expanded"><a name="L1223"></a><tt class="py-lineno">1223</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1224"></a><tt class="py-lineno">1224</tt> <tt class="py-line"><tt class="py-docstring"> Check state after ONOS failure</tt> </tt>
-<a name="L1225"></a><tt class="py-lineno">1225</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1226"></a><tt class="py-lineno">1226</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L1227"></a><tt class="py-lineno">1227</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1228"></a><tt class="py-lineno">1228</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1229"></a><tt class="py-lineno">1229</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1230"></a><tt class="py-lineno">1230</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-518" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-518', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Running ONOS Constant State Tests"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1231"></a><tt class="py-lineno">1231</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-519" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-519', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check that each switch has a master"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1232"></a><tt class="py-lineno">1232</tt> <tt class="py-line"> <tt class="py-comment"># Assert that each device has a master</tt> </tt>
-<a name="L1233"></a><tt class="py-lineno">1233</tt> <tt class="py-line"> <tt id="link-520" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-520', 'rolesNotNull', 'link-402');">rolesNotNull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-521" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-521', 'rolesNotNull', 'link-402');">rolesNotNull</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1234"></a><tt class="py-lineno">1234</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1235"></a><tt class="py-lineno">1235</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1236"></a><tt class="py-lineno">1236</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt id="link-522" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull" class="py-name" href="#" onclick="return doclink('link-522', 'rolesNotNull', 'link-402');">rolesNotNull</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L1237"></a><tt class="py-lineno">1237</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Each device has a master"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1238"></a><tt class="py-lineno">1238</tt> <tt class="py-line"> <tt id="link-523" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-523', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Some devices don't have a master assigned"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1239"></a><tt class="py-lineno">1239</tt> <tt class="py-line"> </tt>
-<a name="L1240"></a><tt class="py-lineno">1240</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-524" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-524', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check if switch roles are consistent across all nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1241"></a><tt class="py-lineno">1241</tt> <tt class="py-line"> <tt class="py-name">ONOS1Mastership</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-525" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.roles" class="py-name" href="#" onclick="return doclink('link-525', 'roles', 'link-407');">roles</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1242"></a><tt class="py-lineno">1242</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: Refactor this whole case for single instance</tt> </tt>
-<a name="L1243"></a><tt class="py-lineno">1243</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOS1Mastership</tt> <tt class="py-keyword">or</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOS1Mastership</tt><tt class="py-op">:</tt> </tt>
-<a name="L1244"></a><tt class="py-lineno">1244</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-526" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-526', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-527" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-527', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS mastership"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1245"></a><tt class="py-lineno">1245</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-528" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-528', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS1 mastership response: "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1246"></a><tt class="py-lineno">1246</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOS1Mastership</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1247"></a><tt class="py-lineno">1247</tt> <tt class="py-line"> <tt class="py-name">consistentMastership</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1248"></a><tt class="py-lineno">1248</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1249"></a><tt class="py-lineno">1249</tt> <tt class="py-line"> <tt class="py-name">consistentMastership</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1250"></a><tt class="py-lineno">1250</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1251"></a><tt class="py-lineno">1251</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1252"></a><tt class="py-lineno">1252</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentMastership</tt><tt class="py-op">,</tt> </tt>
-<a name="L1253"></a><tt class="py-lineno">1253</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Switch roles are consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1254"></a><tt class="py-lineno">1254</tt> <tt class="py-line"> <tt id="link-529" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-529', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of switch roles"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1255"></a><tt class="py-lineno">1255</tt> <tt class="py-line"> </tt>
-<a name="L1256"></a><tt class="py-lineno">1256</tt> <tt class="py-line"> <tt class="py-name">description2</tt> <tt class="py-op">=</tt> <tt class="py-string">"Compare switch roles from before failure"</tt> </tt>
-<a name="L1257"></a><tt class="py-lineno">1257</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-530" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-530', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-name">description2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1258"></a><tt class="py-lineno">1258</tt> <tt class="py-line"> </tt>
-<a name="L1259"></a><tt class="py-lineno">1259</tt> <tt class="py-line"> <tt class="py-name">currentJson</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">ONOS1Mastership</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1260"></a><tt class="py-lineno">1260</tt> <tt class="py-line"> <tt class="py-name">oldJson</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">mastershipState</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1261"></a><tt class="py-lineno">1261</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1262"></a><tt class="py-lineno">1262</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1263"></a><tt class="py-lineno">1263</tt> <tt class="py-line"> <tt class="py-name">switchDPID</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> </tt>
-<a name="L1264"></a><tt class="py-lineno">1264</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-531" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitchDPID()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitchDPID"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitchDPID" class="py-name" href="#" onclick="return doclink('link-531', 'getSwitchDPID', 'link-531');">getSwitchDPID</a></tt><tt class="py-op">(</tt> <tt class="py-name">switch</tt><tt class="py-op">=</tt><tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1265"></a><tt class="py-lineno">1265</tt> <tt class="py-line"> </tt>
-<a name="L1266"></a><tt class="py-lineno">1266</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">switch</tt><tt class="py-op">[</tt> <tt class="py-string">'master'</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">currentJson</tt> </tt>
-<a name="L1267"></a><tt class="py-lineno">1267</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">switchDPID</tt> <tt class="py-keyword">in</tt> <tt class="py-name">switch</tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1268"></a><tt class="py-lineno">1268</tt> <tt class="py-line"> <tt class="py-name">old</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">switch</tt><tt class="py-op">[</tt> <tt class="py-string">'master'</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">switch</tt> <tt class="py-keyword">in</tt> <tt class="py-name">oldJson</tt> </tt>
-<a name="L1269"></a><tt class="py-lineno">1269</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">switchDPID</tt> <tt class="py-keyword">in</tt> <tt class="py-name">switch</tt><tt class="py-op">[</tt> <tt class="py-string">'id'</tt> <tt class="py-op">]</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1270"></a><tt class="py-lineno">1270</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">current</tt> <tt class="py-op">==</tt> <tt class="py-name">old</tt><tt class="py-op">:</tt> </tt>
-<a name="L1271"></a><tt class="py-lineno">1271</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">mastershipCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1272"></a><tt class="py-lineno">1272</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1273"></a><tt class="py-lineno">1273</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-532" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-532', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Mastership of switch %s changed"</tt> <tt class="py-op">%</tt> <tt class="py-name">switchDPID</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1274"></a><tt class="py-lineno">1274</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1275"></a><tt class="py-lineno">1275</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1276"></a><tt class="py-lineno">1276</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1277"></a><tt class="py-lineno">1277</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">mastershipCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L1278"></a><tt class="py-lineno">1278</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Mastership of Switches was not changed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1279"></a><tt class="py-lineno">1279</tt> <tt class="py-line"> <tt id="link-533" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-533', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Mastership of some switches changed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1280"></a><tt class="py-lineno">1280</tt> <tt class="py-line"> <tt class="py-name">mastershipCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">mastershipCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-name">consistentMastership</tt> </tt>
-<a name="L1281"></a><tt class="py-lineno">1281</tt> <tt class="py-line"> </tt>
-<a name="L1282"></a><tt class="py-lineno">1282</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-534" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-534', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the intents and compare across all nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1283"></a><tt class="py-lineno">1283</tt> <tt class="py-line"> <tt class="py-name">ONOS1Intents</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-535" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-535', 'intents', 'link-158');">intents</a></tt><tt class="py-op">(</tt> <tt class="py-name">jsonFormat</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1284"></a><tt class="py-lineno">1284</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1285"></a><tt class="py-lineno">1285</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ONOS1Intents</tt> <tt class="py-keyword">or</tt> <tt class="py-keyword">not</tt> <tt class="py-name">ONOS1Intents</tt><tt class="py-op">:</tt> </tt>
-<a name="L1286"></a><tt class="py-lineno">1286</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-536" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-536', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-537" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-537', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error in getting ONOS intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1287"></a><tt class="py-lineno">1287</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-538" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-538', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS1 intents response: "</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">ONOS1Intents</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1288"></a><tt class="py-lineno">1288</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1289"></a><tt class="py-lineno">1289</tt> <tt class="py-line"> <tt class="py-name">intentCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1290"></a><tt class="py-lineno">1290</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1291"></a><tt class="py-lineno">1291</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1292"></a><tt class="py-lineno">1292</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">intentCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L1293"></a><tt class="py-lineno">1293</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Intents are consistent across all ONOS nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1294"></a><tt class="py-lineno">1294</tt> <tt class="py-line"> <tt id="link-539" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-539', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS nodes have different views of intents"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1295"></a><tt class="py-lineno">1295</tt> <tt class="py-line"> <tt class="py-comment"># Print the intent states</tt> </tt>
-<a name="L1296"></a><tt class="py-lineno">1296</tt> <tt class="py-line"> <tt id="link-540" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-540', 'intents', 'link-158');">intents</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1297"></a><tt class="py-lineno">1297</tt> <tt class="py-line"> <tt id="link-541" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-541', 'intents', 'link-158');">intents</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">ONOS1Intents</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1298"></a><tt class="py-lineno">1298</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1299"></a><tt class="py-lineno">1299</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt id="link-542" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-542', 'intents', 'link-158');">intents</a></tt><tt class="py-op">:</tt> <tt class="py-comment"># Iter through ONOS nodes</tt> </tt>
-<a name="L1300"></a><tt class="py-lineno">1300</tt> <tt class="py-line"> <tt class="py-name">nodeStates</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1301"></a><tt class="py-lineno">1301</tt> <tt class="py-line"> <tt class="py-comment"># Iter through intents of a node</tt> </tt>
-<a name="L1302"></a><tt class="py-lineno">1302</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-543" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-543', 'intent', 'link-156');">intent</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1303"></a><tt class="py-lineno">1303</tt> <tt class="py-line"> <tt class="py-name">nodeStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt id="link-544" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent" class="py-name" href="#" onclick="return doclink('link-544', 'intent', 'link-156');">intent</a></tt><tt class="py-op">[</tt> <tt class="py-string">'state'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1304"></a><tt class="py-lineno">1304</tt> <tt class="py-line"> <tt class="py-name">intentStates</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStates</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1305"></a><tt class="py-lineno">1305</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">,</tt> <tt class="py-name">nodeStates</tt><tt class="py-op">.</tt><tt class="py-name">count</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">nodeStates</tt> <tt class="py-op">)</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1306"></a><tt class="py-lineno">1306</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-545" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-545', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">dict</tt><tt class="py-op">(</tt> <tt class="py-name">out</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1307"></a><tt class="py-lineno">1307</tt> <tt class="py-line"> </tt>
-<a name="L1308"></a><tt class="py-lineno">1308</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: Store has no durability, so intents are lost across system</tt> </tt>
-<a name="L1309"></a><tt class="py-lineno">1309</tt> <tt class="py-line"> <tt class="py-comment"># restarts</tt> </tt>
-<a name="L1310"></a><tt class="py-lineno">1310</tt> <tt class="py-line"> <tt class="py-string">"""</tt> </tt>
-<a name="L1311"></a><tt class="py-lineno">1311</tt> <tt class="py-line"><tt class="py-string"> main.step( "Compare current intents with intents before the failure" )</tt> </tt>
-<a name="L1312"></a><tt class="py-lineno">1312</tt> <tt class="py-line"><tt class="py-string"> # NOTE: this requires case 5 to pass for intentState to be set.</tt> </tt>
-<a name="L1313"></a><tt class="py-lineno">1313</tt> <tt class="py-line"><tt class="py-string"> # maybe we should stop the test if that fails?</tt> </tt>
-<a name="L1314"></a><tt class="py-lineno">1314</tt> <tt class="py-line"><tt class="py-string"> sameIntents = main.FALSE</tt> </tt>
-<a name="L1315"></a><tt class="py-lineno">1315</tt> <tt class="py-line"><tt class="py-string"> if intentState and intentState == ONOSIntents[ 0 ]:</tt> </tt>
-<a name="L1316"></a><tt class="py-lineno">1316</tt> <tt class="py-line"><tt class="py-string"> sameIntents = main.TRUE</tt> </tt>
-<a name="L1317"></a><tt class="py-lineno">1317</tt> <tt class="py-line"><tt class="py-string"> main.log.info( "Intents are consistent with before failure" )</tt> </tt>
-<a name="L1318"></a><tt class="py-lineno">1318</tt> <tt class="py-line"><tt class="py-string"> # TODO: possibly the states have changed? we may need to figure out</tt> </tt>
-<a name="L1319"></a><tt class="py-lineno">1319</tt> <tt class="py-line"><tt class="py-string"> # what the acceptable states are</tt> </tt>
-<a name="L1320"></a><tt class="py-lineno">1320</tt> <tt class="py-line"><tt class="py-string"> elif len( intentState ) == len( ONOSIntents[ 0 ] ):</tt> </tt>
-<a name="L1321"></a><tt class="py-lineno">1321</tt> <tt class="py-line"><tt class="py-string"> sameIntents = main.TRUE</tt> </tt>
-<a name="L1322"></a><tt class="py-lineno">1322</tt> <tt class="py-line"><tt class="py-string"> try:</tt> </tt>
-<a name="L1323"></a><tt class="py-lineno">1323</tt> <tt class="py-line"><tt class="py-string"> before = json.loads( intentState )</tt> </tt>
-<a name="L1324"></a><tt class="py-lineno">1324</tt> <tt class="py-line"><tt class="py-string"> after = json.loads( ONOSIntents[ 0 ] )</tt> </tt>
-<a name="L1325"></a><tt class="py-lineno">1325</tt> <tt class="py-line"><tt class="py-string"> for intent in before:</tt> </tt>
-<a name="L1326"></a><tt class="py-lineno">1326</tt> <tt class="py-line"><tt class="py-string"> if intent not in after:</tt> </tt>
-<a name="L1327"></a><tt class="py-lineno">1327</tt> <tt class="py-line"><tt class="py-string"> sameIntents = main.FALSE</tt> </tt>
-<a name="L1328"></a><tt class="py-lineno">1328</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( "Intent is not currently in ONOS " +</tt> </tt>
-<a name="L1329"></a><tt class="py-lineno">1329</tt> <tt class="py-line"><tt class="py-string"> "(at least in the same form):" )</tt> </tt>
-<a name="L1330"></a><tt class="py-lineno">1330</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( json.dumps( intent ) )</tt> </tt>
-<a name="L1331"></a><tt class="py-lineno">1331</tt> <tt class="py-line"><tt class="py-string"> except ( ValueError, TypeError ):</tt> </tt>
-<a name="L1332"></a><tt class="py-lineno">1332</tt> <tt class="py-line"><tt class="py-string"> main.log.exception( "Exception printing intents" )</tt> </tt>
-<a name="L1333"></a><tt class="py-lineno">1333</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( repr( ONOSIntents[0] ) )</tt> </tt>
-<a name="L1334"></a><tt class="py-lineno">1334</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( repr( intentState ) )</tt> </tt>
-<a name="L1335"></a><tt class="py-lineno">1335</tt> <tt class="py-line"><tt class="py-string"> if sameIntents == main.FALSE:</tt> </tt>
-<a name="L1336"></a><tt class="py-lineno">1336</tt> <tt class="py-line"><tt class="py-string"> try:</tt> </tt>
-<a name="L1337"></a><tt class="py-lineno">1337</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( "ONOS intents before: " )</tt> </tt>
-<a name="L1338"></a><tt class="py-lineno">1338</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( json.dumps( json.loads( intentState ),</tt> </tt>
-<a name="L1339"></a><tt class="py-lineno">1339</tt> <tt class="py-line"><tt class="py-string"> sort_keys=True, indent=4,</tt> </tt>
-<a name="L1340"></a><tt class="py-lineno">1340</tt> <tt class="py-line"><tt class="py-string"> separators=( ',', ': ' ) ) )</tt> </tt>
-<a name="L1341"></a><tt class="py-lineno">1341</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( "Current ONOS intents: " )</tt> </tt>
-<a name="L1342"></a><tt class="py-lineno">1342</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( json.dumps( json.loads( ONOSIntents[ 0 ] ),</tt> </tt>
-<a name="L1343"></a><tt class="py-lineno">1343</tt> <tt class="py-line"><tt class="py-string"> sort_keys=True, indent=4,</tt> </tt>
-<a name="L1344"></a><tt class="py-lineno">1344</tt> <tt class="py-line"><tt class="py-string"> separators=( ',', ': ' ) ) )</tt> </tt>
-<a name="L1345"></a><tt class="py-lineno">1345</tt> <tt class="py-line"><tt class="py-string"> except ( ValueError, TypeError ):</tt> </tt>
-<a name="L1346"></a><tt class="py-lineno">1346</tt> <tt class="py-line"><tt class="py-string"> main.log.exception( "Exception printing intents" )</tt> </tt>
-<a name="L1347"></a><tt class="py-lineno">1347</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( repr( ONOSIntents[0] ) )</tt> </tt>
-<a name="L1348"></a><tt class="py-lineno">1348</tt> <tt class="py-line"><tt class="py-string"> main.log.debug( repr( intentState ) )</tt> </tt>
-<a name="L1349"></a><tt class="py-lineno">1349</tt> <tt class="py-line"><tt class="py-string"> utilities.assert_equals(</tt> </tt>
-<a name="L1350"></a><tt class="py-lineno">1350</tt> <tt class="py-line"><tt class="py-string"> expect=main.TRUE,</tt> </tt>
-<a name="L1351"></a><tt class="py-lineno">1351</tt> <tt class="py-line"><tt class="py-string"> actual=sameIntents,</tt> </tt>
-<a name="L1352"></a><tt class="py-lineno">1352</tt> <tt class="py-line"><tt class="py-string"> onpass="Intents are consistent with before failure",</tt> </tt>
-<a name="L1353"></a><tt class="py-lineno">1353</tt> <tt class="py-line"><tt class="py-string"> onfail="The Intents changed during failure" )</tt> </tt>
-<a name="L1354"></a><tt class="py-lineno">1354</tt> <tt class="py-line"><tt class="py-string"> intentCheck = intentCheck and sameIntents</tt> </tt>
-<a name="L1355"></a><tt class="py-lineno">1355</tt> <tt class="py-line"><tt class="py-string"> """</tt> </tt>
-<a name="L1356"></a><tt class="py-lineno">1356</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-546" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-546', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get the OF Table entries and compare to before "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1357"></a><tt class="py-lineno">1357</tt> <tt class="py-line"> <tt class="py-string">"component failure"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1358"></a><tt class="py-lineno">1358</tt> <tt class="py-line"> <tt class="py-name">FlowTables</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1359"></a><tt class="py-lineno">1359</tt> <tt class="py-line"> <tt class="py-name">flows2</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1360"></a><tt class="py-lineno">1360</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">28</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1361"></a><tt class="py-lineno">1361</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-547" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-547', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Checking flow table on s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1362"></a><tt class="py-lineno">1362</tt> <tt class="py-line"> <tt class="py-name">tmpFlows</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-548" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getFlowTable" class="py-name" href="#" onclick="return doclink('link-548', 'getFlowTable', 'link-425');">getFlowTable</a></tt><tt class="py-op">(</tt> <tt class="py-number">1.3</tt><tt class="py-op">,</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1363"></a><tt class="py-lineno">1363</tt> <tt class="py-line"> <tt class="py-name">flows2</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">tmpFlows</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1364"></a><tt class="py-lineno">1364</tt> <tt class="py-line"> <tt class="py-name">tempResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-549" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.flowComp()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#flowComp"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.flowComp" class="py-name" href="#" onclick="return doclink('link-549', 'flowComp', 'link-549');">flowComp</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1365"></a><tt class="py-lineno">1365</tt> <tt class="py-line"> <tt class="py-name">flow1</tt><tt class="py-op">=</tt><tt id="link-550" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-550', 'flows', 'link-388');">flows</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L1366"></a><tt class="py-lineno">1366</tt> <tt class="py-line"> <tt class="py-name">flow2</tt><tt class="py-op">=</tt><tt class="py-name">tmpFlows</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1367"></a><tt class="py-lineno">1367</tt> <tt class="py-line"> <tt class="py-name">FlowTables</tt> <tt class="py-op">=</tt> <tt class="py-name">FlowTables</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tempResult</tt> </tt>
-<a name="L1368"></a><tt class="py-lineno">1368</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">FlowTables</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1369"></a><tt class="py-lineno">1369</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-551" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-551', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Differences in flow table for switch: s"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1370"></a><tt class="py-lineno">1370</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1371"></a><tt class="py-lineno">1371</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1372"></a><tt class="py-lineno">1372</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1373"></a><tt class="py-lineno">1373</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">FlowTables</tt><tt class="py-op">,</tt> </tt>
-<a name="L1374"></a><tt class="py-lineno">1374</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"No changes were found in the flow tables"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1375"></a><tt class="py-lineno">1375</tt> <tt class="py-line"> <tt id="link-552" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-552', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Changes were found in the flow tables"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1376"></a><tt class="py-lineno">1376</tt> <tt class="py-line"> </tt>
-<a name="L1377"></a><tt class="py-lineno">1377</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-553" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-553', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Leadership Election is still functional"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1378"></a><tt class="py-lineno">1378</tt> <tt class="py-line"> <tt class="py-comment"># Test of LeadershipElection</tt> </tt>
-<a name="L1379"></a><tt class="py-lineno">1379</tt> <tt class="py-line"> </tt>
-<a name="L1380"></a><tt class="py-lineno">1380</tt> <tt class="py-line"> <tt class="py-name">leader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-554" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-554', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> </tt>
-<a name="L1381"></a><tt class="py-lineno">1381</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1382"></a><tt class="py-lineno">1382</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-555" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-555', 'controller', 'link-445');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1383"></a><tt class="py-lineno">1383</tt> <tt class="py-line"> <tt class="py-comment"># loop through ONOScli handlers</tt> </tt>
-<a name="L1384"></a><tt class="py-lineno">1384</tt> <tt class="py-line"> <tt class="py-name">node</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt> <tt class="py-string">'ONOScli'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-556" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-556', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1385"></a><tt class="py-lineno">1385</tt> <tt class="py-line"> <tt class="py-name">leaderN</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">.</tt><tt id="link-557" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestLeader"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-557', 'electionTestLeader', 'link-557');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1386"></a><tt class="py-lineno">1386</tt> <tt class="py-line"> <tt class="py-comment"># verify leader is ONOS1</tt> </tt>
-<a name="L1387"></a><tt class="py-lineno">1387</tt> <tt class="py-line"> <tt class="py-comment"># NOTE even though we restarted ONOS, it is the only one so onos 1</tt> </tt>
-<a name="L1388"></a><tt class="py-lineno">1388</tt> <tt class="py-line"> <tt class="py-comment"># must be leader</tt> </tt>
-<a name="L1389"></a><tt class="py-lineno">1389</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">==</tt> <tt class="py-name">leader</tt><tt class="py-op">:</tt> </tt>
-<a name="L1390"></a><tt class="py-lineno">1390</tt> <tt class="py-line"> <tt class="py-comment"># all is well</tt> </tt>
-<a name="L1391"></a><tt class="py-lineno">1391</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L1392"></a><tt class="py-lineno">1392</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1393"></a><tt class="py-lineno">1393</tt> <tt class="py-line"> <tt class="py-comment"># error in response</tt> </tt>
-<a name="L1394"></a><tt class="py-lineno">1394</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-558" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-558', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-559" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-559', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Something is wrong with "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1395"></a><tt class="py-lineno">1395</tt> <tt class="py-line"> <tt class="py-string">"electionTestLeader function, check the"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1396"></a><tt class="py-lineno">1396</tt> <tt class="py-line"> <tt class="py-string">" error logs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1397"></a><tt class="py-lineno">1397</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1398"></a><tt class="py-lineno">1398</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leader</tt> <tt class="py-op">!=</tt> <tt class="py-name">leaderN</tt><tt class="py-op">:</tt> </tt>
-<a name="L1399"></a><tt class="py-lineno">1399</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1400"></a><tt class="py-lineno">1400</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-560" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-560', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-561" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-561', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-562" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-562', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" sees "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1401"></a><tt class="py-lineno">1401</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1402"></a><tt class="py-lineno">1402</tt> <tt class="py-line"> <tt class="py-string">" as the leader of the election app. "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1403"></a><tt class="py-lineno">1403</tt> <tt class="py-line"> <tt class="py-string">"Leader should be "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1404"></a><tt class="py-lineno">1404</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1405"></a><tt class="py-lineno">1405</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1406"></a><tt class="py-lineno">1406</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">leaderResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1407"></a><tt class="py-lineno">1407</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Leadership election passed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1408"></a><tt class="py-lineno">1408</tt> <tt class="py-line"> <tt id="link-563" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-563', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something went wrong with Leadership election"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1409"></a><tt class="py-lineno">1409</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE8"></a><div id="HAsingleInstanceRestart.CASE8-def"><a name="L1410"></a><tt class="py-lineno">1410</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE8-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE8');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE8">CASE8</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE8-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE8-expanded"><a name="L1411"></a><tt class="py-lineno">1411</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1412"></a><tt class="py-lineno">1412</tt> <tt class="py-line"><tt class="py-docstring"> Compare topo</tt> </tt>
-<a name="L1413"></a><tt class="py-lineno">1413</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1414"></a><tt class="py-lineno">1414</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L1415"></a><tt class="py-lineno">1415</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1416"></a><tt class="py-lineno">1416</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1417"></a><tt class="py-lineno">1417</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1418"></a><tt class="py-lineno">1418</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1419"></a><tt class="py-lineno">1419</tt> <tt class="py-line"> </tt>
-<a name="L1420"></a><tt class="py-lineno">1420</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-564" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-564', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Compare ONOS Topology view to Mininet topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1421"></a><tt class="py-lineno">1421</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Compare topology objects between Mininet"</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1422"></a><tt class="py-lineno">1422</tt> <tt class="py-line"> <tt class="py-string">" and ONOS"</tt> </tt>
-<a name="L1423"></a><tt class="py-lineno">1423</tt> <tt class="py-line"> </tt>
-<a name="L1424"></a><tt class="py-lineno">1424</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-565" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-565', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Comparing ONOS topology to MN"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1425"></a><tt class="py-lineno">1425</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1426"></a><tt class="py-lineno">1426</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1427"></a><tt class="py-lineno">1427</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1428"></a><tt class="py-lineno">1428</tt> <tt class="py-line"> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1429"></a><tt class="py-lineno">1429</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1430"></a><tt class="py-lineno">1430</tt> <tt class="py-line"> <tt class="py-name">elapsed</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1431"></a><tt class="py-lineno">1431</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1432"></a><tt class="py-lineno">1432</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-566" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-566', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Collecting topology information from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1433"></a><tt class="py-lineno">1433</tt> <tt class="py-line"> <tt class="py-name">startTime</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1434"></a><tt class="py-lineno">1434</tt> <tt class="py-line"> <tt class="py-comment"># Give time for Gossip to work</tt> </tt>
-<a name="L1435"></a><tt class="py-lineno">1435</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">topoResult</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> <tt class="py-keyword">and</tt> <tt class="py-name">elapsed</tt> <tt class="py-op"><</tt> <tt class="py-number">60</tt><tt class="py-op">:</tt> </tt>
-<a name="L1436"></a><tt class="py-lineno">1436</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L1437"></a><tt class="py-lineno">1437</tt> <tt class="py-line"> <tt class="py-name">cliStart</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1438"></a><tt class="py-lineno">1438</tt> <tt class="py-line"> <tt id="link-567" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-567', 'devices', 'link-106');">devices</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1439"></a><tt class="py-lineno">1439</tt> <tt class="py-line"> <tt id="link-568" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-568', 'devices', 'link-106');">devices</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-569" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-569', 'devices', 'link-106');">devices</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1440"></a><tt class="py-lineno">1440</tt> <tt class="py-line"> <tt id="link-570" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-570', 'hosts', 'link-145');">hosts</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1441"></a><tt class="py-lineno">1441</tt> <tt class="py-line"> <tt id="link-571" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-571', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-572" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-572', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1442"></a><tt class="py-lineno">1442</tt> <tt class="py-line"> <tt class="py-name">ipResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1443"></a><tt class="py-lineno">1443</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-573" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-573', 'controller', 'link-445');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt id="link-574" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-574', 'hosts', 'link-145');">hosts</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1444"></a><tt class="py-lineno">1444</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-575" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-575', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1445"></a><tt class="py-lineno">1445</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt id="link-576" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-576', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-577" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-577', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1446"></a><tt class="py-lineno">1446</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">host</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'ipAddresses'</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1447"></a><tt class="py-lineno">1447</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-578" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-578', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-579" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-579', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1448"></a><tt class="py-lineno">1448</tt> <tt class="py-line"> <tt class="py-string">"DEBUG:Error with host ips on controller"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1449"></a><tt class="py-lineno">1449</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> <tt class="py-string">": "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1450"></a><tt class="py-lineno">1450</tt> <tt class="py-line"> <tt class="py-name">ipResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1451"></a><tt class="py-lineno">1451</tt> <tt class="py-line"> <tt id="link-580" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-580', 'ports', 'link-435');">ports</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1452"></a><tt class="py-lineno">1452</tt> <tt class="py-line"> <tt id="link-581" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-581', 'ports', 'link-435');">ports</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-582" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-582', 'ports', 'link-435');">ports</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1453"></a><tt class="py-lineno">1453</tt> <tt class="py-line"> <tt id="link-583" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-583', 'links', 'link-438');">links</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1454"></a><tt class="py-lineno">1454</tt> <tt class="py-line"> <tt id="link-584" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-584', 'links', 'link-438');">links</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-585" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-585', 'links', 'link-438');">links</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1455"></a><tt class="py-lineno">1455</tt> <tt class="py-line"> <tt id="link-586" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-586', 'clusters', 'link-441');">clusters</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1456"></a><tt class="py-lineno">1456</tt> <tt class="py-line"> <tt id="link-587" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-587', 'clusters', 'link-441');">clusters</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-588" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-588', 'clusters', 'link-441');">clusters</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1457"></a><tt class="py-lineno">1457</tt> <tt class="py-line"> </tt>
-<a name="L1458"></a><tt class="py-lineno">1458</tt> <tt class="py-line"> <tt class="py-name">elapsed</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">startTime</tt> </tt>
-<a name="L1459"></a><tt class="py-lineno">1459</tt> <tt class="py-line"> <tt class="py-name">cliTime</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">cliStart</tt> </tt>
-<a name="L1460"></a><tt class="py-lineno">1460</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"CLI time: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">cliTime</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1461"></a><tt class="py-lineno">1461</tt> <tt class="py-line"> </tt>
-<a name="L1462"></a><tt class="py-lineno">1462</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-589" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitches" class="py-name" href="#" onclick="return doclink('link-589', 'getSwitches', 'link-459');">getSwitches</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1463"></a><tt class="py-lineno">1463</tt> <tt class="py-line"> <tt class="py-name">mnLinks</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-590" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getLinks" class="py-name" href="#" onclick="return doclink('link-590', 'getLinks', 'link-460');">getLinks</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1464"></a><tt class="py-lineno">1464</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-591" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts" class="py-name" href="#" onclick="return doclink('link-591', 'getHosts', 'link-461');">getHosts</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1465"></a><tt class="py-lineno">1465</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-592" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-592', 'controller', 'link-445');">controller</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1466"></a><tt class="py-lineno">1466</tt> <tt class="py-line"> <tt class="py-name">controllerStr</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-593" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-593', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1467"></a><tt class="py-lineno">1467</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-594" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-594', 'devices', 'link-106');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-595" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-595', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt id="link-596" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-596', 'ports', 'link-435');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-597" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-597', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L1468"></a><tt class="py-lineno">1468</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-598" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-598', 'devices', 'link-106');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-599" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-599', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L1469"></a><tt class="py-lineno">1469</tt> <tt class="py-line"> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-600" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-600', 'ports', 'link-435');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-601" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-601', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1470"></a><tt class="py-lineno">1470</tt> <tt class="py-line"> </tt>
-<a name="L1471"></a><tt class="py-lineno">1471</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-602" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareSwitches" class="py-name" href="#" onclick="return doclink('link-602', 'compareSwitches', 'link-472');">compareSwitches</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1472"></a><tt class="py-lineno">1472</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> </tt>
-<a name="L1473"></a><tt class="py-lineno">1473</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-603" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-603', 'devices', 'link-106');">devices</a></tt><tt class="py-op">[</tt> <tt id="link-604" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-604', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L1474"></a><tt class="py-lineno">1474</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-605" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports" class="py-name" href="#" onclick="return doclink('link-605', 'ports', 'link-435');">ports</a></tt><tt class="py-op">[</tt> <tt id="link-606" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-606', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1475"></a><tt class="py-lineno">1475</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1476"></a><tt class="py-lineno">1476</tt> <tt class="py-line"> <tt class="py-name">currentDevicesResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1477"></a><tt class="py-lineno">1477</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1478"></a><tt class="py-lineno">1478</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentDevicesResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1479"></a><tt class="py-lineno">1479</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1480"></a><tt class="py-lineno">1480</tt> <tt class="py-line"> <tt class="py-string">" Switches view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1481"></a><tt class="py-lineno">1481</tt> <tt class="py-line"> <tt id="link-607" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-607', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1482"></a><tt class="py-lineno">1482</tt> <tt class="py-line"> <tt class="py-string">" Switches view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1483"></a><tt class="py-lineno">1483</tt> <tt class="py-line"> </tt>
-<a name="L1484"></a><tt class="py-lineno">1484</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-608" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-608', 'links', 'link-438');">links</a></tt><tt class="py-op">[</tt> <tt id="link-609" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-609', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-610" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-610', 'links', 'link-438');">links</a></tt><tt class="py-op">[</tt> <tt id="link-611" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-611', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1485"></a><tt class="py-lineno">1485</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-612" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareLinks" class="py-name" href="#" onclick="return doclink('link-612', 'compareLinks', 'link-482');">compareLinks</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1486"></a><tt class="py-lineno">1486</tt> <tt class="py-line"> <tt class="py-name">mnSwitches</tt><tt class="py-op">,</tt> <tt class="py-name">mnLinks</tt><tt class="py-op">,</tt> </tt>
-<a name="L1487"></a><tt class="py-lineno">1487</tt> <tt class="py-line"> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-613" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-613', 'links', 'link-438');">links</a></tt><tt class="py-op">[</tt> <tt id="link-614" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-614', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1488"></a><tt class="py-lineno">1488</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1489"></a><tt class="py-lineno">1489</tt> <tt class="py-line"> <tt class="py-name">currentLinksResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1490"></a><tt class="py-lineno">1490</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1491"></a><tt class="py-lineno">1491</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentLinksResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1492"></a><tt class="py-lineno">1492</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1493"></a><tt class="py-lineno">1493</tt> <tt class="py-line"> <tt class="py-string">" links view is correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1494"></a><tt class="py-lineno">1494</tt> <tt class="py-line"> <tt id="link-615" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-615', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1495"></a><tt class="py-lineno">1495</tt> <tt class="py-line"> <tt class="py-string">" links view is incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1496"></a><tt class="py-lineno">1496</tt> <tt class="py-line"> </tt>
-<a name="L1497"></a><tt class="py-lineno">1497</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-616" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-616', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-617" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-617', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-618" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-618', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-619" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-619', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1498"></a><tt class="py-lineno">1498</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-620" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareHosts" class="py-name" href="#" onclick="return doclink('link-620', 'compareHosts', 'link-490');">compareHosts</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1499"></a><tt class="py-lineno">1499</tt> <tt class="py-line"> <tt class="py-name">mnHosts</tt><tt class="py-op">,</tt> </tt>
-<a name="L1500"></a><tt class="py-lineno">1500</tt> <tt class="py-line"> <tt id="link-621" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-621', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-622" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-622', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1501"></a><tt class="py-lineno">1501</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1502"></a><tt class="py-lineno">1502</tt> <tt class="py-line"> <tt class="py-name">currentHostsResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1503"></a><tt class="py-lineno">1503</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1504"></a><tt class="py-lineno">1504</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">currentHostsResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1505"></a><tt class="py-lineno">1505</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1506"></a><tt class="py-lineno">1506</tt> <tt class="py-line"> <tt class="py-string">" hosts exist in Mininet"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1507"></a><tt class="py-lineno">1507</tt> <tt class="py-line"> <tt id="link-623" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-623', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">controllerStr</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1508"></a><tt class="py-lineno">1508</tt> <tt class="py-line"> <tt class="py-string">" hosts don't match Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1509"></a><tt class="py-lineno">1509</tt> <tt class="py-line"> <tt class="py-comment"># CHECKING HOST ATTACHMENT POINTS</tt> </tt>
-<a name="L1510"></a><tt class="py-lineno">1510</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1511"></a><tt class="py-lineno">1511</tt> <tt class="py-line"> <tt class="py-name">zeroHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1512"></a><tt class="py-lineno">1512</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: topo-HA/obelisk specific mappings:</tt> </tt>
-<a name="L1513"></a><tt class="py-lineno">1513</tt> <tt class="py-line"> <tt class="py-comment"># key is mac and value is dpid</tt> </tt>
-<a name="L1514"></a><tt class="py-lineno">1514</tt> <tt class="py-line"> <tt class="py-name">mappings</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L1515"></a><tt class="py-lineno">1515</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">29</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-comment"># hosts 1 through 28</tt> </tt>
-<a name="L1516"></a><tt class="py-lineno">1516</tt> <tt class="py-line"> <tt class="py-comment"># set up correct variables:</tt> </tt>
-<a name="L1517"></a><tt class="py-lineno">1517</tt> <tt class="py-line"> <tt class="py-name">macId</tt> <tt class="py-op">=</tt> <tt class="py-string">"00:"</tt> <tt class="py-op">*</tt> <tt class="py-number">5</tt> <tt class="py-op">+</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">"0x"</tt> <tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L1518"></a><tt class="py-lineno">1518</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1519"></a><tt class="py-lineno">1519</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"1000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L1520"></a><tt class="py-lineno">1520</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L1521"></a><tt class="py-lineno">1521</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"2000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L1522"></a><tt class="py-lineno">1522</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L1523"></a><tt class="py-lineno">1523</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"3000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L1524"></a><tt class="py-lineno">1524</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L1525"></a><tt class="py-lineno">1525</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"3004"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L1526"></a><tt class="py-lineno">1526</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">5</tt><tt class="py-op">:</tt> </tt>
-<a name="L1527"></a><tt class="py-lineno">1527</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"5000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L1528"></a><tt class="py-lineno">1528</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">6</tt><tt class="py-op">:</tt> </tt>
-<a name="L1529"></a><tt class="py-lineno">1529</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"6000"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L1530"></a><tt class="py-lineno">1530</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">7</tt><tt class="py-op">:</tt> </tt>
-<a name="L1531"></a><tt class="py-lineno">1531</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"6007"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L1532"></a><tt class="py-lineno">1532</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">8</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-number">17</tt><tt class="py-op">:</tt> </tt>
-<a name="L1533"></a><tt class="py-lineno">1533</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'3'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1534"></a><tt class="py-lineno">1534</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">dpid</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L1535"></a><tt class="py-lineno">1535</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">18</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op"><=</tt> <tt class="py-number">27</tt><tt class="py-op">:</tt> </tt>
-<a name="L1536"></a><tt class="py-lineno">1536</tt> <tt class="py-line"> <tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'6'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt> <tt class="py-number">3</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1537"></a><tt class="py-lineno">1537</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">dpid</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L1538"></a><tt class="py-lineno">1538</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">28</tt><tt class="py-op">:</tt> </tt>
-<a name="L1539"></a><tt class="py-lineno">1539</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-string">"2800"</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L1540"></a><tt class="py-lineno">1540</tt> <tt class="py-line"> <tt class="py-name">mappings</tt><tt class="py-op">[</tt> <tt class="py-name">macId</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceId</tt> </tt>
-<a name="L1541"></a><tt class="py-lineno">1541</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-624" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-624', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-625" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-625', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-keyword">or</tt> <tt class="py-string">"Error"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt id="link-626" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-626', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-627" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-627', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1542"></a><tt class="py-lineno">1542</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-628" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-628', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-629" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-629', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1543"></a><tt class="py-lineno">1543</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-630" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-630', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"There are no hosts discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1544"></a><tt class="py-lineno">1544</tt> <tt class="py-line"> <tt class="py-name">zeroHosts</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1545"></a><tt class="py-lineno">1545</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1546"></a><tt class="py-lineno">1546</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt id="link-631" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-631', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-632" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-632', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1547"></a><tt class="py-lineno">1547</tt> <tt class="py-line"> <tt class="py-name">mac</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1548"></a><tt class="py-lineno">1548</tt> <tt class="py-line"> <tt id="link-633" class="py-name" targets="Variable TestON.bin.cli.location=TestON.bin.cli-module.html#location,Variable TestON.core.teston.location=TestON.core.teston-module.html#location"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-633', 'location', 'link-633');">location</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1549"></a><tt class="py-lineno">1549</tt> <tt class="py-line"> <tt class="py-name">device</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1550"></a><tt class="py-lineno">1550</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1551"></a><tt class="py-lineno">1551</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1552"></a><tt class="py-lineno">1552</tt> <tt class="py-line"> <tt class="py-name">mac</tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'mac'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1553"></a><tt class="py-lineno">1553</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">mac</tt><tt class="py-op">,</tt> <tt class="py-string">"mac field could not be found for this host object"</tt> </tt>
-<a name="L1554"></a><tt class="py-lineno">1554</tt> <tt class="py-line"> </tt>
-<a name="L1555"></a><tt class="py-lineno">1555</tt> <tt class="py-line"> <tt id="link-634" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-634', 'location', 'link-633');">location</a></tt> <tt class="py-op">=</tt> <tt class="py-name">host</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'location'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1556"></a><tt class="py-lineno">1556</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt id="link-635" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-635', 'location', 'link-633');">location</a></tt><tt class="py-op">,</tt> <tt class="py-string">"location field could not be found for this host object"</tt> </tt>
-<a name="L1557"></a><tt class="py-lineno">1557</tt> <tt class="py-line"> </tt>
-<a name="L1558"></a><tt class="py-lineno">1558</tt> <tt class="py-line"> <tt class="py-comment"># Trim the protocol identifier off deviceId</tt> </tt>
-<a name="L1559"></a><tt class="py-lineno">1559</tt> <tt class="py-line"> <tt class="py-name">device</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt id="link-636" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-636', 'location', 'link-633');">location</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'elementId'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">':'</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L1560"></a><tt class="py-lineno">1560</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">device</tt><tt class="py-op">,</tt> <tt class="py-string">"elementId field could not be found for this host location object"</tt> </tt>
-<a name="L1561"></a><tt class="py-lineno">1561</tt> <tt class="py-line"> </tt>
-<a name="L1562"></a><tt class="py-lineno">1562</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt id="link-637" class="py-name"><a title="TestON.bin.cli.location
-TestON.core.teston.location" class="py-name" href="#" onclick="return doclink('link-637', 'location', 'link-633');">location</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'port'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1563"></a><tt class="py-lineno">1563</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-string">"port field could not be found for this host location object"</tt> </tt>
-<a name="L1564"></a><tt class="py-lineno">1564</tt> <tt class="py-line"> </tt>
-<a name="L1565"></a><tt class="py-lineno">1565</tt> <tt class="py-line"> <tt class="py-comment"># Now check if this matches where they should be</tt> </tt>
-<a name="L1566"></a><tt class="py-lineno">1566</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">mac</tt> <tt class="py-keyword">and</tt> <tt class="py-name">device</tt> <tt class="py-keyword">and</tt> <tt class="py-name">port</tt><tt class="py-op">:</tt> </tt>
-<a name="L1567"></a><tt class="py-lineno">1567</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt> <tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-string">"1"</tt><tt class="py-op">:</tt> </tt>
-<a name="L1568"></a><tt class="py-lineno">1568</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-638" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-638', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-639" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-639', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"The attachment port is incorrect for "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1569"></a><tt class="py-lineno">1569</tt> <tt class="py-line"> <tt class="py-string">"host "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1570"></a><tt class="py-lineno">1570</tt> <tt class="py-line"> <tt class="py-string">". Expected: 1 Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">port</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1571"></a><tt class="py-lineno">1571</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1572"></a><tt class="py-lineno">1572</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">device</tt> <tt class="py-op">!=</tt> <tt class="py-name">mappings</tt><tt class="py-op">[</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1573"></a><tt class="py-lineno">1573</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-640" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-640', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-641" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-641', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"The attachment device is incorrect for "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1574"></a><tt class="py-lineno">1574</tt> <tt class="py-line"> <tt class="py-string">"host "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1575"></a><tt class="py-lineno">1575</tt> <tt class="py-line"> <tt class="py-string">". Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">mappings</tt><tt class="py-op">[</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">mac</tt> <tt class="py-op">)</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1576"></a><tt class="py-lineno">1576</tt> <tt class="py-line"> <tt class="py-string">" Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">device</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1577"></a><tt class="py-lineno">1577</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1578"></a><tt class="py-lineno">1578</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1579"></a><tt class="py-lineno">1579</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1580"></a><tt class="py-lineno">1580</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AssertionError</tt><tt class="py-op">:</tt> </tt>
-<a name="L1581"></a><tt class="py-lineno">1581</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-642" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-642', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt> <tt class="py-string">"Json object not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1582"></a><tt class="py-lineno">1582</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-643" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-643', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-644" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-644', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">host</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1583"></a><tt class="py-lineno">1583</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1584"></a><tt class="py-lineno">1584</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1585"></a><tt class="py-lineno">1585</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-645" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-645', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-646" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-646', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"No hosts json output or \"Error\""</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1586"></a><tt class="py-lineno">1586</tt> <tt class="py-line"> <tt class="py-string">" in output. hosts = "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1587"></a><tt class="py-lineno">1587</tt> <tt class="py-line"> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt id="link-647" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts" class="py-name" href="#" onclick="return doclink('link-647', 'hosts', 'link-145');">hosts</a></tt><tt class="py-op">[</tt> <tt id="link-648" class="py-name"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-648', 'controller', 'link-445');">controller</a></tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1588"></a><tt class="py-lineno">1588</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">zeroHosts</tt> <tt class="py-keyword">is</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L1589"></a><tt class="py-lineno">1589</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1590"></a><tt class="py-lineno">1590</tt> <tt class="py-line"> </tt>
-<a name="L1591"></a><tt class="py-lineno">1591</tt> <tt class="py-line"> <tt class="py-name">devicesResults</tt> <tt class="py-op">=</tt> <tt class="py-name">devicesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentDevicesResult</tt> </tt>
-<a name="L1592"></a><tt class="py-lineno">1592</tt> <tt class="py-line"> <tt class="py-name">linksResults</tt> <tt class="py-op">=</tt> <tt class="py-name">linksResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentLinksResult</tt> </tt>
-<a name="L1593"></a><tt class="py-lineno">1593</tt> <tt class="py-line"> <tt class="py-name">hostsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">currentHostsResult</tt> </tt>
-<a name="L1594"></a><tt class="py-lineno">1594</tt> <tt class="py-line"> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-op">=</tt> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L1595"></a><tt class="py-lineno">1595</tt> <tt class="py-line"> <tt class="py-name">hostAttachment</tt> </tt>
-<a name="L1596"></a><tt class="py-lineno">1596</tt> <tt class="py-line"> </tt>
-<a name="L1597"></a><tt class="py-lineno">1597</tt> <tt class="py-line"> <tt class="py-comment"># "consistent" results don't make sense for single instance</tt> </tt>
-<a name="L1598"></a><tt class="py-lineno">1598</tt> <tt class="py-line"> <tt class="py-comment"># there should always only be one cluster</tt> </tt>
-<a name="L1599"></a><tt class="py-lineno">1599</tt> <tt class="py-line"> <tt class="py-name">numClusters</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt id="link-649" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters" class="py-name" href="#" onclick="return doclink('link-649', 'clusters', 'link-441');">clusters</a></tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1600"></a><tt class="py-lineno">1600</tt> <tt class="py-line"> <tt class="py-name">clusterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1601"></a><tt class="py-lineno">1601</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">numClusters</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1602"></a><tt class="py-lineno">1602</tt> <tt class="py-line"> <tt class="py-name">clusterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1603"></a><tt class="py-lineno">1603</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1604"></a><tt class="py-lineno">1604</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> </tt>
-<a name="L1605"></a><tt class="py-lineno">1605</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">numClusters</tt><tt class="py-op">,</tt> </tt>
-<a name="L1606"></a><tt class="py-lineno">1606</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS shows 1 SCC"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1607"></a><tt class="py-lineno">1607</tt> <tt class="py-line"> <tt id="link-650" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-650', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS shows "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">numClusters</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" SCCs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1608"></a><tt class="py-lineno">1608</tt> <tt class="py-line"> </tt>
-<a name="L1609"></a><tt class="py-lineno">1609</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">devicesResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">linksResults</tt> </tt>
-<a name="L1610"></a><tt class="py-lineno">1610</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-name">hostsResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">ipResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">clusterResults</tt> <tt class="py-keyword">and</tt> </tt>
-<a name="L1611"></a><tt class="py-lineno">1611</tt> <tt class="py-line"> <tt class="py-name">hostAttachmentResults</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1612"></a><tt class="py-lineno">1612</tt> <tt class="py-line"> </tt>
-<a name="L1613"></a><tt class="py-lineno">1613</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-name">topoResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op"><=</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1614"></a><tt class="py-lineno">1614</tt> <tt class="py-line"> <tt class="py-name">note</tt> <tt class="py-op">=</tt> <tt class="py-string">"note it takes about "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">cliTime</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1615"></a><tt class="py-lineno">1615</tt> <tt class="py-line"> <tt class="py-string">" seconds for the test to make all the cli calls to fetch "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1616"></a><tt class="py-lineno">1616</tt> <tt class="py-line"> <tt class="py-string">"the topology from each ONOS instance"</tt> </tt>
-<a name="L1617"></a><tt class="py-lineno">1617</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-651" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-651', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L1618"></a><tt class="py-lineno">1618</tt> <tt class="py-line"> <tt class="py-string">"Very crass estimate for topology discovery/convergence( "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1619"></a><tt class="py-lineno">1619</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">note</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ): "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">elapsed</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" seconds, "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1620"></a><tt class="py-lineno">1620</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">count</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" tries"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1621"></a><tt class="py-lineno">1621</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">topoResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1622"></a><tt class="py-lineno">1622</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Topology Check Test successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1623"></a><tt class="py-lineno">1623</tt> <tt class="py-line"> <tt id="link-652" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-652', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Topology Check Test NOT successful"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1624"></a><tt class="py-lineno">1624</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE9"></a><div id="HAsingleInstanceRestart.CASE9-def"><a name="L1625"></a><tt class="py-lineno">1625</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE9-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE9');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE9">CASE9</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE9-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE9-expanded"><a name="L1626"></a><tt class="py-lineno">1626</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1627"></a><tt class="py-lineno">1627</tt> <tt class="py-line"><tt class="py-docstring"> Link s3-s28 down</tt> </tt>
-<a name="L1628"></a><tt class="py-lineno">1628</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1629"></a><tt class="py-lineno">1629</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1630"></a><tt class="py-lineno">1630</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1631"></a><tt class="py-lineno">1631</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1632"></a><tt class="py-lineno">1632</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1633"></a><tt class="py-lineno">1633</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: You should probably run a topology check after this</tt> </tt>
-<a name="L1634"></a><tt class="py-lineno">1634</tt> <tt class="py-line"> </tt>
-<a name="L1635"></a><tt class="py-lineno">1635</tt> <tt class="py-line"> <tt class="py-name">linkSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1636"></a><tt class="py-lineno">1636</tt> <tt class="py-line"> </tt>
-<a name="L1637"></a><tt class="py-lineno">1637</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Turn off a link to ensure that Link Discovery "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L1638"></a><tt class="py-lineno">1638</tt> <tt class="py-line"> <tt class="py-string">"is working properly"</tt> </tt>
-<a name="L1639"></a><tt class="py-lineno">1639</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-653" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-653', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1640"></a><tt class="py-lineno">1640</tt> <tt class="py-line"> </tt>
-<a name="L1641"></a><tt class="py-lineno">1641</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-654" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-654', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Kill Link between s3 and s28"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1642"></a><tt class="py-lineno">1642</tt> <tt class="py-line"> <tt class="py-name">LinkDown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-655" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#link"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-655', 'link', 'link-655');">link</a></tt><tt class="py-op">(</tt> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-string">"s3"</tt><tt class="py-op">,</tt> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-string">"s28"</tt><tt class="py-op">,</tt> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"down"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1643"></a><tt class="py-lineno">1643</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-656" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-656', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">linkSleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1644"></a><tt class="py-lineno">1644</tt> <tt class="py-line"> <tt class="py-string">" seconds for link down to be discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1645"></a><tt class="py-lineno">1645</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">linkSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1646"></a><tt class="py-lineno">1646</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">LinkDown</tt><tt class="py-op">,</tt> </tt>
-<a name="L1647"></a><tt class="py-lineno">1647</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link down successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1648"></a><tt class="py-lineno">1648</tt> <tt class="py-line"> <tt id="link-657" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-657', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to bring link down"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1649"></a><tt class="py-lineno">1649</tt> <tt class="py-line"> <tt class="py-comment"># TODO do some sort of check here</tt> </tt>
-<a name="L1650"></a><tt class="py-lineno">1650</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE10"></a><div id="HAsingleInstanceRestart.CASE10-def"><a name="L1651"></a><tt class="py-lineno">1651</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE10-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE10');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE10">CASE10</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE10-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE10-expanded"><a name="L1652"></a><tt class="py-lineno">1652</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1653"></a><tt class="py-lineno">1653</tt> <tt class="py-line"><tt class="py-docstring"> Link s3-s28 up</tt> </tt>
-<a name="L1654"></a><tt class="py-lineno">1654</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1655"></a><tt class="py-lineno">1655</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1656"></a><tt class="py-lineno">1656</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1657"></a><tt class="py-lineno">1657</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1658"></a><tt class="py-lineno">1658</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1659"></a><tt class="py-lineno">1659</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: You should probably run a topology check after this</tt> </tt>
-<a name="L1660"></a><tt class="py-lineno">1660</tt> <tt class="py-line"> </tt>
-<a name="L1661"></a><tt class="py-lineno">1661</tt> <tt class="py-line"> <tt class="py-name">linkSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'LinkDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1662"></a><tt class="py-lineno">1662</tt> <tt class="py-line"> </tt>
-<a name="L1663"></a><tt class="py-lineno">1663</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Restore a link to ensure that Link Discovery is "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1664"></a><tt class="py-lineno">1664</tt> <tt class="py-line"> <tt class="py-string">"working properly"</tt> </tt>
-<a name="L1665"></a><tt class="py-lineno">1665</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-658" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-658', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1666"></a><tt class="py-lineno">1666</tt> <tt class="py-line"> </tt>
-<a name="L1667"></a><tt class="py-lineno">1667</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-659" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-659', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Bring link between s3 and s28 back up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1668"></a><tt class="py-lineno">1668</tt> <tt class="py-line"> <tt class="py-name">LinkUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-660" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link" class="py-name" href="#" onclick="return doclink('link-660', 'link', 'link-655');">link</a></tt><tt class="py-op">(</tt> <tt class="py-name">END1</tt><tt class="py-op">=</tt><tt class="py-string">"s3"</tt><tt class="py-op">,</tt> <tt class="py-name">END2</tt><tt class="py-op">=</tt><tt class="py-string">"s28"</tt><tt class="py-op">,</tt> <tt class="py-name">OPTION</tt><tt class="py-op">=</tt><tt class="py-string">"up"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1669"></a><tt class="py-lineno">1669</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-661" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-661', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">linkSleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1670"></a><tt class="py-lineno">1670</tt> <tt class="py-line"> <tt class="py-string">" seconds for link up to be discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1671"></a><tt class="py-lineno">1671</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">linkSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1672"></a><tt class="py-lineno">1672</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">LinkUp</tt><tt class="py-op">,</tt> </tt>
-<a name="L1673"></a><tt class="py-lineno">1673</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Link up successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1674"></a><tt class="py-lineno">1674</tt> <tt class="py-line"> <tt id="link-662" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-662', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to bring link up"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1675"></a><tt class="py-lineno">1675</tt> <tt class="py-line"> <tt class="py-comment"># TODO do some sort of check here</tt> </tt>
-<a name="L1676"></a><tt class="py-lineno">1676</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE11"></a><div id="HAsingleInstanceRestart.CASE11-def"><a name="L1677"></a><tt class="py-lineno">1677</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE11-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE11');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE11">CASE11</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE11-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE11-expanded"><a name="L1678"></a><tt class="py-lineno">1678</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1679"></a><tt class="py-lineno">1679</tt> <tt class="py-line"><tt class="py-docstring"> Switch Down</tt> </tt>
-<a name="L1680"></a><tt class="py-lineno">1680</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1681"></a><tt class="py-lineno">1681</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: You should probably run a topology check after this</tt> </tt>
-<a name="L1682"></a><tt class="py-lineno">1682</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1683"></a><tt class="py-lineno">1683</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1684"></a><tt class="py-lineno">1684</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1685"></a><tt class="py-lineno">1685</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1686"></a><tt class="py-lineno">1686</tt> <tt class="py-line"> </tt>
-<a name="L1687"></a><tt class="py-lineno">1687</tt> <tt class="py-line"> <tt class="py-name">switchSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'SwitchDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1688"></a><tt class="py-lineno">1688</tt> <tt class="py-line"> </tt>
-<a name="L1689"></a><tt class="py-lineno">1689</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Killing a switch to ensure it is discovered correctly"</tt> </tt>
-<a name="L1690"></a><tt class="py-lineno">1690</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-663" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-663', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1691"></a><tt class="py-lineno">1691</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'switch'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1692"></a><tt class="py-lineno">1692</tt> <tt class="py-line"> <tt class="py-name">switchDPID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'dpid'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1693"></a><tt class="py-lineno">1693</tt> <tt class="py-line"> </tt>
-<a name="L1694"></a><tt class="py-lineno">1694</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Make this switch parameterizable</tt> </tt>
-<a name="L1695"></a><tt class="py-lineno">1695</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-664" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-664', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Kill "</tt> <tt class="py-op">+</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1696"></a><tt class="py-lineno">1696</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-665" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-665', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Deleting "</tt> <tt class="py-op">+</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1697"></a><tt class="py-lineno">1697</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-666" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.delSwitch()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delSwitch"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.delSwitch" class="py-name" href="#" onclick="return doclink('link-666', 'delSwitch', 'link-666');">delSwitch</a></tt><tt class="py-op">(</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1698"></a><tt class="py-lineno">1698</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-667" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-667', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">switchSleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1699"></a><tt class="py-lineno">1699</tt> <tt class="py-line"> <tt class="py-string">" seconds for switch down to be discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1700"></a><tt class="py-lineno">1700</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">switchSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1701"></a><tt class="py-lineno">1701</tt> <tt class="py-line"> <tt class="py-name">device</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-668" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-668', 'getDevice', 'link-88');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-name">switchDPID</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1702"></a><tt class="py-lineno">1702</tt> <tt class="py-line"> <tt class="py-comment"># Peek at the deleted switch</tt> </tt>
-<a name="L1703"></a><tt class="py-lineno">1703</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-669" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-669', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">device</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1704"></a><tt class="py-lineno">1704</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1705"></a><tt class="py-lineno">1705</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">device</tt> <tt class="py-keyword">and</tt> <tt class="py-name">device</tt><tt class="py-op">[</tt> <tt class="py-string">'available'</tt> <tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L1706"></a><tt class="py-lineno">1706</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1707"></a><tt class="py-lineno">1707</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">result</tt><tt class="py-op">,</tt> </tt>
-<a name="L1708"></a><tt class="py-lineno">1708</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Kill switch successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1709"></a><tt class="py-lineno">1709</tt> <tt class="py-line"> <tt id="link-670" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-670', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to kill switch?"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1710"></a><tt class="py-lineno">1710</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE12"></a><div id="HAsingleInstanceRestart.CASE12-def"><a name="L1711"></a><tt class="py-lineno">1711</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE12-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE12');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE12">CASE12</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE12-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE12-expanded"><a name="L1712"></a><tt class="py-lineno">1712</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1713"></a><tt class="py-lineno">1713</tt> <tt class="py-line"><tt class="py-docstring"> Switch Up</tt> </tt>
-<a name="L1714"></a><tt class="py-lineno">1714</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1715"></a><tt class="py-lineno">1715</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: You should probably run a topology check after this</tt> </tt>
-<a name="L1716"></a><tt class="py-lineno">1716</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1717"></a><tt class="py-lineno">1717</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1718"></a><tt class="py-lineno">1718</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1719"></a><tt class="py-lineno">1719</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1720"></a><tt class="py-lineno">1720</tt> <tt class="py-line"> </tt>
-<a name="L1721"></a><tt class="py-lineno">1721</tt> <tt class="py-line"> <tt class="py-name">switchSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'timers'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'SwitchDiscovery'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1722"></a><tt class="py-lineno">1722</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'switch'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1723"></a><tt class="py-lineno">1723</tt> <tt class="py-line"> <tt class="py-name">switchDPID</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'dpid'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1724"></a><tt class="py-lineno">1724</tt> <tt class="py-line"> <tt id="link-671" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-671', 'links', 'link-438');">links</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'kill'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'links'</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1725"></a><tt class="py-lineno">1725</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Adding a switch to ensure it is discovered correctly"</tt> </tt>
-<a name="L1726"></a><tt class="py-lineno">1726</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-672" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-672', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1727"></a><tt class="py-lineno">1727</tt> <tt class="py-line"> </tt>
-<a name="L1728"></a><tt class="py-lineno">1728</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-673" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-673', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add back "</tt> <tt class="py-op">+</tt> <tt class="py-name">switch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1729"></a><tt class="py-lineno">1729</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-674" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addSwitch"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-674', 'addSwitch', 'link-674');">addSwitch</a></tt><tt class="py-op">(</tt> <tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-name">switchDPID</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1730"></a><tt class="py-lineno">1730</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">peer</tt> <tt class="py-keyword">in</tt> <tt id="link-675" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-675', 'links', 'link-438');">links</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1731"></a><tt class="py-lineno">1731</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-676" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addLink"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-676', 'addLink', 'link-676');">addLink</a></tt><tt class="py-op">(</tt> <tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">peer</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1732"></a><tt class="py-lineno">1732</tt> <tt class="py-line"> <tt class="py-name">ipList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1733"></a><tt class="py-lineno">1733</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1734"></a><tt class="py-lineno">1734</tt> <tt class="py-line"> <tt class="py-name">ipList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-677" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-677', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1735"></a><tt class="py-lineno">1735</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-678" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController" class="py-name" href="#" onclick="return doclink('link-678', 'assignSwController', 'link-77');">assignSwController</a></tt><tt class="py-op">(</tt> <tt class="py-name">sw</tt><tt class="py-op">=</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">ipList</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1736"></a><tt class="py-lineno">1736</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-679" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-679', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Waiting "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">switchSleep</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1737"></a><tt class="py-lineno">1737</tt> <tt class="py-line"> <tt class="py-string">" seconds for switch up to be discovered"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1738"></a><tt class="py-lineno">1738</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">switchSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1739"></a><tt class="py-lineno">1739</tt> <tt class="py-line"> <tt class="py-name">device</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-680" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice" class="py-name" href="#" onclick="return doclink('link-680', 'getDevice', 'link-88');">getDevice</a></tt><tt class="py-op">(</tt> <tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-name">switchDPID</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1740"></a><tt class="py-lineno">1740</tt> <tt class="py-line"> <tt class="py-comment"># Peek at the deleted switch</tt> </tt>
-<a name="L1741"></a><tt class="py-lineno">1741</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-681" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-681', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">device</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1742"></a><tt class="py-lineno">1742</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1743"></a><tt class="py-lineno">1743</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">device</tt> <tt class="py-keyword">and</tt> <tt class="py-name">device</tt><tt class="py-op">[</tt> <tt class="py-string">'available'</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L1744"></a><tt class="py-lineno">1744</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1745"></a><tt class="py-lineno">1745</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">result</tt><tt class="py-op">,</tt> </tt>
-<a name="L1746"></a><tt class="py-lineno">1746</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"add switch successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1747"></a><tt class="py-lineno">1747</tt> <tt class="py-line"> <tt id="link-682" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-682', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to add switch?"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1748"></a><tt class="py-lineno">1748</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE13"></a><div id="HAsingleInstanceRestart.CASE13-def"><a name="L1749"></a><tt class="py-lineno">1749</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE13-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE13');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE13">CASE13</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE13-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE13-expanded"><a name="L1750"></a><tt class="py-lineno">1750</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1751"></a><tt class="py-lineno">1751</tt> <tt class="py-line"><tt class="py-docstring"> Clean up</tt> </tt>
-<a name="L1752"></a><tt class="py-lineno">1752</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1753"></a><tt class="py-lineno">1753</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L1754"></a><tt class="py-lineno">1754</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L1755"></a><tt class="py-lineno">1755</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1756"></a><tt class="py-lineno">1756</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1757"></a><tt class="py-lineno">1757</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1758"></a><tt class="py-lineno">1758</tt> <tt class="py-line"> <tt class="py-comment"># printing colors to terminal</tt> </tt>
-<a name="L1759"></a><tt class="py-lineno">1759</tt> <tt class="py-line"> <tt class="py-name">colors</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-string">'cyan'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[96m'</tt><tt class="py-op">,</tt> <tt class="py-string">'purple'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[95m'</tt><tt class="py-op">,</tt> </tt>
-<a name="L1760"></a><tt class="py-lineno">1760</tt> <tt class="py-line"> <tt class="py-string">'blue'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[94m'</tt><tt class="py-op">,</tt> <tt class="py-string">'green'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[92m'</tt><tt class="py-op">,</tt> </tt>
-<a name="L1761"></a><tt class="py-lineno">1761</tt> <tt class="py-line"> <tt class="py-string">'yellow'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[93m'</tt><tt class="py-op">,</tt> <tt class="py-string">'red'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[91m'</tt><tt class="py-op">,</tt> <tt class="py-string">'end'</tt><tt class="py-op">:</tt> <tt class="py-string">'\033[0m'</tt> <tt class="py-op">}</tt> </tt>
-<a name="L1762"></a><tt class="py-lineno">1762</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-683" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-683', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Test Cleanup"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1763"></a><tt class="py-lineno">1763</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-684" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-684', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Killing tcpdumps"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1764"></a><tt class="py-lineno">1764</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet2</tt><tt class="py-op">.</tt><tt id="link-685" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopTcpdump()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopTcpdump,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.stopTcpdump()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#stopTcpdump"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopTcpdump
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.stopTcpdump" class="py-name" href="#" onclick="return doclink('link-685', 'stopTcpdump', 'link-685');">stopTcpdump</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1765"></a><tt class="py-lineno">1765</tt> <tt class="py-line"> </tt>
-<a name="L1766"></a><tt class="py-lineno">1766</tt> <tt class="py-line"> <tt class="py-name">testname</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TEST</tt> </tt>
-<a name="L1767"></a><tt class="py-lineno">1767</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BACKUP'</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"True"</tt><tt class="py-op">:</tt> </tt>
-<a name="L1768"></a><tt class="py-lineno">1768</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-686" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-686', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Copying MN pcap and ONOS log files to test station"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1769"></a><tt class="py-lineno">1769</tt> <tt class="py-line"> <tt class="py-name">teststationUser</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BACKUP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'TESTONUSER'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1770"></a><tt class="py-lineno">1770</tt> <tt class="py-line"> <tt class="py-name">teststationIP</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BACKUP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'TESTONIP'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1771"></a><tt class="py-lineno">1771</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: MN Pcap file is being saved to ~/packet_captures</tt> </tt>
-<a name="L1772"></a><tt class="py-lineno">1772</tt> <tt class="py-line"> <tt class="py-comment"># scp this file as MN and TestON aren't necessarily the same vm</tt> </tt>
-<a name="L1773"></a><tt class="py-lineno">1773</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: scp</tt> </tt>
-<a name="L1774"></a><tt class="py-lineno">1774</tt> <tt class="py-line"> <tt class="py-comment"># mn files</tt> </tt>
-<a name="L1775"></a><tt class="py-lineno">1775</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Load these from params</tt> </tt>
-<a name="L1776"></a><tt class="py-lineno">1776</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: must end in /</tt> </tt>
-<a name="L1777"></a><tt class="py-lineno">1777</tt> <tt class="py-line"> <tt class="py-name">logFolder</tt> <tt class="py-op">=</tt> <tt class="py-string">"/opt/onos/log/"</tt> </tt>
-<a name="L1778"></a><tt class="py-lineno">1778</tt> <tt class="py-line"> <tt class="py-name">logFiles</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">"karaf.log"</tt><tt class="py-op">,</tt> <tt class="py-string">"karaf.log.1"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1779"></a><tt class="py-lineno">1779</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: must end in /</tt> </tt>
-<a name="L1780"></a><tt class="py-lineno">1780</tt> <tt class="py-line"> <tt class="py-name">dstDir</tt> <tt class="py-op">=</tt> <tt class="py-string">"~/packet_captures/"</tt> </tt>
-<a name="L1781"></a><tt class="py-lineno">1781</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">f</tt> <tt class="py-keyword">in</tt> <tt class="py-name">logFiles</tt><tt class="py-op">:</tt> </tt>
-<a name="L1782"></a><tt class="py-lineno">1782</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-687" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-687', 'sendline', 'link-687');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"scp sdn@"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-688" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-688', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1783"></a><tt class="py-lineno">1783</tt> <tt class="py-line"> <tt class="py-name">logFolder</tt> <tt class="py-op">+</tt> <tt class="py-name">f</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1784"></a><tt class="py-lineno">1784</tt> <tt class="py-line"> <tt class="py-name">teststationUser</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1785"></a><tt class="py-lineno">1785</tt> <tt class="py-line"> <tt class="py-name">teststationIP</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">dstDir</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1786"></a><tt class="py-lineno">1786</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">testname</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"-ONOS1-"</tt> <tt class="py-op">+</tt> <tt class="py-name">f</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1787"></a><tt class="py-lineno">1787</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1788"></a><tt class="py-lineno">1788</tt> <tt class="py-line"> </tt>
-<a name="L1789"></a><tt class="py-lineno">1789</tt> <tt class="py-line"> <tt class="py-comment"># std*.log's</tt> </tt>
-<a name="L1790"></a><tt class="py-lineno">1790</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: must end in /</tt> </tt>
-<a name="L1791"></a><tt class="py-lineno">1791</tt> <tt class="py-line"> <tt class="py-name">logFolder</tt> <tt class="py-op">=</tt> <tt class="py-string">"/opt/onos/var/"</tt> </tt>
-<a name="L1792"></a><tt class="py-lineno">1792</tt> <tt class="py-line"> <tt class="py-name">logFiles</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">"stderr.log"</tt><tt class="py-op">,</tt> <tt class="py-string">"stdout.log"</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1793"></a><tt class="py-lineno">1793</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: must end in /</tt> </tt>
-<a name="L1794"></a><tt class="py-lineno">1794</tt> <tt class="py-line"> <tt class="py-name">dstDir</tt> <tt class="py-op">=</tt> <tt class="py-string">"~/packet_captures/"</tt> </tt>
-<a name="L1795"></a><tt class="py-lineno">1795</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">f</tt> <tt class="py-keyword">in</tt> <tt class="py-name">logFiles</tt><tt class="py-op">:</tt> </tt>
-<a name="L1796"></a><tt class="py-lineno">1796</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-689" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-689', 'sendline', 'link-687');">sendline</a></tt><tt class="py-op">(</tt> <tt class="py-string">"scp sdn@"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-690" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-690', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1797"></a><tt class="py-lineno">1797</tt> <tt class="py-line"> <tt class="py-name">logFolder</tt> <tt class="py-op">+</tt> <tt class="py-name">f</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1798"></a><tt class="py-lineno">1798</tt> <tt class="py-line"> <tt class="py-name">teststationUser</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1799"></a><tt class="py-lineno">1799</tt> <tt class="py-line"> <tt class="py-name">teststationIP</tt> <tt class="py-op">+</tt> <tt class="py-string">":"</tt> <tt class="py-op">+</tt> <tt class="py-name">dstDir</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1800"></a><tt class="py-lineno">1800</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">testname</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"-ONOS1-"</tt> <tt class="py-op">+</tt> <tt class="py-name">f</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1801"></a><tt class="py-lineno">1801</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt> <tt class="py-string">"\$"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1802"></a><tt class="py-lineno">1802</tt> <tt class="py-line"> <tt class="py-comment"># sleep so scp can finish</tt> </tt>
-<a name="L1803"></a><tt class="py-lineno">1803</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1804"></a><tt class="py-lineno">1804</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-691" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-691', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Packing and rotating pcap archives"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1805"></a><tt class="py-lineno">1805</tt> <tt class="py-line"> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">system</tt><tt class="py-op">(</tt> <tt class="py-string">"~/TestON/dependencies/rotate.sh "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">testname</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1806"></a><tt class="py-lineno">1806</tt> <tt class="py-line"> </tt>
-<a name="L1807"></a><tt class="py-lineno">1807</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-692" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-692', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Stopping Mininet"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1808"></a><tt class="py-lineno">1808</tt> <tt class="py-line"> <tt class="py-name">mnResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-693" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet" class="py-name" href="#" onclick="return doclink('link-693', 'stopNet', 'link-693');">stopNet</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1809"></a><tt class="py-lineno">1809</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">mnResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1810"></a><tt class="py-lineno">1810</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Mininet stopped"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1811"></a><tt class="py-lineno">1811</tt> <tt class="py-line"> <tt id="link-694" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-694', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"MN cleanup NOT successful"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1812"></a><tt class="py-lineno">1812</tt> <tt class="py-line"> </tt>
-<a name="L1813"></a><tt class="py-lineno">1813</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-695" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-695', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Checking ONOS Logs for errors"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1814"></a><tt class="py-lineno">1814</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">colors</tt><tt class="py-op">[</tt> <tt class="py-string">'purple'</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">"Checking logs for errors on ONOS1:"</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1815"></a><tt class="py-lineno">1815</tt> <tt class="py-line"> <tt class="py-name">colors</tt><tt class="py-op">[</tt> <tt class="py-string">'end'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L1816"></a><tt class="py-lineno">1816</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-696" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.checkLogs()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#checkLogs"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.checkLogs" class="py-name" href="#" onclick="return doclink('link-696', 'checkLogs', 'link-696');">checkLogs</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-697" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-697', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-name">restart</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1817"></a><tt class="py-lineno">1817</tt> <tt class="py-line"> </tt>
-<a name="L1818"></a><tt class="py-lineno">1818</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1819"></a><tt class="py-lineno">1819</tt> <tt class="py-line"> <tt class="py-name">timerLog</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">logdir</tt> <tt class="py-op">+</tt> <tt class="py-string">"/Timers.csv"</tt><tt class="py-op">,</tt> <tt class="py-string">'w'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1820"></a><tt class="py-lineno">1820</tt> <tt class="py-line"> <tt class="py-comment"># Overwrite with empty line and close</tt> </tt>
-<a name="L1821"></a><tt class="py-lineno">1821</tt> <tt class="py-line"> <tt class="py-name">labels</tt> <tt class="py-op">=</tt> <tt class="py-string">"Gossip Intents, Restart"</tt> </tt>
-<a name="L1822"></a><tt class="py-lineno">1822</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">gossipTime</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">", "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">restartTime</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1823"></a><tt class="py-lineno">1823</tt> <tt class="py-line"> <tt class="py-name">timerLog</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt> <tt class="py-name">labels</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-op">+</tt> <tt class="py-name">data</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1824"></a><tt class="py-lineno">1824</tt> <tt class="py-line"> <tt class="py-name">timerLog</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1825"></a><tt class="py-lineno">1825</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L1826"></a><tt class="py-lineno">1826</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-698" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-698', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1827"></a><tt class="py-lineno">1827</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE14"></a><div id="HAsingleInstanceRestart.CASE14-def"><a name="L1828"></a><tt class="py-lineno">1828</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE14-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE14');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE14">CASE14</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE14-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE14-expanded"><a name="L1829"></a><tt class="py-lineno">1829</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1830"></a><tt class="py-lineno">1830</tt> <tt class="py-line"><tt class="py-docstring"> start election app on all onos nodes</tt> </tt>
-<a name="L1831"></a><tt class="py-lineno">1831</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1832"></a><tt class="py-lineno">1832</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1833"></a><tt class="py-lineno">1833</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1834"></a><tt class="py-lineno">1834</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1835"></a><tt class="py-lineno">1835</tt> <tt class="py-line"> </tt>
-<a name="L1836"></a><tt class="py-lineno">1836</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-699" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-699', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt><tt class="py-string">"Start Leadership Election app"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1837"></a><tt class="py-lineno">1837</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-700" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-700', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install leadership election app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1838"></a><tt class="py-lineno">1838</tt> <tt class="py-line"> <tt class="py-name">appResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-701" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-701', 'activateApp', 'link-112');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">"org.onosproject.election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1839"></a><tt class="py-lineno">1839</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1840"></a><tt class="py-lineno">1840</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1841"></a><tt class="py-lineno">1841</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1842"></a><tt class="py-lineno">1842</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Election app installed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1843"></a><tt class="py-lineno">1843</tt> <tt class="py-line"> <tt id="link-702" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-702', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something went wrong with installing Leadership election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1844"></a><tt class="py-lineno">1844</tt> <tt class="py-line"> </tt>
-<a name="L1845"></a><tt class="py-lineno">1845</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-703" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-703', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Run for election on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1846"></a><tt class="py-lineno">1846</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-704" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestRun" class="py-name" href="#" onclick="return doclink('link-704', 'electionTestRun', 'link-517');">electionTestRun</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1847"></a><tt class="py-lineno">1847</tt> <tt class="py-line"> <tt class="py-comment"># check for leader</tt> </tt>
-<a name="L1848"></a><tt class="py-lineno">1848</tt> <tt class="py-line"> <tt class="py-name">leader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-705" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-705', 'electionTestLeader', 'link-557');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1849"></a><tt class="py-lineno">1849</tt> <tt class="py-line"> <tt class="py-comment"># verify leader is ONOS1</tt> </tt>
-<a name="L1850"></a><tt class="py-lineno">1850</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leader</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-706" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-706', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">:</tt> </tt>
-<a name="L1851"></a><tt class="py-lineno">1851</tt> <tt class="py-line"> <tt class="py-comment"># all is well</tt> </tt>
-<a name="L1852"></a><tt class="py-lineno">1852</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L1853"></a><tt class="py-lineno">1853</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leader</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1854"></a><tt class="py-lineno">1854</tt> <tt class="py-line"> <tt class="py-comment"># No leader elected</tt> </tt>
-<a name="L1855"></a><tt class="py-lineno">1855</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-707" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-707', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-708" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-708', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"No leader was elected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1856"></a><tt class="py-lineno">1856</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1857"></a><tt class="py-lineno">1857</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leader</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1858"></a><tt class="py-lineno">1858</tt> <tt class="py-line"> <tt class="py-comment"># error in response</tt> </tt>
-<a name="L1859"></a><tt class="py-lineno">1859</tt> <tt class="py-line"> <tt class="py-comment"># TODO: add check for "Command not found:" in the driver, this</tt> </tt>
-<a name="L1860"></a><tt class="py-lineno">1860</tt> <tt class="py-line"> <tt class="py-comment"># means the app isn't loaded</tt> </tt>
-<a name="L1861"></a><tt class="py-lineno">1861</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-709" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-709', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-710" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-710', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Something is wrong with electionTestLeader"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1862"></a><tt class="py-lineno">1862</tt> <tt class="py-line"> <tt class="py-string">" function, check the error logs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1863"></a><tt class="py-lineno">1863</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1864"></a><tt class="py-lineno">1864</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1865"></a><tt class="py-lineno">1865</tt> <tt class="py-line"> <tt class="py-comment"># error in response</tt> </tt>
-<a name="L1866"></a><tt class="py-lineno">1866</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-711" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-711', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-712" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-712', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1867"></a><tt class="py-lineno">1867</tt> <tt class="py-line"> <tt class="py-string">"Unexpected response from electionTestLeader function:'"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1868"></a><tt class="py-lineno">1868</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1869"></a><tt class="py-lineno">1869</tt> <tt class="py-line"> <tt class="py-string">"'"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1870"></a><tt class="py-lineno">1870</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1871"></a><tt class="py-lineno">1871</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1872"></a><tt class="py-lineno">1872</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1873"></a><tt class="py-lineno">1873</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">leaderResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1874"></a><tt class="py-lineno">1874</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully ran for leadership"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1875"></a><tt class="py-lineno">1875</tt> <tt class="py-line"> <tt id="link-713" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-713', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to run for leadership"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1876"></a><tt class="py-lineno">1876</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE15"></a><div id="HAsingleInstanceRestart.CASE15-def"><a name="L1877"></a><tt class="py-lineno">1877</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE15-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE15');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE15">CASE15</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE15-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE15-expanded"><a name="L1878"></a><tt class="py-lineno">1878</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1879"></a><tt class="py-lineno">1879</tt> <tt class="py-line"><tt class="py-docstring"> Check that Leadership Election is still functional</tt> </tt>
-<a name="L1880"></a><tt class="py-lineno">1880</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1881"></a><tt class="py-lineno">1881</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1882"></a><tt class="py-lineno">1882</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1883"></a><tt class="py-lineno">1883</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1884"></a><tt class="py-lineno">1884</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1885"></a><tt class="py-lineno">1885</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Check that Leadership Election is still functional"</tt> </tt>
-<a name="L1886"></a><tt class="py-lineno">1886</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-714" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-714', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1887"></a><tt class="py-lineno">1887</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-715" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-715', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Find current leader and withdraw"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1888"></a><tt class="py-lineno">1888</tt> <tt class="py-line"> <tt class="py-name">leader</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-716" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-716', 'electionTestLeader', 'link-557');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1889"></a><tt class="py-lineno">1889</tt> <tt class="py-line"> <tt class="py-comment"># do some sanity checking on leader before using it</tt> </tt>
-<a name="L1890"></a><tt class="py-lineno">1890</tt> <tt class="py-line"> <tt class="py-name">withdrawResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1891"></a><tt class="py-lineno">1891</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leader</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-717" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-717', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">:</tt> </tt>
-<a name="L1892"></a><tt class="py-lineno">1892</tt> <tt class="py-line"> <tt class="py-name">oldLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"ONOScli1"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1893"></a><tt class="py-lineno">1893</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leader</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">leader</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1894"></a><tt class="py-lineno">1894</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-718" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-718', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-719" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-719', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L1895"></a><tt class="py-lineno">1895</tt> <tt class="py-line"> <tt class="py-string">"Leader for the election app should be an ONOS node,"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1896"></a><tt class="py-lineno">1896</tt> <tt class="py-line"> <tt class="py-string">"instead got '"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leader</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"'"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1897"></a><tt class="py-lineno">1897</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1898"></a><tt class="py-lineno">1898</tt> <tt class="py-line"> <tt class="py-name">oldLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1899"></a><tt class="py-lineno">1899</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1900"></a><tt class="py-lineno">1900</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-720" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-720', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-721" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-721', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Leader election --- why am I HERE?!?"</tt><tt class="py-op">)</tt> </tt>
-<a name="L1901"></a><tt class="py-lineno">1901</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1902"></a><tt class="py-lineno">1902</tt> <tt class="py-line"> <tt class="py-name">oldLeader</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1903"></a><tt class="py-lineno">1903</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">oldLeader</tt><tt class="py-op">:</tt> </tt>
-<a name="L1904"></a><tt class="py-lineno">1904</tt> <tt class="py-line"> <tt class="py-name">withdrawResult</tt> <tt class="py-op">=</tt> <tt class="py-name">oldLeader</tt><tt class="py-op">.</tt><tt id="link-722" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestWithdraw()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestWithdraw"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestWithdraw" class="py-name" href="#" onclick="return doclink('link-722', 'electionTestWithdraw', 'link-722');">electionTestWithdraw</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1905"></a><tt class="py-lineno">1905</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1906"></a><tt class="py-lineno">1906</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1907"></a><tt class="py-lineno">1907</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">withdrawResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1908"></a><tt class="py-lineno">1908</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Node was withdrawn from election"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1909"></a><tt class="py-lineno">1909</tt> <tt class="py-line"> <tt id="link-723" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-723', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Node was not withdrawn from election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1910"></a><tt class="py-lineno">1910</tt> <tt class="py-line"> </tt>
-<a name="L1911"></a><tt class="py-lineno">1911</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-724" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-724', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Make sure new leader is elected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1912"></a><tt class="py-lineno">1912</tt> <tt class="py-line"> <tt class="py-name">leaderN</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-725" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-725', 'electionTestLeader', 'link-557');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1913"></a><tt class="py-lineno">1913</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">==</tt> <tt class="py-name">leader</tt><tt class="py-op">:</tt> </tt>
-<a name="L1914"></a><tt class="py-lineno">1914</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-726" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-726', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-727" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-727', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS still sees "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1915"></a><tt class="py-lineno">1915</tt> <tt class="py-line"> <tt class="py-string">" as leader after they withdrew"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1916"></a><tt class="py-lineno">1916</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1917"></a><tt class="py-lineno">1917</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leaderN</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L1918"></a><tt class="py-lineno">1918</tt> <tt class="py-line"> <tt class="py-comment"># error in response</tt> </tt>
-<a name="L1919"></a><tt class="py-lineno">1919</tt> <tt class="py-line"> <tt class="py-comment"># TODO: add check for "Command not found:" in the driver, this</tt> </tt>
-<a name="L1920"></a><tt class="py-lineno">1920</tt> <tt class="py-line"> <tt class="py-comment"># means the app isn't loaded</tt> </tt>
-<a name="L1921"></a><tt class="py-lineno">1921</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-728" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-728', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-729" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-729', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Something is wrong with electionTestLeader "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1922"></a><tt class="py-lineno">1922</tt> <tt class="py-line"> <tt class="py-string">"function, check the error logs"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1923"></a><tt class="py-lineno">1923</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1924"></a><tt class="py-lineno">1924</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">leaderN</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1925"></a><tt class="py-lineno">1925</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-730" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-730', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> </tt>
-<a name="L1926"></a><tt class="py-lineno">1926</tt> <tt class="py-line"> <tt class="py-string">"There is no leader after the app withdrew from election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1927"></a><tt class="py-lineno">1927</tt> <tt class="py-line"> <tt class="py-name">leaderResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1928"></a><tt class="py-lineno">1928</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1929"></a><tt class="py-lineno">1929</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1930"></a><tt class="py-lineno">1930</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">leaderResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1931"></a><tt class="py-lineno">1931</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Leadership election passed"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1932"></a><tt class="py-lineno">1932</tt> <tt class="py-line"> <tt id="link-731" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-731', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something went wrong with Leadership election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1933"></a><tt class="py-lineno">1933</tt> <tt class="py-line"> </tt>
-<a name="L1934"></a><tt class="py-lineno">1934</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-732" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-732', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Run for election on old leader( just so everyone "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1935"></a><tt class="py-lineno">1935</tt> <tt class="py-line"> <tt class="py-string">"is in the hat )"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1936"></a><tt class="py-lineno">1936</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">oldLeader</tt><tt class="py-op">:</tt> </tt>
-<a name="L1937"></a><tt class="py-lineno">1937</tt> <tt class="py-line"> <tt class="py-name">runResult</tt> <tt class="py-op">=</tt> <tt class="py-name">oldLeader</tt><tt class="py-op">.</tt><tt id="link-733" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestRun" class="py-name" href="#" onclick="return doclink('link-733', 'electionTestRun', 'link-517');">electionTestRun</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1938"></a><tt class="py-lineno">1938</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1939"></a><tt class="py-lineno">1939</tt> <tt class="py-line"> <tt class="py-name">runResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1940"></a><tt class="py-lineno">1940</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1941"></a><tt class="py-lineno">1941</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1942"></a><tt class="py-lineno">1942</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">runResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1943"></a><tt class="py-lineno">1943</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"App re-ran for election"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1944"></a><tt class="py-lineno">1944</tt> <tt class="py-line"> <tt id="link-734" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-734', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"App failed to run for election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1945"></a><tt class="py-lineno">1945</tt> <tt class="py-line"> </tt>
-<a name="L1946"></a><tt class="py-lineno">1946</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-735" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-735', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Node became leader when it ran for election"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1947"></a><tt class="py-lineno">1947</tt> <tt class="py-line"> <tt class="py-name">afterRun</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOScli1</tt><tt class="py-op">.</tt><tt id="link-736" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader" class="py-name" href="#" onclick="return doclink('link-736', 'electionTestLeader', 'link-557');">electionTestLeader</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1948"></a><tt class="py-lineno">1948</tt> <tt class="py-line"> <tt class="py-comment"># verify leader is ONOS1</tt> </tt>
-<a name="L1949"></a><tt class="py-lineno">1949</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">afterRun</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-737" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-737', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">:</tt> </tt>
-<a name="L1950"></a><tt class="py-lineno">1950</tt> <tt class="py-line"> <tt class="py-name">afterResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L1951"></a><tt class="py-lineno">1951</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1952"></a><tt class="py-lineno">1952</tt> <tt class="py-line"> <tt class="py-name">afterResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L1953"></a><tt class="py-lineno">1953</tt> <tt class="py-line"> </tt>
-<a name="L1954"></a><tt class="py-lineno">1954</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> </tt>
-<a name="L1955"></a><tt class="py-lineno">1955</tt> <tt class="py-line"> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1956"></a><tt class="py-lineno">1956</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">afterResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L1957"></a><tt class="py-lineno">1957</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Old leader successfully re-ran for election"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1958"></a><tt class="py-lineno">1958</tt> <tt class="py-line"> <tt id="link-738" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-738', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Something went wrong with Leadership election after "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L1959"></a><tt class="py-lineno">1959</tt> <tt class="py-line"> <tt class="py-string">"the old leader re-ran for election"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1960"></a><tt class="py-lineno">1960</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE16"></a><div id="HAsingleInstanceRestart.CASE16-def"><a name="L1961"></a><tt class="py-lineno">1961</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE16-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE16');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE16">CASE16</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE16-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE16-expanded"><a name="L1962"></a><tt class="py-lineno">1962</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1963"></a><tt class="py-lineno">1963</tt> <tt class="py-line"><tt class="py-docstring"> Install Distributed Primitives app</tt> </tt>
-<a name="L1964"></a><tt class="py-lineno">1964</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1965"></a><tt class="py-lineno">1965</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L1966"></a><tt class="py-lineno">1966</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L1967"></a><tt class="py-lineno">1967</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L1968"></a><tt class="py-lineno">1968</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L1969"></a><tt class="py-lineno">1969</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-739" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-739', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L1970"></a><tt class="py-lineno">1970</tt> <tt class="py-line"> </tt>
-<a name="L1971"></a><tt class="py-lineno">1971</tt> <tt class="py-line"> <tt class="py-comment"># Variables for the distributed primitives tests</tt> </tt>
-<a name="L1972"></a><tt class="py-lineno">1972</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">pCounterName</tt> </tt>
-<a name="L1973"></a><tt class="py-lineno">1973</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">iCounterName</tt> </tt>
-<a name="L1974"></a><tt class="py-lineno">1974</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">pCounterValue</tt> </tt>
-<a name="L1975"></a><tt class="py-lineno">1975</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">iCounterValue</tt> </tt>
-<a name="L1976"></a><tt class="py-lineno">1976</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">onosSet</tt> </tt>
-<a name="L1977"></a><tt class="py-lineno">1977</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">onosSetName</tt> </tt>
-<a name="L1978"></a><tt class="py-lineno">1978</tt> <tt class="py-line"> <tt class="py-name">pCounterName</tt> <tt class="py-op">=</tt> <tt class="py-string">"TestON-Partitions"</tt> </tt>
-<a name="L1979"></a><tt class="py-lineno">1979</tt> <tt class="py-line"> <tt class="py-name">iCounterName</tt> <tt class="py-op">=</tt> <tt class="py-string">"TestON-inMemory"</tt> </tt>
-<a name="L1980"></a><tt class="py-lineno">1980</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1981"></a><tt class="py-lineno">1981</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1982"></a><tt class="py-lineno">1982</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L1983"></a><tt class="py-lineno">1983</tt> <tt class="py-line"> <tt class="py-name">onosSetName</tt> <tt class="py-op">=</tt> <tt class="py-string">"TestON-set"</tt> </tt>
-<a name="L1984"></a><tt class="py-lineno">1984</tt> <tt class="py-line"> </tt>
-<a name="L1985"></a><tt class="py-lineno">1985</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Install Primitives app"</tt> </tt>
-<a name="L1986"></a><tt class="py-lineno">1986</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-740" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-740', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1987"></a><tt class="py-lineno">1987</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-741" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-741', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Install Primitives app"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1988"></a><tt class="py-lineno">1988</tt> <tt class="py-line"> <tt class="py-name">appName</tt> <tt class="py-op">=</tt> <tt class="py-string">"org.onosproject.distributedprimitives"</tt> </tt>
-<a name="L1989"></a><tt class="py-lineno">1989</tt> <tt class="py-line"> <tt class="py-name">appResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-742" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-742', 'activateApp', 'link-112');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-name">appName</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1990"></a><tt class="py-lineno">1990</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L1991"></a><tt class="py-lineno">1991</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">appResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L1992"></a><tt class="py-lineno">1992</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Primitives app activated"</tt><tt class="py-op">,</tt> </tt>
-<a name="L1993"></a><tt class="py-lineno">1993</tt> <tt class="py-line"> <tt id="link-743" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-743', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Primitives app not activated"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1994"></a><tt class="py-lineno">1994</tt> <tt class="py-line"> </tt>
-<a name="HAsingleInstanceRestart.CASE17"></a><div id="HAsingleInstanceRestart.CASE17-def"><a name="L1995"></a><tt class="py-lineno">1995</tt> <a class="py-toggle" href="#" id="HAsingleInstanceRestart.CASE17-toggle" onclick="return toggle('HAsingleInstanceRestart.CASE17');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE17">CASE17</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HAsingleInstanceRestart.CASE17-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="HAsingleInstanceRestart.CASE17-expanded"><a name="L1996"></a><tt class="py-lineno">1996</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1997"></a><tt class="py-lineno">1997</tt> <tt class="py-line"><tt class="py-docstring"> Check for basic functionality with distributed primitives</tt> </tt>
-<a name="L1998"></a><tt class="py-lineno">1998</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1999"></a><tt class="py-lineno">1999</tt> <tt class="py-line"> <tt class="py-comment"># Make sure variables are defined/set</tt> </tt>
-<a name="L2000"></a><tt class="py-lineno">2000</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt><tt class="py-op">,</tt> <tt class="py-string">"main.numCtrls not defined"</tt> </tt>
-<a name="L2001"></a><tt class="py-lineno">2001</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">"main not defined"</tt> </tt>
-<a name="L2002"></a><tt class="py-lineno">2002</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">,</tt> <tt class="py-string">"utilities.assert_equals not defined"</tt> </tt>
-<a name="L2003"></a><tt class="py-lineno">2003</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">,</tt> <tt class="py-string">"main.CLIs not defined"</tt> </tt>
-<a name="L2004"></a><tt class="py-lineno">2004</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-744" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes" class="py-name" href="#" onclick="return doclink('link-744', 'nodes', 'link-9');">nodes</a></tt><tt class="py-op">,</tt> <tt class="py-string">"main.nodes not defined"</tt> </tt>
-<a name="L2005"></a><tt class="py-lineno">2005</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">pCounterName</tt><tt class="py-op">,</tt> <tt class="py-string">"pCounterName not defined"</tt> </tt>
-<a name="L2006"></a><tt class="py-lineno">2006</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-string">"iCounterName not defined"</tt> </tt>
-<a name="L2007"></a><tt class="py-lineno">2007</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-string">"onosSetName not defined"</tt> </tt>
-<a name="L2008"></a><tt class="py-lineno">2008</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: assert fails if value is 0/None/Empty/False</tt> </tt>
-<a name="L2009"></a><tt class="py-lineno">2009</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2010"></a><tt class="py-lineno">2010</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> </tt>
-<a name="L2011"></a><tt class="py-lineno">2011</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2012"></a><tt class="py-lineno">2012</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-745" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-745', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-746" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-746', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"pCounterValue not defined, setting to 0"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2013"></a><tt class="py-lineno">2013</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2014"></a><tt class="py-lineno">2014</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2015"></a><tt class="py-lineno">2015</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> </tt>
-<a name="L2016"></a><tt class="py-lineno">2016</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2017"></a><tt class="py-lineno">2017</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-747" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-747', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-748" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-748', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"iCounterValue not defined, setting to 0"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2018"></a><tt class="py-lineno">2018</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L2019"></a><tt class="py-lineno">2019</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2020"></a><tt class="py-lineno">2020</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt> </tt>
-<a name="L2021"></a><tt class="py-lineno">2021</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L2022"></a><tt class="py-lineno">2022</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-749" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-749', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-750" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-750', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"onosSet not defined, setting to empty Set"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2023"></a><tt class="py-lineno">2023</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L2024"></a><tt class="py-lineno">2024</tt> <tt class="py-line"> <tt class="py-comment"># Variables for the distributed primitives tests. These are local only</tt> </tt>
-<a name="L2025"></a><tt class="py-lineno">2025</tt> <tt class="py-line"> <tt class="py-name">addValue</tt> <tt class="py-op">=</tt> <tt class="py-string">"a"</tt> </tt>
-<a name="L2026"></a><tt class="py-lineno">2026</tt> <tt class="py-line"> <tt class="py-name">addAllValue</tt> <tt class="py-op">=</tt> <tt class="py-string">"a b c d e f"</tt> </tt>
-<a name="L2027"></a><tt class="py-lineno">2027</tt> <tt class="py-line"> <tt class="py-name">retainValue</tt> <tt class="py-op">=</tt> <tt class="py-string">"c d e f"</tt> </tt>
-<a name="L2028"></a><tt class="py-lineno">2028</tt> <tt class="py-line"> </tt>
-<a name="L2029"></a><tt class="py-lineno">2029</tt> <tt class="py-line"> <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt class="py-string">"Check for basic functionality with distributed "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2030"></a><tt class="py-lineno">2030</tt> <tt class="py-line"> <tt class="py-string">"primitives"</tt> </tt>
-<a name="L2031"></a><tt class="py-lineno">2031</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-751" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-751', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt> <tt class="py-name">description</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2032"></a><tt class="py-lineno">2032</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">caseExplanation</tt> <tt class="py-op">=</tt> <tt class="py-string">"Test the methods of the distributed "</tt> <tt class="py-op">+</tt>\ </tt>
-<a name="L2033"></a><tt class="py-lineno">2033</tt> <tt class="py-line"> <tt class="py-string">"primitives (counters and sets) throught the cli"</tt> </tt>
-<a name="L2034"></a><tt class="py-lineno">2034</tt> <tt class="py-line"> <tt class="py-comment"># DISTRIBUTED ATOMIC COUNTERS</tt> </tt>
-<a name="L2035"></a><tt class="py-lineno">2035</tt> <tt class="py-line"> <tt class="py-comment"># Partitioned counters</tt> </tt>
-<a name="L2036"></a><tt class="py-lineno">2036</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-752" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-752', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Increment then get a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2037"></a><tt class="py-lineno">2037</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2038"></a><tt class="py-lineno">2038</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2039"></a><tt class="py-lineno">2039</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2040"></a><tt class="py-lineno">2040</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2041"></a><tt class="py-lineno">2041</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-753" class="py-name" targets="Module TestON.core.Thread=TestON.core.Thread-module.html,Class TestON.core.Thread.Thread=TestON.core.Thread.Thread-class.html"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-753', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-754" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counterTestAddAndGet"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-754', 'counterTestAddAndGet', 'link-754');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2042"></a><tt class="py-lineno">2042</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterAddAndGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2043"></a><tt class="py-lineno">2043</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2044"></a><tt class="py-lineno">2044</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2045"></a><tt class="py-lineno">2045</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2046"></a><tt class="py-lineno">2046</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2047"></a><tt class="py-lineno">2047</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2048"></a><tt class="py-lineno">2048</tt> <tt class="py-line"> </tt>
-<a name="L2049"></a><tt class="py-lineno">2049</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2050"></a><tt class="py-lineno">2050</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2051"></a><tt class="py-lineno">2051</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2052"></a><tt class="py-lineno">2052</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L2053"></a><tt class="py-lineno">2053</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2054"></a><tt class="py-lineno">2054</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L2055"></a><tt class="py-lineno">2055</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L2056"></a><tt class="py-lineno">2056</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L2057"></a><tt class="py-lineno">2057</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L2058"></a><tt class="py-lineno">2058</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-755" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-755', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-756" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-756', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L2059"></a><tt class="py-lineno">2059</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2060"></a><tt class="py-lineno">2060</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2061"></a><tt class="py-lineno">2061</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2062"></a><tt class="py-lineno">2062</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2063"></a><tt class="py-lineno">2063</tt> <tt class="py-line"> <tt id="link-757" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-757', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2064"></a><tt class="py-lineno">2064</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2065"></a><tt class="py-lineno">2065</tt> <tt class="py-line"> </tt>
-<a name="L2066"></a><tt class="py-lineno">2066</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-758" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-758', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get then Increment a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2067"></a><tt class="py-lineno">2067</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2068"></a><tt class="py-lineno">2068</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2069"></a><tt class="py-lineno">2069</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2070"></a><tt class="py-lineno">2070</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2071"></a><tt class="py-lineno">2071</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-759" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-759', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-760" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counterTestGetAndAdd"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd" class="py-name" href="#" onclick="return doclink('link-760', 'counterTestGetAndAdd', 'link-760');">counterTestGetAndAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2072"></a><tt class="py-lineno">2072</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterGetAndAdd-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2073"></a><tt class="py-lineno">2073</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2074"></a><tt class="py-lineno">2074</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2075"></a><tt class="py-lineno">2075</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2076"></a><tt class="py-lineno">2076</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2077"></a><tt class="py-lineno">2077</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2078"></a><tt class="py-lineno">2078</tt> <tt class="py-line"> </tt>
-<a name="L2079"></a><tt class="py-lineno">2079</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2080"></a><tt class="py-lineno">2080</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2081"></a><tt class="py-lineno">2081</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2082"></a><tt class="py-lineno">2082</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L2083"></a><tt class="py-lineno">2083</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2084"></a><tt class="py-lineno">2084</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L2085"></a><tt class="py-lineno">2085</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L2086"></a><tt class="py-lineno">2086</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L2087"></a><tt class="py-lineno">2087</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L2088"></a><tt class="py-lineno">2088</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-761" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-761', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-762" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-762', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L2089"></a><tt class="py-lineno">2089</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2090"></a><tt class="py-lineno">2090</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2091"></a><tt class="py-lineno">2091</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2092"></a><tt class="py-lineno">2092</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2093"></a><tt class="py-lineno">2093</tt> <tt class="py-line"> <tt id="link-763" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-763', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2094"></a><tt class="py-lineno">2094</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2095"></a><tt class="py-lineno">2095</tt> <tt class="py-line"> </tt>
-<a name="L2096"></a><tt class="py-lineno">2096</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-764" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-764', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2097"></a><tt class="py-lineno">2097</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-765" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-765', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-766" class="py-name" targets="Function TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#counterCheck,Function TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#counterCheck,Function TestON.tests.HAsanity.dependencies.Counters.counterCheck()=TestON.tests.HAsanity.dependencies.Counters-module.html#counterCheck,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#counterCheck"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-766', 'counterCheck', 'link-766');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">pCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2098"></a><tt class="py-lineno">2098</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2099"></a><tt class="py-lineno">2099</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L2100"></a><tt class="py-lineno">2100</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2101"></a><tt class="py-lineno">2101</tt> <tt class="py-line"> <tt id="link-767" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-767', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2102"></a><tt class="py-lineno">2102</tt> <tt class="py-line"> </tt>
-<a name="L2103"></a><tt class="py-lineno">2103</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-768" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-768', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add -8 to then get a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2104"></a><tt class="py-lineno">2104</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2105"></a><tt class="py-lineno">2105</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2106"></a><tt class="py-lineno">2106</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2107"></a><tt class="py-lineno">2107</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2108"></a><tt class="py-lineno">2108</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-769" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-769', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-770" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-770', 'counterTestAddAndGet', 'link-754');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2109"></a><tt class="py-lineno">2109</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2110"></a><tt class="py-lineno">2110</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L2111"></a><tt class="py-lineno">2111</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-op">-</tt><tt class="py-number">8</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2112"></a><tt class="py-lineno">2112</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-op">-</tt><tt class="py-number">8</tt> </tt>
-<a name="L2113"></a><tt class="py-lineno">2113</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2114"></a><tt class="py-lineno">2114</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2115"></a><tt class="py-lineno">2115</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2116"></a><tt class="py-lineno">2116</tt> <tt class="py-line"> </tt>
-<a name="L2117"></a><tt class="py-lineno">2117</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2118"></a><tt class="py-lineno">2118</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2119"></a><tt class="py-lineno">2119</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2120"></a><tt class="py-lineno">2120</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L2121"></a><tt class="py-lineno">2121</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2122"></a><tt class="py-lineno">2122</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L2123"></a><tt class="py-lineno">2123</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L2124"></a><tt class="py-lineno">2124</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L2125"></a><tt class="py-lineno">2125</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L2126"></a><tt class="py-lineno">2126</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-771" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-771', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-772" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-772', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L2127"></a><tt class="py-lineno">2127</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2128"></a><tt class="py-lineno">2128</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2129"></a><tt class="py-lineno">2129</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2130"></a><tt class="py-lineno">2130</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2131"></a><tt class="py-lineno">2131</tt> <tt class="py-line"> <tt id="link-773" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-773', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2132"></a><tt class="py-lineno">2132</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2133"></a><tt class="py-lineno">2133</tt> <tt class="py-line"> </tt>
-<a name="L2134"></a><tt class="py-lineno">2134</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-774" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-774', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add 5 to then get a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2135"></a><tt class="py-lineno">2135</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2136"></a><tt class="py-lineno">2136</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2137"></a><tt class="py-lineno">2137</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2138"></a><tt class="py-lineno">2138</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2139"></a><tt class="py-lineno">2139</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-775" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-775', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-776" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-776', 'counterTestAddAndGet', 'link-754');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2140"></a><tt class="py-lineno">2140</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2141"></a><tt class="py-lineno">2141</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L2142"></a><tt class="py-lineno">2142</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-number">5</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2143"></a><tt class="py-lineno">2143</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L2144"></a><tt class="py-lineno">2144</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2145"></a><tt class="py-lineno">2145</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2146"></a><tt class="py-lineno">2146</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2147"></a><tt class="py-lineno">2147</tt> <tt class="py-line"> </tt>
-<a name="L2148"></a><tt class="py-lineno">2148</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2149"></a><tt class="py-lineno">2149</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2150"></a><tt class="py-lineno">2150</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2151"></a><tt class="py-lineno">2151</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L2152"></a><tt class="py-lineno">2152</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2153"></a><tt class="py-lineno">2153</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L2154"></a><tt class="py-lineno">2154</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L2155"></a><tt class="py-lineno">2155</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L2156"></a><tt class="py-lineno">2156</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L2157"></a><tt class="py-lineno">2157</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-777" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-777', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-778" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-778', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L2158"></a><tt class="py-lineno">2158</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2159"></a><tt class="py-lineno">2159</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2160"></a><tt class="py-lineno">2160</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2161"></a><tt class="py-lineno">2161</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2162"></a><tt class="py-lineno">2162</tt> <tt class="py-line"> <tt id="link-779" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-779', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2163"></a><tt class="py-lineno">2163</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2164"></a><tt class="py-lineno">2164</tt> <tt class="py-line"> </tt>
-<a name="L2165"></a><tt class="py-lineno">2165</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-780" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-780', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get then add 5 to a default counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2166"></a><tt class="py-lineno">2166</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2167"></a><tt class="py-lineno">2167</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2168"></a><tt class="py-lineno">2168</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2169"></a><tt class="py-lineno">2169</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2170"></a><tt class="py-lineno">2170</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-781" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-781', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-782" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd" class="py-name" href="#" onclick="return doclink('link-782', 'counterTestGetAndAdd', 'link-760');">counterTestGetAndAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2171"></a><tt class="py-lineno">2171</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2172"></a><tt class="py-lineno">2172</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">pCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L2173"></a><tt class="py-lineno">2173</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-number">5</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2174"></a><tt class="py-lineno">2174</tt> <tt class="py-line"> <tt class="py-name">addedPValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2175"></a><tt class="py-lineno">2175</tt> <tt class="py-line"> <tt class="py-name">pCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L2176"></a><tt class="py-lineno">2176</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2177"></a><tt class="py-lineno">2177</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2178"></a><tt class="py-lineno">2178</tt> <tt class="py-line"> </tt>
-<a name="L2179"></a><tt class="py-lineno">2179</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2180"></a><tt class="py-lineno">2180</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2181"></a><tt class="py-lineno">2181</tt> <tt class="py-line"> <tt class="py-name">pCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2182"></a><tt class="py-lineno">2182</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L2183"></a><tt class="py-lineno">2183</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2184"></a><tt class="py-lineno">2184</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedPValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L2185"></a><tt class="py-lineno">2185</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">pCounters</tt> </tt>
-<a name="L2186"></a><tt class="py-lineno">2186</tt> <tt class="py-line"> <tt class="py-name">pCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">pCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L2187"></a><tt class="py-lineno">2187</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L2188"></a><tt class="py-lineno">2188</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-783" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-783', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-784" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-784', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in partitioned "</tt> </tt>
-<a name="L2189"></a><tt class="py-lineno">2189</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2190"></a><tt class="py-lineno">2190</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2191"></a><tt class="py-lineno">2191</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2192"></a><tt class="py-lineno">2192</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Default counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2193"></a><tt class="py-lineno">2193</tt> <tt class="py-line"> <tt id="link-785" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-785', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing default"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2194"></a><tt class="py-lineno">2194</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2195"></a><tt class="py-lineno">2195</tt> <tt class="py-line"> </tt>
-<a name="L2196"></a><tt class="py-lineno">2196</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-786" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-786', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2197"></a><tt class="py-lineno">2197</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-787" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-787', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-788" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-788', 'counterCheck', 'link-766');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">pCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">pCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2198"></a><tt class="py-lineno">2198</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2199"></a><tt class="py-lineno">2199</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L2200"></a><tt class="py-lineno">2200</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2201"></a><tt class="py-lineno">2201</tt> <tt class="py-line"> <tt id="link-789" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-789', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2202"></a><tt class="py-lineno">2202</tt> <tt class="py-line"> </tt>
-<a name="L2203"></a><tt class="py-lineno">2203</tt> <tt class="py-line"> <tt class="py-comment"># In-Memory counters</tt> </tt>
-<a name="L2204"></a><tt class="py-lineno">2204</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-790" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-790', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Increment and get an in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2205"></a><tt class="py-lineno">2205</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2206"></a><tt class="py-lineno">2206</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2207"></a><tt class="py-lineno">2207</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2208"></a><tt class="py-lineno">2208</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2209"></a><tt class="py-lineno">2209</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-791" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-791', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-792" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-792', 'counterTestAddAndGet', 'link-754');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2210"></a><tt class="py-lineno">2210</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"icounterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2211"></a><tt class="py-lineno">2211</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L2212"></a><tt class="py-lineno">2212</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2213"></a><tt class="py-lineno">2213</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2214"></a><tt class="py-lineno">2214</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2215"></a><tt class="py-lineno">2215</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2216"></a><tt class="py-lineno">2216</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2217"></a><tt class="py-lineno">2217</tt> <tt class="py-line"> </tt>
-<a name="L2218"></a><tt class="py-lineno">2218</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2219"></a><tt class="py-lineno">2219</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2220"></a><tt class="py-lineno">2220</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2221"></a><tt class="py-lineno">2221</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L2222"></a><tt class="py-lineno">2222</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2223"></a><tt class="py-lineno">2223</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L2224"></a><tt class="py-lineno">2224</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L2225"></a><tt class="py-lineno">2225</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L2226"></a><tt class="py-lineno">2226</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L2227"></a><tt class="py-lineno">2227</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-793" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-793', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-794" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-794', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in the in-memory "</tt> </tt>
-<a name="L2228"></a><tt class="py-lineno">2228</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2229"></a><tt class="py-lineno">2229</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2230"></a><tt class="py-lineno">2230</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">iCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2231"></a><tt class="py-lineno">2231</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2232"></a><tt class="py-lineno">2232</tt> <tt class="py-line"> <tt id="link-795" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-795', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2233"></a><tt class="py-lineno">2233</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2234"></a><tt class="py-lineno">2234</tt> <tt class="py-line"> </tt>
-<a name="L2235"></a><tt class="py-lineno">2235</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-796" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-796', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get then Increment a in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2236"></a><tt class="py-lineno">2236</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2237"></a><tt class="py-lineno">2237</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2238"></a><tt class="py-lineno">2238</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2239"></a><tt class="py-lineno">2239</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2240"></a><tt class="py-lineno">2240</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-797" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-797', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-798" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd" class="py-name" href="#" onclick="return doclink('link-798', 'counterTestGetAndAdd', 'link-760');">counterTestGetAndAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2241"></a><tt class="py-lineno">2241</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterGetAndAdd-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2242"></a><tt class="py-lineno">2242</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L2243"></a><tt class="py-lineno">2243</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2244"></a><tt class="py-lineno">2244</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2245"></a><tt class="py-lineno">2245</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L2246"></a><tt class="py-lineno">2246</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2247"></a><tt class="py-lineno">2247</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2248"></a><tt class="py-lineno">2248</tt> <tt class="py-line"> </tt>
-<a name="L2249"></a><tt class="py-lineno">2249</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2250"></a><tt class="py-lineno">2250</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2251"></a><tt class="py-lineno">2251</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2252"></a><tt class="py-lineno">2252</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L2253"></a><tt class="py-lineno">2253</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2254"></a><tt class="py-lineno">2254</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L2255"></a><tt class="py-lineno">2255</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L2256"></a><tt class="py-lineno">2256</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L2257"></a><tt class="py-lineno">2257</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L2258"></a><tt class="py-lineno">2258</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-799" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-799', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-800" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-800', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in in-memory "</tt> </tt>
-<a name="L2259"></a><tt class="py-lineno">2259</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2260"></a><tt class="py-lineno">2260</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2261"></a><tt class="py-lineno">2261</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">iCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2262"></a><tt class="py-lineno">2262</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2263"></a><tt class="py-lineno">2263</tt> <tt class="py-line"> <tt id="link-801" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-801', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2264"></a><tt class="py-lineno">2264</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2265"></a><tt class="py-lineno">2265</tt> <tt class="py-line"> </tt>
-<a name="L2266"></a><tt class="py-lineno">2266</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-802" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-802', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2267"></a><tt class="py-lineno">2267</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-803" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-803', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-804" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-804', 'counterCheck', 'link-766');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2268"></a><tt class="py-lineno">2268</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2269"></a><tt class="py-lineno">2269</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L2270"></a><tt class="py-lineno">2270</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2271"></a><tt class="py-lineno">2271</tt> <tt class="py-line"> <tt id="link-805" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-805', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2272"></a><tt class="py-lineno">2272</tt> <tt class="py-line"> </tt>
-<a name="L2273"></a><tt class="py-lineno">2273</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-806" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-806', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add -8 to then get a in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2274"></a><tt class="py-lineno">2274</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2275"></a><tt class="py-lineno">2275</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2276"></a><tt class="py-lineno">2276</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2277"></a><tt class="py-lineno">2277</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2278"></a><tt class="py-lineno">2278</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-807" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-807', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-808" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-808', 'counterTestAddAndGet', 'link-754');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2279"></a><tt class="py-lineno">2279</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2280"></a><tt class="py-lineno">2280</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L2281"></a><tt class="py-lineno">2281</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-op">-</tt><tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2282"></a><tt class="py-lineno">2282</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-op">-</tt><tt class="py-number">8</tt> </tt>
-<a name="L2283"></a><tt class="py-lineno">2283</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2284"></a><tt class="py-lineno">2284</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2285"></a><tt class="py-lineno">2285</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2286"></a><tt class="py-lineno">2286</tt> <tt class="py-line"> </tt>
-<a name="L2287"></a><tt class="py-lineno">2287</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2288"></a><tt class="py-lineno">2288</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2289"></a><tt class="py-lineno">2289</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2290"></a><tt class="py-lineno">2290</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L2291"></a><tt class="py-lineno">2291</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2292"></a><tt class="py-lineno">2292</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L2293"></a><tt class="py-lineno">2293</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L2294"></a><tt class="py-lineno">2294</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L2295"></a><tt class="py-lineno">2295</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L2296"></a><tt class="py-lineno">2296</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-809" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-809', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-810" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-810', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in in-memory "</tt> </tt>
-<a name="L2297"></a><tt class="py-lineno">2297</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2298"></a><tt class="py-lineno">2298</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2299"></a><tt class="py-lineno">2299</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2300"></a><tt class="py-lineno">2300</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2301"></a><tt class="py-lineno">2301</tt> <tt class="py-line"> <tt id="link-811" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-811', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2302"></a><tt class="py-lineno">2302</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2303"></a><tt class="py-lineno">2303</tt> <tt class="py-line"> </tt>
-<a name="L2304"></a><tt class="py-lineno">2304</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-812" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-812', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Add 5 to then get a in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2305"></a><tt class="py-lineno">2305</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2306"></a><tt class="py-lineno">2306</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2307"></a><tt class="py-lineno">2307</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2308"></a><tt class="py-lineno">2308</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2309"></a><tt class="py-lineno">2309</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-813" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-813', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-814" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet" class="py-name" href="#" onclick="return doclink('link-814', 'counterTestAddAndGet', 'link-754');">counterTestAddAndGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2310"></a><tt class="py-lineno">2310</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2311"></a><tt class="py-lineno">2311</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L2312"></a><tt class="py-lineno">2312</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-number">5</tt><tt class="py-op">,</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2313"></a><tt class="py-lineno">2313</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L2314"></a><tt class="py-lineno">2314</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2315"></a><tt class="py-lineno">2315</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2316"></a><tt class="py-lineno">2316</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2317"></a><tt class="py-lineno">2317</tt> <tt class="py-line"> </tt>
-<a name="L2318"></a><tt class="py-lineno">2318</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2319"></a><tt class="py-lineno">2319</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2320"></a><tt class="py-lineno">2320</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2321"></a><tt class="py-lineno">2321</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L2322"></a><tt class="py-lineno">2322</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2323"></a><tt class="py-lineno">2323</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L2324"></a><tt class="py-lineno">2324</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L2325"></a><tt class="py-lineno">2325</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L2326"></a><tt class="py-lineno">2326</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L2327"></a><tt class="py-lineno">2327</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-815" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-815', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-816" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-816', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in in-memory "</tt> </tt>
-<a name="L2328"></a><tt class="py-lineno">2328</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2329"></a><tt class="py-lineno">2329</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2330"></a><tt class="py-lineno">2330</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">pCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2331"></a><tt class="py-lineno">2331</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2332"></a><tt class="py-lineno">2332</tt> <tt class="py-line"> <tt id="link-817" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-817', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2333"></a><tt class="py-lineno">2333</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2334"></a><tt class="py-lineno">2334</tt> <tt class="py-line"> </tt>
-<a name="L2335"></a><tt class="py-lineno">2335</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-818" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-818', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Get then add 5 to a in-memory counter on each node"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2336"></a><tt class="py-lineno">2336</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2337"></a><tt class="py-lineno">2337</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2338"></a><tt class="py-lineno">2338</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2339"></a><tt class="py-lineno">2339</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2340"></a><tt class="py-lineno">2340</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-819" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-819', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-820" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd" class="py-name" href="#" onclick="return doclink('link-820', 'counterTestGetAndAdd', 'link-760');">counterTestGetAndAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2341"></a><tt class="py-lineno">2341</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counterIncrement-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2342"></a><tt class="py-lineno">2342</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">iCounterName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L2343"></a><tt class="py-lineno">2343</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"delta"</tt><tt class="py-op">:</tt> <tt class="py-number">5</tt><tt class="py-op">,</tt> <tt class="py-string">"inMemory"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2344"></a><tt class="py-lineno">2344</tt> <tt class="py-line"> <tt class="py-name">addedIValues</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2345"></a><tt class="py-lineno">2345</tt> <tt class="py-line"> <tt class="py-name">iCounterValue</tt> <tt class="py-op">+=</tt> <tt class="py-number">5</tt> </tt>
-<a name="L2346"></a><tt class="py-lineno">2346</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2347"></a><tt class="py-lineno">2347</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2348"></a><tt class="py-lineno">2348</tt> <tt class="py-line"> </tt>
-<a name="L2349"></a><tt class="py-lineno">2349</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2350"></a><tt class="py-lineno">2350</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2351"></a><tt class="py-lineno">2351</tt> <tt class="py-line"> <tt class="py-name">iCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2352"></a><tt class="py-lineno">2352</tt> <tt class="py-line"> <tt class="py-comment"># Check that counter incremented numController times</tt> </tt>
-<a name="L2353"></a><tt class="py-lineno">2353</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2354"></a><tt class="py-lineno">2354</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">addedIValues</tt><tt class="py-op">:</tt> </tt>
-<a name="L2355"></a><tt class="py-lineno">2355</tt> <tt class="py-line"> <tt class="py-name">tmpResult</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">iCounters</tt> </tt>
-<a name="L2356"></a><tt class="py-lineno">2356</tt> <tt class="py-line"> <tt class="py-name">iCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">iCounterResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">tmpResult</tt> </tt>
-<a name="L2357"></a><tt class="py-lineno">2357</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tmpResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L2358"></a><tt class="py-lineno">2358</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-821" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-821', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-822" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-822', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is not in in-memory "</tt> </tt>
-<a name="L2359"></a><tt class="py-lineno">2359</tt> <tt class="py-line"> <tt class="py-string">"counter incremented results"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2360"></a><tt class="py-lineno">2360</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L2361"></a><tt class="py-lineno">2361</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">iCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2362"></a><tt class="py-lineno">2362</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"In-memory counter incremented"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2363"></a><tt class="py-lineno">2363</tt> <tt class="py-line"> <tt id="link-823" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-823', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Error incrementing in-memory"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2364"></a><tt class="py-lineno">2364</tt> <tt class="py-line"> <tt class="py-string">" counter"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2365"></a><tt class="py-lineno">2365</tt> <tt class="py-line"> </tt>
-<a name="L2366"></a><tt class="py-lineno">2366</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-824" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-824', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2367"></a><tt class="py-lineno">2367</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-825" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-825', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-826" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-826', 'counterCheck', 'link-766');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2368"></a><tt class="py-lineno">2368</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2369"></a><tt class="py-lineno">2369</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L2370"></a><tt class="py-lineno">2370</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2371"></a><tt class="py-lineno">2371</tt> <tt class="py-line"> <tt id="link-827" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-827', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2372"></a><tt class="py-lineno">2372</tt> <tt class="py-line"> </tt>
-<a name="L2373"></a><tt class="py-lineno">2373</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-828" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-828', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Check counters are consistant across nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2374"></a><tt class="py-lineno">2374</tt> <tt class="py-line"> <tt class="py-name">onosCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2375"></a><tt class="py-lineno">2375</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2376"></a><tt class="py-lineno">2376</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2377"></a><tt class="py-lineno">2377</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-829" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-829', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-830" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counters"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters" class="py-name" href="#" onclick="return doclink('link-830', 'counters', 'link-830');">counters</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2378"></a><tt class="py-lineno">2378</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counters-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2379"></a><tt class="py-lineno">2379</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2380"></a><tt class="py-lineno">2380</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2381"></a><tt class="py-lineno">2381</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2382"></a><tt class="py-lineno">2382</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2383"></a><tt class="py-lineno">2383</tt> <tt class="py-line"> <tt class="py-name">onosCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2384"></a><tt class="py-lineno">2384</tt> <tt class="py-line"> <tt class="py-name">tmp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosCounters</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2385"></a><tt class="py-lineno">2385</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt> <tt class="py-name">tmp</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2386"></a><tt class="py-lineno">2386</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-831" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-831', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Counters are consistent across all nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2387"></a><tt class="py-lineno">2387</tt> <tt class="py-line"> <tt class="py-name">consistentCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2388"></a><tt class="py-lineno">2388</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2389"></a><tt class="py-lineno">2389</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-832" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-832', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-833" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-833', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters are not consistent across all nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2390"></a><tt class="py-lineno">2390</tt> <tt class="py-line"> <tt class="py-name">consistentCounterResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2391"></a><tt class="py-lineno">2391</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2392"></a><tt class="py-lineno">2392</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">consistentCounterResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2393"></a><tt class="py-lineno">2393</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS counters are consistent "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2394"></a><tt class="py-lineno">2394</tt> <tt class="py-line"> <tt class="py-string">"across nodes"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2395"></a><tt class="py-lineno">2395</tt> <tt class="py-line"> <tt id="link-834" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-834', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS Counters are inconsistent "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2396"></a><tt class="py-lineno">2396</tt> <tt class="py-line"> <tt class="py-string">"across nodes"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2397"></a><tt class="py-lineno">2397</tt> <tt class="py-line"> </tt>
-<a name="L2398"></a><tt class="py-lineno">2398</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-835" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-835', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Counters we added have the correct values"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2399"></a><tt class="py-lineno">2399</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-836" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-836', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-837" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-837', 'counterCheck', 'link-766');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2400"></a><tt class="py-lineno">2400</tt> <tt class="py-line"> <tt class="py-name">incrementCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">incrementCheck</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L2401"></a><tt class="py-lineno">2401</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-838" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters
-TestON.tests.HAminorityRestart.dependencies.Counters
-TestON.tests.HAsanity.dependencies.Counters
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters" class="py-name" href="#" onclick="return doclink('link-838', 'Counters', 'link-4');">Counters</a></tt><tt class="py-op">.</tt><tt id="link-839" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck
-TestON.tests.HAsanity.dependencies.Counters.counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck" class="py-name" href="#" onclick="return doclink('link-839', 'counterCheck', 'link-766');">counterCheck</a></tt><tt class="py-op">(</tt> <tt class="py-name">iCounterName</tt><tt class="py-op">,</tt> <tt class="py-name">iCounterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2402"></a><tt class="py-lineno">2402</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2403"></a><tt class="py-lineno">2403</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">incrementCheck</tt><tt class="py-op">,</tt> </tt>
-<a name="L2404"></a><tt class="py-lineno">2404</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2405"></a><tt class="py-lineno">2405</tt> <tt class="py-line"> <tt id="link-840" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-840', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Added counters are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2406"></a><tt class="py-lineno">2406</tt> <tt class="py-line"> </tt>
-<a name="L2407"></a><tt class="py-lineno">2407</tt> <tt class="py-line"> <tt class="py-comment"># DISTRIBUTED SETS</tt> </tt>
-<a name="L2408"></a><tt class="py-lineno">2408</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-841" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-841', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set get"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2409"></a><tt class="py-lineno">2409</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2410"></a><tt class="py-lineno">2410</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2411"></a><tt class="py-lineno">2411</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2412"></a><tt class="py-lineno">2412</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2413"></a><tt class="py-lineno">2413</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-842" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-842', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-843" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestGet"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-843', 'setTestGet', 'link-843');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2414"></a><tt class="py-lineno">2414</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2415"></a><tt class="py-lineno">2415</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2416"></a><tt class="py-lineno">2416</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2417"></a><tt class="py-lineno">2417</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2418"></a><tt class="py-lineno">2418</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2419"></a><tt class="py-lineno">2419</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2420"></a><tt class="py-lineno">2420</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2421"></a><tt class="py-lineno">2421</tt> <tt class="py-line"> </tt>
-<a name="L2422"></a><tt class="py-lineno">2422</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2423"></a><tt class="py-lineno">2423</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2424"></a><tt class="py-lineno">2424</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2425"></a><tt class="py-lineno">2425</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2426"></a><tt class="py-lineno">2426</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2427"></a><tt class="py-lineno">2427</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L2428"></a><tt class="py-lineno">2428</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L2429"></a><tt class="py-lineno">2429</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-844" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-844', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-845" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-845', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2430"></a><tt class="py-lineno">2430</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2431"></a><tt class="py-lineno">2431</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2432"></a><tt class="py-lineno">2432</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2433"></a><tt class="py-lineno">2433</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-846" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-846', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2434"></a><tt class="py-lineno">2434</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-847" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-847', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2435"></a><tt class="py-lineno">2435</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2436"></a><tt class="py-lineno">2436</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2437"></a><tt class="py-lineno">2437</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L2438"></a><tt class="py-lineno">2438</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-848" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-848', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-849" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-849', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2439"></a><tt class="py-lineno">2439</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2440"></a><tt class="py-lineno">2440</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2441"></a><tt class="py-lineno">2441</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2442"></a><tt class="py-lineno">2442</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2443"></a><tt class="py-lineno">2443</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L2444"></a><tt class="py-lineno">2444</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2445"></a><tt class="py-lineno">2445</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2446"></a><tt class="py-lineno">2446</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">getResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2447"></a><tt class="py-lineno">2447</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set elements are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2448"></a><tt class="py-lineno">2448</tt> <tt class="py-line"> <tt id="link-850" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-850', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set elements are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2449"></a><tt class="py-lineno">2449</tt> <tt class="py-line"> </tt>
-<a name="L2450"></a><tt class="py-lineno">2450</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-851" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-851', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set size"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2451"></a><tt class="py-lineno">2451</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2452"></a><tt class="py-lineno">2452</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2453"></a><tt class="py-lineno">2453</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2454"></a><tt class="py-lineno">2454</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-852" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-852', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-853" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestSize"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-853', 'setTestSize', 'link-853');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2455"></a><tt class="py-lineno">2455</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2456"></a><tt class="py-lineno">2456</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2457"></a><tt class="py-lineno">2457</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2458"></a><tt class="py-lineno">2458</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2459"></a><tt class="py-lineno">2459</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2460"></a><tt class="py-lineno">2460</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2461"></a><tt class="py-lineno">2461</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2462"></a><tt class="py-lineno">2462</tt> <tt class="py-line"> </tt>
-<a name="L2463"></a><tt class="py-lineno">2463</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2464"></a><tt class="py-lineno">2464</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2465"></a><tt class="py-lineno">2465</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2466"></a><tt class="py-lineno">2466</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2467"></a><tt class="py-lineno">2467</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-854" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-854', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-855" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-855', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2468"></a><tt class="py-lineno">2468</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2469"></a><tt class="py-lineno">2469</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2470"></a><tt class="py-lineno">2470</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2471"></a><tt class="py-lineno">2471</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2472"></a><tt class="py-lineno">2472</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">sizeResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2473"></a><tt class="py-lineno">2473</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set sizes are correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2474"></a><tt class="py-lineno">2474</tt> <tt class="py-line"> <tt id="link-856" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-856', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set sizes are incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2475"></a><tt class="py-lineno">2475</tt> <tt class="py-line"> </tt>
-<a name="L2476"></a><tt class="py-lineno">2476</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-857" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-857', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set add()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2477"></a><tt class="py-lineno">2477</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">add</tt><tt class="py-op">(</tt> <tt class="py-name">addValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2478"></a><tt class="py-lineno">2478</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2479"></a><tt class="py-lineno">2479</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2480"></a><tt class="py-lineno">2480</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2481"></a><tt class="py-lineno">2481</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-858" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-858', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-859" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestAdd"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd" class="py-name" href="#" onclick="return doclink('link-859', 'setTestAdd', 'link-859');">setTestAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2482"></a><tt class="py-lineno">2482</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestAdd-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2483"></a><tt class="py-lineno">2483</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2484"></a><tt class="py-lineno">2484</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2485"></a><tt class="py-lineno">2485</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2486"></a><tt class="py-lineno">2486</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2487"></a><tt class="py-lineno">2487</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2488"></a><tt class="py-lineno">2488</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2489"></a><tt class="py-lineno">2489</tt> <tt class="py-line"> </tt>
-<a name="L2490"></a><tt class="py-lineno">2490</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L2491"></a><tt class="py-lineno">2491</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L2492"></a><tt class="py-lineno">2492</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L2493"></a><tt class="py-lineno">2493</tt> <tt class="py-line"> <tt class="py-name">addResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2494"></a><tt class="py-lineno">2494</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2495"></a><tt class="py-lineno">2495</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2496"></a><tt class="py-lineno">2496</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L2497"></a><tt class="py-lineno">2497</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L2498"></a><tt class="py-lineno">2498</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2499"></a><tt class="py-lineno">2499</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L2500"></a><tt class="py-lineno">2500</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L2501"></a><tt class="py-lineno">2501</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L2502"></a><tt class="py-lineno">2502</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L2503"></a><tt class="py-lineno">2503</tt> <tt class="py-line"> <tt class="py-name">addResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2504"></a><tt class="py-lineno">2504</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2505"></a><tt class="py-lineno">2505</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L2506"></a><tt class="py-lineno">2506</tt> <tt class="py-line"> <tt class="py-name">addResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2507"></a><tt class="py-lineno">2507</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2508"></a><tt class="py-lineno">2508</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-860" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-860', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-861" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-861', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set add"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2509"></a><tt class="py-lineno">2509</tt> <tt class="py-line"> </tt>
-<a name="L2510"></a><tt class="py-lineno">2510</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L2511"></a><tt class="py-lineno">2511</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2512"></a><tt class="py-lineno">2512</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2513"></a><tt class="py-lineno">2513</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2514"></a><tt class="py-lineno">2514</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2515"></a><tt class="py-lineno">2515</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-862" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-862', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-863" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-863', 'setTestGet', 'link-843');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2516"></a><tt class="py-lineno">2516</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2517"></a><tt class="py-lineno">2517</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2518"></a><tt class="py-lineno">2518</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2519"></a><tt class="py-lineno">2519</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2520"></a><tt class="py-lineno">2520</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2521"></a><tt class="py-lineno">2521</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2522"></a><tt class="py-lineno">2522</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2523"></a><tt class="py-lineno">2523</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2524"></a><tt class="py-lineno">2524</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2525"></a><tt class="py-lineno">2525</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2526"></a><tt class="py-lineno">2526</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2527"></a><tt class="py-lineno">2527</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2528"></a><tt class="py-lineno">2528</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L2529"></a><tt class="py-lineno">2529</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L2530"></a><tt class="py-lineno">2530</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-864" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-864', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-865" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-865', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2531"></a><tt class="py-lineno">2531</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2532"></a><tt class="py-lineno">2532</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2533"></a><tt class="py-lineno">2533</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2534"></a><tt class="py-lineno">2534</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-866" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-866', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2535"></a><tt class="py-lineno">2535</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-867" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-867', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2536"></a><tt class="py-lineno">2536</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2537"></a><tt class="py-lineno">2537</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2538"></a><tt class="py-lineno">2538</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L2539"></a><tt class="py-lineno">2539</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-868" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-868', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-869" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-869', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2540"></a><tt class="py-lineno">2540</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2541"></a><tt class="py-lineno">2541</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2542"></a><tt class="py-lineno">2542</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2543"></a><tt class="py-lineno">2543</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2544"></a><tt class="py-lineno">2544</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L2545"></a><tt class="py-lineno">2545</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2546"></a><tt class="py-lineno">2546</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2547"></a><tt class="py-lineno">2547</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2548"></a><tt class="py-lineno">2548</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2549"></a><tt class="py-lineno">2549</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-870" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-870', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-871" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-871', 'setTestSize', 'link-853');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2550"></a><tt class="py-lineno">2550</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2551"></a><tt class="py-lineno">2551</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2552"></a><tt class="py-lineno">2552</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2553"></a><tt class="py-lineno">2553</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2554"></a><tt class="py-lineno">2554</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2555"></a><tt class="py-lineno">2555</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2556"></a><tt class="py-lineno">2556</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2557"></a><tt class="py-lineno">2557</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2558"></a><tt class="py-lineno">2558</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2559"></a><tt class="py-lineno">2559</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2560"></a><tt class="py-lineno">2560</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2561"></a><tt class="py-lineno">2561</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-872" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-872', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-873" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-873', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2562"></a><tt class="py-lineno">2562</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2563"></a><tt class="py-lineno">2563</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2564"></a><tt class="py-lineno">2564</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2565"></a><tt class="py-lineno">2565</tt> <tt class="py-line"> <tt class="py-name">addResults</tt> <tt class="py-op">=</tt> <tt class="py-name">addResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L2566"></a><tt class="py-lineno">2566</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2567"></a><tt class="py-lineno">2567</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">addResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2568"></a><tt class="py-lineno">2568</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set add correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2569"></a><tt class="py-lineno">2569</tt> <tt class="py-line"> <tt id="link-874" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-874', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set add was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2570"></a><tt class="py-lineno">2570</tt> <tt class="py-line"> </tt>
-<a name="L2571"></a><tt class="py-lineno">2571</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-875" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-875', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set addAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2572"></a><tt class="py-lineno">2572</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt id="link-876" class="py-name" targets="Method TestON.core.dicttoobject.DictToObject.update()=TestON.core.dicttoobject.DictToObject-class.html#update,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#update"><a title="TestON.core.dicttoobject.DictToObject.update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update" class="py-name" href="#" onclick="return doclink('link-876', 'update', 'link-876');">update</a></tt><tt class="py-op">(</tt> <tt class="py-name">addAllValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2573"></a><tt class="py-lineno">2573</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2574"></a><tt class="py-lineno">2574</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2575"></a><tt class="py-lineno">2575</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2576"></a><tt class="py-lineno">2576</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-877" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-877', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-878" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd" class="py-name" href="#" onclick="return doclink('link-878', 'setTestAdd', 'link-859');">setTestAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2577"></a><tt class="py-lineno">2577</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestAddAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2578"></a><tt class="py-lineno">2578</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2579"></a><tt class="py-lineno">2579</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2580"></a><tt class="py-lineno">2580</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2581"></a><tt class="py-lineno">2581</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2582"></a><tt class="py-lineno">2582</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2583"></a><tt class="py-lineno">2583</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2584"></a><tt class="py-lineno">2584</tt> <tt class="py-line"> </tt>
-<a name="L2585"></a><tt class="py-lineno">2585</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L2586"></a><tt class="py-lineno">2586</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L2587"></a><tt class="py-lineno">2587</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L2588"></a><tt class="py-lineno">2588</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2589"></a><tt class="py-lineno">2589</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2590"></a><tt class="py-lineno">2590</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2591"></a><tt class="py-lineno">2591</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L2592"></a><tt class="py-lineno">2592</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L2593"></a><tt class="py-lineno">2593</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2594"></a><tt class="py-lineno">2594</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L2595"></a><tt class="py-lineno">2595</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L2596"></a><tt class="py-lineno">2596</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L2597"></a><tt class="py-lineno">2597</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L2598"></a><tt class="py-lineno">2598</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2599"></a><tt class="py-lineno">2599</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2600"></a><tt class="py-lineno">2600</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L2601"></a><tt class="py-lineno">2601</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2602"></a><tt class="py-lineno">2602</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addAllResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2603"></a><tt class="py-lineno">2603</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-879" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-879', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-880" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-880', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set addAll"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2604"></a><tt class="py-lineno">2604</tt> <tt class="py-line"> </tt>
-<a name="L2605"></a><tt class="py-lineno">2605</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L2606"></a><tt class="py-lineno">2606</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2607"></a><tt class="py-lineno">2607</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2608"></a><tt class="py-lineno">2608</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2609"></a><tt class="py-lineno">2609</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2610"></a><tt class="py-lineno">2610</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-881" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-881', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-882" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-882', 'setTestGet', 'link-843');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2611"></a><tt class="py-lineno">2611</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2612"></a><tt class="py-lineno">2612</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2613"></a><tt class="py-lineno">2613</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2614"></a><tt class="py-lineno">2614</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2615"></a><tt class="py-lineno">2615</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2616"></a><tt class="py-lineno">2616</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2617"></a><tt class="py-lineno">2617</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2618"></a><tt class="py-lineno">2618</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2619"></a><tt class="py-lineno">2619</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2620"></a><tt class="py-lineno">2620</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2621"></a><tt class="py-lineno">2621</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2622"></a><tt class="py-lineno">2622</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2623"></a><tt class="py-lineno">2623</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L2624"></a><tt class="py-lineno">2624</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L2625"></a><tt class="py-lineno">2625</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-883" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-883', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-884" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-884', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2626"></a><tt class="py-lineno">2626</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2627"></a><tt class="py-lineno">2627</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2628"></a><tt class="py-lineno">2628</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2629"></a><tt class="py-lineno">2629</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-885" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-885', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2630"></a><tt class="py-lineno">2630</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-886" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-886', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2631"></a><tt class="py-lineno">2631</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2632"></a><tt class="py-lineno">2632</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2633"></a><tt class="py-lineno">2633</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L2634"></a><tt class="py-lineno">2634</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-887" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-887', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-888" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-888', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2635"></a><tt class="py-lineno">2635</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2636"></a><tt class="py-lineno">2636</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2637"></a><tt class="py-lineno">2637</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2638"></a><tt class="py-lineno">2638</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2639"></a><tt class="py-lineno">2639</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L2640"></a><tt class="py-lineno">2640</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2641"></a><tt class="py-lineno">2641</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2642"></a><tt class="py-lineno">2642</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2643"></a><tt class="py-lineno">2643</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2644"></a><tt class="py-lineno">2644</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-889" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-889', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-890" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-890', 'setTestSize', 'link-853');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2645"></a><tt class="py-lineno">2645</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2646"></a><tt class="py-lineno">2646</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2647"></a><tt class="py-lineno">2647</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2648"></a><tt class="py-lineno">2648</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2649"></a><tt class="py-lineno">2649</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2650"></a><tt class="py-lineno">2650</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2651"></a><tt class="py-lineno">2651</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2652"></a><tt class="py-lineno">2652</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2653"></a><tt class="py-lineno">2653</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2654"></a><tt class="py-lineno">2654</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2655"></a><tt class="py-lineno">2655</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2656"></a><tt class="py-lineno">2656</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-891" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-891', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-892" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-892', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2657"></a><tt class="py-lineno">2657</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2658"></a><tt class="py-lineno">2658</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2659"></a><tt class="py-lineno">2659</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2660"></a><tt class="py-lineno">2660</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">addAllResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L2661"></a><tt class="py-lineno">2661</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2662"></a><tt class="py-lineno">2662</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">addAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2663"></a><tt class="py-lineno">2663</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2664"></a><tt class="py-lineno">2664</tt> <tt class="py-line"> <tt id="link-893" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-893', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2665"></a><tt class="py-lineno">2665</tt> <tt class="py-line"> </tt>
-<a name="L2666"></a><tt class="py-lineno">2666</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-894" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-894', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set contains()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2667"></a><tt class="py-lineno">2667</tt> <tt class="py-line"> <tt class="py-name">containsResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2668"></a><tt class="py-lineno">2668</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2669"></a><tt class="py-lineno">2669</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2670"></a><tt class="py-lineno">2670</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-895" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-895', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-896" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-896', 'setTestGet', 'link-843');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2671"></a><tt class="py-lineno">2671</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setContains-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2672"></a><tt class="py-lineno">2672</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L2673"></a><tt class="py-lineno">2673</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"values"</tt><tt class="py-op">:</tt> <tt class="py-name">addValue</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2674"></a><tt class="py-lineno">2674</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2675"></a><tt class="py-lineno">2675</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2676"></a><tt class="py-lineno">2676</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2677"></a><tt class="py-lineno">2677</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2678"></a><tt class="py-lineno">2678</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: This is the tuple</tt> </tt>
-<a name="L2679"></a><tt class="py-lineno">2679</tt> <tt class="py-line"> <tt class="py-name">containsResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2680"></a><tt class="py-lineno">2680</tt> <tt class="py-line"> </tt>
-<a name="L2681"></a><tt class="py-lineno">2681</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2682"></a><tt class="py-lineno">2682</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2683"></a><tt class="py-lineno">2683</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">containsResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L2684"></a><tt class="py-lineno">2684</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2685"></a><tt class="py-lineno">2685</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2686"></a><tt class="py-lineno">2686</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">containsResults</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L2687"></a><tt class="py-lineno">2687</tt> <tt class="py-line"> <tt class="py-name">containsResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2688"></a><tt class="py-lineno">2688</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2689"></a><tt class="py-lineno">2689</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">containsResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2690"></a><tt class="py-lineno">2690</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set contains is functional"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2691"></a><tt class="py-lineno">2691</tt> <tt class="py-line"> <tt id="link-897" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-897', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set contains failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2692"></a><tt class="py-lineno">2692</tt> <tt class="py-line"> </tt>
-<a name="L2693"></a><tt class="py-lineno">2693</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-898" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-898', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set containsAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2694"></a><tt class="py-lineno">2694</tt> <tt class="py-line"> <tt class="py-name">containsAllResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2695"></a><tt class="py-lineno">2695</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2696"></a><tt class="py-lineno">2696</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2697"></a><tt class="py-lineno">2697</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-899" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-899', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-900" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-900', 'setTestGet', 'link-843');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2698"></a><tt class="py-lineno">2698</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setContainsAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2699"></a><tt class="py-lineno">2699</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L2700"></a><tt class="py-lineno">2700</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"values"</tt><tt class="py-op">:</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2701"></a><tt class="py-lineno">2701</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2702"></a><tt class="py-lineno">2702</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2703"></a><tt class="py-lineno">2703</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2704"></a><tt class="py-lineno">2704</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2705"></a><tt class="py-lineno">2705</tt> <tt class="py-line"> <tt class="py-comment"># NOTE: This is the tuple</tt> </tt>
-<a name="L2706"></a><tt class="py-lineno">2706</tt> <tt class="py-line"> <tt class="py-name">containsAllResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2707"></a><tt class="py-lineno">2707</tt> <tt class="py-line"> </tt>
-<a name="L2708"></a><tt class="py-lineno">2708</tt> <tt class="py-line"> <tt class="py-name">containsAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2709"></a><tt class="py-lineno">2709</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2710"></a><tt class="py-lineno">2710</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">containsResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L2711"></a><tt class="py-lineno">2711</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2712"></a><tt class="py-lineno">2712</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2713"></a><tt class="py-lineno">2713</tt> <tt class="py-line"> <tt class="py-name">containsResults</tt> <tt class="py-op">=</tt> <tt class="py-name">containsResults</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L2714"></a><tt class="py-lineno">2714</tt> <tt class="py-line"> <tt class="py-name">containsResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-number">1</tt> <tt class="py-op">]</tt> </tt>
-<a name="L2715"></a><tt class="py-lineno">2715</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2716"></a><tt class="py-lineno">2716</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">containsAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2717"></a><tt class="py-lineno">2717</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set containsAll is functional"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2718"></a><tt class="py-lineno">2718</tt> <tt class="py-line"> <tt id="link-901" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-901', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set containsAll failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2719"></a><tt class="py-lineno">2719</tt> <tt class="py-line"> </tt>
-<a name="L2720"></a><tt class="py-lineno">2720</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-902" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-902', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set remove()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2721"></a><tt class="py-lineno">2721</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt> <tt class="py-name">addValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2722"></a><tt class="py-lineno">2722</tt> <tt class="py-line"> <tt class="py-name">removeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2723"></a><tt class="py-lineno">2723</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2724"></a><tt class="py-lineno">2724</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2725"></a><tt class="py-lineno">2725</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-903" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-903', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-904" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestRemove"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove" class="py-name" href="#" onclick="return doclink('link-904', 'setTestRemove', 'link-904');">setTestRemove</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2726"></a><tt class="py-lineno">2726</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestRemove-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2727"></a><tt class="py-lineno">2727</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2728"></a><tt class="py-lineno">2728</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2729"></a><tt class="py-lineno">2729</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2730"></a><tt class="py-lineno">2730</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2731"></a><tt class="py-lineno">2731</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2732"></a><tt class="py-lineno">2732</tt> <tt class="py-line"> <tt class="py-name">removeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2733"></a><tt class="py-lineno">2733</tt> <tt class="py-line"> </tt>
-<a name="L2734"></a><tt class="py-lineno">2734</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L2735"></a><tt class="py-lineno">2735</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L2736"></a><tt class="py-lineno">2736</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L2737"></a><tt class="py-lineno">2737</tt> <tt class="py-line"> <tt class="py-name">removeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2738"></a><tt class="py-lineno">2738</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2739"></a><tt class="py-lineno">2739</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2740"></a><tt class="py-lineno">2740</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L2741"></a><tt class="py-lineno">2741</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L2742"></a><tt class="py-lineno">2742</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">removeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2743"></a><tt class="py-lineno">2743</tt> <tt class="py-line"> <tt class="py-comment"># not in set, probably fine</tt> </tt>
-<a name="L2744"></a><tt class="py-lineno">2744</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L2745"></a><tt class="py-lineno">2745</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">removeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L2746"></a><tt class="py-lineno">2746</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L2747"></a><tt class="py-lineno">2747</tt> <tt class="py-line"> <tt class="py-name">removeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2748"></a><tt class="py-lineno">2748</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2749"></a><tt class="py-lineno">2749</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L2750"></a><tt class="py-lineno">2750</tt> <tt class="py-line"> <tt class="py-name">removeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2751"></a><tt class="py-lineno">2751</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2752"></a><tt class="py-lineno">2752</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-905" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-905', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-906" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-906', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set remove"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2753"></a><tt class="py-lineno">2753</tt> <tt class="py-line"> </tt>
-<a name="L2754"></a><tt class="py-lineno">2754</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L2755"></a><tt class="py-lineno">2755</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2756"></a><tt class="py-lineno">2756</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2757"></a><tt class="py-lineno">2757</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2758"></a><tt class="py-lineno">2758</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2759"></a><tt class="py-lineno">2759</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-907" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-907', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-908" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-908', 'setTestGet', 'link-843');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2760"></a><tt class="py-lineno">2760</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2761"></a><tt class="py-lineno">2761</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2762"></a><tt class="py-lineno">2762</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2763"></a><tt class="py-lineno">2763</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2764"></a><tt class="py-lineno">2764</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2765"></a><tt class="py-lineno">2765</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2766"></a><tt class="py-lineno">2766</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2767"></a><tt class="py-lineno">2767</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2768"></a><tt class="py-lineno">2768</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2769"></a><tt class="py-lineno">2769</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2770"></a><tt class="py-lineno">2770</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2771"></a><tt class="py-lineno">2771</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2772"></a><tt class="py-lineno">2772</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L2773"></a><tt class="py-lineno">2773</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L2774"></a><tt class="py-lineno">2774</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-909" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-909', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-910" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-910', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2775"></a><tt class="py-lineno">2775</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2776"></a><tt class="py-lineno">2776</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2777"></a><tt class="py-lineno">2777</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2778"></a><tt class="py-lineno">2778</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-911" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-911', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2779"></a><tt class="py-lineno">2779</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-912" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-912', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2780"></a><tt class="py-lineno">2780</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2781"></a><tt class="py-lineno">2781</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2782"></a><tt class="py-lineno">2782</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L2783"></a><tt class="py-lineno">2783</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-913" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-913', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-914" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-914', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2784"></a><tt class="py-lineno">2784</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2785"></a><tt class="py-lineno">2785</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2786"></a><tt class="py-lineno">2786</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2787"></a><tt class="py-lineno">2787</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2788"></a><tt class="py-lineno">2788</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L2789"></a><tt class="py-lineno">2789</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2790"></a><tt class="py-lineno">2790</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2791"></a><tt class="py-lineno">2791</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2792"></a><tt class="py-lineno">2792</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2793"></a><tt class="py-lineno">2793</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-915" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-915', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-916" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-916', 'setTestSize', 'link-853');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2794"></a><tt class="py-lineno">2794</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2795"></a><tt class="py-lineno">2795</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2796"></a><tt class="py-lineno">2796</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2797"></a><tt class="py-lineno">2797</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2798"></a><tt class="py-lineno">2798</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2799"></a><tt class="py-lineno">2799</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2800"></a><tt class="py-lineno">2800</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2801"></a><tt class="py-lineno">2801</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2802"></a><tt class="py-lineno">2802</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2803"></a><tt class="py-lineno">2803</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2804"></a><tt class="py-lineno">2804</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2805"></a><tt class="py-lineno">2805</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-917" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-917', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-918" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-918', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2806"></a><tt class="py-lineno">2806</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2807"></a><tt class="py-lineno">2807</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2808"></a><tt class="py-lineno">2808</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2809"></a><tt class="py-lineno">2809</tt> <tt class="py-line"> <tt class="py-name">removeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">removeResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L2810"></a><tt class="py-lineno">2810</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2811"></a><tt class="py-lineno">2811</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">removeResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2812"></a><tt class="py-lineno">2812</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set remove correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2813"></a><tt class="py-lineno">2813</tt> <tt class="py-line"> <tt id="link-919" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-919', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set remove was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2814"></a><tt class="py-lineno">2814</tt> <tt class="py-line"> </tt>
-<a name="L2815"></a><tt class="py-lineno">2815</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-920" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-920', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set removeAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2816"></a><tt class="py-lineno">2816</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">difference_update</tt><tt class="py-op">(</tt> <tt class="py-name">addAllValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2817"></a><tt class="py-lineno">2817</tt> <tt class="py-line"> <tt class="py-name">removeAllResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2818"></a><tt class="py-lineno">2818</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2819"></a><tt class="py-lineno">2819</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2820"></a><tt class="py-lineno">2820</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2821"></a><tt class="py-lineno">2821</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-921" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-921', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-922" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove" class="py-name" href="#" onclick="return doclink('link-922', 'setTestRemove', 'link-904');">setTestRemove</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2822"></a><tt class="py-lineno">2822</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestRemoveAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2823"></a><tt class="py-lineno">2823</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2824"></a><tt class="py-lineno">2824</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2825"></a><tt class="py-lineno">2825</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2826"></a><tt class="py-lineno">2826</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2827"></a><tt class="py-lineno">2827</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2828"></a><tt class="py-lineno">2828</tt> <tt class="py-line"> <tt class="py-name">removeAllResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2829"></a><tt class="py-lineno">2829</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L2830"></a><tt class="py-lineno">2830</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-923" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-923', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">exception</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L2831"></a><tt class="py-lineno">2831</tt> <tt class="py-line"> </tt>
-<a name="L2832"></a><tt class="py-lineno">2832</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L2833"></a><tt class="py-lineno">2833</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L2834"></a><tt class="py-lineno">2834</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L2835"></a><tt class="py-lineno">2835</tt> <tt class="py-line"> <tt class="py-name">removeAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2836"></a><tt class="py-lineno">2836</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2837"></a><tt class="py-lineno">2837</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeAllResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2838"></a><tt class="py-lineno">2838</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L2839"></a><tt class="py-lineno">2839</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L2840"></a><tt class="py-lineno">2840</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">removeAllResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2841"></a><tt class="py-lineno">2841</tt> <tt class="py-line"> <tt class="py-comment"># not in set, probably fine</tt> </tt>
-<a name="L2842"></a><tt class="py-lineno">2842</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L2843"></a><tt class="py-lineno">2843</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">removeAllResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L2844"></a><tt class="py-lineno">2844</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L2845"></a><tt class="py-lineno">2845</tt> <tt class="py-line"> <tt class="py-name">removeAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2846"></a><tt class="py-lineno">2846</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2847"></a><tt class="py-lineno">2847</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L2848"></a><tt class="py-lineno">2848</tt> <tt class="py-line"> <tt class="py-name">removeAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2849"></a><tt class="py-lineno">2849</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">removeAllResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2850"></a><tt class="py-lineno">2850</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-924" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-924', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-925" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-925', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set removeAll"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2851"></a><tt class="py-lineno">2851</tt> <tt class="py-line"> </tt>
-<a name="L2852"></a><tt class="py-lineno">2852</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L2853"></a><tt class="py-lineno">2853</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2854"></a><tt class="py-lineno">2854</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2855"></a><tt class="py-lineno">2855</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2856"></a><tt class="py-lineno">2856</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2857"></a><tt class="py-lineno">2857</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-926" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-926', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-927" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-927', 'setTestGet', 'link-843');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2858"></a><tt class="py-lineno">2858</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2859"></a><tt class="py-lineno">2859</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2860"></a><tt class="py-lineno">2860</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2861"></a><tt class="py-lineno">2861</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2862"></a><tt class="py-lineno">2862</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2863"></a><tt class="py-lineno">2863</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2864"></a><tt class="py-lineno">2864</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2865"></a><tt class="py-lineno">2865</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2866"></a><tt class="py-lineno">2866</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2867"></a><tt class="py-lineno">2867</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2868"></a><tt class="py-lineno">2868</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2869"></a><tt class="py-lineno">2869</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2870"></a><tt class="py-lineno">2870</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L2871"></a><tt class="py-lineno">2871</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L2872"></a><tt class="py-lineno">2872</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-928" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-928', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-929" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-929', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2873"></a><tt class="py-lineno">2873</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2874"></a><tt class="py-lineno">2874</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2875"></a><tt class="py-lineno">2875</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2876"></a><tt class="py-lineno">2876</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-930" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-930', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2877"></a><tt class="py-lineno">2877</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-931" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-931', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2878"></a><tt class="py-lineno">2878</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2879"></a><tt class="py-lineno">2879</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2880"></a><tt class="py-lineno">2880</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L2881"></a><tt class="py-lineno">2881</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-932" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-932', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-933" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-933', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2882"></a><tt class="py-lineno">2882</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2883"></a><tt class="py-lineno">2883</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2884"></a><tt class="py-lineno">2884</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2885"></a><tt class="py-lineno">2885</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2886"></a><tt class="py-lineno">2886</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L2887"></a><tt class="py-lineno">2887</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2888"></a><tt class="py-lineno">2888</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2889"></a><tt class="py-lineno">2889</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2890"></a><tt class="py-lineno">2890</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2891"></a><tt class="py-lineno">2891</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-934" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-934', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-935" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-935', 'setTestSize', 'link-853');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2892"></a><tt class="py-lineno">2892</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2893"></a><tt class="py-lineno">2893</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2894"></a><tt class="py-lineno">2894</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2895"></a><tt class="py-lineno">2895</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2896"></a><tt class="py-lineno">2896</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2897"></a><tt class="py-lineno">2897</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2898"></a><tt class="py-lineno">2898</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2899"></a><tt class="py-lineno">2899</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2900"></a><tt class="py-lineno">2900</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2901"></a><tt class="py-lineno">2901</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2902"></a><tt class="py-lineno">2902</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2903"></a><tt class="py-lineno">2903</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-936" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-936', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-937" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-937', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2904"></a><tt class="py-lineno">2904</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2905"></a><tt class="py-lineno">2905</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2906"></a><tt class="py-lineno">2906</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2907"></a><tt class="py-lineno">2907</tt> <tt class="py-line"> <tt class="py-name">removeAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">removeAllResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L2908"></a><tt class="py-lineno">2908</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L2909"></a><tt class="py-lineno">2909</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">removeAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L2910"></a><tt class="py-lineno">2910</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set removeAll correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L2911"></a><tt class="py-lineno">2911</tt> <tt class="py-line"> <tt id="link-938" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-938', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set removeAll was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2912"></a><tt class="py-lineno">2912</tt> <tt class="py-line"> </tt>
-<a name="L2913"></a><tt class="py-lineno">2913</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-939" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-939', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set addAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2914"></a><tt class="py-lineno">2914</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt id="link-940" class="py-name"><a title="TestON.core.dicttoobject.DictToObject.update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update" class="py-name" href="#" onclick="return doclink('link-940', 'update', 'link-876');">update</a></tt><tt class="py-op">(</tt> <tt class="py-name">addAllValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2915"></a><tt class="py-lineno">2915</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2916"></a><tt class="py-lineno">2916</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2917"></a><tt class="py-lineno">2917</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2918"></a><tt class="py-lineno">2918</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-941" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-941', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-942" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd" class="py-name" href="#" onclick="return doclink('link-942', 'setTestAdd', 'link-859');">setTestAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2919"></a><tt class="py-lineno">2919</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestAddAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2920"></a><tt class="py-lineno">2920</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2921"></a><tt class="py-lineno">2921</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2922"></a><tt class="py-lineno">2922</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2923"></a><tt class="py-lineno">2923</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2924"></a><tt class="py-lineno">2924</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2925"></a><tt class="py-lineno">2925</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2926"></a><tt class="py-lineno">2926</tt> <tt class="py-line"> </tt>
-<a name="L2927"></a><tt class="py-lineno">2927</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L2928"></a><tt class="py-lineno">2928</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L2929"></a><tt class="py-lineno">2929</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L2930"></a><tt class="py-lineno">2930</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2931"></a><tt class="py-lineno">2931</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2932"></a><tt class="py-lineno">2932</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2933"></a><tt class="py-lineno">2933</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L2934"></a><tt class="py-lineno">2934</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L2935"></a><tt class="py-lineno">2935</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2936"></a><tt class="py-lineno">2936</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L2937"></a><tt class="py-lineno">2937</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L2938"></a><tt class="py-lineno">2938</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L2939"></a><tt class="py-lineno">2939</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L2940"></a><tt class="py-lineno">2940</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2941"></a><tt class="py-lineno">2941</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2942"></a><tt class="py-lineno">2942</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L2943"></a><tt class="py-lineno">2943</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2944"></a><tt class="py-lineno">2944</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addAllResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L2945"></a><tt class="py-lineno">2945</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-943" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-943', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-944" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-944', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set addAll"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2946"></a><tt class="py-lineno">2946</tt> <tt class="py-line"> </tt>
-<a name="L2947"></a><tt class="py-lineno">2947</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L2948"></a><tt class="py-lineno">2948</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2949"></a><tt class="py-lineno">2949</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2950"></a><tt class="py-lineno">2950</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2951"></a><tt class="py-lineno">2951</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2952"></a><tt class="py-lineno">2952</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-945" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-945', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-946" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-946', 'setTestGet', 'link-843');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2953"></a><tt class="py-lineno">2953</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2954"></a><tt class="py-lineno">2954</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2955"></a><tt class="py-lineno">2955</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2956"></a><tt class="py-lineno">2956</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2957"></a><tt class="py-lineno">2957</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2958"></a><tt class="py-lineno">2958</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2959"></a><tt class="py-lineno">2959</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2960"></a><tt class="py-lineno">2960</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2961"></a><tt class="py-lineno">2961</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2962"></a><tt class="py-lineno">2962</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2963"></a><tt class="py-lineno">2963</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2964"></a><tt class="py-lineno">2964</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2965"></a><tt class="py-lineno">2965</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L2966"></a><tt class="py-lineno">2966</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L2967"></a><tt class="py-lineno">2967</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-947" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-947', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-948" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-948', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2968"></a><tt class="py-lineno">2968</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2969"></a><tt class="py-lineno">2969</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2970"></a><tt class="py-lineno">2970</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2971"></a><tt class="py-lineno">2971</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-949" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-949', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2972"></a><tt class="py-lineno">2972</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-950" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-950', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2973"></a><tt class="py-lineno">2973</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2974"></a><tt class="py-lineno">2974</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2975"></a><tt class="py-lineno">2975</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L2976"></a><tt class="py-lineno">2976</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-951" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-951', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-952" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-952', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2977"></a><tt class="py-lineno">2977</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2978"></a><tt class="py-lineno">2978</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2979"></a><tt class="py-lineno">2979</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2980"></a><tt class="py-lineno">2980</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2981"></a><tt class="py-lineno">2981</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L2982"></a><tt class="py-lineno">2982</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2983"></a><tt class="py-lineno">2983</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2984"></a><tt class="py-lineno">2984</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L2985"></a><tt class="py-lineno">2985</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2986"></a><tt class="py-lineno">2986</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-953" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-953', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-954" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-954', 'setTestSize', 'link-853');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L2987"></a><tt class="py-lineno">2987</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2988"></a><tt class="py-lineno">2988</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2989"></a><tt class="py-lineno">2989</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2990"></a><tt class="py-lineno">2990</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2991"></a><tt class="py-lineno">2991</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L2992"></a><tt class="py-lineno">2992</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2993"></a><tt class="py-lineno">2993</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L2994"></a><tt class="py-lineno">2994</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L2995"></a><tt class="py-lineno">2995</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L2996"></a><tt class="py-lineno">2996</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L2997"></a><tt class="py-lineno">2997</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L2998"></a><tt class="py-lineno">2998</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-955" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-955', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-956" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-956', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L2999"></a><tt class="py-lineno">2999</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3000"></a><tt class="py-lineno">3000</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3001"></a><tt class="py-lineno">3001</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3002"></a><tt class="py-lineno">3002</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">addAllResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3003"></a><tt class="py-lineno">3003</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3004"></a><tt class="py-lineno">3004</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">addAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3005"></a><tt class="py-lineno">3005</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3006"></a><tt class="py-lineno">3006</tt> <tt class="py-line"> <tt id="link-957" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-957', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3007"></a><tt class="py-lineno">3007</tt> <tt class="py-line"> </tt>
-<a name="L3008"></a><tt class="py-lineno">3008</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-958" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-958', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set clear()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3009"></a><tt class="py-lineno">3009</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">clear</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3010"></a><tt class="py-lineno">3010</tt> <tt class="py-line"> <tt class="py-name">clearResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3011"></a><tt class="py-lineno">3011</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3012"></a><tt class="py-lineno">3012</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3013"></a><tt class="py-lineno">3013</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-959" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-959', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-960" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove" class="py-name" href="#" onclick="return doclink('link-960', 'setTestRemove', 'link-904');">setTestRemove</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3014"></a><tt class="py-lineno">3014</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestClear-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3015"></a><tt class="py-lineno">3015</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-string">" "</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-comment"># Values doesn't matter</tt> </tt>
-<a name="L3016"></a><tt class="py-lineno">3016</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"clear"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3017"></a><tt class="py-lineno">3017</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3018"></a><tt class="py-lineno">3018</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3019"></a><tt class="py-lineno">3019</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3020"></a><tt class="py-lineno">3020</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3021"></a><tt class="py-lineno">3021</tt> <tt class="py-line"> <tt class="py-name">clearResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3022"></a><tt class="py-lineno">3022</tt> <tt class="py-line"> </tt>
-<a name="L3023"></a><tt class="py-lineno">3023</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3024"></a><tt class="py-lineno">3024</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3025"></a><tt class="py-lineno">3025</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3026"></a><tt class="py-lineno">3026</tt> <tt class="py-line"> <tt class="py-name">clearResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3027"></a><tt class="py-lineno">3027</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3028"></a><tt class="py-lineno">3028</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">clearResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3029"></a><tt class="py-lineno">3029</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3030"></a><tt class="py-lineno">3030</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3031"></a><tt class="py-lineno">3031</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">clearResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3032"></a><tt class="py-lineno">3032</tt> <tt class="py-line"> <tt class="py-comment"># Nothing set, probably fine</tt> </tt>
-<a name="L3033"></a><tt class="py-lineno">3033</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3034"></a><tt class="py-lineno">3034</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">clearResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3035"></a><tt class="py-lineno">3035</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3036"></a><tt class="py-lineno">3036</tt> <tt class="py-line"> <tt class="py-name">clearResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3037"></a><tt class="py-lineno">3037</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3038"></a><tt class="py-lineno">3038</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3039"></a><tt class="py-lineno">3039</tt> <tt class="py-line"> <tt class="py-name">clearResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3040"></a><tt class="py-lineno">3040</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">clearResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3041"></a><tt class="py-lineno">3041</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-961" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-961', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-962" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-962', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set clear"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3042"></a><tt class="py-lineno">3042</tt> <tt class="py-line"> </tt>
-<a name="L3043"></a><tt class="py-lineno">3043</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3044"></a><tt class="py-lineno">3044</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3045"></a><tt class="py-lineno">3045</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3046"></a><tt class="py-lineno">3046</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3047"></a><tt class="py-lineno">3047</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3048"></a><tt class="py-lineno">3048</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-963" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-963', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-964" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-964', 'setTestGet', 'link-843');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3049"></a><tt class="py-lineno">3049</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3050"></a><tt class="py-lineno">3050</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3051"></a><tt class="py-lineno">3051</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3052"></a><tt class="py-lineno">3052</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3053"></a><tt class="py-lineno">3053</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3054"></a><tt class="py-lineno">3054</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3055"></a><tt class="py-lineno">3055</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3056"></a><tt class="py-lineno">3056</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3057"></a><tt class="py-lineno">3057</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3058"></a><tt class="py-lineno">3058</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3059"></a><tt class="py-lineno">3059</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3060"></a><tt class="py-lineno">3060</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3061"></a><tt class="py-lineno">3061</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3062"></a><tt class="py-lineno">3062</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3063"></a><tt class="py-lineno">3063</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-965" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-965', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-966" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-966', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3064"></a><tt class="py-lineno">3064</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3065"></a><tt class="py-lineno">3065</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3066"></a><tt class="py-lineno">3066</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3067"></a><tt class="py-lineno">3067</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-967" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-967', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3068"></a><tt class="py-lineno">3068</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-968" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-968', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3069"></a><tt class="py-lineno">3069</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3070"></a><tt class="py-lineno">3070</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3071"></a><tt class="py-lineno">3071</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3072"></a><tt class="py-lineno">3072</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-969" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-969', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-970" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-970', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3073"></a><tt class="py-lineno">3073</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3074"></a><tt class="py-lineno">3074</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3075"></a><tt class="py-lineno">3075</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3076"></a><tt class="py-lineno">3076</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3077"></a><tt class="py-lineno">3077</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3078"></a><tt class="py-lineno">3078</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3079"></a><tt class="py-lineno">3079</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3080"></a><tt class="py-lineno">3080</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3081"></a><tt class="py-lineno">3081</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3082"></a><tt class="py-lineno">3082</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-971" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-971', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-972" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-972', 'setTestSize', 'link-853');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3083"></a><tt class="py-lineno">3083</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3084"></a><tt class="py-lineno">3084</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3085"></a><tt class="py-lineno">3085</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3086"></a><tt class="py-lineno">3086</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3087"></a><tt class="py-lineno">3087</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3088"></a><tt class="py-lineno">3088</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3089"></a><tt class="py-lineno">3089</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3090"></a><tt class="py-lineno">3090</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3091"></a><tt class="py-lineno">3091</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3092"></a><tt class="py-lineno">3092</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3093"></a><tt class="py-lineno">3093</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3094"></a><tt class="py-lineno">3094</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-973" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-973', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-974" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-974', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3095"></a><tt class="py-lineno">3095</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3096"></a><tt class="py-lineno">3096</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3097"></a><tt class="py-lineno">3097</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3098"></a><tt class="py-lineno">3098</tt> <tt class="py-line"> <tt class="py-name">clearResults</tt> <tt class="py-op">=</tt> <tt class="py-name">clearResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3099"></a><tt class="py-lineno">3099</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3100"></a><tt class="py-lineno">3100</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">clearResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3101"></a><tt class="py-lineno">3101</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set clear correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3102"></a><tt class="py-lineno">3102</tt> <tt class="py-line"> <tt id="link-975" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-975', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set clear was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3103"></a><tt class="py-lineno">3103</tt> <tt class="py-line"> </tt>
-<a name="L3104"></a><tt class="py-lineno">3104</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-976" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-976', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set addAll()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3105"></a><tt class="py-lineno">3105</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt id="link-977" class="py-name"><a title="TestON.core.dicttoobject.DictToObject.update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update" class="py-name" href="#" onclick="return doclink('link-977', 'update', 'link-876');">update</a></tt><tt class="py-op">(</tt> <tt class="py-name">addAllValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3106"></a><tt class="py-lineno">3106</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3107"></a><tt class="py-lineno">3107</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3108"></a><tt class="py-lineno">3108</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3109"></a><tt class="py-lineno">3109</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-978" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-978', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-979" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd" class="py-name" href="#" onclick="return doclink('link-979', 'setTestAdd', 'link-859');">setTestAdd</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3110"></a><tt class="py-lineno">3110</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestAddAll-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3111"></a><tt class="py-lineno">3111</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">addAllValue</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3112"></a><tt class="py-lineno">3112</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3113"></a><tt class="py-lineno">3113</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3114"></a><tt class="py-lineno">3114</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3115"></a><tt class="py-lineno">3115</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3116"></a><tt class="py-lineno">3116</tt> <tt class="py-line"> <tt class="py-name">addResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3117"></a><tt class="py-lineno">3117</tt> <tt class="py-line"> </tt>
-<a name="L3118"></a><tt class="py-lineno">3118</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3119"></a><tt class="py-lineno">3119</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3120"></a><tt class="py-lineno">3120</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3121"></a><tt class="py-lineno">3121</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3122"></a><tt class="py-lineno">3122</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3123"></a><tt class="py-lineno">3123</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3124"></a><tt class="py-lineno">3124</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3125"></a><tt class="py-lineno">3125</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3126"></a><tt class="py-lineno">3126</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3127"></a><tt class="py-lineno">3127</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L3128"></a><tt class="py-lineno">3128</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3129"></a><tt class="py-lineno">3129</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">addResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3130"></a><tt class="py-lineno">3130</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3131"></a><tt class="py-lineno">3131</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3132"></a><tt class="py-lineno">3132</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3133"></a><tt class="py-lineno">3133</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3134"></a><tt class="py-lineno">3134</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3135"></a><tt class="py-lineno">3135</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">addAllResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3136"></a><tt class="py-lineno">3136</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-980" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-980', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-981" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-981', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set addAll"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3137"></a><tt class="py-lineno">3137</tt> <tt class="py-line"> </tt>
-<a name="L3138"></a><tt class="py-lineno">3138</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3139"></a><tt class="py-lineno">3139</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3140"></a><tt class="py-lineno">3140</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3141"></a><tt class="py-lineno">3141</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3142"></a><tt class="py-lineno">3142</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3143"></a><tt class="py-lineno">3143</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-982" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-982', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-983" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-983', 'setTestGet', 'link-843');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3144"></a><tt class="py-lineno">3144</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3145"></a><tt class="py-lineno">3145</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3146"></a><tt class="py-lineno">3146</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3147"></a><tt class="py-lineno">3147</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3148"></a><tt class="py-lineno">3148</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3149"></a><tt class="py-lineno">3149</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3150"></a><tt class="py-lineno">3150</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3151"></a><tt class="py-lineno">3151</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3152"></a><tt class="py-lineno">3152</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3153"></a><tt class="py-lineno">3153</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3154"></a><tt class="py-lineno">3154</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3155"></a><tt class="py-lineno">3155</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3156"></a><tt class="py-lineno">3156</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3157"></a><tt class="py-lineno">3157</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3158"></a><tt class="py-lineno">3158</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-984" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-984', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-985" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-985', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3159"></a><tt class="py-lineno">3159</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3160"></a><tt class="py-lineno">3160</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3161"></a><tt class="py-lineno">3161</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3162"></a><tt class="py-lineno">3162</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-986" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-986', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3163"></a><tt class="py-lineno">3163</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-987" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-987', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3164"></a><tt class="py-lineno">3164</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3165"></a><tt class="py-lineno">3165</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3166"></a><tt class="py-lineno">3166</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3167"></a><tt class="py-lineno">3167</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-988" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-988', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-989" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-989', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3168"></a><tt class="py-lineno">3168</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3169"></a><tt class="py-lineno">3169</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3170"></a><tt class="py-lineno">3170</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3171"></a><tt class="py-lineno">3171</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3172"></a><tt class="py-lineno">3172</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3173"></a><tt class="py-lineno">3173</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3174"></a><tt class="py-lineno">3174</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3175"></a><tt class="py-lineno">3175</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3176"></a><tt class="py-lineno">3176</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3177"></a><tt class="py-lineno">3177</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-990" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-990', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-991" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-991', 'setTestSize', 'link-853');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3178"></a><tt class="py-lineno">3178</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3179"></a><tt class="py-lineno">3179</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3180"></a><tt class="py-lineno">3180</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3181"></a><tt class="py-lineno">3181</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3182"></a><tt class="py-lineno">3182</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3183"></a><tt class="py-lineno">3183</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3184"></a><tt class="py-lineno">3184</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3185"></a><tt class="py-lineno">3185</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3186"></a><tt class="py-lineno">3186</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3187"></a><tt class="py-lineno">3187</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3188"></a><tt class="py-lineno">3188</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3189"></a><tt class="py-lineno">3189</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-992" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-992', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-993" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-993', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3190"></a><tt class="py-lineno">3190</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3191"></a><tt class="py-lineno">3191</tt> <tt class="py-line"> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3192"></a><tt class="py-lineno">3192</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3193"></a><tt class="py-lineno">3193</tt> <tt class="py-line"> <tt class="py-name">addAllResults</tt> <tt class="py-op">=</tt> <tt class="py-name">addAllResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3194"></a><tt class="py-lineno">3194</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3195"></a><tt class="py-lineno">3195</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">addAllResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3196"></a><tt class="py-lineno">3196</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3197"></a><tt class="py-lineno">3197</tt> <tt class="py-line"> <tt id="link-994" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-994', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set addAll was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3198"></a><tt class="py-lineno">3198</tt> <tt class="py-line"> </tt>
-<a name="L3199"></a><tt class="py-lineno">3199</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-995" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-995', 'step', 'link-12');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Distributed Set retain()"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3200"></a><tt class="py-lineno">3200</tt> <tt class="py-line"> <tt class="py-name">onosSet</tt><tt class="py-op">.</tt><tt class="py-name">intersection_update</tt><tt class="py-op">(</tt> <tt class="py-name">retainValue</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3201"></a><tt class="py-lineno">3201</tt> <tt class="py-line"> <tt class="py-name">retainResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3202"></a><tt class="py-lineno">3202</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3203"></a><tt class="py-lineno">3203</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3204"></a><tt class="py-lineno">3204</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-996" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-996', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-997" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove" class="py-name" href="#" onclick="return doclink('link-997', 'setTestRemove', 'link-904');">setTestRemove</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3205"></a><tt class="py-lineno">3205</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestRetain-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3206"></a><tt class="py-lineno">3206</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt><tt class="py-op">,</tt> <tt class="py-name">retainValue</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L3207"></a><tt class="py-lineno">3207</tt> <tt class="py-line"> <tt class="py-name">kwargs</tt><tt class="py-op">=</tt><tt class="py-op">{</tt> <tt class="py-string">"retain"</tt><tt class="py-op">:</tt> <tt class="py-name">True</tt> <tt class="py-op">}</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3208"></a><tt class="py-lineno">3208</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3209"></a><tt class="py-lineno">3209</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3210"></a><tt class="py-lineno">3210</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3211"></a><tt class="py-lineno">3211</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3212"></a><tt class="py-lineno">3212</tt> <tt class="py-line"> <tt class="py-name">retainResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3213"></a><tt class="py-lineno">3213</tt> <tt class="py-line"> </tt>
-<a name="L3214"></a><tt class="py-lineno">3214</tt> <tt class="py-line"> <tt class="py-comment"># main.TRUE = successfully changed the set</tt> </tt>
-<a name="L3215"></a><tt class="py-lineno">3215</tt> <tt class="py-line"> <tt class="py-comment"># main.FALSE = action resulted in no change in set</tt> </tt>
-<a name="L3216"></a><tt class="py-lineno">3216</tt> <tt class="py-line"> <tt class="py-comment"># main.ERROR - Some error in executing the function</tt> </tt>
-<a name="L3217"></a><tt class="py-lineno">3217</tt> <tt class="py-line"> <tt class="py-name">retainResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3218"></a><tt class="py-lineno">3218</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3219"></a><tt class="py-lineno">3219</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">retainResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3220"></a><tt class="py-lineno">3220</tt> <tt class="py-line"> <tt class="py-comment"># All is well</tt> </tt>
-<a name="L3221"></a><tt class="py-lineno">3221</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3222"></a><tt class="py-lineno">3222</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">retainResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3223"></a><tt class="py-lineno">3223</tt> <tt class="py-line"> <tt class="py-comment"># Already in set, probably fine</tt> </tt>
-<a name="L3224"></a><tt class="py-lineno">3224</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L3225"></a><tt class="py-lineno">3225</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">retainResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3226"></a><tt class="py-lineno">3226</tt> <tt class="py-line"> <tt class="py-comment"># Error in execution</tt> </tt>
-<a name="L3227"></a><tt class="py-lineno">3227</tt> <tt class="py-line"> <tt class="py-name">retainResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3228"></a><tt class="py-lineno">3228</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3229"></a><tt class="py-lineno">3229</tt> <tt class="py-line"> <tt class="py-comment"># unexpected result</tt> </tt>
-<a name="L3230"></a><tt class="py-lineno">3230</tt> <tt class="py-line"> <tt class="py-name">retainResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3231"></a><tt class="py-lineno">3231</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">retainResults</tt> <tt class="py-op">!=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L3232"></a><tt class="py-lineno">3232</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-998" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-998', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-999" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-999', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Error executing set retain"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3233"></a><tt class="py-lineno">3233</tt> <tt class="py-line"> </tt>
-<a name="L3234"></a><tt class="py-lineno">3234</tt> <tt class="py-line"> <tt class="py-comment"># Check if set is still correct</tt> </tt>
-<a name="L3235"></a><tt class="py-lineno">3235</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3236"></a><tt class="py-lineno">3236</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3237"></a><tt class="py-lineno">3237</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3238"></a><tt class="py-lineno">3238</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3239"></a><tt class="py-lineno">3239</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1000" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1000', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1001" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet" class="py-name" href="#" onclick="return doclink('link-1001', 'setTestGet', 'link-843');">setTestGet</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3240"></a><tt class="py-lineno">3240</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestGet-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3241"></a><tt class="py-lineno">3241</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3242"></a><tt class="py-lineno">3242</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3243"></a><tt class="py-lineno">3243</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3244"></a><tt class="py-lineno">3244</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3245"></a><tt class="py-lineno">3245</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3246"></a><tt class="py-lineno">3246</tt> <tt class="py-line"> <tt class="py-name">getResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3247"></a><tt class="py-lineno">3247</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3248"></a><tt class="py-lineno">3248</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3249"></a><tt class="py-lineno">3249</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3250"></a><tt class="py-lineno">3250</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">set</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3251"></a><tt class="py-lineno">3251</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3252"></a><tt class="py-lineno">3252</tt> <tt class="py-line"> <tt class="py-comment"># no repeats</tt> </tt>
-<a name="L3253"></a><tt class="py-lineno">3253</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">!=</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L3254"></a><tt class="py-lineno">3254</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1002" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1002', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1003" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1003', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3255"></a><tt class="py-lineno">3255</tt> <tt class="py-line"> <tt class="py-string">" has incorrect view"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3256"></a><tt class="py-lineno">3256</tt> <tt class="py-line"> <tt class="py-string">" of set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3257"></a><tt class="py-lineno">3257</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3258"></a><tt class="py-lineno">3258</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1004" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1004', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Expected: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosSet</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3259"></a><tt class="py-lineno">3259</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1005" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1005', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-string">"Actual: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">current</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3260"></a><tt class="py-lineno">3260</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3261"></a><tt class="py-lineno">3261</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L3262"></a><tt class="py-lineno">3262</tt> <tt class="py-line"> <tt class="py-comment"># error, set is not a set</tt> </tt>
-<a name="L3263"></a><tt class="py-lineno">3263</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1006" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1006', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1007" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1007', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3264"></a><tt class="py-lineno">3264</tt> <tt class="py-line"> <tt class="py-string">" has repeat elements in"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3265"></a><tt class="py-lineno">3265</tt> <tt class="py-line"> <tt class="py-string">" set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> <tt class="py-string">":\n"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3266"></a><tt class="py-lineno">3266</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3267"></a><tt class="py-lineno">3267</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3268"></a><tt class="py-lineno">3268</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">getResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ERROR</tt><tt class="py-op">:</tt> </tt>
-<a name="L3269"></a><tt class="py-lineno">3269</tt> <tt class="py-line"> <tt class="py-name">getResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3270"></a><tt class="py-lineno">3270</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3271"></a><tt class="py-lineno">3271</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L3272"></a><tt class="py-lineno">3272</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3273"></a><tt class="py-lineno">3273</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1008" class="py-name"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1008', 'Thread', 'link-753');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-1009" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize" class="py-name" href="#" onclick="return doclink('link-1009', 'setTestSize', 'link-853');">setTestSize</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L3274"></a><tt class="py-lineno">3274</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"setTestSize-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L3275"></a><tt class="py-lineno">3275</tt> <tt class="py-line"> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">[</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3276"></a><tt class="py-lineno">3276</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3277"></a><tt class="py-lineno">3277</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3278"></a><tt class="py-lineno">3278</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L3279"></a><tt class="py-lineno">3279</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L3280"></a><tt class="py-lineno">3280</tt> <tt class="py-line"> <tt class="py-name">sizeResponses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3281"></a><tt class="py-lineno">3281</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L3282"></a><tt class="py-lineno">3282</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L3283"></a><tt class="py-lineno">3283</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">!=</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L3284"></a><tt class="py-lineno">3284</tt> <tt class="py-line"> <tt class="py-name">sizeResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L3285"></a><tt class="py-lineno">3285</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1010" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-1010', 'log', 'link-1');">log</a></tt><tt class="py-op">.</tt><tt id="link-1011" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-1011', 'error', 'link-71');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3286"></a><tt class="py-lineno">3286</tt> <tt class="py-line"> <tt class="py-string">" expected a size of "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3287"></a><tt class="py-lineno">3287</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">size</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" for set "</tt> <tt class="py-op">+</tt> <tt class="py-name">onosSetName</tt> <tt class="py-op">+</tt> </tt>
-<a name="L3288"></a><tt class="py-lineno">3288</tt> <tt class="py-line"> <tt class="py-string">" but got "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">sizeResponses</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L3289"></a><tt class="py-lineno">3289</tt> <tt class="py-line"> <tt class="py-name">retainResults</tt> <tt class="py-op">=</tt> <tt class="py-name">retainResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">getResults</tt> <tt class="py-keyword">and</tt> <tt class="py-name">sizeResults</tt> </tt>
-<a name="L3290"></a><tt class="py-lineno">3290</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L3291"></a><tt class="py-lineno">3291</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">retainResults</tt><tt class="py-op">,</tt> </tt>
-<a name="L3292"></a><tt class="py-lineno">3292</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Set retain correct"</tt><tt class="py-op">,</tt> </tt>
-<a name="L3293"></a><tt class="py-lineno">3293</tt> <tt class="py-line"> <tt id="link-1012" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-1012', 'onfail', 'link-28');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Set retain was incorrect"</tt> <tt class="py-op">)</tt> </tt>
-</div></div><a name="L3294"></a><tt class="py-lineno">3294</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html
deleted file mode 100644
index fc7eff9..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html
+++ /dev/null
@@ -1,518 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart-module.html">Package HAsingleInstanceRestart</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html">Module HAsingleInstanceRestart</a> ::
- Class HAsingleInstanceRestart
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class HAsingleInstanceRestart</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE1" class="summary-sig-name">CASE1</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- CASE1 is to compile ONOS and push it to the test machines</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE2"></a><span class="summary-sig-name">CASE2</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Assign devices to controllers</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE21"></a><span class="summary-sig-name">CASE21</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Assign mastership to controllers</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE21">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE3"></a><span class="summary-sig-name">CASE3</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Assign intents</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE3">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE4"></a><span class="summary-sig-name">CASE4</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Ping across added host intents</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE4">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE5"></a><span class="summary-sig-name">CASE5</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Reading state of ONOS</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE5">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE6"></a><span class="summary-sig-name">CASE6</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- The Failure case.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE6">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE7"></a><span class="summary-sig-name">CASE7</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Check state after ONOS failure</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE7">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE8"></a><span class="summary-sig-name">CASE8</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Compare topo</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE8">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE9"></a><span class="summary-sig-name">CASE9</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Link s3-s28 down</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE9">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE10"></a><span class="summary-sig-name">CASE10</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Link s3-s28 up</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE10">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE11"></a><span class="summary-sig-name">CASE11</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Switch Down</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE11">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE12"></a><span class="summary-sig-name">CASE12</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Switch Up</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE12">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE13"></a><span class="summary-sig-name">CASE13</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Clean up</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE13">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE14"></a><span class="summary-sig-name">CASE14</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- start election app on all onos nodes</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE14">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE15"></a><span class="summary-sig-name">CASE15</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Check that Leadership Election is still functional</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE15">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE16"></a><span class="summary-sig-name">CASE16</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Install Distributed Primitives app</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE16">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE17"></a><span class="summary-sig-name">CASE17</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Check for basic functionality with distributed primitives</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE17">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="CASE1"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">CASE1</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">main</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-pysrc.html#HAsingleInstanceRestart.CASE1">source code</a></span>
- </td>
- </tr></table>
-
- <p>CASE1 is to compile ONOS and push it to the test machines</p>
- <p>Startup sequence: cell <name> onos-verify-cell NOTE: temporary -
- onos-remove-raft-logs onos-uninstall start mininet git pull mvn clean
- install onos-package onos-install -f onos-wait-for-start start cli
- sessions start tcpdump</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies-module.html
deleted file mode 100644
index 0cd5718..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies-module.html
+++ /dev/null
@@ -1,167 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsingleInstanceRestart.dependencies</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart-module.html">Package HAsingleInstanceRestart</a> ::
- Package dependencies
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package dependencies</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.obelisk</a></strong> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies-pysrc.html
deleted file mode 100644
index eb02dfe..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies-pysrc.html
+++ /dev/null
@@ -1,124 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsingleInstanceRestart.dependencies</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart-module.html">Package HAsingleInstanceRestart</a> ::
- Package dependencies
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsingleInstanceRestart.dependencies-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html">Package TestON.tests.HAsingleInstanceRestart.dependencies</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html
deleted file mode 100644
index 943457c..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html
+++ /dev/null
@@ -1,195 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsingleInstanceRestart.dependencies.Counters</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart-module.html">Package HAsingleInstanceRestart</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html">Package dependencies</a> ::
- Module Counters
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module Counters</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-pysrc.html">source code</a></span></p>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Functions</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Functions"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-pysrc.html#__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="counterCheck"></a><span class="summary-sig-name">counterCheck</span>(<span class="summary-sig-arg">counterName</span>,
- <span class="summary-sig-arg">counterValue</span>)</span><br />
- Add Text here</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-pysrc.html#counterCheck">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies.Counters-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies.Counters-pysrc.html
deleted file mode 100644
index fda0c9d..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies.Counters-pysrc.html
+++ /dev/null
@@ -1,182 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsingleInstanceRestart.dependencies.Counters</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart-module.html">Package HAsingleInstanceRestart</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html">Package dependencies</a> ::
- Module Counters
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html">Module TestON.tests.HAsingleInstanceRestart.dependencies.Counters</a></h1>
-<pre class="py-src">
-<a name="__init__"></a><div id="__init__-def"><a name="L1"></a><tt class="py-lineno"> 1</tt> <a class="py-toggle" href="#" id="__init__-toggle" onclick="return toggle('__init__');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="__init__-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="__init__-expanded"><a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"> </tt>
-<a name="counterCheck"></a><div id="counterCheck-def"><a name="L4"></a><tt class="py-lineno"> 4</tt> <a class="py-toggle" href="#" id="counterCheck-toggle" onclick="return toggle('counterCheck');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#counterCheck">counterCheck</a><tt class="py-op">(</tt> <tt class="py-param">counterName</tt><tt class="py-op">,</tt> <tt class="py-param">counterValue</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="counterCheck-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="counterCheck-expanded"><a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-docstring"> Add Text here</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> <tt class="py-name">correctResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"> <tt class="py-comment"># Get onos counters results</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"> <tt class="py-name">onosCounters</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"> <tt class="py-name">threads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module TestON.core.Thread=TestON.core.Thread-module.html,Class TestON.core.Thread.Thread=TestON.core.Thread.Thread-class.html"><a title="TestON.core.Thread
-TestON.core.Thread.Thread" class="py-name" href="#" onclick="return doclink('link-1', 'Thread', 'link-1');">Thread</a></tt><tt class="py-op">(</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counters"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters" class="py-name" href="#" onclick="return doclink('link-2', 'counters', 'link-2');">counters</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"> <tt class="py-name">name</tt><tt class="py-op">=</tt><tt class="py-string">"counters-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"> <tt class="py-name">threads</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt> <tt class="py-op">)</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">t</tt> <tt class="py-keyword">in</tt> <tt class="py-name">threads</tt><tt class="py-op">:</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"> <tt class="py-name">onosCounters</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">result</tt> <tt class="py-op">)</tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"> <tt class="py-name">tmp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosCounters</tt> <tt class="py-op">]</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">all</tt><tt class="py-op">(</tt> <tt class="py-name">tmp</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> <tt class="py-name">consistent</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> <tt class="py-name">consistent</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-3', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-4', 'error', 'link-4');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS nodes have different values for counters"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">:</tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-5', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">debug</tt><tt class="py-op">(</tt> <tt class="py-name">node</tt> <tt class="py-op">)</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> <tt class="py-comment"># Check for correct values</tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> <tt class="py-name">current</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">TypeError</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-6', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-7" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-7', 'error', 'link-4');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Could not parse counters response from ONOS"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-8', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt> <tt class="py-name">onosCounters</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-name">onosValue</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">database</tt> <tt class="py-keyword">in</tt> <tt class="py-name">current</tt><tt class="py-op">:</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-name">database</tt> <tt class="py-op">=</tt> <tt class="py-name">database</tt><tt class="py-op">.</tt><tt class="py-name">values</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">counter</tt> <tt class="py-keyword">in</tt> <tt class="py-name">database</tt><tt class="py-op">:</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">counter</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'name'</tt> <tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">counterName</tt><tt class="py-op">:</tt> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-name">onosValue</tt> <tt class="py-op">=</tt> <tt class="py-name">counter</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt> <tt class="py-string">'value'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-10', 'error', 'link-4');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" counters result "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> <tt class="py-string">"is not as expected"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> <tt class="py-name">correctResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosValue</tt> <tt class="py-op">==</tt> <tt class="py-name">counterValue</tt><tt class="py-op">:</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-11', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">counterName</tt> <tt class="py-op">+</tt> <tt class="py-string">" counter value is correct"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-12', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-13', 'error', 'link-4');">error</a></tt><tt class="py-op">(</tt> <tt class="py-name">counterName</tt> <tt class="py-op">+</tt> <tt class="py-string">" counter value is incorrect,"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-string">" expected value: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">counterValue</tt> <tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-op">+</tt> <tt class="py-string">" current value: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">onosValue</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt class="py-name">correctResults</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">consistent</tt> <tt class="py-keyword">and</tt> <tt class="py-name">correctResults</tt> </tt>
-</div><a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html
deleted file mode 100644
index b212623..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html
+++ /dev/null
@@ -1,208 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsingleInstanceRestart.dependencies.obelisk</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart-module.html">Package HAsingleInstanceRestart</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html">Package dependencies</a> ::
- Module obelisk
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module obelisk</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html" class="summary-name">ObeliskTopo</a>
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Functions</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Functions"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="run"></a><span class="summary-sig-name">run</span>()</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-pysrc.html#run">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="topos"></a><span class="summary-name">topos</span> = <code title="{'obelisk':(lambda: ObeliskTopo())}">{'obelisk':(lambda: ObeliskTopo())}</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.tests.HAsingleInstanceRestart.dependencies'"><code class="variable-quote">'</code><code class="variable-string">TestON.tests.HAsingleInstanceRestart.dependencies</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-pysrc.html
deleted file mode 100644
index d08b6f7..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-pysrc.html
+++ /dev/null
@@ -1,273 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsingleInstanceRestart.dependencies.obelisk</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart-module.html">Package HAsingleInstanceRestart</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html">Package dependencies</a> ::
- Module obelisk
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html">Module TestON.tests.HAsingleInstanceRestart.dependencies.obelisk</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment">#!/usr/bin/env python</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">mininet</tt><tt class="py-op">.</tt><tt class="py-name">topo</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Topo</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"> </tt>
-<a name="ObeliskTopo"></a><div id="ObeliskTopo-def"><a name="L5"></a><tt class="py-lineno"> 5</tt> <a class="py-toggle" href="#" id="ObeliskTopo-toggle" onclick="return toggle('ObeliskTopo');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html">ObeliskTopo</a><tt class="py-op">(</tt> <tt class="py-base-class">Topo</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ObeliskTopo-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="ObeliskTopo-expanded"><a name="ObeliskTopo.__init__"></a><div id="ObeliskTopo.__init__-def"><a name="L6"></a><tt class="py-lineno"> 6</tt> <a class="py-toggle" href="#" id="ObeliskTopo.__init__-toggle" onclick="return toggle('ObeliskTopo.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ObeliskTopo.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="ObeliskTopo.__init__-expanded"><a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"> <tt class="py-name">Topo</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.__init__()=TestON.bin.cli.CLI-class.html#__init__,Method TestON.bin.cli.TestThread.__init__()=TestON.bin.cli.TestThread-class.html#__init__,Method TestON.bin.generatedriver.GenerateDriver.__init__()=TestON.bin.generatedriver.GenerateDriver-class.html#__init__,Method TestON.bin.nec.NEC.__init__()=TestON.bin.nec.NEC-class.html#__init__,Method TestON.bin.updatedriver.UpdateDriver.__init__()=TestON.bin.updatedriver.UpdateDriver-class.html#__init__,Method TestON.bin.vyatta.Vyatta.__init__()=TestON.bin.vyatta.Vyatta-class.html#__init__,Method TestON.core.Thread.Thread.__init__()=TestON.core.Thread.Thread-class.html#__init__,Method TestON.core.dicttoobject.DictToObject.__init__()=TestON.core.dicttoobject.DictToObject-class.html#__init__,Method TestON.core.iniparser.iniparser.__init__()=TestON.core.iniparser.iniparser-class.html#__init__,Method TestON.core.jsonparser.JsonParser.__init__()=TestON.core.jsonparser.JsonParser-class.html#__init__,Method TestON.core.openspeak.OpenSpeak.__init__()=TestON.core.openspeak.OpenSpeak-class.html#__init__,Method TestON.core.teston.TestON.__init__()=TestON.core.teston.TestON-class.html#__init__,Method TestON.core.testparser.TestParser.__init__()=TestON.core.testparser.TestParser-class.html#__init__,Method TestON.core.xmlparser.xmlparser.__init__()=TestON.core.xmlparser.xmlparser-class.html#__init__,Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__,Method TestON.drivers.common.api.controllerdriver.Controller.__init__()=TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__,Method TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__()=TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__,Method TestON.drivers.common.apidriver.API.__init__()=TestON.drivers.common.apidriver.API-class.html#__init__,Method TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__()=TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__()=TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__()=TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__()=TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__,Method TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__()=TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__,Method TestON.drivers.common.cli.emulatordriver.Emulator.__init__()=TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__,Method TestON.drivers.common.cli.onosdriver.OnosDriver.__init__()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__,Method TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__()=TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__()=TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__()=TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__()=TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__()=TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__,Method TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__()=TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__,Method TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__()=TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__,Method TestON.drivers.common.cli.toolsdriver.Tools.__init__()=TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__,Method TestON.drivers.common.clidriver.CLI.__init__()=TestON.drivers.common.clidriver.CLI-class.html#__init__,Method TestON.examples.Assert.Assert.Assert.__init__()=TestON.examples.Assert.Assert.Assert-class.html#__init__,Method TestON.examples.CaseParams.CaseParams.CaseParams.__init__()=TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__,Method TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__()=TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__,Method TestON.examples.StepParams.StepParams.StepParams.__init__()=TestON.examples.StepParams.StepParams.StepParams-class.html#__init__,Method TestON.examples.Topology.Topology.Topology.__init__()=TestON.examples.Topology.Topology.Topology-class.html#__init__,Method TestON.tests.CHOtest.CHOtest.CHOtest.__init__()=TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__,Method TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__()=TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__,Method TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__()=TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__,Function TestON.tests.HAclusterRestart.dependencies.Counters.__init__()=TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__()=TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__,Function TestON.tests.HAminorityRestart.dependencies.Counters.__init__()=TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsanity.HAsanity.HAsanity.__init__()=TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__,Function TestON.tests.HAsanity.dependencies.Counters.__init__()=TestON.tests.HAsanity.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__()=TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__,Function TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__,Method TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__,Method TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__()=TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__,Method TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__()=TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__,Method TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__()=TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__,Method TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__()=TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__,Method TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__()=TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__,Method TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__()=TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__,Method TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__()=TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__,Method TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__()=TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__,Method TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__()=TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__"><a title="TestON.bin.cli.CLI.__init__
-TestON.bin.cli.TestThread.__init__
-TestON.bin.generatedriver.GenerateDriver.__init__
-TestON.bin.nec.NEC.__init__
-TestON.bin.updatedriver.UpdateDriver.__init__
-TestON.bin.vyatta.Vyatta.__init__
-TestON.core.Thread.Thread.__init__
-TestON.core.dicttoobject.DictToObject.__init__
-TestON.core.iniparser.iniparser.__init__
-TestON.core.jsonparser.JsonParser.__init__
-TestON.core.openspeak.OpenSpeak.__init__
-TestON.core.teston.TestON.__init__
-TestON.core.testparser.TestParser.__init__
-TestON.core.xmlparser.xmlparser.__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__
-TestON.drivers.common.api.controllerdriver.Controller.__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__
-TestON.drivers.common.apidriver.API.__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__
-TestON.drivers.common.cli.toolsdriver.Tools.__init__
-TestON.drivers.common.clidriver.CLI.__init__
-TestON.examples.Assert.Assert.Assert.__init__
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__
-TestON.examples.StepParams.StepParams.StepParams.__init__
-TestON.examples.Topology.Topology.Topology.__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__
-TestON.tests.HAsanity.dependencies.Counters.__init__
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__" class="py-name" href="#" onclick="return doclink('link-0', '__init__', 'link-0');">__init__</a></tt><tt class="py-op">(</tt> <tt class="py-name">self</tt> <tt class="py-op">)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> <tt class="py-name">topSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addSwitch"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-1', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s1'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'1000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> <tt class="py-name">leftTopSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-2', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s2'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'2000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"> <tt class="py-name">rightTopSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-3', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s5'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'5000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"> <tt class="py-name">leftBotSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-4', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s3'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'3000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"> <tt class="py-name">rightBotSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-5', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s6'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'6000'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"> <tt class="py-name">midBotSwitch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-6', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s28'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt><tt class="py-op">=</tt><tt class="py-string">'2800'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"> <tt class="py-name">topHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addHost"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-7', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt> <tt class="py-string">'h1'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"> <tt class="py-name">leftTopHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-8', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h2'</tt><tt class="py-op">)</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"> <tt class="py-name">rightTopHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-9', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h5'</tt><tt class="py-op">)</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"> <tt class="py-name">leftBotHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-10', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h3'</tt><tt class="py-op">)</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"> <tt class="py-name">rightBotHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-11', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h6'</tt><tt class="py-op">)</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"> <tt class="py-name">midBotHost</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-12', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h28'</tt><tt class="py-op">)</tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addLink"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-13', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">topSwitch</tt><tt class="py-op">,</tt><tt class="py-name">topHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-14', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">leftTopHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-15', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">rightTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightTopHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-16', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">leftBotHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-17', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">rightBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightBotHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-18', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">midBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">midBotHost</tt><tt class="py-op">)</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-19', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightTopSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-20', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">topSwitch</tt><tt class="py-op">,</tt><tt class="py-name">leftTopSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-21', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">topSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightTopSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-22', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">leftBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-23', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">rightTopSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-24', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">leftBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">midBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-25', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">midBotSwitch</tt><tt class="py-op">,</tt><tt class="py-name">rightBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> <tt class="py-name">agg1Switch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-26', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s4'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'3004'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> <tt class="py-name">agg2Switch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-27', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s7'</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-string">'6007'</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-name">agg1Host</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-28', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h4'</tt><tt class="py-op">)</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-name">agg2Host</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-29', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h7'</tt><tt class="py-op">)</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-30', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">agg1Switch</tt><tt class="py-op">,</tt><tt class="py-name">agg1Host</tt><tt class="py-op">)</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-31', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">agg2Switch</tt><tt class="py-op">,</tt><tt class="py-name">agg2Host</tt><tt class="py-op">)</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-32', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">agg1Switch</tt><tt class="py-op">,</tt> <tt class="py-name">leftBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-33', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">agg2Switch</tt><tt class="py-op">,</tt> <tt class="py-name">rightBotSwitch</tt><tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">8</tt><tt class="py-op">)</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-34', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-string">'30'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-name">host</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-35', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">)</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-36', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">host</tt><tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-37', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">agg1Switch</tt><tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">18</tt><tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">switch</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch" class="py-name" href="#" onclick="return doclink('link-38', 'addSwitch', 'link-1');">addSwitch</a></tt><tt class="py-op">(</tt><tt class="py-string">'s'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">,</tt><tt class="py-name">dpid</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-string">'60'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">zfill</tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-name">host</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost" class="py-name" href="#" onclick="return doclink('link-39', 'addHost', 'link-7');">addHost</a></tt><tt class="py-op">(</tt><tt class="py-string">'h'</tt><tt class="py-op">+</tt><tt class="py-name">num</tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-40', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">host</tt><tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink" class="py-name" href="#" onclick="return doclink('link-41', 'addLink', 'link-13');">addLink</a></tt><tt class="py-op">(</tt><tt class="py-name">switch</tt><tt class="py-op">,</tt> <tt class="py-name">agg2Switch</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> </tt>
-<a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"><tt id="link-42" class="py-name" targets="Variable TestON.tests.HAclusterRestart.dependencies.obelisk.topos=TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#topos,Variable TestON.tests.HAminorityRestart.dependencies.obelisk.topos=TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#topos,Variable TestON.tests.HAsanity.dependencies.obelisk.topos=TestON.tests.HAsanity.dependencies.obelisk-module.html#topos,Variable TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.topos=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#topos"><a title="TestON.tests.HAclusterRestart.dependencies.obelisk.topos
-TestON.tests.HAminorityRestart.dependencies.obelisk.topos
-TestON.tests.HAsanity.dependencies.obelisk.topos
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.topos" class="py-name" href="#" onclick="return doclink('link-42', 'topos', 'link-42');">topos</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-string">'obelisk'</tt><tt class="py-op">:</tt> <tt class="py-op">(</tt><tt class="py-keyword">lambda</tt><tt class="py-op">:</tt> <tt id="link-43" class="py-name" targets="Class TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo=TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html,Class TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo=TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html,Class TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo=TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html,Class TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html"><a title="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo" class="py-name" href="#" onclick="return doclink('link-43', 'ObeliskTopo', 'link-43');">ObeliskTopo</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">}</tt> </tt>
-<a name="L59"></a><tt class="py-lineno">59</tt> <tt class="py-line"> </tt>
-<a name="run"></a><div id="run-def"><a name="L60"></a><tt class="py-lineno">60</tt> <a class="py-toggle" href="#" id="run-toggle" onclick="return toggle('run');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#run">run</a><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="run-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="run-expanded"><a name="L61"></a><tt class="py-lineno">61</tt> <tt class="py-line"> <tt class="py-name">topo</tt> <tt class="py-op">=</tt> <tt id="link-44" class="py-name"><a title="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo" class="py-name" href="#" onclick="return doclink('link-44', 'ObeliskTopo', 'link-43');">ObeliskTopo</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno">62</tt> <tt class="py-line"> <tt id="link-45" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#net"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-45', 'net', 'link-45');">net</a></tt> <tt class="py-op">=</tt> <tt class="py-name">Mininet</tt><tt class="py-op">(</tt> <tt class="py-name">topo</tt><tt class="py-op">=</tt><tt class="py-name">topo</tt><tt class="py-op">,</tt> <tt id="link-46" class="py-name" targets="Package TestON.drivers.common.api.controller=TestON.drivers.common.api.controller-module.html"><a title="TestON.drivers.common.api.controller" class="py-name" href="#" onclick="return doclink('link-46', 'controller', 'link-46');">controller</a></tt><tt class="py-op">=</tt><tt class="py-name">RemoteController</tt><tt class="py-op">,</tt> <tt class="py-name">autoSetMacs</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno">63</tt> <tt class="py-line"> <tt id="link-47" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-47', 'net', 'link-45');">net</a></tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno">64</tt> <tt class="py-line"> <tt id="link-48" class="py-name" targets="Class TestON.bin.cli.CLI=TestON.bin.cli.CLI-class.html,Class TestON.drivers.common.clidriver.CLI=TestON.drivers.common.clidriver.CLI-class.html"><a title="TestON.bin.cli.CLI
-TestON.drivers.common.clidriver.CLI" class="py-name" href="#" onclick="return doclink('link-48', 'CLI', 'link-48');">CLI</a></tt><tt class="py-op">(</tt> <tt id="link-49" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-49', 'net', 'link-45');">net</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno">65</tt> <tt class="py-line"> <tt id="link-50" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net" class="py-name" href="#" onclick="return doclink('link-50', 'net', 'link-45');">net</a></tt><tt class="py-op">.</tt><tt id="link-51" class="py-name" targets="Method TestON.bin.cli.TestThread.stop()=TestON.bin.cli.TestThread-class.html#stop"><a title="TestON.bin.cli.TestThread.stop" class="py-name" href="#" onclick="return doclink('link-51', 'stop', 'link-51');">stop</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L66"></a><tt class="py-lineno">66</tt> <tt class="py-line"> </tt>
-<a name="L67"></a><tt class="py-lineno">67</tt> <tt class="py-line"><tt class="py-keyword">if</tt> <tt class="py-name">__name__</tt> <tt class="py-op">==</tt> <tt class="py-string">'__main__'</tt><tt class="py-op">:</tt> </tt>
-<a name="L68"></a><tt class="py-lineno">68</tt> <tt class="py-line"> <tt class="py-name">setLogLevel</tt><tt class="py-op">(</tt> <tt class="py-string">'info'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno">69</tt> <tt class="py-line"> <tt id="link-52" class="py-name" targets="Method TestON.bin.cli.TestThread.run()=TestON.bin.cli.TestThread-class.html#run,Method TestON.core.Thread.Thread.run()=TestON.core.Thread.Thread-class.html#run,Method TestON.core.teston.TestON.run()=TestON.core.teston.TestON-class.html#run,Function TestON.tests.HAclusterRestart.dependencies.obelisk.run()=TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#run,Function TestON.tests.HAminorityRestart.dependencies.obelisk.run()=TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#run,Function TestON.tests.HAsanity.dependencies.obelisk.run()=TestON.tests.HAsanity.dependencies.obelisk-module.html#run,Function TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#run"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-52', 'run', 'link-52');">run</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno">70</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:38 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html b/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html
deleted file mode 100644
index 9df2c5a..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html
+++ /dev/null
@@ -1,298 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart-module.html">Package HAsingleInstanceRestart</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html">Package dependencies</a> ::
- <a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html">Module obelisk</a> ::
- Class ObeliskTopo
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ObeliskTopo</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-pysrc.html#ObeliskTopo">source code</a></span></p>
-<center>
-<center> <map id="class_hierarchy_for_obelisktop_4" name="class_hierarchy_for_obelisktop_4">
-<area shape="rect" id="node1" href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html" title="ObeliskTopo" alt="" coords="21,62,115,87"/>
-<area shape="rect" id="node2" href="javascript:void(0);" title="mininet.topo.Topo" alt="" coords="5,6,131,31"/>
-</map>
- <img src="class_hierarchy_for_obelisktop_4.gif" alt='' usemap="#class_hierarchy_for_obelisktop_4" ismap="ismap" class="graph-without-title" />
-</center>
-</center>
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Topo object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-pysrc.html#ObeliskTopo.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>mininet.topo.Topo</code></b>:
- <code>addHost</code>,
- <code>addLink</code>,
- <code>addNode</code>,
- <code>addPort</code>,
- <code>addSwitch</code>,
- <code>build</code>,
- <code>convertTo</code>,
- <code>hosts</code>,
- <code>isSwitch</code>,
- <code>iterLinks</code>,
- <code>linkInfo</code>,
- <code>links</code>,
- <code>nodeInfo</code>,
- <code>nodes</code>,
- <code>port</code>,
- <code>setNodeInfo</code>,
- <code>setlinkInfo</code>,
- <code>switches</code>
- </p>
- <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code>mininet.topo.Topo</code></b> (private):
- <code>_linkEntry</code>
- </p></div>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== STATIC METHODS ==================== -->
-<a name="section-StaticMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Static Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-StaticMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>mininet.topo.Topo</code></b>:
- <code>sorted</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-pysrc.html#ObeliskTopo.__init__">source code</a></span>
- </td>
- </tr></table>
-
- <p>Topo object. Optional named parameters: hinfo: default host options
- sopts: default switch options lopts: default link options calls
- build()</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SAMPscaleTopo-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SAMPscaleTopo-module.html
deleted file mode 100644
index 835d054..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SAMPscaleTopo-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SAMPscaleTopo</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SAMPscaleTopo
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SAMPscaleTopo-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package SAMPscaleTopo</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SAMPscaleTopo-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html">TestON.tests.SAMPscaleTopo.SAMPscaleTopo</a></strong> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SAMPscaleTopo-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SAMPscaleTopo-pysrc.html
deleted file mode 100644
index 3c31a03..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SAMPscaleTopo-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SAMPscaleTopo</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SAMPscaleTopo
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SAMPscaleTopo-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SAMPscaleTopo-module.html">Package TestON.tests.SAMPscaleTopo</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html
deleted file mode 100644
index 7a9a7d6..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html
+++ /dev/null
@@ -1,167 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SAMPscaleTopo.SAMPscaleTopo</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SAMPscaleTopo-module.html">Package SAMPscaleTopo</a> ::
- Module SAMPscaleTopo
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module SAMPscaleTopo</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html" class="summary-name">SAMPscaleTopo</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SAMPscaleTopo.SAMPscaleTopo-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SAMPscaleTopo.SAMPscaleTopo-pysrc.html
deleted file mode 100644
index c06f9de..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SAMPscaleTopo.SAMPscaleTopo-pysrc.html
+++ /dev/null
@@ -1,353 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SAMPscaleTopo.SAMPscaleTopo</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SAMPscaleTopo-module.html">Package SAMPscaleTopo</a> ::
- Module SAMPscaleTopo
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html">Module TestON.tests.SAMPscaleTopo.SAMPscaleTopo</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment"># Testing network scalability, this test suite scales up a network topology</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># using mininet and verifies ONOS stability</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"> </tt>
-<a name="SAMPscaleTopo"></a><div id="SAMPscaleTopo-def"><a name="L5"></a><tt class="py-lineno"> 5</tt> <a class="py-toggle" href="#" id="SAMPscaleTopo-toggle" onclick="return toggle('SAMPscaleTopo');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html">SAMPscaleTopo</a><tt class="py-op">:</tt> </tt>
-</div><div id="SAMPscaleTopo-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SAMPscaleTopo-expanded"><a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"> </tt>
-<a name="SAMPscaleTopo.__init__"></a><div id="SAMPscaleTopo.__init__-def"><a name="L7"></a><tt class="py-lineno"> 7</tt> <a class="py-toggle" href="#" id="SAMPscaleTopo.__init__-toggle" onclick="return toggle('SAMPscaleTopo.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SAMPscaleTopo.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SAMPscaleTopo.__init__-expanded"><a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> </tt>
-<a name="SAMPscaleTopo.CASE1"></a><div id="SAMPscaleTopo.CASE1-def"><a name="L10"></a><tt class="py-lineno"> 10</tt> <a class="py-toggle" href="#" id="SAMPscaleTopo.CASE1-toggle" onclick="return toggle('SAMPscaleTopo.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#CASE1">CASE1</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SAMPscaleTopo.CASE1-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SAMPscaleTopo.CASE1-expanded"><a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">imp</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"> <tt class="py-string">"""</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-string"> - Construct tests variables</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-string"> - GIT ( optional )</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-string"> - Checkout ONOS master branch</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-string"> - Pull latest ONOS code</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-string"> - Building ONOS ( optional )</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-string"> - Install ONOS package</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-string"> - Build ONOS package</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-string"> """</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-1', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Constructing test variables and building ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-2', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Constructing test variables"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-comment"># Test variables</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testOnDirectory</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">"(/tests)$"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testDir</tt> <tt class="py-op">)</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#apps,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#apps"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-3', 'apps', 'link-3');">apps</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellApps'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">gitBranch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'branch'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">dependencyPath</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testOnDirectory</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'DEPENDENCY'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'path'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#topology,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topology"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-4', 'topology', 'link-4');">topology</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'DEPENDENCY'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'topology'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">scale</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SCALE'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'size'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt> <tt class="py-op">)</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SCALE'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'max'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSport</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-name">wrapperFile1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'DEPENDENCY'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'wrapper1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">wrapperFile2</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'DEPENDENCY'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'wrapper2'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">startUpSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SLEEP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'startup'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">fwdSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SLEEP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'fwd'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt id="link-5" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-5', 'gitPull', 'link-5');">gitPull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'pull'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">cellData</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> <tt class="py-comment"># for creating cell file</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">hostsData</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getOnosIps"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps" class="py-name" href="#" onclick="return doclink('link-6', 'getOnosIps', 'link-6');">getOnosIps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-comment"># Assigning ONOS cli handles to a list</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">'ONOScli'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-comment"># -- INIT SECTION, ONLY RUNS ONCE -- #</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">startUp</tt> <tt class="py-op">=</tt> <tt class="py-name">imp</tt><tt class="py-op">.</tt><tt class="py-name">load_source</tt><tt class="py-op">(</tt> <tt class="py-name">wrapperFile1</tt><tt class="py-op">,</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">dependencyPath</tt> <tt class="py-op">+</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">wrapperFile1</tt> <tt class="py-op">+</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-string">".py"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">scaleTopoFunction</tt> <tt class="py-op">=</tt> <tt class="py-name">imp</tt><tt class="py-op">.</tt><tt class="py-name">load_source</tt><tt class="py-op">(</tt> <tt class="py-name">wrapperFile2</tt><tt class="py-op">,</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">dependencyPath</tt> <tt class="py-op">+</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">wrapperFile2</tt> <tt class="py-op">+</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-string">".py"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">copyResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#copyMininetFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile" class="py-name" href="#" onclick="return doclink('link-7', 'copyMininetFile', 'link-7');">copyMininetFile</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-8', 'topology', 'link-4');">topology</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">dependencyPath</tt><tt class="py-op">,</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-10', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Did not properly created list of ONOS CLI handle"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully construct "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-string">"test variables "</tt><tt class="py-op">,</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt id="link-11" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-11', 'onfail', 'link-11');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to construct test variables"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-12', 'gitPull', 'link-5');">gitPull</a></tt> <tt class="py-op">==</tt> <tt class="py-string">'True'</tt><tt class="py-op">:</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-13', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Building ONOS in "</tt> <tt class="py-op">+</tt> <tt class="py-name">gitBranch</tt> <tt class="py-op">+</tt> <tt class="py-string">" branch"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">onosBuildResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">startUp</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosBuild()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosBuild"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosBuild" class="py-name" href="#" onclick="return doclink('link-14', 'onosBuild', 'link-14');">onosBuild</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-name">gitBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosBuildResult</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully compiled "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-string">"latest ONOS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt id="link-15" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-15', 'onfail', 'link-11');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to compile "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-string">"latest ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-16', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Did not pull new code so skipping mvn "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-string">"clean install"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> </tt>
-<a name="SAMPscaleTopo.CASE2"></a><div id="SAMPscaleTopo.CASE2-def"><a name="L97"></a><tt class="py-lineno"> 97</tt> <a class="py-toggle" href="#" id="SAMPscaleTopo.CASE2-toggle" onclick="return toggle('SAMPscaleTopo.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#CASE2">CASE2</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SAMPscaleTopo.CASE2-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SAMPscaleTopo.CASE2-expanded"><a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"><tt class="py-docstring"> - Set up cell</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"><tt class="py-docstring"> - Create cell file</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"><tt class="py-docstring"> - Set cell file</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"><tt class="py-docstring"> - Verify cell file</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"><tt class="py-docstring"> - Kill ONOS process</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"><tt class="py-docstring"> - Uninstall ONOS cluster</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"><tt class="py-docstring"> - Verify ONOS start up</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"><tt class="py-docstring"> - Install ONOS cluster</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"><tt class="py-docstring"> - Connect to cli</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-comment"># main.scale[ 0 ] determines the current number of ONOS controller</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-17', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting up "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-string">" node(s) ONOS cluster"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-comment">#kill off all onos processes</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-18', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Safety check, killing all ONOS processes"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-string">" before initiating enviornment setup"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosDie"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie" class="py-name" href="#" onclick="return doclink('link-19', 'onosDie', 'link-19');">onosDie</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"NODE COUNT = "</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">tempOnosIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">tempOnosIp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile" class="py-name" href="#" onclick="return doclink('link-20', 'createCellFile', 'link-20');">createCellFile</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-string">"temp"</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-21', 'apps', 'link-3');">apps</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">tempOnosIp</tt> <tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-22', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Apply cell to environment"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">cellResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell,Method TestON.drivers.common.cli.onosdriver.OnosDriver.setCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell" class="py-name" href="#" onclick="return doclink('link-23', 'setCell', 'link-23');">setCell</a></tt><tt class="py-op">(</tt> <tt class="py-string">"temp"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">verifyResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell" class="py-name" href="#" onclick="return doclink('link-24', 'verifyCell', 'link-24');">verifyCell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">cellResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">verifyResult</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully applied cell to "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-string">"environment"</tt><tt class="py-op">,</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt id="link-25" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-25', 'onfail', 'link-11');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to apply cell to environment "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-26', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Creating ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">packageResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage" class="py-name" href="#" onclick="return doclink('link-27', 'onosPackage', 'link-27');">onosPackage</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">packageResult</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully created ONOS package"</tt><tt class="py-op">,</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt id="link-28" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-28', 'onfail', 'link-11');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to create ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-comment"># Remove the first element in main.scale list</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">scale</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> </tt>
-<a name="SAMPscaleTopo.CASE9"></a><div id="SAMPscaleTopo.CASE9-def"><a name="L156"></a><tt class="py-lineno">156</tt> <a class="py-toggle" href="#" id="SAMPscaleTopo.CASE9-toggle" onclick="return toggle('SAMPscaleTopo.CASE9');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#CASE9">CASE9</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SAMPscaleTopo.CASE9-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SAMPscaleTopo.CASE9-expanded"><a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"><tt class="py-docstring"> Report errors/warnings/exceptions</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-29', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Error report: \n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.logReport()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#logReport"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-30', 'logReport', 'link-30');">logReport</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">"INFO"</tt><tt class="py-op">,</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-string">"FOLLOWER"</tt><tt class="py-op">,</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-string">"WARN"</tt><tt class="py-op">,</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-string">"flow"</tt><tt class="py-op">,</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-string">"Except"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-string">"s"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> </tt>
-<a name="SAMPscaleTopo.CASE11"></a><div id="SAMPscaleTopo.CASE11-def"><a name="L170"></a><tt class="py-lineno">170</tt> <a class="py-toggle" href="#" id="SAMPscaleTopo.CASE11-toggle" onclick="return toggle('SAMPscaleTopo.CASE11');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#CASE11">CASE11</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SAMPscaleTopo.CASE11-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SAMPscaleTopo.CASE11-expanded"><a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"><tt class="py-docstring"> Start mininet</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-31', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Start Mininet topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-32', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-33', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start Mininet topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-34', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting Mininet Topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet" class="py-name" href="#" onclick="return doclink('link-35', 'startNet', 'link-35');">startNet</a></tt><tt class="py-op">(</tt> <tt class="py-name">topoFile</tt><tt class="py-op">=</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-36', 'topology', 'link-4');">topology</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">topoResult</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully loaded topology"</tt><tt class="py-op">,</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt id="link-37" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-37', 'onfail', 'link-11');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to load topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-comment"># Exit if topology did not load properly</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">topoResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name" targets="Method TestON.core.teston.TestON.cleanup()=TestON.core.teston.TestON-class.html#cleanup"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-38', 'cleanup', 'link-38');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-39', 'exit', 'link-39');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> </tt>
-<a name="SAMPscaleTopo.CASE1001"></a><div id="SAMPscaleTopo.CASE1001-def"><a name="L189"></a><tt class="py-lineno">189</tt> <a class="py-toggle" href="#" id="SAMPscaleTopo.CASE1001-toggle" onclick="return toggle('SAMPscaleTopo.CASE1001');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#CASE1001">CASE1001</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SAMPscaleTopo.CASE1001-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SAMPscaleTopo.CASE1001-expanded"><a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"><tt class="py-docstring"> Test topology discovery</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-40', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Topology discovery test"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-41', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Torus 5-5 topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">topoName</tt> <tt class="py-op">=</tt> <tt class="py-string">"TORUS5-5"</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-name">mnCmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"mn --topo=torus,5,5 --mac"</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">scaleTopoFunction</tt><tt class="py-op">.</tt><tt class="py-name">testTopology</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">mnCmd</tt><tt class="py-op">=</tt><tt class="py-name">mnCmd</tt><tt class="py-op">,</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-name">clean</tt><tt class="py-op">=</tt><tt class="py-name">False</tt> <tt class="py-op">)</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Torus 5-5 topology successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt id="link-42" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-42', 'onfail', 'link-11');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Torus 5-5 topology failed"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">topoName</tt> <tt class="py-op">=</tt> <tt class="py-string">"TREE3-3"</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-43', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Tree 3-3 topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">mnCmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"mn --topo=tree,3,3 --mac"</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">scaleTopoFunction</tt><tt class="py-op">.</tt><tt class="py-name">testTopology</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">mnCmd</tt><tt class="py-op">=</tt><tt class="py-name">mnCmd</tt><tt class="py-op">,</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-name">clean</tt><tt class="py-op">=</tt><tt class="py-name">True</tt> <tt class="py-op">)</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Tree 3-3 topology successful"</tt><tt class="py-op">,</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt id="link-44" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-44', 'onfail', 'link-11');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Tree 3-3 topology failed"</tt> <tt class="py-op">)</tt> </tt>
-</div></div><a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html b/TestON/Documentation/TestON_Document/TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html
deleted file mode 100644
index 45275b6..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html
+++ /dev/null
@@ -1,309 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SAMPscaleTopo-module.html">Package SAMPscaleTopo</a> ::
- <a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html">Module SAMPscaleTopo</a> ::
- Class SAMPscaleTopo
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SAMPscaleTopo</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-pysrc.html#SAMPscaleTopo">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-pysrc.html#SAMPscaleTopo.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1"></a><span class="summary-sig-name">CASE1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-pysrc.html#SAMPscaleTopo.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#CASE2" class="summary-sig-name">CASE2</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Set up cell</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-pysrc.html#SAMPscaleTopo.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE9"></a><span class="summary-sig-name">CASE9</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Report errors/warnings/exceptions</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-pysrc.html#SAMPscaleTopo.CASE9">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE11"></a><span class="summary-sig-name">CASE11</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Start mininet</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-pysrc.html#SAMPscaleTopo.CASE11">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1001"></a><span class="summary-sig-name">CASE1001</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Test topology discovery</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-pysrc.html#SAMPscaleTopo.CASE1001">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="CASE2"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">CASE2</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">main</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-pysrc.html#SAMPscaleTopo.CASE2">source code</a></span>
- </td>
- </tr></table>
-
- <ul>
- <li>
- Set up cell
- <ul>
- <li>
- Create cell file
- </li>
- <li>
- Set cell file
- </li>
- <li>
- Verify cell file
- </li>
- </ul>
- </li>
- <li>
- Kill ONOS process
- </li>
- <li>
- Uninstall ONOS cluster
- </li>
- <li>
- Verify ONOS start up
- </li>
- <li>
- Install ONOS cluster
- </li>
- <li>
- Connect to cli
- </li>
- </ul>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SAMPstartTemplate-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SAMPstartTemplate-module.html
deleted file mode 100644
index 1eabb86..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SAMPstartTemplate-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SAMPstartTemplate</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SAMPstartTemplate
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SAMPstartTemplate-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package SAMPstartTemplate</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SAMPstartTemplate-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html">TestON.tests.SAMPstartTemplate.SAMPstartTemplate</a></strong> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SAMPstartTemplate-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SAMPstartTemplate-pysrc.html
deleted file mode 100644
index 60b3446..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SAMPstartTemplate-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SAMPstartTemplate</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SAMPstartTemplate
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SAMPstartTemplate-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SAMPstartTemplate-module.html">Package TestON.tests.SAMPstartTemplate</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html
deleted file mode 100644
index eabc8b5..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html
+++ /dev/null
@@ -1,167 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SAMPstartTemplate.SAMPstartTemplate</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SAMPstartTemplate-module.html">Package SAMPstartTemplate</a> ::
- Module SAMPstartTemplate
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module SAMPstartTemplate</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html" class="summary-name">SAMPstartTemplate</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SAMPstartTemplate.SAMPstartTemplate-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SAMPstartTemplate.SAMPstartTemplate-pysrc.html
deleted file mode 100644
index c41a466..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SAMPstartTemplate.SAMPstartTemplate-pysrc.html
+++ /dev/null
@@ -1,383 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SAMPstartTemplate.SAMPstartTemplate</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SAMPstartTemplate-module.html">Package SAMPstartTemplate</a> ::
- Module SAMPstartTemplate
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html">Module TestON.tests.SAMPstartTemplate.SAMPstartTemplate</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment"># This is a sample template that starts up ONOS cluster, this template</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># is used as a starting script for creating functionality and performance test</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"> </tt>
-<a name="SAMPstartTemplate"></a><div id="SAMPstartTemplate-def"><a name="L5"></a><tt class="py-lineno"> 5</tt> <a class="py-toggle" href="#" id="SAMPstartTemplate-toggle" onclick="return toggle('SAMPstartTemplate');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html">SAMPstartTemplate</a><tt class="py-op">:</tt> </tt>
-</div><div id="SAMPstartTemplate-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SAMPstartTemplate-expanded"><a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"> </tt>
-<a name="SAMPstartTemplate.__init__"></a><div id="SAMPstartTemplate.__init__-def"><a name="L7"></a><tt class="py-lineno"> 7</tt> <a class="py-toggle" href="#" id="SAMPstartTemplate.__init__-toggle" onclick="return toggle('SAMPstartTemplate.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SAMPstartTemplate.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SAMPstartTemplate.__init__-expanded"><a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> </tt>
-<a name="SAMPstartTemplate.CASE1"></a><div id="SAMPstartTemplate.CASE1-def"><a name="L10"></a><tt class="py-lineno"> 10</tt> <a class="py-toggle" href="#" id="SAMPstartTemplate.CASE1-toggle" onclick="return toggle('SAMPstartTemplate.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#CASE1">CASE1</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SAMPstartTemplate.CASE1-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SAMPstartTemplate.CASE1-expanded"><a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">imp</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"> <tt class="py-string">"""</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-string"> - Construct tests variables</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-string"> - GIT ( optional )</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-string"> - Checkout ONOS master branch</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-string"> - Pull latest ONOS code</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-string"> - Building ONOS ( optional )</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-string"> - Install ONOS package</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-string"> - Build ONOS package</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-string"> """</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-1', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Constructing test variables and building ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-2', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Constructing test variables"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-comment"># Test variables</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testOnDirectory</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">"(/tests)$"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testDir</tt> <tt class="py-op">)</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#apps,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#apps"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-3', 'apps', 'link-3');">apps</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellApps'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">gitBranch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'branch'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">dependencyPath</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testOnDirectory</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'DEPENDENCY'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'path'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#topology,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topology"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-4', 'topology', 'link-4');">topology</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'DEPENDENCY'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'topology'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">scale</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SCALE'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'size'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt> <tt class="py-string">","</tt> <tt class="py-op">)</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SCALE'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'max'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSport</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'port'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">wrapperFile1</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'DEPENDENCY'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'wrapper1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">startUpSleep</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SLEEP'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'startup'</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt id="link-5" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-5', 'gitPull', 'link-5');">gitPull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'pull'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">cellData</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> <tt class="py-comment"># for creating cell file</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getOnosIps"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps" class="py-name" href="#" onclick="return doclink('link-6', 'getOnosIps', 'link-6');">getOnosIps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-comment"># Assigning ONOS cli handles to a list</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">'ONOScli'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-comment"># -- INIT SECTION, ONLY RUNS ONCE -- #</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">startUp</tt> <tt class="py-op">=</tt> <tt class="py-name">imp</tt><tt class="py-op">.</tt><tt class="py-name">load_source</tt><tt class="py-op">(</tt> <tt class="py-name">wrapperFile1</tt><tt class="py-op">,</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">dependencyPath</tt> <tt class="py-op">+</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-name">wrapperFile1</tt> <tt class="py-op">+</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-string">".py"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">copyResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#copyMininetFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile" class="py-name" href="#" onclick="return doclink('link-7', 'copyMininetFile', 'link-7');">copyMininetFile</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-8', 'topology', 'link-4');">topology</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">dependencyPath</tt><tt class="py-op">,</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">user_name</tt><tt class="py-op">,</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt> <tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">:</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-10', 'error', 'link-10');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Did not properly created list of ONOS CLI handle"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully construct "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-string">"test variables "</tt><tt class="py-op">,</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt id="link-11" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-11', 'onfail', 'link-11');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to construct test variables"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-12', 'gitPull', 'link-5');">gitPull</a></tt> <tt class="py-op">==</tt> <tt class="py-string">'True'</tt><tt class="py-op">:</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-13', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Building ONOS in "</tt> <tt class="py-op">+</tt> <tt class="py-name">gitBranch</tt> <tt class="py-op">+</tt> <tt class="py-string">" branch"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">onosBuildResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">startUp</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosBuild()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosBuild"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosBuild" class="py-name" href="#" onclick="return doclink('link-14', 'onosBuild', 'link-14');">onosBuild</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-name">gitBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosBuildResult</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully compiled "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-string">"latest ONOS"</tt><tt class="py-op">,</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt id="link-15" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-15', 'onfail', 'link-11');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to compile "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-string">"latest ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-16', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt> <tt class="py-string">"Did not pull new code so skipping mvn "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-string">"clean install"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> </tt>
-<a name="SAMPstartTemplate.CASE2"></a><div id="SAMPstartTemplate.CASE2-def"><a name="L91"></a><tt class="py-lineno"> 91</tt> <a class="py-toggle" href="#" id="SAMPstartTemplate.CASE2-toggle" onclick="return toggle('SAMPstartTemplate.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#CASE2">CASE2</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SAMPstartTemplate.CASE2-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SAMPstartTemplate.CASE2-expanded"><a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"><tt class="py-docstring"> - Set up cell</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"><tt class="py-docstring"> - Create cell file</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"><tt class="py-docstring"> - Set cell file</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"><tt class="py-docstring"> - Verify cell file</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"><tt class="py-docstring"> - Kill ONOS process</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"><tt class="py-docstring"> - Uninstall ONOS cluster</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"><tt class="py-docstring"> - Verify ONOS start up</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"><tt class="py-docstring"> - Install ONOS cluster</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"><tt class="py-docstring"> - Connect to cli</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-comment"># main.scale[ 0 ] determines the current number of ONOS controller</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-17', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting up "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-string">" node(s) ONOS cluster"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-comment">#kill off all onos processes</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-18', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Safety check, killing all ONOS processes"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-string">" before initiating enviornment setup"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosDie"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie" class="py-name" href="#" onclick="return doclink('link-19', 'onosDie', 'link-19');">onosDie</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"NODE COUNT = "</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">tempOnosIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">tempOnosIp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile" class="py-name" href="#" onclick="return doclink('link-20', 'createCellFile', 'link-20');">createCellFile</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-string">"temp"</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps" class="py-name" href="#" onclick="return doclink('link-21', 'apps', 'link-3');">apps</a></tt><tt class="py-op">,</tt> <tt class="py-name">tempOnosIp</tt> <tt class="py-op">)</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-22', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Apply cell to environment"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">cellResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell,Method TestON.drivers.common.cli.onosdriver.OnosDriver.setCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell" class="py-name" href="#" onclick="return doclink('link-23', 'setCell', 'link-23');">setCell</a></tt><tt class="py-op">(</tt> <tt class="py-string">"temp"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">verifyResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell" class="py-name" href="#" onclick="return doclink('link-24', 'verifyCell', 'link-24');">verifyCell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">cellResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">verifyResult</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully applied cell to "</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-string">"environment"</tt><tt class="py-op">,</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt id="link-25" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-25', 'onfail', 'link-11');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to apply cell to environment "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-26', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Creating ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">packageResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage" class="py-name" href="#" onclick="return doclink('link-27', 'onosPackage', 'link-27');">onosPackage</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">packageResult</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully created ONOS package"</tt><tt class="py-op">,</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt id="link-28" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-28', 'onfail', 'link-11');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to create ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">startUpSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-29', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Uninstalling ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">onosUninstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">onosUninstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosUninstallResult</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall" class="py-name" href="#" onclick="return doclink('link-30', 'onosUninstall', 'link-30');">onosUninstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">nodeIp</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosUninstallResult</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully uninstalled ONOS package"</tt><tt class="py-op">,</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt id="link-31" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-31', 'onfail', 'link-11');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to uninstall ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">startUpSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-32', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Installing ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">onosInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">onosInstallResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosInstallResult</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall" class="py-name" href="#" onclick="return doclink('link-33', 'onosInstall', 'link-33');">onosInstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosInstallResult</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully installed ONOS package"</tt><tt class="py-op">,</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt id="link-34" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-34', 'onfail', 'link-11');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to install ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">startUpSleep</tt> <tt class="py-op">)</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-35', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting ONOS service"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-name">stopResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-name">startResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">onosIsUp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">onosIsUp</tt> <tt class="py-op">=</tt> <tt class="py-name">onosIsUp</tt> <tt class="py-keyword">and</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.isup()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-36', 'isup', 'link-36');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">onosIsUp</tt> <tt class="py-op">==</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">:</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-37', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS instance is up and ready"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-38', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS instance may not be up, stop and "</tt> <tt class="py-op">+</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-string">"start ONOS again "</tt> <tt class="py-op">)</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">stopResult</tt> <tt class="py-op">=</tt> <tt class="py-name">stopResult</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosStop()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStop"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosStop" class="py-name" href="#" onclick="return doclink('link-39', 'onosStop', 'link-39');">onosStop</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">startResult</tt> <tt class="py-op">=</tt> <tt class="py-name">startResult</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosStart()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStart"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosStart" class="py-name" href="#" onclick="return doclink('link-40', 'onosStart', 'link-40');">onosStart</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">onosIsUp</tt> <tt class="py-keyword">and</tt> <tt class="py-name">stopResult</tt> <tt class="py-keyword">and</tt> <tt class="py-name">startResult</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"ONOS service is ready"</tt><tt class="py-op">,</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt id="link-41" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-41', 'onfail', 'link-11');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"ONOS service did not start properly"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-42', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start ONOS cli"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">cliResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">numCtrls</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">cliResult</tt> <tt class="py-op">=</tt> <tt class="py-name">cliResult</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#startOnosCli"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli" class="py-name" href="#" onclick="return doclink('link-43', 'startOnosCli', 'link-43');">startOnosCli</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-name">i</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">cliResult</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully start ONOS cli"</tt><tt class="py-op">,</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt id="link-44" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-44', 'onfail', 'link-11');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to start ONOS cli"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-comment"># Remove the first element in main.scale list</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">scale</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> </tt>
-<a name="SAMPstartTemplate.CASE9"></a><div id="SAMPstartTemplate.CASE9-def"><a name="L206"></a><tt class="py-lineno">206</tt> <a class="py-toggle" href="#" id="SAMPstartTemplate.CASE9-toggle" onclick="return toggle('SAMPstartTemplate.CASE9');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#CASE9">CASE9</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SAMPstartTemplate.CASE9-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SAMPstartTemplate.CASE9-expanded"><a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-docstring">'''</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"><tt class="py-docstring"> Report errors/warnings/exceptions</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"><tt class="py-docstring"> '''</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-45', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Error report: \n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.logReport()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#logReport"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-46', 'logReport', 'link-46');">logReport</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-op">[</tt> <tt class="py-string">"INFO"</tt><tt class="py-op">,</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-string">"FOLLOWER"</tt><tt class="py-op">,</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-string">"WARN"</tt><tt class="py-op">,</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-string">"flow"</tt><tt class="py-op">,</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-string">"Except"</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-string">"s"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> </tt>
-<a name="SAMPstartTemplate.CASE11"></a><div id="SAMPstartTemplate.CASE11-def"><a name="L220"></a><tt class="py-lineno">220</tt> <a class="py-toggle" href="#" id="SAMPstartTemplate.CASE11-toggle" onclick="return toggle('SAMPstartTemplate.CASE11');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#CASE11">CASE11</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SAMPstartTemplate.CASE11-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SAMPstartTemplate.CASE11-expanded"><a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"><tt class="py-docstring"> Start mininet</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-47', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Start Mininet topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-48', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-49', 'case', 'link-1');">case</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Start Mininet topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-50', 'step', 'link-2');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Starting Mininet Topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-name">topoResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet" class="py-name" href="#" onclick="return doclink('link-51', 'startNet', 'link-51');">startNet</a></tt><tt class="py-op">(</tt> <tt class="py-name">topoFile</tt><tt class="py-op">=</tt><tt id="link-52" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology" class="py-name" href="#" onclick="return doclink('link-52', 'topology', 'link-4');">topology</a></tt> <tt class="py-op">)</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">topoResult</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully loaded topology"</tt><tt class="py-op">,</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt id="link-53" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-53', 'onfail', 'link-11');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to load topology"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-comment"># Exit if topology did not load properly</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">topoResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name" targets="Method TestON.core.teston.TestON.cleanup()=TestON.core.teston.TestON-class.html#cleanup"><a title="TestON.core.teston.TestON.cleanup" class="py-name" href="#" onclick="return doclink('link-54', 'cleanup', 'link-54');">cleanup</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name" targets="Method TestON.core.teston.TestON.exit()=TestON.core.teston.TestON-class.html#exit"><a title="TestON.core.teston.TestON.exit" class="py-name" href="#" onclick="return doclink('link-55', 'exit', 'link-55');">exit</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> </tt>
-<a name="SAMPstartTemplate.CASE12"></a><div id="SAMPstartTemplate.CASE12-def"><a name="L239"></a><tt class="py-lineno">239</tt> <a class="py-toggle" href="#" id="SAMPstartTemplate.CASE12-toggle" onclick="return toggle('SAMPstartTemplate.CASE12');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#CASE12">CASE12</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SAMPstartTemplate.CASE12-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SAMPstartTemplate.CASE12-expanded"><a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"><tt class="py-docstring"> Test random ONOS command</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli" class="py-name" href="#" onclick="return doclink('link-56', 'startOnosCli', 'link-43');">startOnosCli</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSip</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">CLIs</tt><tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#leaders"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders" class="py-name" href="#" onclick="return doclink('link-57', 'leaders', 'link-57');">leaders</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html b/TestON/Documentation/TestON_Document/TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html
deleted file mode 100644
index 4670154..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html
+++ /dev/null
@@ -1,309 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SAMPstartTemplate-module.html">Package SAMPstartTemplate</a> ::
- <a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html">Module SAMPstartTemplate</a> ::
- Class SAMPstartTemplate
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SAMPstartTemplate</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-pysrc.html#SAMPstartTemplate">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-pysrc.html#SAMPstartTemplate.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1"></a><span class="summary-sig-name">CASE1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-pysrc.html#SAMPstartTemplate.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#CASE2" class="summary-sig-name">CASE2</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Set up cell</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-pysrc.html#SAMPstartTemplate.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE9"></a><span class="summary-sig-name">CASE9</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Report errors/warnings/exceptions</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-pysrc.html#SAMPstartTemplate.CASE9">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE11"></a><span class="summary-sig-name">CASE11</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Start mininet</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-pysrc.html#SAMPstartTemplate.CASE11">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE12"></a><span class="summary-sig-name">CASE12</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Test random ONOS command</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-pysrc.html#SAMPstartTemplate.CASE12">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="CASE2"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">CASE2</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">main</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-pysrc.html#SAMPstartTemplate.CASE2">source code</a></span>
- </td>
- </tr></table>
-
- <ul>
- <li>
- Set up cell
- <ul>
- <li>
- Create cell file
- </li>
- <li>
- Set cell file
- </li>
- <li>
- Verify cell file
- </li>
- </ul>
- </li>
- <li>
- Kill ONOS process
- </li>
- <li>
- Uninstall ONOS cluster
- </li>
- <li>
- Verify ONOS start up
- </li>
- <li>
- Install ONOS cluster
- </li>
- <li>
- Connect to cli
- </li>
- </ul>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFcbench-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFcbench-module.html
deleted file mode 100644
index a1fb2e4..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFcbench-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFcbench</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SCPFcbench
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFcbench-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package SCPFcbench</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFcbench-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFcbench.SCPFcbench-module.html">TestON.tests.SCPFcbench.SCPFcbench</a></strong> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFcbench-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFcbench-pysrc.html
deleted file mode 100644
index bdbbdba..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFcbench-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFcbench</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SCPFcbench
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFcbench-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SCPFcbench-module.html">Package TestON.tests.SCPFcbench</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFcbench.SCPFcbench-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFcbench.SCPFcbench-module.html
deleted file mode 100644
index c4b3590..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFcbench.SCPFcbench-module.html
+++ /dev/null
@@ -1,166 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFcbench.SCPFcbench</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFcbench-module.html">Package SCPFcbench</a> ::
- Module SCPFcbench
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFcbench.SCPFcbench-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module SCPFcbench</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFcbench.SCPFcbench-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html" class="summary-name">SCPFcbench</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.tests.SCPFcbench'"><code class="variable-quote">'</code><code class="variable-string">TestON.tests.SCPFcbench</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFcbench.SCPFcbench-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFcbench.SCPFcbench-pysrc.html
deleted file mode 100644
index d0f68c6..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFcbench.SCPFcbench-pysrc.html
+++ /dev/null
@@ -1,341 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFcbench.SCPFcbench</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFcbench-module.html">Package SCPFcbench</a> ::
- Module SCPFcbench
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFcbench.SCPFcbench-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SCPFcbench.SCPFcbench-module.html">Module TestON.tests.SCPFcbench.SCPFcbench</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># ScaleOutTemplate --> CbenchBM</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># CASE1 starts number of nodes specified in param file</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># cameron@onlab.us</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-0', 'path', 'link-0');">path</a></tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"> </tt>
-<a name="SCPFcbench"></a><div id="SCPFcbench-def"><a name="L12"></a><tt class="py-lineno"> 12</tt> <a class="py-toggle" href="#" id="SCPFcbench-toggle" onclick="return toggle('SCPFcbench');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html">SCPFcbench</a><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFcbench-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SCPFcbench-expanded"><a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"> </tt>
-<a name="SCPFcbench.__init__"></a><div id="SCPFcbench.__init__-def"><a name="L14"></a><tt class="py-lineno"> 14</tt> <a class="py-toggle" href="#" id="SCPFcbench.__init__-toggle" onclick="return toggle('SCPFcbench.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFcbench.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFcbench.__init__-expanded"><a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-1', 'default', 'link-1');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"> </tt>
-<a name="SCPFcbench.CASE1"></a><div id="SCPFcbench.CASE1-def"><a name="L17"></a><tt class="py-lineno"> 17</tt> <a class="py-toggle" href="#" id="SCPFcbench.CASE1-toggle" onclick="return toggle('SCPFcbench.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#CASE1">CASE1</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFcbench.CASE1-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFcbench.CASE1-expanded"><a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">init</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method TestON.core.teston.TestON.case()=TestON.core.teston.TestON-class.html#case"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-2', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt><tt class="py-string">"pre-condition for cbench test."</tt><tt class="py-op">)</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">init</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">bool</tt><tt class="py-op">:</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-comment">#Load values from params file</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'checkout'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt id="link-3" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-3', 'gitPull', 'link-3');">gitPull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'autopull'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">BENCHIp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BENCH'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ip1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">BENCHUser</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BENCH'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'user'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">CBENCHuser</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CBENCH'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'user'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">MN1Ip</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">environ</tt><tt class="py-op">[</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MN'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ip1'</tt> <tt class="py-op">]</tt> <tt class="py-op">]</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'availableNodes'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-name">skipMvn</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'skipCleanInstall'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-comment"># -- INIT SECTION, ONLY RUNS ONCE -- #</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">init</tt> <tt class="py-op">==</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">clusterCount</tt> <tt class="py-comment">#number of nodes running</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-comment">#list of ONOS IP addresses</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">scale</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">scale</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SCALE'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-comment">#Populate ONOSIp with ips from params</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">maxNodes</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">ipString</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">environ</tt><tt class="py-op">[</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'CTRL'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'ip1'</tt><tt class="py-op">]</tt><tt class="py-op">]</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">ipString</tt><tt class="py-op">)</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-comment">#mvn clean install, for debugging set param 'skipCleanInstall' to yes to speed up test</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">skipMvn</tt> <tt class="py-op">!=</tt> <tt class="py-string">"yes"</tt><tt class="py-op">:</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">mvnResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cleanInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall" class="py-name" href="#" onclick="return doclink('link-4', 'cleanInstall', 'link-4');">cleanInstall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-comment">#git</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-5', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Git checkout and pull "</tt> <tt class="py-op">+</tt> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-6', 'gitPull', 'link-3');">gitPull</a></tt> <tt class="py-op">==</tt> <tt class="py-string">'on'</tt><tt class="py-op">:</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">checkoutResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitCheckout"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout" class="py-name" href="#" onclick="return doclink('link-7', 'gitCheckout', 'link-7');">gitCheckout</a></tt><tt class="py-op">(</tt> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">pullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-8', 'gitPull', 'link-3');">gitPull</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">checkoutResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">pullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Skipped git checkout and pull"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-comment"># -- END OF INIT SECTION --#</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">scale</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-comment">#kill off all onos processes</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-10', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-11', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Safety check, killing all ONOS processes"</tt><tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-12', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-13', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"before initiating enviornment setup"</tt><tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">maxNodes</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosDie"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie" class="py-name" href="#" onclick="return doclink('link-14', 'onosDie', 'link-14');">onosDie</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-comment">#Uninstall everywhere</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-15', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-16', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cleaning Enviornment..."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">maxNodes</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-17', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">" Uninstalling ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall" class="py-name" href="#" onclick="return doclink('link-18', 'onosUninstall', 'link-18');">onosUninstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-19', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"pexpect: \n"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Cellname is: "</tt><tt class="py-op">+</tt> <tt class="py-name">cellName</tt> <tt class="py-op">+</tt> <tt class="py-string">"ONOS IP is: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile" class="py-name" href="#" onclick="return doclink('link-20', 'createCellFile', 'link-20');">createCellFile</a></tt><tt class="py-op">(</tt><tt class="py-name">BENCHIp</tt><tt class="py-op">,</tt><tt class="py-name">cellName</tt><tt class="py-op">,</tt><tt class="py-name">MN1Ip</tt><tt class="py-op">,</tt><tt class="py-string">"drivers,openflow,fwd"</tt><tt class="py-op">,</tt><tt class="py-op">[</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-21', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Set Cell"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell,Method TestON.drivers.common.cli.onosdriver.OnosDriver.setCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell" class="py-name" href="#" onclick="return doclink('link-22', 'setCell', 'link-22');">setCell</a></tt><tt class="py-op">(</tt><tt class="py-name">cellName</tt><tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-comment">#main.ONOSbench.handle.sendline(" ")</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-comment">#main.ONOSbench.handle.expect(":~")</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-comment">#print "pexpect: \n" + main.ONOSbench.handle.before</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-23', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Creating ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">packageResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage" class="py-name" href="#" onclick="return doclink('link-24', 'onosPackage', 'link-24');">onosPackage</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-25', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"verify cells"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">verifyCellResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell" class="py-name" href="#" onclick="return doclink('link-26', 'verifyCell', 'link-26');">verifyCell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-27', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Initializing "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" node cluster."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-28', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Starting ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" at IP: "</tt> <tt class="py-op">+</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall" class="py-name" href="#" onclick="return doclink('link-29', 'onosInstall', 'link-29');">onosInstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt id="link-30" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.isup()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-30', 'isup', 'link-30');">isup</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-31', 'isup', 'link-30');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-32" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-32', 'isup', 'link-30');">isup</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-33', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is up\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-34', 'isup', 'link-30');">isup</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-35', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" didn't start!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-36', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Startup sequence complete"</tt><tt class="py-op">)</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosCfgSet"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-37', 'onosCfgSet', 'link-37');">onosCfgSet</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"org.onosproject.fwd.ReactiveForwarding"</tt><tt class="py-op">,</tt><tt class="py-string">"packetOutOnly true"</tt><tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-38', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 cfg get|grep packetOutOnly"</tt><tt class="py-op">)</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">check</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"value=true"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">check</tt><tt class="py-op">:</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-39', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"cfg set successful"</tt><tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-40', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Cfg set failed"</tt><tt class="py-op">)</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully configure onos for cbench test "</tt><tt class="py-op">,</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt id="link-41" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-41', 'onfail', 'link-41');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to configure onos for cbench test"</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> </tt>
-<a name="SCPFcbench.CASE2"></a><div id="SCPFcbench.CASE2-def"><a name="L151"></a><tt class="py-lineno">151</tt> <a class="py-toggle" href="#" id="SCPFcbench.CASE2-toggle" onclick="return toggle('SCPFcbench.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#CASE2">CASE2</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFcbench.CASE2-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFcbench.CASE2-expanded"><a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.core.teston.TestON.case" class="py-name" href="#" onclick="return doclink('link-42', 'case', 'link-2');">case</a></tt><tt class="py-op">(</tt><tt class="py-string">"Running Cbench"</tt><tt class="py-op">)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-43', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Issuing cbench commands and grab returned results"</tt><tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-name">validFlag</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">mode</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'mode'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">mode</tt> <tt class="py-op">!=</tt> <tt class="py-string">"t"</tt><tt class="py-op">:</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">mode</tt> <tt class="py-op">=</tt> <tt class="py-string">" "</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">runCbench</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-string">"ssh "</tt> <tt class="py-op">+</tt> <tt class="py-name">CBENCHuser</tt> <tt class="py-op">+</tt> <tt class="py-string">"@"</tt> <tt class="py-op">+</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" cbench -c localhost -p 6633 -m 1000 -l 25 -s 16 -M 100000 -w 15 -D 10000 -"</tt> <tt class="py-op">+</tt> <tt class="py-name">mode</tt> <tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-44', 'sendline', 'link-19');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">runCbench</tt><tt class="py-op">)</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">30</tt><tt class="py-op">)</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt id="link-45" class="py-name" targets="Function TestON.bin.cli.output()=TestON.bin.cli-module.html#output"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-45', 'output', 'link-45');">output</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-46', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt id="link-47" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-47', 'output', 'link-45');">output</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt id="link-48" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-48', 'output', 'link-45');">output</a></tt> <tt class="py-op">=</tt> <tt id="link-49" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-49', 'output', 'link-45');">output</a></tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt id="link-50" class="py-name"><a title="TestON.bin.cli.output" class="py-name" href="#" onclick="return doclink('link-50', 'output', 'link-45');">output</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"RESULT: "</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt><tt class="py-op">:</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-name">validFlag</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">line</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">resultLine</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">word</tt> <tt class="py-keyword">in</tt> <tt class="py-name">resultLine</tt><tt class="py-op">:</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">word</tt> <tt class="py-op">==</tt> <tt class="py-string">"min/max/avg/stdev"</tt><tt class="py-op">:</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">resultsIndex</tt> <tt class="py-op">=</tt> <tt class="py-name">resultLine</tt><tt class="py-op">.</tt><tt class="py-name">index</tt><tt class="py-op">(</tt><tt class="py-name">word</tt><tt class="py-op">)</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">resultsIndex</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">finalDataString</tt> <tt class="py-op">=</tt> <tt class="py-name">resultLine</tt><tt class="py-op">[</tt><tt class="py-name">resultsIndex</tt> <tt class="py-op">+</tt> <tt class="py-number">2</tt><tt class="py-op">]</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">finalDataString</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">finalDataList</tt> <tt class="py-op">=</tt> <tt class="py-name">finalDataString</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"/"</tt><tt class="py-op">)</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">avg</tt> <tt class="py-op">=</tt> <tt class="py-name">finalDataList</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-name">stdev</tt> <tt class="py-op">=</tt> <tt class="py-name">finalDataList</tt><tt class="py-op">[</tt><tt class="py-number">3</tt><tt class="py-op">]</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-51', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Average: \t\t\t"</tt> <tt class="py-op">+</tt> <tt class="py-name">avg</tt><tt class="py-op">)</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-52', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Standard Deviation: \t"</tt> <tt class="py-op">+</tt> <tt class="py-name">stdev</tt><tt class="py-op">)</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-name">commit</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion,Method TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion
-TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion" class="py-name" href="#" onclick="return doclink('link-53', 'getVersion', 'link-53');">getVersion</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-name">commit</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">commit</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">dbFileName</tt><tt class="py-op">=</tt><tt class="py-string">"/tmp/CbenchDB"</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">dbfile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">dbFileName</tt><tt class="py-op">,</tt> <tt class="py-string">"w+"</tt><tt class="py-op">)</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">=</tt> <tt class="py-string">"'"</tt> <tt class="py-op">+</tt> <tt class="py-name">commit</tt> <tt class="py-op">+</tt> <tt class="py-string">"',"</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">+=</tt> <tt class="py-string">"'"</tt> <tt class="py-op">+</tt> <tt class="py-name">mode</tt> <tt class="py-op">+</tt> <tt class="py-string">"',"</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">+=</tt> <tt class="py-string">"'"</tt> <tt class="py-op">+</tt> <tt class="py-name">avg</tt> <tt class="py-op">+</tt> <tt class="py-string">"',"</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">+=</tt> <tt class="py-string">"'"</tt> <tt class="py-op">+</tt> <tt class="py-name">stdev</tt> <tt class="py-op">+</tt> <tt class="py-string">"'\n"</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-name">dbfile</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">temp</tt><tt class="py-op">)</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-name">dbfile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.logReport()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#logReport"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-54', 'logReport', 'link-54');">logReport</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> <tt class="py-string">"WARNING"</tt><tt class="py-op">,</tt> <tt class="py-string">"EXCEPT"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">outputMode</tt><tt class="py-op">=</tt><tt class="py-string">"d"</tt><tt class="py-op">)</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IOError</tt><tt class="py-op">:</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-55', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt><tt class="py-string">"Error opening "</tt> <tt class="py-op">+</tt> <tt class="py-name">dbFileName</tt> <tt class="py-op">+</tt> <tt class="py-string">" to write results."</tt><tt class="py-op">)</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt> <tt class="py-name">validFlag</tt> <tt class="py-op">==</tt> <tt class="py-name">False</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-56', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt><tt class="py-string">"Cbench Test produced no valid results!!!!"</tt><tt class="py-op">)</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">stepResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt> <tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">stepResult</tt><tt class="py-op">,</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">"Successfully tested onos for cbench. "</tt><tt class="py-op">,</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt id="link-57" class="py-name"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-57', 'onfail', 'link-41');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">"Failed to obtain valid onos cbench result!"</tt> <tt class="py-op">)</tt> </tt>
-</div></div><a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html
deleted file mode 100644
index 4c2d5be..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html
+++ /dev/null
@@ -1,185 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFcbench-module.html">Package SCPFcbench</a> ::
- <a href="TestON.tests.SCPFcbench.SCPFcbench-module.html">Module SCPFcbench</a> ::
- Class SCPFcbench
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SCPFcbench</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFcbench.SCPFcbench-pysrc.html#SCPFcbench">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFcbench.SCPFcbench-pysrc.html#SCPFcbench.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1"></a><span class="summary-sig-name">CASE1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFcbench.SCPFcbench-pysrc.html#SCPFcbench.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE2"></a><span class="summary-sig-name">CASE2</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFcbench.SCPFcbench-pysrc.html#SCPFcbench.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFflowTp1g-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFflowTp1g-module.html
deleted file mode 100644
index c6b1590..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFflowTp1g-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFflowTp1g</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SCPFflowTp1g
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFflowTp1g-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package SCPFflowTp1g</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFflowTp1g-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html">TestON.tests.SCPFflowTp1g.SCPFflowTp1g</a></strong> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFflowTp1g-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFflowTp1g-pysrc.html
deleted file mode 100644
index bed837e..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFflowTp1g-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFflowTp1g</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SCPFflowTp1g
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFflowTp1g-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SCPFflowTp1g-module.html">Package TestON.tests.SCPFflowTp1g</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html
deleted file mode 100644
index ba0a3f8..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html
+++ /dev/null
@@ -1,166 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFflowTp1g.SCPFflowTp1g</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFflowTp1g-module.html">Package SCPFflowTp1g</a> ::
- Module SCPFflowTp1g
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module SCPFflowTp1g</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html" class="summary-name">SCPFflowTp1g</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.tests.SCPFflowTp1g'"><code class="variable-quote">'</code><code class="variable-string">TestON.tests.SCPFflowTp1g</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFflowTp1g.SCPFflowTp1g-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFflowTp1g.SCPFflowTp1g-pysrc.html
deleted file mode 100644
index 5939287..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFflowTp1g.SCPFflowTp1g-pysrc.html
+++ /dev/null
@@ -1,511 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFflowTp1g.SCPFflowTp1g</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFflowTp1g-module.html">Package SCPFflowTp1g</a> ::
- Module SCPFflowTp1g
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html">Module TestON.tests.SCPFflowTp1g.SCPFflowTp1g</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># ScaleOutTemplate -> flowTP</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># CASE1 starts number of nodes specified in param file</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># cameron@onlab.us</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-0', 'path', 'link-0');">path</a></tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"> </tt>
-<a name="SCPFflowTp1g"></a><div id="SCPFflowTp1g-def"><a name="L11"></a><tt class="py-lineno"> 11</tt> <a class="py-toggle" href="#" id="SCPFflowTp1g-toggle" onclick="return toggle('SCPFflowTp1g');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html">SCPFflowTp1g</a><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFflowTp1g-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SCPFflowTp1g-expanded"><a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"> </tt>
-<a name="SCPFflowTp1g.__init__"></a><div id="SCPFflowTp1g.__init__-def"><a name="L13"></a><tt class="py-lineno"> 13</tt> <a class="py-toggle" href="#" id="SCPFflowTp1g.__init__-toggle" onclick="return toggle('SCPFflowTp1g.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFflowTp1g.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFflowTp1g.__init__-expanded"><a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-1', 'default', 'link-1');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"> </tt>
-<a name="SCPFflowTp1g.CASE1"></a><div id="SCPFflowTp1g.CASE1-def"><a name="L16"></a><tt class="py-lineno"> 16</tt> <a class="py-toggle" href="#" id="SCPFflowTp1g.CASE1-toggle" onclick="return toggle('SCPFflowTp1g.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#CASE1">CASE1</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFflowTp1g.CASE1-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFflowTp1g.CASE1-expanded"><a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">init</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">init</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">bool</tt><tt class="py-op">:</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> <tt class="py-comment">#Load values from params file</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'checkout'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt id="link-2" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-2', 'gitPull', 'link-2');">gitPull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'autopull'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-name">Apps</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellApps'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-name">BENCHUser</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BENCH'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'user'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-name">BENCHIp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BENCH'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ip1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'max'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">skipMvn</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'skipCleanInstall'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-3', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"==========DEBUG VERSION 3==========="</tt><tt class="py-op">)</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-comment"># -- INIT SECTION, ONLY RUNS ONCE -- #</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">init</tt> <tt class="py-op">==</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">clusterCount</tt> <tt class="py-comment">#number of nodes running</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-comment">#list of ONOS IP addresses</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">scale</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">commit</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">scale</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SCALE'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-comment">#Populate ONOSIp with ips from params</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">ipString</tt> <tt class="py-op">=</tt> <tt class="py-string">'ip'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-name">ipString</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getOnosIps"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps" class="py-name" href="#" onclick="return doclink('link-4', 'getOnosIps', 'link-4');">getOnosIps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-comment">#mvn clean install, for debugging set param 'skipCleanInstall' to yes to speed up test</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">skipMvn</tt> <tt class="py-op">!=</tt> <tt class="py-string">"yes"</tt><tt class="py-op">:</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">mvnResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cleanInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall" class="py-name" href="#" onclick="return doclink('link-5', 'cleanInstall', 'link-5');">cleanInstall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-comment">#git</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-6', 'step', 'link-6');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Git checkout and pull "</tt> <tt class="py-op">+</tt> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-7" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-7', 'gitPull', 'link-2');">gitPull</a></tt> <tt class="py-op">==</tt> <tt class="py-string">'on'</tt><tt class="py-op">:</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">checkoutResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitCheckout"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout" class="py-name" href="#" onclick="return doclink('link-8', 'gitCheckout', 'link-8');">gitCheckout</a></tt><tt class="py-op">(</tt> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">pullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-9', 'gitPull', 'link-2');">gitPull</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">checkoutResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">pullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-10', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Skipped git checkout and pull"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">commit</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion,Method TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion
-TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion" class="py-name" href="#" onclick="return doclink('link-11', 'getVersion', 'link-11');">getVersion</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">commit</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">commit</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-string">"/tmp/flowTP1gDB"</tt><tt class="py-op">,</tt> <tt class="py-string">"w+"</tt><tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-comment"># -- END OF INIT SECTION --#</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">scale</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-12', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"CLUSTER COUNT: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-comment">#kill off all onos processes</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-13', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-14', 'step', 'link-6');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Safety check, killing all ONOS processes"</tt><tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-15', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-16', 'step', 'link-6');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"before initiating enviornment setup"</tt><tt class="py-op">)</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosDie"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie" class="py-name" href="#" onclick="return doclink('link-17', 'onosDie', 'link-17');">onosDie</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-comment">#Uninstall everywhere</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-18', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-19', 'step', 'link-6');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cleaning Enviornment..."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-20', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">" Uninstalling ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall" class="py-name" href="#" onclick="return doclink('link-21', 'onosUninstall', 'link-21');">onosUninstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-comment">#construct the cell file</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-22', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Creating cell file"</tt><tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">cellIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt> <tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">cellIp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile" class="py-name" href="#" onclick="return doclink('link-23', 'createCellFile', 'link-23');">createCellFile</a></tt><tt class="py-op">(</tt><tt class="py-name">BENCHIp</tt><tt class="py-op">,</tt><tt class="py-name">cellName</tt><tt class="py-op">,</tt><tt class="py-string">"localhost"</tt><tt class="py-op">,</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">Apps</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">cellIp</tt><tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-24', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Cell Ip list: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">cellIp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-25', 'step', 'link-6');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Set Cell"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell,Method TestON.drivers.common.cli.onosdriver.OnosDriver.setCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell" class="py-name" href="#" onclick="return doclink('link-26', 'setCell', 'link-26');">setCell</a></tt><tt class="py-op">(</tt><tt class="py-name">cellName</tt><tt class="py-op">)</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-27', 'step', 'link-6');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Creating ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">packageResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage" class="py-name" href="#" onclick="return doclink('link-28', 'onosPackage', 'link-28');">onosPackage</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-29', 'step', 'link-6');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"verify cells"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">verifyCellResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell" class="py-name" href="#" onclick="return doclink('link-30', 'verifyCell', 'link-30');">verifyCell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-31', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Initializeing "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" node cluster."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-32', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Starting ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" at IP: "</tt> <tt class="py-op">+</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall" class="py-name" href="#" onclick="return doclink('link-33', 'onosInstall', 'link-33');">onosInstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt id="link-34" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.isup()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-34', 'isup', 'link-34');">isup</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-35', 'isup', 'link-34');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-36', 'isup', 'link-34');">isup</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-37', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is up\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-38', 'isup', 'link-34');">isup</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-39', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" didn't start!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-keyword">exec</tt> <tt class="py-string">"a = main.ONOS%scli.startOnosCli"</tt> <tt class="py-op">%</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">a</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-40', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Startup sequence complete"</tt><tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.logReport()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#logReport"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-41', 'logReport', 'link-41');">logReport</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> <tt class="py-string">"WARNING"</tt><tt class="py-op">,</tt> <tt class="py-string">"EXCEPT"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">outputMode</tt><tt class="py-op">=</tt><tt class="py-string">"d"</tt><tt class="py-op">)</tt> </tt>
-</div><a name="SCPFflowTp1g.CASE2"></a><div id="SCPFflowTp1g.CASE2-def"><a name="L137"></a><tt class="py-lineno">137</tt> <a class="py-toggle" href="#" id="SCPFflowTp1g.CASE2-toggle" onclick="return toggle('SCPFflowTp1g.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#CASE2">CASE2</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFflowTp1g.CASE2-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFflowTp1g.CASE2-expanded"><a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-comment">#</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-comment"># This is the flow TP test</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-comment">#</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-42', 'path', 'link-0');">path</a></tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">numpy</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">math</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">datetime</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">traceback</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">currentNeighbors</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">currentNeighbors</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">:</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">currentNeighbors</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'neighbors'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">currentNeighbors</tt> <tt class="py-op">==</tt> <tt class="py-string">"r"</tt><tt class="py-op">:</tt> <tt class="py-comment">#reset</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">currentNeighbors</tt> <tt class="py-op">=</tt> <tt class="py-string">"0"</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">currentNeighbors</tt> <tt class="py-op">=</tt> <tt class="py-string">"a"</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">testCMD</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt><tt class="py-number">0</tt><tt class="py-op">,</tt><tt class="py-number">0</tt><tt class="py-op">,</tt><tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">warmUp</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'warmUp'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-name">sampleSize</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'sampleSize'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-name">switches</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'switches'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">neighborList</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'neighbors'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">testCMD</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'testCMD0'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-name">testCMD</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'testCMD1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'max'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-name">cooldown</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cooldown'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-name">BENCHIp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BENCH'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ip1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-name">BENCHUser</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BENCH'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'user'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">MN1Ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MN'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ip1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-name">homeDir</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-43', 'path', 'link-0');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">expanduser</tt><tt class="py-op">(</tt><tt class="py-string">'~'</tt><tt class="py-op">)</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">flowRuleBackup</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'enableFlowRuleStoreBackup'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-44', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Flow Rule Backup is set to:"</tt> <tt class="py-op">+</tt> <tt class="py-name">flowRuleBackup</tt><tt class="py-op">)</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">servers</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">neighborList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-string">'0'</tt><tt class="py-op">]</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">currentNeighbors</tt> <tt class="py-op">=</tt> <tt class="py-string">"r"</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">currentNeighbors</tt> <tt class="py-op">==</tt> <tt class="py-string">"a"</tt><tt class="py-op">:</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-name">neighborList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">currentNeighbors</tt> <tt class="py-op">=</tt> <tt class="py-string">"r"</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-name">neighborList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-string">'0'</tt><tt class="py-op">]</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-45', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"neightborlist: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">neighborList</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">ts</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-name">st</tt> <tt class="py-op">=</tt> <tt class="py-name">datetime</tt><tt class="py-op">.</tt><tt class="py-name">datetime</tt><tt class="py-op">.</tt><tt class="py-name">fromtimestamp</tt><tt class="py-op">(</tt><tt class="py-name">ts</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt><tt class="py-string">'%Y-%m-%d %H:%M:%S'</tt><tt class="py-op">)</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">n</tt> <tt class="py-keyword">in</tt> <tt class="py-name">neighborList</tt><tt class="py-op">:</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-46', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-47', 'step', 'link-6');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"\tSTARTING TEST"</tt><tt class="py-op">)</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-48', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-49', 'step', 'link-6');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"\tLOADING FROM SERVERS: \t"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-50', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-51', 'step', 'link-6');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"\tNEIGHBORS:\t"</tt> <tt class="py-op">+</tt> <tt class="py-name">n</tt> <tt class="py-op">)</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-52', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"============================================================="</tt><tt class="py-op">)</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-53', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"============================================================="</tt><tt class="py-op">)</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-comment">#write file to configure nil link</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">ipCSV</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt> <tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-name">tempstr</tt> <tt class="py-op">=</tt> <tt class="py-string">"ip"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-name">ipCSV</tt> <tt class="py-op">+=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-name">tempstr</tt> <tt class="py-op">]</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op"><</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-name">ipCSV</tt> <tt class="py-op">+=</tt><tt class="py-string">","</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">3</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosCfgSet"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-54', 'onosCfgSet', 'link-54');">onosCfgSet</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"org.onosproject.provider.nil.NullProviders"</tt><tt class="py-op">,</tt> <tt class="py-string">"deviceCount 35"</tt><tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-55', 'onosCfgSet', 'link-54');">onosCfgSet</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"org.onosproject.provider.nil.NullProviders"</tt><tt class="py-op">,</tt> <tt class="py-string">"topoShape linear"</tt><tt class="py-op">)</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-56', 'onosCfgSet', 'link-54');">onosCfgSet</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"org.onosproject.provider.nil.NullProviders"</tt><tt class="py-op">,</tt> <tt class="py-string">"enabled true"</tt><tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-57', 'sendline', 'link-57');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 summary"</tt><tt class="py-op">)</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-name">check</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-58', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"\nStart up check: \n"</tt> <tt class="py-op">+</tt> <tt class="py-name">check</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"SCC(s)=1,"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">check</tt><tt class="py-op">:</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-comment">#devide flows</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt id="link-59" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#flows,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#flows"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-59', 'flows', 'link-59');">flows</a></tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'flows'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-60', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Flow Target = "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-61" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-61', 'flows', 'link-59');">flows</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt id="link-62" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-62', 'flows', 'link-59');">flows</a></tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt id="link-63" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-63', 'flows', 'link-59');">flows</a></tt> <tt class="py-op">*</tt><tt class="py-name">max</tt><tt class="py-op">(</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">,</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">servers</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">/</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">*</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">servers</tt><tt class="py-op">)</tt><tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-name">switches</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-64', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Flows per switch = "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-65" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-65', 'flows', 'link-59');">flows</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-comment">#build list of servers in "$OC1, $OC2...." format</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-name">serverEnvVars</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt> <tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">servers</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">serverEnvVars</tt> <tt class="py-op">+=</tt> <tt class="py-op">(</tt><tt class="py-string">"-s "</tt> <tt class="py-op">+</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt><tt class="py-op">)</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">[</tt><tt class="py-string">""</tt><tt class="py-op">]</tt><tt class="py-op">*</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">servers</tt><tt class="py-op">)</tt><tt class="py-op">]</tt><tt class="py-op">*</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">sampleSize</tt><tt class="py-op">)</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-name">maxes</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-string">""</tt><tt class="py-op">]</tt><tt class="py-op">*</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">sampleSize</tt><tt class="py-op">)</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-name">flowCMD</tt> <tt class="py-op">=</tt> <tt class="py-string">"python3 "</tt> <tt class="py-op">+</tt> <tt class="py-name">homeDir</tt> <tt class="py-op">+</tt> <tt class="py-string">"/onos/tools/test/bin/"</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-name">flowCMD</tt> <tt class="py-op">+=</tt> <tt class="py-name">testCMD</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-66" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows" class="py-name" href="#" onclick="return doclink('link-66', 'flows', 'link-59');">flows</a></tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">testCMD</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">flowCMD</tt> <tt class="py-op">+=</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">serverEnvVars</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"-j"</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-67', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">flowCMD</tt><tt class="py-op">)</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-comment">#time.sleep(60)</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">test</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">warmUp</tt> <tt class="py-op">+</tt> <tt class="py-name">sampleSize</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">test</tt> <tt class="py-op"><</tt> <tt class="py-name">warmUp</tt><tt class="py-op">:</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-68', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Warm up "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">test</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">warmUp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-69" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-69', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"====== Test run: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">test</tt><tt class="py-op">-</tt><tt class="py-name">warmUp</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ======"</tt><tt class="py-op">)</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-70', 'sendline', 'link-57');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">flowCMD</tt><tt class="py-op">)</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-name">rawResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-71', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Raw results: \n"</tt> <tt class="py-op">+</tt> <tt class="py-name">rawResult</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"failed"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">rawResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-72', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"FLOW_TESTER.PY FAILURE"</tt><tt class="py-op">)</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-73', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">" \n"</tt> <tt class="py-op">+</tt> <tt class="py-name">rawResult</tt> <tt class="py-op">+</tt> <tt class="py-string">" \n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-74', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"======================================================="</tt><tt class="py-op">)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-75', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">" ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"LOG REPORT"</tt><tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-76', 'logReport', 'link-41');">logReport</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> <tt class="py-string">"WARNING"</tt><tt class="py-op">,</tt> <tt class="py-string">"EXCEPT"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">outputMode</tt><tt class="py-op">=</tt><tt class="py-string">"d"</tt><tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-77', 'sendline', 'link-57');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 flows"</tt><tt class="py-op">)</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-78', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt><tt class="py-op">)</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-comment">########################################################################################</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-string">""</tt><tt class="py-op">]</tt><tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-comment">#print("rawResult: " + rawResult)</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-name">rawResult</tt> <tt class="py-op">=</tt> <tt class="py-name">rawResult</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">rawResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-comment">#print("line: " + line)</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt> <tt class="py-keyword">and</tt> <tt class="py-string">"server"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt><tt class="py-op">:</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">word</tt> <tt class="py-keyword">in</tt> <tt class="py-name">temp</tt><tt class="py-op">:</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-comment">#print ("word: " + word)</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"elapsed"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt><tt class="py-name">word</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">temp</tt><tt class="py-op">.</tt><tt class="py-name">index</tt><tt class="py-op">(</tt><tt class="py-name">word</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-name">myParsed</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">temp</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-name">myParsed</tt> <tt class="py-op">=</tt> <tt class="py-name">myParsed</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"}"</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-name">myParsed</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">myParsed</tt><tt class="py-op">)</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-name">result</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">myParsed</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-79', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" : "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">myParsed</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">test</tt> <tt class="py-op">>=</tt> <tt class="py-name">warmUp</tt><tt class="py-op">:</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">result</tt><tt class="py-op">:</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-string">""</tt><tt class="py-op">:</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-80', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-81" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-81', 'error', 'link-81');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">"Missing data point, critical failure incoming"</tt><tt class="py-op">)</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">result</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-name">maxes</tt><tt class="py-op">[</tt><tt class="py-name">test</tt><tt class="py-op">-</tt><tt class="py-name">warmUp</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">max</tt><tt class="py-op">(</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-82', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Data collection iteration: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">test</tt><tt class="py-op">-</tt><tt class="py-name">warmUp</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" of "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">sampleSize</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-83', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Throughput time: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">maxes</tt><tt class="py-op">[</tt><tt class="py-name">test</tt><tt class="py-op">-</tt><tt class="py-name">warmUp</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"(ms)"</tt><tt class="py-op">)</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-name">test</tt><tt class="py-op">-</tt><tt class="py-name">warmUp</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">result</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-comment"># wait for flows = 0</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">checkCount</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt><tt class="py-number">5</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-84', 'sendline', 'link-57');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 summary"</tt><tt class="py-op">)</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-name">flowCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"flows=0,"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">flowCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-85', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Flows removed"</tt><tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">flowCheck</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"flows="</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt><tt class="py-op">:</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-86', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Current Summary: "</tt> <tt class="py-op">+</tt> <tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">checkCount</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-87', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Flows are stuck, moving on "</tt><tt class="py-op">)</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-88', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"raw data: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-89', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"maxes:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">maxes</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-comment"># report data</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt><tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-90', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"\t Results (measurments are in milliseconds)"</tt><tt class="py-op">)</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt><tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-name">nodeString</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">servers</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"> <tt class="py-name">nodeString</tt> <tt class="py-op">+=</tt> <tt class="py-op">(</tt><tt class="py-string">"\tNode "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">test</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">sampleSize</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-91', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"\t Test iteration "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">test</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-92', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"\t------------------"</tt><tt class="py-op">)</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-93', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">nodeString</tt><tt class="py-op">)</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">servers</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-op">(</tt><tt class="py-string">"\t"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-name">test</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-94', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">resultString</tt><tt class="py-op">)</tt> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt><tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"> <tt class="py-name">avgOfMaxes</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">maxes</tt><tt class="py-op">)</tt> </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-95', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Average of max value from each test iteration: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">avgOfMaxes</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> <tt class="py-name">stdOfMaxes</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">maxes</tt><tt class="py-op">)</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-96', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Standard Deviation of max values: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">stdOfMaxes</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt><tt class="py-string">"\n\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> <tt class="py-name">avgTP</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'flows'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">/</tt> <tt class="py-name">avgOfMaxes</tt> <tt class="py-comment">#result in kflows/second</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> <tt class="py-name">tp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">maxes</tt><tt class="py-op">:</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> <tt class="py-name">tp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'flows'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">/</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-name">stdTP</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">tp</tt><tt class="py-op">)</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-97', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Average thoughput: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">avgTP</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" Kflows/second"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-98', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Standard deviation of throughput: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">stdTP</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" Kflows/second"</tt><tt class="py-op">)</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> <tt class="py-name">resultsLog</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-string">"/tmp/flowTP1gDB"</tt><tt class="py-op">,</tt><tt class="py-string">"a"</tt><tt class="py-op">)</tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-string">"'"</tt> <tt class="py-op">+</tt> <tt class="py-name">commit</tt> <tt class="py-op">+</tt> <tt class="py-string">"',"</tt><tt class="py-op">)</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-op">(</tt><tt class="py-string">"'1gig',"</tt><tt class="py-op">)</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'flows'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">avgTP</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">stdTP</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"> <tt class="py-name">resultsLog</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">resultString</tt><tt class="py-op">)</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"> <tt class="py-name">resultsLog</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> </tt>
-<a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-99', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"Result line to file: "</tt> <tt class="py-op">+</tt> <tt class="py-name">resultString</tt><tt class="py-op">)</tt> </tt>
-<a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-100', 'logReport', 'link-41');">logReport</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> <tt class="py-string">"WARNING"</tt><tt class="py-op">,</tt> <tt class="py-string">"EXCEPT"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">outputMode</tt><tt class="py-op">=</tt><tt class="py-string">"d"</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html
deleted file mode 100644
index 7e6de95..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html
+++ /dev/null
@@ -1,185 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFflowTp1g-module.html">Package SCPFflowTp1g</a> ::
- <a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html">Module SCPFflowTp1g</a> ::
- Class SCPFflowTp1g
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SCPFflowTp1g</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-pysrc.html#SCPFflowTp1g">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-pysrc.html#SCPFflowTp1g.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1"></a><span class="summary-sig-name">CASE1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-pysrc.html#SCPFflowTp1g.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE2"></a><span class="summary-sig-name">CASE2</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-pysrc.html#SCPFflowTp1g.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentEventTp-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentEventTp-module.html
deleted file mode 100644
index 2007fe5..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentEventTp-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFintentEventTp</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SCPFintentEventTp
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFintentEventTp-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package SCPFintentEventTp</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFintentEventTp-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html">TestON.tests.SCPFintentEventTp.SCPFintentEventTp</a></strong> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentEventTp-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentEventTp-pysrc.html
deleted file mode 100644
index d210d1c..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentEventTp-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFintentEventTp</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SCPFintentEventTp
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFintentEventTp-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SCPFintentEventTp-module.html">Package TestON.tests.SCPFintentEventTp</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html
deleted file mode 100644
index a34d6ea..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html
+++ /dev/null
@@ -1,166 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFintentEventTp.SCPFintentEventTp</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFintentEventTp-module.html">Package SCPFintentEventTp</a> ::
- Module SCPFintentEventTp
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module SCPFintentEventTp</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html" class="summary-name">SCPFintentEventTp</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.tests.SCPFintentEventTp'"><code class="variable-quote">'</code><code class="variable-string">TestON.tests.SCPFintentEventTp</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentEventTp.SCPFintentEventTp-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentEventTp.SCPFintentEventTp-pysrc.html
deleted file mode 100644
index a95aebc..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentEventTp.SCPFintentEventTp-pysrc.html
+++ /dev/null
@@ -1,468 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFintentEventTp.SCPFintentEventTp</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFintentEventTp-module.html">Package SCPFintentEventTp</a> ::
- Module SCPFintentEventTp
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html">Module TestON.tests.SCPFintentEventTp.SCPFintentEventTp</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># ScaleOutTemplate</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># CASE1 starts number of nodes specified in param file</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># cameron@onlab.us</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-0', 'path', 'link-0');">path</a></tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"> </tt>
-<a name="SCPFintentEventTp"></a><div id="SCPFintentEventTp-def"><a name="L12"></a><tt class="py-lineno"> 12</tt> <a class="py-toggle" href="#" id="SCPFintentEventTp-toggle" onclick="return toggle('SCPFintentEventTp');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html">SCPFintentEventTp</a><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFintentEventTp-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SCPFintentEventTp-expanded"><a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"> </tt>
-<a name="SCPFintentEventTp.__init__"></a><div id="SCPFintentEventTp.__init__-def"><a name="L14"></a><tt class="py-lineno"> 14</tt> <a class="py-toggle" href="#" id="SCPFintentEventTp.__init__-toggle" onclick="return toggle('SCPFintentEventTp.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFintentEventTp.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFintentEventTp.__init__-expanded"><a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-1', 'default', 'link-1');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"> </tt>
-<a name="SCPFintentEventTp.CASE1"></a><div id="SCPFintentEventTp.CASE1-def"><a name="L17"></a><tt class="py-lineno"> 17</tt> <a class="py-toggle" href="#" id="SCPFintentEventTp.CASE1-toggle" onclick="return toggle('SCPFintentEventTp.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#CASE1">CASE1</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFintentEventTp.CASE1-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFintentEventTp.CASE1-expanded"><a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-2', 'path', 'link-0');">path</a></tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">init</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">init</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">bool</tt><tt class="py-op">:</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">Fals</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt class="py-comment">#Load values from params file</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'checkout'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt id="link-3" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-3', 'gitPull', 'link-3');">gitPull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'autopull'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">Apps</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellApps'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">BENCHIp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BENCH'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ip1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">BENCHUser</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BENCH'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'user'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">MN1Ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MN'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ip1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'max'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">maxNodes</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">skipMvn</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'skipCleanInstall'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">numSwitches</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'numSwitches'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">flowRuleBU</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'flowRuleBUEnabled'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">homeDir</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-4', 'path', 'link-0');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">expanduser</tt><tt class="py-op">(</tt><tt class="py-string">'~'</tt><tt class="py-op">)</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">exceptions</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">*</tt><tt class="py-number">11</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">warnings</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">*</tt><tt class="py-number">11</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">errors</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">*</tt><tt class="py-number">11</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-comment"># -- INIT SECTION, ONLY RUNS ONCE -- #</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">init</tt> <tt class="py-op">==</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">clusterCount</tt> <tt class="py-comment">#number of nodes running</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-comment">#list of ONOS IP addresses</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">scale</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">commit</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getOnosIps"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps" class="py-name" href="#" onclick="return doclink('link-5', 'getOnosIps', 'link-5');">getOnosIps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">ONOSIp</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">onosIps</tt><tt class="py-op">.</tt><tt class="py-name">values</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">scale</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SCALE'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-comment">#Populate ONOSIp with ips from params</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps" class="py-name" href="#" onclick="return doclink('link-6', 'getOnosIps', 'link-5');">getOnosIps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-comment">#mvn clean install, for debugging set param 'skipCleanInstall' to yes to speed up test</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">skipMvn</tt> <tt class="py-op">!=</tt> <tt class="py-string">"yes"</tt><tt class="py-op">:</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">mvnResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cleanInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall" class="py-name" href="#" onclick="return doclink('link-7', 'cleanInstall', 'link-7');">cleanInstall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-comment">#git</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-8', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Git checkout and pull "</tt> <tt class="py-op">+</tt> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-9', 'gitPull', 'link-3');">gitPull</a></tt> <tt class="py-op">==</tt> <tt class="py-string">'on'</tt><tt class="py-op">:</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">checkoutResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitCheckout"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout" class="py-name" href="#" onclick="return doclink('link-10', 'gitCheckout', 'link-10');">gitCheckout</a></tt><tt class="py-op">(</tt> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">pullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-11', 'gitPull', 'link-3');">gitPull</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">checkoutResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">pullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-12', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Skipped git checkout and pull"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-13', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-14', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Grabbing commit number"</tt><tt class="py-op">)</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">commit</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion,Method TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion
-TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion" class="py-name" href="#" onclick="return doclink('link-15', 'getVersion', 'link-15');">getVersion</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">commit</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">commit</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-16', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-17', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Creating results file"</tt><tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-string">"/tmp/IntentEventTPDB"</tt><tt class="py-op">,</tt> <tt class="py-string">"w+"</tt><tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-comment"># -- END OF INIT SECTION --#</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-18', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-19', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Adjusting scale"</tt><tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">)</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">scale</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">MN1Ip</tt> <tt class="py-op">=</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">BENCHIp</tt> <tt class="py-op">=</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-comment">#kill off all onos processes</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-20', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-21', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Safety check, killing all ONOS processes"</tt><tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-22', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-23', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"before initiating enviornment setup"</tt><tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">maxNodes</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosDie"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie" class="py-name" href="#" onclick="return doclink('link-24', 'onosDie', 'link-24');">onosDie</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">MN1Ip</tt> <tt class="py-op">=</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-name">BENCHIp</tt> <tt class="py-op">=</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-comment">#Uninstall everywhere</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-25', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-26', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cleaning Enviornment..."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">maxNodes</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-27', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">" Uninstalling ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall" class="py-name" href="#" onclick="return doclink('link-28', 'onosUninstall', 'link-28');">onosUninstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-29', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Sleep 10 second for uninstall to settle..."</tt><tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-30', 'sendline', 'link-30');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-comment">#construct the cell file</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-31', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Creating cell file"</tt><tt class="py-op">)</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">cellIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt> <tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">cellIp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile" class="py-name" href="#" onclick="return doclink('link-32', 'createCellFile', 'link-32');">createCellFile</a></tt><tt class="py-op">(</tt><tt class="py-string">"localhost"</tt><tt class="py-op">,</tt><tt class="py-name">cellName</tt><tt class="py-op">,</tt><tt class="py-name">MN1Ip</tt><tt class="py-op">,</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">Apps</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">cellIp</tt><tt class="py-op">)</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-33', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Set Cell"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell,Method TestON.drivers.common.cli.onosdriver.OnosDriver.setCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell" class="py-name" href="#" onclick="return doclink('link-34', 'setCell', 'link-34');">setCell</a></tt><tt class="py-op">(</tt><tt class="py-name">cellName</tt><tt class="py-op">)</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">myDistribution</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt> <tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">myDistribution</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">numSwitches</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-35', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Creating ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">packageResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage" class="py-name" href="#" onclick="return doclink('link-36', 'onosPackage', 'link-36');">onosPackage</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-37', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"verify cells"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">verifyCellResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell" class="py-name" href="#" onclick="return doclink('link-38', 'verifyCell', 'link-38');">verifyCell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-39', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Initializeing "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" node cluster."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-40', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Starting ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" at IP: "</tt> <tt class="py-op">+</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall" class="py-name" href="#" onclick="return doclink('link-41', 'onosInstall', 'link-41');">onosInstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt id="link-42" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.isup()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-42', 'isup', 'link-42');">isup</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-43', 'isup', 'link-42');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-44" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-44', 'isup', 'link-42');">isup</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-45', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is up\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt id="link-46" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-46', 'isup', 'link-42');">isup</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-47', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" didn't start!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-48', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Startup sequence complete"</tt><tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">20</tt><tt class="py-op">)</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosCfgSet"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-49', 'onosCfgSet', 'link-49');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"org.onosproject.store.flow.impl.NewDistributedFlowRuleStore"</tt><tt class="py-op">,</tt> <tt class="py-string">"backupEnabled false"</tt><tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt id="link-50" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#devices"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-50', 'devices', 'link-50');">devices</a></tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">*</tt><tt class="py-number">10</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-51', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-52', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Setting up null provider"</tt><tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">3</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-53', 'onosCfgSet', 'link-49');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"org.onosproject.provider.nil.NullProviders"</tt><tt class="py-op">,</tt> <tt class="py-string">"deviceCount "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-54" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-54', 'devices', 'link-50');">devices</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-55', 'onosCfgSet', 'link-49');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"org.onosproject.provider.nil.NullProviders"</tt><tt class="py-op">,</tt> <tt class="py-string">"topoShape linear"</tt><tt class="py-op">)</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-56', 'onosCfgSet', 'link-49');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"org.onosproject.provider.nil.NullProviders"</tt><tt class="py-op">,</tt> <tt class="py-string">"enabled true"</tt><tt class="py-op">)</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-57', 'sendline', 'link-30');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 summary"</tt><tt class="py-op">)</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">before</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">"devices="</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-58" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-58', 'devices', 'link-50');">devices</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">before</tt><tt class="py-op">:</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-59', 'sendline', 'link-30');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"""onos $OC1 "balance-masters" """</tt><tt class="py-op">)</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">lastOutput</tt> <tt class="py-op">=</tt> <tt class="py-string">"--"</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-name">origin</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-name">clockStarted</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-60', 'sendline', 'link-30');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-61', 'sendline', 'link-30');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 summary"</tt><tt class="py-op">)</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-62', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"before"</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt><tt class="py-op">)</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">clusterCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt><tt class="py-string">"\nBefore: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCheck</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">"SCC(s)=1,"</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">clusterCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">clusterCheck</tt> <tt class="py-op">!=</tt> <tt class="py-name">lastOutput</tt><tt class="py-op">:</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-name">sameOutput</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">clusterCheck</tt> <tt class="py-op">==</tt> <tt class="py-name">lastOutput</tt><tt class="py-op">:</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">clockStarted</tt> <tt class="py-op">==</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-name">start</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-name">clockStarted</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-op">(</tt><tt class="py-name">start</tt> <tt class="py-op">+</tt> <tt class="py-number">30</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-63', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt id="link-64" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-64', 'error', 'link-64');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">"TIMEOUT EXCEEDED: Clusters have not converged, continuing anyway..."</tt><tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-name">lastOutput</tt> <tt class="py-op">=</tt> <tt class="py-name">clusterCheck</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.logReport()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#logReport"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-65', 'logReport', 'link-65');">logReport</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> <tt class="py-string">"WARNING"</tt><tt class="py-op">,</tt> <tt class="py-string">"EXCEPT"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-</div><a name="SCPFintentEventTp.CASE2"></a><div id="SCPFintentEventTp.CASE2-def"><a name="L209"></a><tt class="py-lineno">209</tt> <a class="py-toggle" href="#" id="SCPFintentEventTp.CASE2-toggle" onclick="return toggle('SCPFintentEventTp.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#CASE2">CASE2</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFintentEventTp.CASE2-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFintentEventTp.CASE2-expanded"><a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">string</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">csv</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">numpy</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-66', 'path', 'link-0');">path</a></tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">currentNeighbors</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-name">neighbors</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-name">currentNeighbors</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">:</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-name">currentNeighbors</tt> <tt class="py-op">=</tt> <tt class="py-string">"0"</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-name">neighbors</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-string">'0'</tt><tt class="py-op">]</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">currentNeighbors</tt> <tt class="py-op">==</tt> <tt class="py-string">"r"</tt><tt class="py-op">:</tt> <tt class="py-comment">#reset</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-name">currentNeighbors</tt> <tt class="py-op">=</tt> <tt class="py-string">"a"</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-name">neighbors</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-string">'0'</tt><tt class="py-op">]</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-name">currentNeighbors</tt> <tt class="py-op">=</tt> <tt class="py-string">"r"</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-name">neighbors</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-string">'a'</tt><tt class="py-op">]</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-name">currentNeighbors</tt> <tt class="py-op">=</tt> <tt class="py-string">"r"</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-67', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Cluster Count = "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-name">intentsRate</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'METRICS'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'intents_rate'</tt><tt class="py-op">]</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">intentsWithdrawn</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'METRICS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'intents_withdrawn'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-name">intentsFailed</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'METRICS'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'intents_failed'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">testDuration</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'duration'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-name">logInterval</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'log_interval'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-name">debug</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'debugMode'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-name">numKeys</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'numKeys'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-name">cyclePeriod</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cyclePeriod'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-comment">#neighbors = (main.params[ 'TEST' ][ 'neighbors' ]).split(",")</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-name">metricList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">intentsRate</tt><tt class="py-op">,</tt> <tt class="py-name">intentsWithdrawn</tt><tt class="py-op">,</tt> <tt class="py-name">intentsFailed</tt><tt class="py-op">]</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">n</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">neighbors</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">neighbors</tt><tt class="py-op">[</tt><tt class="py-name">n</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'a'</tt><tt class="py-op">:</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-name">neighbors</tt><tt class="py-op">[</tt><tt class="py-name">n</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-name">neighbors</tt> <tt class="py-op">=</tt> <tt class="py-name">neighbors</tt><tt class="py-op">.</tt><tt class="py-name">pop</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">n</tt> <tt class="py-keyword">in</tt> <tt class="py-name">neighbors</tt><tt class="py-op">:</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-68', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Run with "</tt> <tt class="py-op">+</tt> <tt class="py-name">n</tt> <tt class="py-op">+</tt> <tt class="py-string">" neighbors"</tt><tt class="py-op">)</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-69" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-69', 'sendline', 'link-30');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 cfg set org.onosproject.intentperf.IntentPerfInstaller numKeys "</tt> <tt class="py-op">+</tt> <tt class="py-name">numKeys</tt> <tt class="py-op">)</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-70', 'sendline', 'link-30');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 cfg set org.onosproject.intentperf.IntentPerfInstaller numNeighbors "</tt> <tt class="py-op">+</tt> <tt class="py-name">n</tt> <tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-71', 'sendline', 'link-30');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 cfg set org.onosproject.intentperf.IntentPerfInstaller cyclePeriod "</tt> <tt class="py-op">+</tt> <tt class="py-name">cyclePeriod</tt> <tt class="py-op">)</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos $OC1 intent-perf-start"</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-72', 'sendline', 'link-30');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-73', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Starting ONOS (all nodes) intent-perf from $OC1"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-74', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Starting test loop for "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">testDuration</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" seconds...\n"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt id="link-75" class="py-name" targets="Method TestON.bin.cli.TestThread.stop()=TestON.bin.cli.TestThread-class.html#stop"><a title="TestON.bin.cli.TestThread.stop" class="py-name" href="#" onclick="return doclink('link-75', 'stop', 'link-75');">stop</a></tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">testDuration</tt> <tt class="py-op">)</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op"><</tt> <tt id="link-76" class="py-name"><a title="TestON.bin.cli.TestThread.stop" class="py-name" href="#" onclick="return doclink('link-76', 'stop', 'link-75');">stop</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt> <tt class="py-name">logInterval</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-name">groupResult</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt> <tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-name">groupResult</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">" onos-ssh $OC"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">""" cat /opt/onos/log/karaf.log | grep "SNAPSHOT | Throughput" | tail -1 """</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-77', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"COMMAND: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-78', 'sendline', 'link-30');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">6</tt><tt class="py-op">)</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-name">raw</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"OVERALL="</tt> <tt class="py-keyword">in</tt> <tt class="py-name">raw</tt><tt class="py-op">:</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">x</tt> <tt class="py-op">></tt> <tt class="py-number">10</tt><tt class="py-op">:</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-79', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-80', 'error', 'link-64');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">"Expected output not being recieved... continuing"</tt><tt class="py-op">)</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-name">raw</tt> <tt class="py-op">=</tt> <tt class="py-name">raw</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-name">splitResults</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">raw</tt><tt class="py-op">:</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-name">splitResults</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">myResult</tt> <tt class="py-op">=</tt> <tt class="py-string">"--"</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">field</tt> <tt class="py-keyword">in</tt> <tt class="py-name">splitResults</tt><tt class="py-op">:</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"OVERALL"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">field</tt><tt class="py-op">:</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-name">myResult</tt> <tt class="py-op">=</tt> <tt class="py-name">field</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">myResult</tt> <tt class="py-op">==</tt> <tt class="py-string">"--"</tt><tt class="py-op">:</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-81', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-82', 'error', 'link-64');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">"Parsing/Pexpect error\n"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">splitResults</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-name">myResult</tt> <tt class="py-op">=</tt> <tt class="py-name">myResult</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">";"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-name">myResult</tt> <tt class="py-op">=</tt> <tt class="py-name">myResult</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"OVERALL="</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-name">myResult</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">myResult</tt><tt class="py-op">)</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-name">groupResult</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">groupResult</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">myResult</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-83', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Node "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" overall rate: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">myResult</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-name">clusterTotal</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">sum</tt><tt class="py-op">(</tt><tt class="py-name">groupResult</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-84', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"Results from this round of polling: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">groupResult</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-85', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"Cluster Total: "</tt> <tt class="py-op">+</tt> <tt class="py-name">clusterTotal</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos $OC1 intent-perf-stop"</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-86', 'sendline', 'link-30');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-87', 'log', 'link-12');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Stopping intentperf"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-string">"/tmp/IntentEventTPDB"</tt><tt class="py-op">,</tt> <tt class="py-string">"a"</tt><tt class="py-op">)</tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">groupResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">"'"</tt> <tt class="py-op">+</tt> <tt class="py-name">commit</tt> <tt class="py-op">+</tt> <tt class="py-string">"',"</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-string">"'1gig',"</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-string">"'baremetal"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">groupResult</tt><tt class="py-op">.</tt><tt class="py-name">index</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"',"</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-name">n</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> <tt class="py-comment">#no stddev</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">resultString</tt><tt class="py-op">)</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-88', 'logReport', 'link-65');">logReport</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> <tt class="py-string">"WARNING"</tt><tt class="py-op">,</tt> <tt class="py-string">"EXCEPT"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:37 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html
deleted file mode 100644
index 1efedec..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html
+++ /dev/null
@@ -1,185 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFintentEventTp-module.html">Package SCPFintentEventTp</a> ::
- <a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html">Module SCPFintentEventTp</a> ::
- Class SCPFintentEventTp
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SCPFintentEventTp</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-pysrc.html#SCPFintentEventTp">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-pysrc.html#SCPFintentEventTp.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1"></a><span class="summary-sig-name">CASE1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-pysrc.html#SCPFintentEventTp.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE2"></a><span class="summary-sig-name">CASE2</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-pysrc.html#SCPFintentEventTp.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentInstallWithdrawLat-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentInstallWithdrawLat-module.html
deleted file mode 100644
index b7353dd..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentInstallWithdrawLat-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFintentInstallWithdrawLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SCPFintentInstallWithdrawLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFintentInstallWithdrawLat-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package SCPFintentInstallWithdrawLat</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFintentInstallWithdrawLat-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html">TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat</a></strong> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentInstallWithdrawLat-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentInstallWithdrawLat-pysrc.html
deleted file mode 100644
index baecf93..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentInstallWithdrawLat-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFintentInstallWithdrawLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SCPFintentInstallWithdrawLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFintentInstallWithdrawLat-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SCPFintentInstallWithdrawLat-module.html">Package TestON.tests.SCPFintentInstallWithdrawLat</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:39 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html
deleted file mode 100644
index f90d500..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html
+++ /dev/null
@@ -1,166 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFintentInstallWithdrawLat-module.html">Package SCPFintentInstallWithdrawLat</a> ::
- Module SCPFintentInstallWithdrawLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module SCPFintentInstallWithdrawLat</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html" class="summary-name">SCPFintentInstallWithdrawLat</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.tests.SCPFintentInstallWithdrawLat'"><code class="variable-quote">'</code><code class="variable-string">TestON.tests.SCPFintentInstallWithdrawLat</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-pysrc.html
deleted file mode 100644
index 62aea8b..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-pysrc.html
+++ /dev/null
@@ -1,427 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFintentInstallWithdrawLat-module.html">Package SCPFintentInstallWithdrawLat</a> ::
- Module SCPFintentInstallWithdrawLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html">Module TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># ScaleOutTemplate</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># CASE1 starts number of nodes specified in param file</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># cameron@onlab.us</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-0', 'path', 'link-0');">path</a></tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"> </tt>
-<a name="SCPFintentInstallWithdrawLat"></a><div id="SCPFintentInstallWithdrawLat-def"><a name="L11"></a><tt class="py-lineno"> 11</tt> <a class="py-toggle" href="#" id="SCPFintentInstallWithdrawLat-toggle" onclick="return toggle('SCPFintentInstallWithdrawLat');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html">SCPFintentInstallWithdrawLat</a><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFintentInstallWithdrawLat-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SCPFintentInstallWithdrawLat-expanded"><a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"> </tt>
-<a name="SCPFintentInstallWithdrawLat.__init__"></a><div id="SCPFintentInstallWithdrawLat.__init__-def"><a name="L13"></a><tt class="py-lineno"> 13</tt> <a class="py-toggle" href="#" id="SCPFintentInstallWithdrawLat.__init__-toggle" onclick="return toggle('SCPFintentInstallWithdrawLat.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFintentInstallWithdrawLat.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFintentInstallWithdrawLat.__init__-expanded"><a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-1', 'default', 'link-1');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"> </tt>
-<a name="SCPFintentInstallWithdrawLat.CASE1"></a><div id="SCPFintentInstallWithdrawLat.CASE1-def"><a name="L16"></a><tt class="py-lineno"> 16</tt> <a class="py-toggle" href="#" id="SCPFintentInstallWithdrawLat.CASE1-toggle" onclick="return toggle('SCPFintentInstallWithdrawLat.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#CASE1">CASE1</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFintentInstallWithdrawLat.CASE1-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFintentInstallWithdrawLat.CASE1-expanded"><a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">init</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">init</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">bool</tt><tt class="py-op">:</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> <tt class="py-comment">#Load values from params file</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'checkout'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt id="link-2" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-2', 'gitPull', 'link-2');">gitPull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'autopull'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-name">Apps</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellApps'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-name">BENCHIp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BENCH'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ip1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-name">BENCHUser</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BENCH'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'user'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">MN1Ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MN'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ip1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'max'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">skipMvn</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'skipCleanInstall'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">switchCount</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'switchCount'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-comment"># -- INIT SECTION, ONLY RUNS ONCE -- #</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">init</tt> <tt class="py-op">==</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">clusterCount</tt> <tt class="py-comment">#number of nodes running</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-comment">#list of ONOS IP addresses</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">scale</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">commit</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">scale</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SCALE'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-comment">#Populate ONOSIp with ips from params</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getOnosIps"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps" class="py-name" href="#" onclick="return doclink('link-3', 'getOnosIps', 'link-3');">getOnosIps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-comment">#mvn clean install, for debugging set param 'skipCleanInstall' to yes to speed up test</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">skipMvn</tt> <tt class="py-op">!=</tt> <tt class="py-string">"yes"</tt><tt class="py-op">:</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-name">mvnResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cleanInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall" class="py-name" href="#" onclick="return doclink('link-4', 'cleanInstall', 'link-4');">cleanInstall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-comment">#git</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-5', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Git checkout and pull "</tt> <tt class="py-op">+</tt> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-6', 'gitPull', 'link-2');">gitPull</a></tt> <tt class="py-op">==</tt> <tt class="py-string">'on'</tt><tt class="py-op">:</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">checkoutResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitCheckout"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout" class="py-name" href="#" onclick="return doclink('link-7', 'gitCheckout', 'link-7');">gitCheckout</a></tt><tt class="py-op">(</tt> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">pullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-8', 'gitPull', 'link-2');">gitPull</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">checkoutResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">pullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Skipped git checkout and pull"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">commit</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion,Method TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion
-TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion" class="py-name" href="#" onclick="return doclink('link-10', 'getVersion', 'link-10');">getVersion</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">commit</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">commit</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-string">"/tmp/IntentInstallWithdrawLatDB"</tt><tt class="py-op">,</tt> <tt class="py-string">"w+"</tt><tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-comment"># -- END OF INIT SECTION --#</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">scale</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-comment">#kill off all onos processes</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-11', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-12', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Safety check, killing all ONOS processes"</tt><tt class="py-op">)</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-13', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-14', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"before initiating enviornment setup"</tt><tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosDie"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie" class="py-name" href="#" onclick="return doclink('link-15', 'onosDie', 'link-15');">onosDie</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-comment">#Uninstall everywhere</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-16', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-17', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cleaning Enviornment..."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-18', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">" Uninstalling ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall" class="py-name" href="#" onclick="return doclink('link-19', 'onosUninstall', 'link-19');">onosUninstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-comment">#construct the cell file</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-20', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Creating cell file"</tt><tt class="py-op">)</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">cellIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt> <tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">cellIp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile" class="py-name" href="#" onclick="return doclink('link-21', 'createCellFile', 'link-21');">createCellFile</a></tt><tt class="py-op">(</tt><tt class="py-name">BENCHIp</tt><tt class="py-op">,</tt><tt class="py-name">cellName</tt><tt class="py-op">,</tt><tt class="py-name">MN1Ip</tt><tt class="py-op">,</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">Apps</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">cellIp</tt><tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-22', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Set Cell"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell,Method TestON.drivers.common.cli.onosdriver.OnosDriver.setCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell" class="py-name" href="#" onclick="return doclink('link-23', 'setCell', 'link-23');">setCell</a></tt><tt class="py-op">(</tt><tt class="py-name">cellName</tt><tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-24', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Creating ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">packageResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage" class="py-name" href="#" onclick="return doclink('link-25', 'onosPackage', 'link-25');">onosPackage</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-26', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"verify cells"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-name">verifyCellResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell" class="py-name" href="#" onclick="return doclink('link-27', 'verifyCell', 'link-27');">verifyCell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-28', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Initializeing "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" node cluster."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-29', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Starting ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" at IP: "</tt> <tt class="py-op">+</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall" class="py-name" href="#" onclick="return doclink('link-30', 'onosInstall', 'link-30');">onosInstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt id="link-31" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.isup()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-31', 'isup', 'link-31');">isup</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-32', 'isup', 'link-31');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-33" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-33', 'isup', 'link-31');">isup</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-34', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is up\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt id="link-35" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-35', 'isup', 'link-31');">isup</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-36', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" didn't start!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOS1cli</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#startOnosCli"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli" class="py-name" href="#" onclick="return doclink('link-37', 'startOnosCli', 'link-37');">startOnosCli</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-38', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Startup sequence complete"</tt><tt class="py-op">)</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">30</tt><tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">3</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosCfgSet"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-39', 'onosCfgSet', 'link-39');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"org.onosproject.provider.nil.NullProviders"</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-string">"deviceCount "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">switchCount</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-40', 'onosCfgSet', 'link-39');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"org.onosproject.provider.nil.NullProviders"</tt><tt class="py-op">,</tt> <tt class="py-string">"topoShape linear"</tt><tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-41', 'onosCfgSet', 'link-39');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"org.onosproject.provider.nil.NullProviders"</tt><tt class="py-op">,</tt> <tt class="py-string">"enabled true"</tt><tt class="py-op">)</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.verifySummary()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifySummary"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.verifySummary" class="py-name" href="#" onclick="return doclink('link-42', 'verifySummary', 'link-42');">verifySummary</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">switchCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Failed- looping"</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-43', 'sendline', 'link-43');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"""onos $OC1 "balance-masters" """</tt><tt class="py-op">)</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.logReport()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#logReport"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-44', 'logReport', 'link-44');">logReport</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> <tt class="py-string">"WARNING"</tt><tt class="py-op">,</tt> <tt class="py-string">"EXCEPT"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> </tt>
-<a name="SCPFintentInstallWithdrawLat.CASE2"></a><div id="SCPFintentInstallWithdrawLat.CASE2-def"><a name="L143"></a><tt class="py-lineno">143</tt> <a class="py-toggle" href="#" id="SCPFintentInstallWithdrawLat.CASE2-toggle" onclick="return toggle('SCPFintentInstallWithdrawLat.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#CASE2">CASE2</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFintentInstallWithdrawLat.CASE2-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFintentInstallWithdrawLat.CASE2-expanded"><a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">numpy</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-name">testStatus</tt> <tt class="py-op">=</tt> <tt class="py-string">"pass"</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">sampleSize</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'sampleSize'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">warmUp</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'warmUp'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-name">intentsList</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'intents'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">switchCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'switchCount'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-name">debug</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'switchCount'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">intentsList</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">intentsList</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">intentsList</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-comment">######################</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-name">debug</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-comment">######################</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-name">linkCount</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-45', 'sendline', 'link-43');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 links|wc -l"</tt><tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-name">linkCount</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-46', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Link Count check: "</tt> <tt class="py-op">+</tt> <tt class="py-name">linkCount</tt><tt class="py-op">)</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">switchCount</tt><tt class="py-op">*</tt><tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">-</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">linkCount</tt><tt class="py-op">:</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt id="link-47" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#links,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#links"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-47', 'links', 'link-47');">links</a></tt> <tt class="py-op">=</tt> <tt class="py-string">"--"</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">8</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-48', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"top of loop"</tt><tt class="py-op">)</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-49', 'sendline', 'link-43');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 links"</tt><tt class="py-op">)</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt id="link-50" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-50', 'links', 'link-47');">links</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"=null:"</tt> <tt class="py-keyword">in</tt> <tt id="link-51" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-51', 'links', 'link-47');">links</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-52', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-53" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-53', 'links', 'link-47');">links</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">></tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-54', 'logReport', 'link-44');">logReport</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> <tt class="py-string">"WARNING"</tt><tt class="py-op">,</tt> <tt class="py-string">"EXCEPT"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"d"</tt><tt class="py-op">)</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">7</tt><tt class="py-op">:</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-55', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-56" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-56', 'error', 'link-56');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">"link data missing"</tt><tt class="py-op">)</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">3</tt><tt class="py-op">)</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt id="link-57" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-57', 'links', 'link-47');">links</a></tt> <tt class="py-op">=</tt> <tt id="link-58" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-58', 'links', 'link-47');">links</a></tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-name">templinks</tt> <tt class="py-op">=</tt> <tt id="link-59" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-59', 'links', 'link-47');">links</a></tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-name">tempDevices</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt id="link-60" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links" class="py-name" href="#" onclick="return doclink('link-60', 'links', 'link-47');">links</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">temp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"src="</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">temp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">temp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">"/"</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">tempDevices</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">temp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">tempDevices</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt id="link-61" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#devices"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-61', 'devices', 'link-61');">devices</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">tempDevices</tt><tt class="py-op">:</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"src=null"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">i</tt><tt class="py-op">:</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt id="link-62" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-62', 'devices', 'link-61');">devices</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"src="</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-63', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-64" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-64', 'devices', 'link-61');">devices</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-name">ingress</tt> <tt class="py-op">=</tt> <tt id="link-65" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-65', 'devices', 'link-61');">devices</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-name">egress</tt> <tt class="py-op">=</tt> <tt id="link-66" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-66', 'devices', 'link-61');">devices</a></tt><tt class="py-op">.</tt><tt class="py-name">pop</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-67', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">ingress</tt><tt class="py-op">)</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-68', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">egress</tt><tt class="py-op">)</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">intentSize</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsList</tt><tt class="py-op">:</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos $OC1 push-test-intents "</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-name">ingress</tt> <tt class="py-op">+</tt> <tt class="py-string">"/6 "</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-name">egress</tt> <tt class="py-op">+</tt> <tt class="py-string">"/5 "</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">intentSize</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" 1"</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-name">installed</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">withdrawn</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-69" class="py-name" targets="Method TestON.bin.cli.TestThread.run()=TestON.bin.cli.TestThread-class.html#run,Method TestON.core.Thread.Thread.run()=TestON.core.Thread.Thread-class.html#run,Method TestON.core.teston.TestON.run()=TestON.core.teston.TestON-class.html#run,Function TestON.tests.HAclusterRestart.dependencies.obelisk.run()=TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#run,Function TestON.tests.HAminorityRestart.dependencies.obelisk.run()=TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#run,Function TestON.tests.HAsanity.dependencies.obelisk.run()=TestON.tests.HAsanity.dependencies.obelisk-module.html#run,Function TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#run"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-69', 'run', 'link-69');">run</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">warmUp</tt> <tt class="py-op">+</tt> <tt class="py-name">sampleSize</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-70" class="py-name"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-70', 'run', 'link-69');">run</a></tt> <tt class="py-op">></tt> <tt class="py-name">warmUp</tt><tt class="py-op">:</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">myRawResult</tt> <tt class="py-op">=</tt> <tt class="py-string">"--"</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-string">"ms"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">myRawResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-71', 'sendline', 'link-43');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-name">myRawResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-72', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">myRawResult</tt><tt class="py-op">)</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-73', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">myRawResult</tt><tt class="py-op">)</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-74" class="py-name"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-74', 'run', 'link-69');">run</a></tt> <tt class="py-op">>=</tt> <tt class="py-name">warmUp</tt><tt class="py-op">:</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-name">myRawResult</tt> <tt class="py-op">=</tt> <tt class="py-name">myRawResult</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">myRawResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"install"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt><tt class="py-op">:</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-name">installed</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">5</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">myRawResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"withdraw"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt><tt class="py-op">:</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-name">withdrawn</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">5</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">myRawResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Failure:"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt><tt class="py-op">:</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-75', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-76', 'error', 'link-56');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">"INTENT TEST FAILURE, ABORTING TESTCASE"</tt><tt class="py-op">)</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-name">testStatus</tt> <tt class="py-op">=</tt> <tt class="py-string">"fail"</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">testStatus</tt> <tt class="py-op">==</tt> <tt class="py-string">"fail"</tt><tt class="py-op">:</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt><tt class="py-string">"installed: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">installed</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt><tt class="py-string">"withraw: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">withdrawn</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">withdrawn</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">withdrawn</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">></tt> <tt class="py-number">1000</tt> <tt class="py-keyword">or</tt> <tt class="py-name">installed</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">installed</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">></tt> <tt class="py-number">1000</tt><tt class="py-op">:</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-77', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ABNORMAL VALUE, CHECKING LOG"</tt><tt class="py-op">)</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-78', 'logReport', 'link-44');">logReport</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> <tt class="py-string">"WARNING"</tt><tt class="py-op">,</tt> <tt class="py-string">"EXCEPT"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">outputMode</tt><tt class="py-op">=</tt><tt class="py-string">"d"</tt><tt class="py-op">)</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">testStatus</tt> <tt class="py-op">==</tt> <tt class="py-string">"fail"</tt><tt class="py-op">:</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-79', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"----------------------------------------------------"</tt><tt class="py-op">)</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-80', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"Scale: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\tIntent batch size: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">intentSize</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-81', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"Data samples: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">sampleSize</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\tWarm up tests: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">warmUp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-82', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"Installed average: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">installed</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-83', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"Installed standard deviation: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">installed</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-84', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"Withdraw average: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">withdrawn</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-85', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"Withdraw standard deviation: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">withdrawn</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-86', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">=</tt> <tt class="py-string">"'"</tt> <tt class="py-op">+</tt> <tt class="py-name">commit</tt> <tt class="py-op">+</tt> <tt class="py-string">"',"</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">intentSize</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">installed</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">installed</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">withdrawn</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-name">resultString</tt> <tt class="py-op">+=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">withdrawn</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-string">"/tmp/IntentInstallWithdrawLatDB"</tt><tt class="py-op">,</tt> <tt class="py-string">"a"</tt><tt class="py-op">)</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">resultString</tt><tt class="py-op">)</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-87', 'logReport', 'link-44');">logReport</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> <tt class="py-string">"WARNING"</tt><tt class="py-op">,</tt> <tt class="py-string">"EXCEPT"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">20</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html
deleted file mode 100644
index 29d9071..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html
+++ /dev/null
@@ -1,185 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFintentInstallWithdrawLat-module.html">Package SCPFintentInstallWithdrawLat</a> ::
- <a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html">Module SCPFintentInstallWithdrawLat</a> ::
- Class SCPFintentInstallWithdrawLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SCPFintentInstallWithdrawLat</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-pysrc.html#SCPFintentInstallWithdrawLat">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-pysrc.html#SCPFintentInstallWithdrawLat.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1"></a><span class="summary-sig-name">CASE1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-pysrc.html#SCPFintentInstallWithdrawLat.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE2"></a><span class="summary-sig-name">CASE2</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-pysrc.html#SCPFintentInstallWithdrawLat.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentRerouteLat-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentRerouteLat-module.html
deleted file mode 100644
index bf73b99..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentRerouteLat-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFintentRerouteLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SCPFintentRerouteLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFintentRerouteLat-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package SCPFintentRerouteLat</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFintentRerouteLat-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html">TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat</a></strong> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentRerouteLat-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentRerouteLat-pysrc.html
deleted file mode 100644
index 2176d16..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentRerouteLat-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFintentRerouteLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SCPFintentRerouteLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFintentRerouteLat-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SCPFintentRerouteLat-module.html">Package TestON.tests.SCPFintentRerouteLat</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html
deleted file mode 100644
index fadb74a..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html
+++ /dev/null
@@ -1,166 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFintentRerouteLat-module.html">Package SCPFintentRerouteLat</a> ::
- Module SCPFintentRerouteLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module SCPFintentRerouteLat</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html" class="summary-name">SCPFintentRerouteLat</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'TestON.tests.SCPFintentRerouteLat'"><code class="variable-quote">'</code><code class="variable-string">TestON.tests.SCPFintentRerouteLat</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-pysrc.html
deleted file mode 100644
index 2e727a1..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-pysrc.html
+++ /dev/null
@@ -1,602 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFintentRerouteLat-module.html">Package SCPFintentRerouteLat</a> ::
- Module SCPFintentRerouteLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html">Module TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># ScaleOutTemplate</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># CASE1 starts number of nodes specified in param file</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># cameron@onlab.us</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-0', 'path', 'link-0');">path</a></tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"> </tt>
-<a name="SCPFintentRerouteLat"></a><div id="SCPFintentRerouteLat-def"><a name="L11"></a><tt class="py-lineno"> 11</tt> <a class="py-toggle" href="#" id="SCPFintentRerouteLat-toggle" onclick="return toggle('SCPFintentRerouteLat');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html">SCPFintentRerouteLat</a><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFintentRerouteLat-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SCPFintentRerouteLat-expanded"><a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"> </tt>
-<a name="SCPFintentRerouteLat.__init__"></a><div id="SCPFintentRerouteLat.__init__-def"><a name="L13"></a><tt class="py-lineno"> 13</tt> <a class="py-toggle" href="#" id="SCPFintentRerouteLat.__init__-toggle" onclick="return toggle('SCPFintentRerouteLat.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFintentRerouteLat.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFintentRerouteLat.__init__-expanded"><a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-1', 'default', 'link-1');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"> </tt>
-<a name="SCPFintentRerouteLat.CASE1"></a><div id="SCPFintentRerouteLat.CASE1-def"><a name="L16"></a><tt class="py-lineno"> 16</tt> <a class="py-toggle" href="#" id="SCPFintentRerouteLat.CASE1-toggle" onclick="return toggle('SCPFintentRerouteLat.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#CASE1">CASE1</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFintentRerouteLat.CASE1-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFintentRerouteLat.CASE1-expanded"><a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">init</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">init</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">bool</tt><tt class="py-op">:</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-comment">#Load values from params file</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'checkout'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt id="link-2" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-2', 'gitPull', 'link-2');">gitPull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'autopull'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-name">Apps</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellApps'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-name">BENCHUser</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BENCH'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'user'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">BENCHIp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BENCH'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ip1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">MN1Ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MN'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ip1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'max'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">skipMvn</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'skipCleanInstall'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-comment"># -- INIT SECTION, ONLY RUNS ONCE -- #</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">init</tt> <tt class="py-op">==</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">clusterCount</tt> <tt class="py-comment">#number of nodes running</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-comment">#list of ONOS IP addresses</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">scale</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">commit</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-number">0</tt> <tt class="py-op">]</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">scale</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SCALE'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-comment">#Populate ONOSIp with ips from params</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getOnosIps"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps" class="py-name" href="#" onclick="return doclink('link-3', 'getOnosIps', 'link-3');">getOnosIps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt><tt class="py-string">"-----------------"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-comment">#mvn clean install, for debugging set param 'skipCleanInstall' to yes to speed up test</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">skipMvn</tt> <tt class="py-op">!=</tt> <tt class="py-string">"yes"</tt><tt class="py-op">:</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">mvnResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cleanInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall" class="py-name" href="#" onclick="return doclink('link-4', 'cleanInstall', 'link-4');">cleanInstall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-comment">#git</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-5', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Git checkout and pull "</tt> <tt class="py-op">+</tt> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-6', 'gitPull', 'link-2');">gitPull</a></tt> <tt class="py-op">==</tt> <tt class="py-string">'on'</tt><tt class="py-op">:</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">checkoutResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitCheckout"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout" class="py-name" href="#" onclick="return doclink('link-7', 'gitCheckout', 'link-7');">gitCheckout</a></tt><tt class="py-op">(</tt> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">pullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-8', 'gitPull', 'link-2');">gitPull</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">checkoutResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">pullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-9', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Skipped git checkout and pull"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">commit</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion,Method TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion
-TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion" class="py-name" href="#" onclick="return doclink('link-10', 'getVersion', 'link-10');">getVersion</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">commit</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">commit</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-string">"/tmp/IntentRerouteLatDB"</tt><tt class="py-op">,</tt> <tt class="py-string">"w+"</tt><tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-comment"># -- END OF INIT SECTION --#</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">scale</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-comment">#kill off all onos processes</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-11', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-12', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Safety check, killing all ONOS processes"</tt><tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-13', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-14', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"before initiating enviornment setup"</tt><tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosDie"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie" class="py-name" href="#" onclick="return doclink('link-15', 'onosDie', 'link-15');">onosDie</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-comment">#Uninstall everywhere</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-16', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-17', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cleaning Enviornment..."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-18', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">" Uninstalling ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall" class="py-name" href="#" onclick="return doclink('link-19', 'onosUninstall', 'link-19');">onosUninstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-comment">#construct the cell file</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-20', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Creating cell file"</tt><tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">cellIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt> <tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">cellIp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile" class="py-name" href="#" onclick="return doclink('link-21', 'createCellFile', 'link-21');">createCellFile</a></tt><tt class="py-op">(</tt><tt class="py-name">BENCHIp</tt><tt class="py-op">,</tt><tt class="py-name">cellName</tt><tt class="py-op">,</tt><tt class="py-name">MN1Ip</tt><tt class="py-op">,</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">Apps</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">cellIp</tt><tt class="py-op">)</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-22', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Set Cell"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell,Method TestON.drivers.common.cli.onosdriver.OnosDriver.setCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell" class="py-name" href="#" onclick="return doclink('link-23', 'setCell', 'link-23');">setCell</a></tt><tt class="py-op">(</tt><tt class="py-name">cellName</tt><tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-24', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Creating ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">packageResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage" class="py-name" href="#" onclick="return doclink('link-25', 'onosPackage', 'link-25');">onosPackage</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-26', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"verify cells"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">verifyCellResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell" class="py-name" href="#" onclick="return doclink('link-27', 'verifyCell', 'link-27');">verifyCell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-28', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Initializing "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" node cluster."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-29', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Starting ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" at IP: "</tt> <tt class="py-op">+</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall" class="py-name" href="#" onclick="return doclink('link-30', 'onosInstall', 'link-30');">onosInstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt id="link-31" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.isup()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-31', 'isup', 'link-31');">isup</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-32', 'isup', 'link-31');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-33" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-33', 'isup', 'link-31');">isup</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-34', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is up\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt id="link-35" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-35', 'isup', 'link-31');">isup</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-36', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" didn't start!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-37', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Startup sequence complete"</tt><tt class="py-op">)</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">deviceMastership</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">"s"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt><tt class="py-string">"Device mastership list: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceMastership</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosCfgSet"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-38', 'onosCfgSet', 'link-38');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"org.onosproject.store.flow.impl.NewDistributedFlowRuleStore"</tt><tt class="py-op">,</tt> <tt class="py-string">"backupEnabled false"</tt><tt class="py-op">)</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-39', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-40', 'step', 'link-5');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Setting up null provider"</tt><tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">3</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-41', 'onosCfgSet', 'link-38');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"org.onosproject.provider.nil.NullProviders"</tt><tt class="py-op">,</tt> <tt class="py-string">"deviceCount 8"</tt><tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-42', 'onosCfgSet', 'link-38');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"org.onosproject.provider.nil.NullProviders"</tt><tt class="py-op">,</tt> <tt class="py-string">"topoShape reroute"</tt><tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-43', 'onosCfgSet', 'link-38');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"org.onosproject.provider.nil.NullProviders"</tt><tt class="py-op">,</tt> <tt class="py-string">"enabled true"</tt><tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-44', 'sendline', 'link-44');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 summary"</tt><tt class="py-op">)</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"devices=8"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">x</tt> <tt class="py-keyword">and</tt> <tt class="py-string">"links=16,"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">x</tt><tt class="py-op">:</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">deviceMastership</tt><tt class="py-op">:</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">attempt</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-string">"onos $OC"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt> <tt class="py-op">+</tt> <tt class="py-string">""" "device-role null:000000000000000"""</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">index</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">""" master" """</tt><tt class="py-op">)</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-45', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"assigning mastership of device "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">index</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" to node "</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt> <tt class="py-op">+</tt> <tt class="py-string">": \n "</tt> <tt class="py-op">+</tt> <tt class="py-name">cmd</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-46', 'sendline', 'link-44');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">4</tt><tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-string">"onos $OC"</tt> <tt class="py-op">+</tt> <tt class="py-name">node</tt> <tt class="py-op">+</tt> <tt class="py-string">" roles|grep 00000"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">index</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-47', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-48', 'sendline', 'link-44');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">check</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-49', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"CHECK:\n"</tt> <tt class="py-op">+</tt> <tt class="py-name">check</tt><tt class="py-op">)</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">"master="</tt> <tt class="py-op">+</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">check</tt><tt class="py-op">:</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.logReport()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#logReport"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-50', 'logReport', 'link-50');">logReport</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> <tt class="py-string">"WARNING"</tt><tt class="py-op">,</tt> <tt class="py-string">"EXCEPT"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> </tt>
-<a name="SCPFintentRerouteLat.CASE2"></a><div id="SCPFintentRerouteLat.CASE2-def"><a name="L165"></a><tt class="py-lineno">165</tt> <a class="py-toggle" href="#" id="SCPFintentRerouteLat.CASE2-toggle" onclick="return toggle('SCPFintentRerouteLat.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#CASE2">CASE2</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFintentRerouteLat.CASE2-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFintentRerouteLat.CASE2-expanded"><a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">numpy</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">datetime</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-comment">#from scipy import stats</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-name">ts</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">date</tt> <tt class="py-op">=</tt> <tt class="py-name">datetime</tt><tt class="py-op">.</tt><tt class="py-name">datetime</tt><tt class="py-op">.</tt><tt class="py-name">fromtimestamp</tt><tt class="py-op">(</tt><tt class="py-name">ts</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt><tt class="py-string">'%Y-%m-%d'</tt><tt class="py-op">)</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">sampleSize</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'sampleSize'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">warmUp</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'warmUp'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">intentsList</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'intents'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">debug</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TEST'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'debug'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">intentsList</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">intentsList</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">intentsList</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-name">timestampMetrics</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'METRICS'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'Submitted'</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"1"</tt><tt class="py-op">:</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">timestampMetrics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-string">"Submitted"</tt><tt class="py-op">)</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'METRICS'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'Installed'</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"1"</tt><tt class="py-op">:</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-name">timestampMetrics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-string">"Installed"</tt><tt class="py-op">)</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'METRICS'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'Failed'</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"1"</tt><tt class="py-op">:</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-name">timestampMetrics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-string">"Failed"</tt><tt class="py-op">)</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'METRICS'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'Withdraw'</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"1"</tt><tt class="py-op">:</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">timestampMetrics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-string">"Withdraw"</tt><tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'METRICS'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'Withdrawn'</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">"1"</tt><tt class="py-op">:</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">timestampMetrics</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-string">"Withdrawn"</tt><tt class="py-op">)</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-51', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">timestampMetrics</tt><tt class="py-op">)</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt> <tt class="py-op">==</tt> <tt class="py-string">"True"</tt><tt class="py-op">:</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">debug</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-name">debug</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">ingress</tt> <tt class="py-op">=</tt> <tt class="py-string">"null:0000000000000001"</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-name">egress</tt> <tt class="py-op">=</tt> <tt class="py-string">"null:0000000000000007"</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-52" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intents,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intents"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-52', 'intents', 'link-52');">intents</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentsList</tt><tt class="py-op">:</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-53', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"Intent Batch size: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-54" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-54', 'intents', 'link-52');">intents</a></tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n "</tt><tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-name">myResult</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">[</tt><tt class="py-string">"latency"</tt><tt class="py-op">,</tt> <tt class="py-string">"lastNode"</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">sampleSize</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-55" class="py-name" targets="Method TestON.bin.cli.TestThread.run()=TestON.bin.cli.TestThread-class.html#run,Method TestON.core.Thread.Thread.run()=TestON.core.Thread.Thread-class.html#run,Method TestON.core.teston.TestON.run()=TestON.core.teston.TestON-class.html#run,Function TestON.tests.HAclusterRestart.dependencies.obelisk.run()=TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#run,Function TestON.tests.HAminorityRestart.dependencies.obelisk.run()=TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#run,Function TestON.tests.HAsanity.dependencies.obelisk.run()=TestON.tests.HAsanity.dependencies.obelisk-module.html#run,Function TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run()=TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#run"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-55', 'run', 'link-55');">run</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">warmUp</tt> <tt class="py-op">+</tt> <tt class="py-name">sampleSize</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-56" class="py-name"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-56', 'run', 'link-55');">run</a></tt> <tt class="py-op">></tt> <tt class="py-name">warmUp</tt><tt class="py-op">:</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-57', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Starting test iteration "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-58" class="py-name"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-58', 'run', 'link-55');">run</a></tt><tt class="py-op">-</tt><tt class="py-name">warmUp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"""onos $OC1 "push-test-intents -i """</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-name">ingress</tt> <tt class="py-op">+</tt> <tt class="py-string">"/0 "</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-name">egress</tt> <tt class="py-op">+</tt> <tt class="py-string">"/0 "</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">+=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-59" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-59', 'intents', 'link-52');">intents</a></tt><tt class="py-op">)</tt> <tt class="py-op">+</tt><tt class="py-string">""" 1" """</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-60', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-name">withdrawCmd</tt> <tt class="py-op">=</tt> <tt class="py-name">cmd</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"intents -i"</tt><tt class="py-op">,</tt> <tt class="py-string">"intents -w "</tt><tt class="py-op">)</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-comment">#push-test-intents</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-61', 'sendline', 'link-44');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-name">myRawResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-number">40</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-62', 'sendline', 'link-44');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 summary"</tt><tt class="py-op">)</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-name">linkCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">"links=16,"</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">linkCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-string">"flows="</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-63" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-63', 'intents', 'link-52');">intents</a></tt><tt class="py-op">*</tt><tt class="py-number">7</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">39</tt><tt class="py-op">:</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-64', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-65" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-65', 'error', 'link-65');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">"Flow/link count incorrect, data invalid."</tt><tt class="py-op">+</tt> <tt class="py-name">linkCheck</tt><tt class="py-op">)</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-66', 'logReport', 'link-50');">logReport</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> <tt class="py-string">"WARNING"</tt><tt class="py-op">,</tt> <tt class="py-string">"EXCEPT"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"d"</tt><tt class="py-op">)</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-comment">#main.ONOSbench.logReport(ONOSIp[(clusterCount-1)], ["ERROR", "WARNING", "EXCEPT"], "d")</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-67', 'sendline', 'link-44');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 summary"</tt><tt class="py-op">)</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-68', 'sendline', 'link-44');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 devices"</tt><tt class="py-op">)</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-69" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-69', 'sendline', 'link-44');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 links"</tt><tt class="py-op">)</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-70', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">before</tt><tt class="py-op">)</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-comment">#collect timestamp from link cut</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"""onos $OC1 null-link "null:0000000000000004/1 null:0000000000000003/2 down" """</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-71', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"COMMAND: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-72', 'sendline', 'link-44');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos-ssh $OC1 cat /opt/onos/log/karaf.log | grep TopologyManager| tail -1"</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt><tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-73', 'sendline', 'link-44');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-name">raw</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-comment">#if "NullLinkProvider" in raw and "links=14" in raw:</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"links=14"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">raw</tt><tt class="py-op">:</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-number">9</tt><tt class="py-op">:</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-74', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-75', 'error', 'link-65');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">"Expected output not being recieved... continuing"</tt><tt class="py-op">)</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-76', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">raw</tt><tt class="py-op">)</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">=</tt> <tt class="py-name">raw</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">temp</tt><tt class="py-op">:</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">date</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt><tt class="py-op">:</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-name">cutTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">temp</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> <tt class="py-op">+</tt> <tt class="py-op">(</tt><tt class="py-name">temp</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-77', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Cut timestamp: "</tt> <tt class="py-op">+</tt> <tt class="py-name">cutTimestamp</tt><tt class="py-op">)</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-comment">#validate link count and flow count</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-number">40</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-78', 'sendline', 'link-44');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 summary"</tt><tt class="py-op">)</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-name">linkCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-comment">#if "links=" + str(7*intents)+ "," in linkCheck and ("flows=" + str(7*intents) + ",") in linkCheck:</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"links=14,"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">linkCheck</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-string">"flows="</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-number">8</tt><tt class="py-op">*</tt><tt id="link-79" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-79', 'intents', 'link-52');">intents</a></tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">linkCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">39</tt><tt class="py-op">:</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-80', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-81', 'error', 'link-65');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">"Link or flow count incorrect, data invalid."</tt> <tt class="py-op">+</tt> <tt class="py-name">linkCheck</tt><tt class="py-op">)</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-82', 'logReport', 'link-50');">logReport</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> <tt class="py-string">"WARNING"</tt><tt class="py-op">,</tt> <tt class="py-string">"EXCEPT"</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-string">"d"</tt><tt class="py-op">)</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> <tt class="py-comment">#trying to avoid negative values</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-comment">#intents events metrics installed timestamp</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-name">IEMtimestamps</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-name">installedTemp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">"onos $OC"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">""" "intents-events-metrics"|grep Timestamp """</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-name">raw</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-string">"epoch)"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">raw</tt><tt class="py-op">:</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-83', 'sendline', 'link-44');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-name">raw</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-keyword">print</tt><tt class="py-op">(</tt><tt class="py-name">raw</tt><tt class="py-op">)</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-name">intentsTimestamps</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-name">rawTimestamps</tt> <tt class="py-op">=</tt> <tt class="py-name">raw</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">rawTimestamps</tt><tt class="py-op">:</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"Timestamp"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt> <tt class="py-keyword">and</tt> <tt class="py-string">"grep"</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt><tt class="py-op">:</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">metricKey</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-name">metricTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"epoch)="</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-name">metricTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">metricTimestamp</tt><tt class="py-op">)</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-name">metricTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">divide</tt><tt class="py-op">(</tt><tt class="py-name">metricTimestamp</tt><tt class="py-op">,</tt> <tt class="py-number">1000</tt><tt class="py-op">)</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-84', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">repr</tt><tt class="py-op">(</tt><tt class="py-name">metricTimestamp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-name">intentsTimestamps</tt><tt class="py-op">[</tt><tt class="py-name">metricKey</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">metricTimestamp</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">metricKey</tt> <tt class="py-op">==</tt> <tt class="py-string">"Installed"</tt><tt class="py-op">:</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-name">installedTemp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">metricTimestamp</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-85', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Node: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" Timestamps: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">intentsTimestamps</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-name">IEMtimestamps</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">intentsTimestamps</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-name">myMax</tt> <tt class="py-op">=</tt> <tt class="py-name">max</tt><tt class="py-op">(</tt><tt class="py-name">installedTemp</tt><tt class="py-op">)</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-name">indexOfMax</tt> <tt class="py-op">=</tt> <tt class="py-name">installedTemp</tt><tt class="py-op">.</tt><tt class="py-name">index</tt><tt class="py-op">(</tt><tt class="py-name">myMax</tt><tt class="py-op">)</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-comment">#number crunch</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">metric</tt> <tt class="py-keyword">in</tt> <tt class="py-name">timestampMetrics</tt><tt class="py-op">:</tt> <tt class="py-comment">#this is where we sould add support for computing other timestamp metrics</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">metric</tt> <tt class="py-op">==</tt> <tt class="py-string">"Installed"</tt><tt class="py-op">:</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-86" class="py-name"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-86', 'run', 'link-55');">run</a></tt> <tt class="py-op">>=</tt> <tt class="py-name">warmUp</tt><tt class="py-op">:</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-87', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"link cut timestamp: "</tt> <tt class="py-op">+</tt> <tt class="py-name">cutTimestamp</tt><tt class="py-op">)</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-comment">#readableInstalledTimestamp = str(intentsTimestamps["Installed"])</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-name">readableInstalledTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">myMax</tt><tt class="py-op">)</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> <tt class="py-comment">#main.log.report("Intent Installed timestamp: " + str(intentsTimestamps["Installed"]))</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-88', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"Intent Installed timestamp: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">myMax</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-name">cutEpoch</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">mktime</tt><tt class="py-op">(</tt><tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">strptime</tt><tt class="py-op">(</tt><tt class="py-name">cutTimestamp</tt><tt class="py-op">,</tt> <tt class="py-string">"%Y-%m-%d %H:%M:%S,%f"</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-89', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"cutEpoch="</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">cutEpoch</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> <tt class="py-comment">#rerouteLatency = float(intentsTimestamps["Installed"] - cutEpoch)</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> <tt class="py-name">rerouteLatency</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">myMax</tt> <tt class="py-op">-</tt> <tt class="py-name">cutEpoch</tt><tt class="py-op">)</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> <tt class="py-name">rerouteLatency</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">divide</tt><tt class="py-op">(</tt><tt class="py-name">rerouteLatency</tt><tt class="py-op">,</tt> <tt class="py-number">1000</tt><tt class="py-op">)</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-90', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"Reroute latency:"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">rerouteLatency</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" (seconds)\n "</tt><tt class="py-op">)</tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> <tt class="py-name">myResult</tt><tt class="py-op">[</tt><tt id="link-91" class="py-name"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-91', 'run', 'link-55');">run</a></tt><tt class="py-op">-</tt><tt class="py-name">warmUp</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">rerouteLatency</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt class="py-name">myResult</tt><tt class="py-op">[</tt><tt id="link-92" class="py-name"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-92', 'run', 'link-55');">run</a></tt><tt class="py-op">-</tt><tt class="py-name">warmUp</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">indexOfMax</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-93', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Latency: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">myResult</tt><tt class="py-op">[</tt><tt id="link-94" class="py-name"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-94', 'run', 'link-55');">run</a></tt><tt class="py-op">-</tt><tt class="py-name">warmUp</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-95', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"last node: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">myResult</tt><tt class="py-op">[</tt><tt id="link-96" class="py-name"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-96', 'run', 'link-55');">run</a></tt><tt class="py-op">-</tt><tt class="py-name">warmUp</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-string">""" onos $OC1 null-link "null:0000000000000004/1 null:0000000000000003/2 up" """</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-97', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-98', 'sendline', 'link-44');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-comment">#wait for intent withdraw</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-99', 'sendline', 'link-44');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-name">withdrawCmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-100', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">withdrawCmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-101', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt><tt class="py-op">)</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-102', 'sendline', 'link-44');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 intents|grep WITHDRAWN|wc -l"</tt><tt class="py-op">)</tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"> <tt class="py-name">intentWithdrawCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-103" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-103', 'intents', 'link-52');">intents</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">intentWithdrawCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-104', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"intents withdrawn"</tt><tt class="py-op">)</tt> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-105', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">intentWithdrawCheck</tt><tt class="py-op">)</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> <tt class="py-comment"># wait for links to be reestablished</tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-number">10</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-106" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-106', 'sendline', 'link-44');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 summary"</tt><tt class="py-op">)</tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-name">linkCheck</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"links=16,"</tt> <tt class="py-keyword">in</tt> <tt class="py-name">linkCheck</tt><tt class="py-op">:</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">9</tt><tt class="py-op">:</tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-107', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Links Failed to reconnect, next iteration of data invalid."</tt> <tt class="py-op">+</tt> <tt class="py-name">linkCheck</tt><tt class="py-op">)</tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-108" class="py-name"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-108', 'run', 'link-55');">run</a></tt> <tt class="py-op"><</tt> <tt class="py-name">warmUp</tt><tt class="py-op">:</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-109', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Warm up run "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-110" class="py-name"><a title="TestON.bin.cli.TestThread.run
-TestON.core.Thread.Thread.run
-TestON.core.teston.TestON.run
-TestON.tests.HAclusterRestart.dependencies.obelisk.run
-TestON.tests.HAminorityRestart.dependencies.obelisk.run
-TestON.tests.HAsanity.dependencies.obelisk.run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run" class="py-name" href="#" onclick="return doclink('link-110', 'run', 'link-55');">run</a></tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" completed"</tt><tt class="py-op">)</tt> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debug</tt><tt class="py-op">:</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-111', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">myResult</tt><tt class="py-op">)</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt class="py-name">latTemp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"> <tt class="py-name">nodeTemp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">myResult</tt><tt class="py-op">:</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> <tt class="py-name">latTemp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"> <tt class="py-name">nodeTemp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt class="py-name">mode</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">nodeTemp</tt><tt class="py-op">:</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"> <tt class="py-name">mode</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"> <tt class="py-name">mode</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">.</tt><tt class="py-name">keys</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">mode</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">max</tt><tt class="py-op">(</tt><tt class="py-name">mode</tt><tt class="py-op">.</tt><tt class="py-name">values</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"> <tt class="py-name">nodeMode</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt class="py-name">average</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">average</tt><tt class="py-op">(</tt><tt class="py-name">latTemp</tt><tt class="py-op">)</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> <tt class="py-name">stdDev</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">latTemp</tt><tt class="py-op">)</tt> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> <tt class="py-name">average</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">multiply</tt><tt class="py-op">(</tt><tt class="py-name">average</tt><tt class="py-op">,</tt> <tt class="py-number">1000</tt><tt class="py-op">)</tt> </tt>
-<a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> <tt class="py-name">stdDev</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">multiply</tt><tt class="py-op">(</tt><tt class="py-name">stdDev</tt><tt class="py-op">,</tt> <tt class="py-number">1000</tt><tt class="py-op">)</tt> </tt>
-<a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"> </tt>
-<a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-112', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"Scale: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" \tIntent batch: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-113" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-113', 'intents', 'link-52');">intents</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-114', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"Latency average:................"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">average</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L396"></a><tt class="py-lineno">396</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-115" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-115', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"Latency standard deviation:....."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">stdDev</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-116', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"Mode of last node to respond:..."</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeMode</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-117', 'log', 'link-9');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">"________________________________________________________"</tt><tt class="py-op">)</tt> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"> </tt>
-<a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-string">"/tmp/IntentRerouteLatDB"</tt><tt class="py-op">,</tt> <tt class="py-string">"a"</tt><tt class="py-op">)</tt> </tt>
-<a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">"'"</tt> <tt class="py-op">+</tt> <tt class="py-name">commit</tt> <tt class="py-op">+</tt> <tt class="py-string">"',"</tt><tt class="py-op">)</tt> </tt>
-<a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt id="link-118" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents" class="py-name" href="#" onclick="return doclink('link-118', 'intents', 'link-52');">intents</a></tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">average</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">stdDev</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"> </tt>
-<a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.logReport" class="py-name" href="#" onclick="return doclink('link-119', 'logReport', 'link-50');">logReport</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-string">"ERROR"</tt><tt class="py-op">,</tt> <tt class="py-string">"WARNING"</tt><tt class="py-op">,</tt> <tt class="py-string">"EXCEPT"</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L409"></a><tt class="py-lineno">409</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html
deleted file mode 100644
index c49a9a1..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html
+++ /dev/null
@@ -1,185 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFintentRerouteLat-module.html">Package SCPFintentRerouteLat</a> ::
- <a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html">Module SCPFintentRerouteLat</a> ::
- Class SCPFintentRerouteLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SCPFintentRerouteLat</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-pysrc.html#SCPFintentRerouteLat">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-pysrc.html#SCPFintentRerouteLat.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1"></a><span class="summary-sig-name">CASE1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-pysrc.html#SCPFintentRerouteLat.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE2"></a><span class="summary-sig-name">CASE2</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-pysrc.html#SCPFintentRerouteLat.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFportLat-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFportLat-module.html
deleted file mode 100644
index f29ef22..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFportLat-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFportLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SCPFportLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFportLat-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package SCPFportLat</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFportLat-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFportLat.SCPFportLat-module.html">TestON.tests.SCPFportLat.SCPFportLat</a></strong> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFportLat-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFportLat-pysrc.html
deleted file mode 100644
index 758d349..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFportLat-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFportLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SCPFportLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFportLat-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SCPFportLat-module.html">Package TestON.tests.SCPFportLat</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFportLat.SCPFportLat-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFportLat.SCPFportLat-module.html
deleted file mode 100644
index e19fd6b..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFportLat.SCPFportLat-module.html
+++ /dev/null
@@ -1,167 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFportLat.SCPFportLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFportLat-module.html">Package SCPFportLat</a> ::
- Module SCPFportLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFportLat.SCPFportLat-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module SCPFportLat</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFportLat.SCPFportLat-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html" class="summary-name">SCPFportLat</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFportLat.SCPFportLat-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFportLat.SCPFportLat-pysrc.html
deleted file mode 100644
index 7cb78a7..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFportLat.SCPFportLat-pysrc.html
+++ /dev/null
@@ -1,680 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFportLat.SCPFportLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFportLat-module.html">Package SCPFportLat</a> ::
- Module SCPFportLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFportLat.SCPFportLat-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SCPFportLat.SCPFportLat-module.html">Module TestON.tests.SCPFportLat.SCPFportLat</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># CASE1 starts number of nodes specified in param file</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># cameron@onlab.us</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"> </tt>
-<a name="SCPFportLat"></a><div id="SCPFportLat-def"><a name="L5"></a><tt class="py-lineno"> 5</tt> <a class="py-toggle" href="#" id="SCPFportLat-toggle" onclick="return toggle('SCPFportLat');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html">SCPFportLat</a><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFportLat-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SCPFportLat-expanded"><a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"> </tt>
-<a name="SCPFportLat.__init__"></a><div id="SCPFportLat.__init__-def"><a name="L7"></a><tt class="py-lineno"> 7</tt> <a class="py-toggle" href="#" id="SCPFportLat.__init__-toggle" onclick="return toggle('SCPFportLat.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFportLat.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFportLat.__init__-expanded"><a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> </tt>
-<a name="SCPFportLat.CASE1"></a><div id="SCPFportLat.CASE1-def"><a name="L10"></a><tt class="py-lineno"> 10</tt> <a class="py-toggle" href="#" id="SCPFportLat.CASE1-toggle" onclick="return toggle('SCPFportLat.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#CASE1">CASE1</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFportLat.CASE1-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFportLat.CASE1-expanded"><a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">init</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">init</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">bool</tt><tt class="py-op">:</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">Fals</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> <tt class="py-comment">#Load values from params file</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'checkout'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> <tt id="link-1" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-1', 'gitPull', 'link-1');">gitPull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'autopull'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-name">Apps</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellApps'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt class="py-name">BENCHIp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BENCH'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ip'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt class="py-name">MN1Ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MN'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ip1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'max'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-name">homeDir</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-2', 'path', 'link-2');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">expanduser</tt><tt class="py-op">(</tt><tt class="py-string">'~'</tt><tt class="py-op">)</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">topoCfgFile</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TEST'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'topoConfigFile'</tt><tt class="py-op">]</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">topoCfgName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TEST'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'topoConfigName'</tt><tt class="py-op">]</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">resultPath</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'DB'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'portEventResultPath'</tt><tt class="py-op">]</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">skipMvn</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt> <tt class="py-op">[</tt><tt class="py-string">'TEST'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'mci'</tt><tt class="py-op">]</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">testONpath</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">"(tests)$"</tt><tt class="py-op">,</tt> <tt class="py-string">"bin"</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testDir</tt> <tt class="py-op">)</tt> <tt class="py-comment"># TestON/bin</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-comment"># -- INIT SECTION, ONLY RUNS ONCE -- #</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">init</tt> <tt class="py-op">==</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">clusterCount</tt> <tt class="py-comment">#number of nodes running</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">ONOSIp</tt> <tt class="py-comment">#list of ONOS IP addresses</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">scale</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">commit</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">timeToPost</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">runNum</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">jenkinsBuildNumber</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">CLIs</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">CLIs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">timeToPost</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt><tt class="py-string">'%Y-%m-%d %H:%M:%S'</tt><tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">runNum</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt><tt class="py-string">'%d%H%M%S'</tt><tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getOnosIps"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps" class="py-name" href="#" onclick="return doclink('link-3', 'getOnosIps', 'link-3');">getOnosIps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-comment">#Assigning ONOS cli handles to a list</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-name">CLIs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">'ONOS'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">'cli'</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">jenkinsBuildNumber</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">environ</tt><tt class="py-op">[</tt><tt class="py-string">'BUILD_NUMBER'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-4', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">'Jenkins build number: '</tt> <tt class="py-op">+</tt> <tt class="py-name">jenkinsBuildNumber</tt> <tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">:</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">jenkinsBuildNumber</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-5', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">'Job is not run by jenkins. '</tt> <tt class="py-op">+</tt> <tt class="py-string">'Build number set to: '</tt> <tt class="py-op">+</tt> <tt class="py-name">jenkinsBuildNumber</tt><tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">ONOSIp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps" class="py-name" href="#" onclick="return doclink('link-6', 'getOnosIps', 'link-3');">getOnosIps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">scale</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SCALE'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-comment">#mvn clean install, for debugging set param 'skipCleanInstall' to yes to speed up test</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">skipMvn</tt> <tt class="py-op">!=</tt> <tt class="py-string">"off"</tt><tt class="py-op">:</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">mvnResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cleanInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall" class="py-name" href="#" onclick="return doclink('link-7', 'cleanInstall', 'link-7');">cleanInstall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-comment">#git</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-8', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Git checkout and pull "</tt> <tt class="py-op">+</tt> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-9" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-9', 'gitPull', 'link-1');">gitPull</a></tt> <tt class="py-op">==</tt> <tt class="py-string">'on'</tt><tt class="py-op">:</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">checkoutResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitCheckout"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout" class="py-name" href="#" onclick="return doclink('link-10', 'gitCheckout', 'link-10');">gitCheckout</a></tt><tt class="py-op">(</tt> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">pullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-11', 'gitPull', 'link-1');">gitPull</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">checkoutResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">pullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-12', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Skipped git checkout and pull"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-13', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Grabbing commit number"</tt><tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">commit</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion,Method TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion
-TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion" class="py-name" href="#" onclick="return doclink('link-14', 'getVersion', 'link-14');">getVersion</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">commit</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">commit</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-15', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Creating results file"</tt><tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">resultPath</tt><tt class="py-op">,</tt> <tt class="py-string">"w+"</tt><tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">resultsDB</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-16', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">'Commit information - '</tt><tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion
-TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion" class="py-name" href="#" onclick="return doclink('link-17', 'getVersion', 'link-14');">getVersion</a></tt><tt class="py-op">(</tt><tt class="py-name">report</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-comment"># -- END OF INIT SECTION --#</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-18', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Adjusting scale"</tt><tt class="py-op">)</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">scale</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-comment">#kill off all onos processes</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-19', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Killing all ONOS processes before environmnet setup"</tt><tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosDie"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie" class="py-name" href="#" onclick="return doclink('link-20', 'onosDie', 'link-20');">onosDie</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-comment">#Uninstall everywhere</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-21', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cleaning Enviornment..."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-22', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">" Uninstalling ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall" class="py-name" href="#" onclick="return doclink('link-23', 'onosUninstall', 'link-23');">onosUninstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-24', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Sleep 10 second for uninstall to settle..."</tt><tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-25', 'sendline', 'link-25');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-comment">#construct the cell file</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-26', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Creating cell file"</tt><tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">cellIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt> <tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">cellIp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile" class="py-name" href="#" onclick="return doclink('link-27', 'createCellFile', 'link-27');">createCellFile</a></tt><tt class="py-op">(</tt><tt class="py-string">"localhost"</tt><tt class="py-op">,</tt><tt class="py-name">cellName</tt><tt class="py-op">,</tt><tt class="py-name">MN1Ip</tt><tt class="py-op">,</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">Apps</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">cellIp</tt><tt class="py-op">)</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-28', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Set Cell"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell,Method TestON.drivers.common.cli.onosdriver.OnosDriver.setCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell" class="py-name" href="#" onclick="return doclink('link-29', 'setCell', 'link-29');">setCell</a></tt><tt class="py-op">(</tt><tt class="py-name">cellName</tt><tt class="py-op">)</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-30', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Creating ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">packageResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage" class="py-name" href="#" onclick="return doclink('link-31', 'onosPackage', 'link-31');">onosPackage</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-32', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"verify cells"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">verifyCellResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell" class="py-name" href="#" onclick="return doclink('link-33', 'verifyCell', 'link-33');">verifyCell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-34', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">'Starting mininet topology '</tt><tt class="py-op">)</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet" class="py-name" href="#" onclick="return doclink('link-35', 'startNet', 'link-35');">startNet</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-36', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Initializeing "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" node cluster."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-37', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Starting ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" at IP: "</tt> <tt class="py-op">+</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall" class="py-name" href="#" onclick="return doclink('link-38', 'onosInstall', 'link-38');">onosInstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt id="link-39" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.isup()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-39', 'isup', 'link-39');">isup</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-40', 'isup', 'link-39');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-41" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-41', 'isup', 'link-39');">isup</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-42', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is up\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt id="link-43" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-43', 'isup', 'link-39');">isup</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-44', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" didn't start!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-45', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Startup sequence complete"</tt><tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-46', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">'Starting onos CLIs'</tt><tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#startOnosCli"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli" class="py-name" href="#" onclick="return doclink('link-47', 'startOnosCli', 'link-47');">startOnosCli</a></tt><tt class="py-op">(</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">20</tt><tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-48', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">'activating essential applications'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name" targets="Method TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp()=TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#activateApp,Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#activateApp"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-49', 'activateApp', 'link-49');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">'org.onosproject.metrics'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp" class="py-name" href="#" onclick="return doclink('link-50', 'activateApp', 'link-49');">activateApp</a></tt><tt class="py-op">(</tt> <tt class="py-string">'org.onosproject.openflow'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-51', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">'Configuring application parameters'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-name">configName</tt> <tt class="py-op">=</tt> <tt class="py-string">'org.onosproject.net.topology.impl.DefaultTopologyProvider'</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">configParam</tt> <tt class="py-op">=</tt> <tt class="py-string">'maxEvents 1'</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosCfgSet"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-52', 'onosCfgSet', 'link-52');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">configName</tt><tt class="py-op">,</tt> <tt class="py-name">configParam</tt> <tt class="py-op">)</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-name">configParam</tt> <tt class="py-op">=</tt> <tt class="py-string">'maxBatchMs 0'</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-53', 'onosCfgSet', 'link-52');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">configName</tt><tt class="py-op">,</tt> <tt class="py-name">configParam</tt> <tt class="py-op">)</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-name">configParam</tt> <tt class="py-op">=</tt> <tt class="py-string">'maxIdleMs 0'</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-54', 'onosCfgSet', 'link-52');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">configName</tt><tt class="py-op">,</tt> <tt class="py-name">configParam</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> </tt>
-<a name="SCPFportLat.CASE2"></a><div id="SCPFportLat.CASE2-def"><a name="L175"></a><tt class="py-lineno">175</tt> <a class="py-toggle" href="#" id="SCPFportLat.CASE2-toggle" onclick="return toggle('SCPFportLat.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#CASE2">CASE2</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFportLat.CASE2-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFportLat.CASE2-expanded"><a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"><tt class="py-docstring"> Bring port up / down and measure latency.</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"><tt class="py-docstring"> Port enable / disable is simulated by ifconfig up / down</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"><tt class="py-docstring"> In ONOS-next, we must ensure that the port we are</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"><tt class="py-docstring"> manipulating is connected to another switch with a valid</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"><tt class="py-docstring"> connection. Otherwise, graph view will not be updated.</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">subprocess</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">requests</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">numpy</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-name">ONOSUser</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'CTRL'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'user'</tt><tt class="py-op">]</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">numIter</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TEST'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'numIter'</tt><tt class="py-op">]</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">iterIgnore</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TEST'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'iterIgnore'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">deviceTimestampKey</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'JSON'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'deviceTimestamp'</tt><tt class="py-op">]</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">graphTimestampKey</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'JSON'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'graphTimestamp'</tt><tt class="py-op">]</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">linkTimestampKey</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'JSON'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'linkTimestamp'</tt><tt class="py-op">]</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-name">tsharkPortUp</tt> <tt class="py-op">=</tt> <tt class="py-string">'/tmp/tshark_port_up.txt'</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">tsharkPortDown</tt> <tt class="py-op">=</tt> <tt class="py-string">'/tmp/tshark_port_down.txt'</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-name">tsharkPortStatus</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TSHARK'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ofpPortStatus'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-name">debugMode</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TEST'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'debugMode'</tt><tt class="py-op">]</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-name">postToDB</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'DB'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'postToDB'</tt><tt class="py-op">]</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-name">resultPath</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'DB'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'portEventResultPath'</tt><tt class="py-op">]</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-name">localTime</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt><tt class="py-string">'%x %X'</tt><tt class="py-op">)</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-name">localTime</tt> <tt class="py-op">=</tt> <tt class="py-name">localTime</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">'/'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">localTime</tt> <tt class="py-op">=</tt> <tt class="py-name">localTime</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">' '</tt><tt class="py-op">,</tt> <tt class="py-string">'_'</tt><tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-name">localTime</tt> <tt class="py-op">=</tt> <tt class="py-name">localTime</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">':'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debugMode</tt> <tt class="py-op">==</tt> <tt class="py-string">'on'</tt><tt class="py-op">:</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkPcap()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkPcap"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkPcap" class="py-name" href="#" onclick="return doclink('link-55', 'tsharkPcap', 'link-55');">tsharkPcap</a></tt><tt class="py-op">(</tt><tt class="py-string">'eth0'</tt><tt class="py-op">,</tt> <tt class="py-string">'/tmp/port_lat_pcap_'</tt> <tt class="py-op">+</tt> <tt class="py-name">localTime</tt><tt class="py-op">)</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">upThresholdStr</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TEST'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'portUpThreshold'</tt><tt class="py-op">]</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-name">downThresholdStr</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TEST'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'portDownThreshold'</tt><tt class="py-op">]</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-name">upThresholdObj</tt> <tt class="py-op">=</tt> <tt class="py-name">upThresholdStr</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">','</tt><tt class="py-op">)</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-name">downThresholdObj</tt> <tt class="py-op">=</tt> <tt class="py-name">downThresholdStr</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">','</tt><tt class="py-op">)</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-name">upThresholdMin</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">upThresholdObj</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-name">upThresholdMax</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">upThresholdObj</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">downThresholdMin</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">downThresholdObj</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-name">downThresholdMax</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">downThresholdObj</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-name">interfaceConfig</tt> <tt class="py-op">=</tt> <tt class="py-string">'s1-eth1'</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-56', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">'Port enable / disable latency'</tt><tt class="py-op">)</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-57', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">'Simulated by ifconfig up / down'</tt><tt class="py-op">)</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-58', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">'Total iterations of test: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-59', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">'Assign switches s1 and s2 to controller 1'</tt><tt class="py-op">)</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignSwController"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController" class="py-name" href="#" onclick="return doclink('link-60', 'assignSwController', 'link-60');">assignSwController</a></tt><tt class="py-op">(</tt><tt class="py-name">sw</tt><tt class="py-op">=</tt><tt class="py-string">'s1'</tt><tt class="py-op">,</tt> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController" class="py-name" href="#" onclick="return doclink('link-61', 'assignSwController', 'link-60');">assignSwController</a></tt><tt class="py-op">(</tt><tt class="py-name">sw</tt><tt class="py-op">=</tt><tt class="py-string">'s2'</tt><tt class="py-op">,</tt> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">15</tt><tt class="py-op">)</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-name">portUpEndToEndNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-name">portUpOfpToDevNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-name">portUpDevToLinkNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-name">portUpLinkToGraphNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">portDownEndToEndNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-name">portDownOfpToDevNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">portDownDevToLinkNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-name">portDownLinkToGraphNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-62', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">'Iteration: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ClusterCount: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-63', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">'Starting wireshark capture for port status down'</tt><tt class="py-op">)</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkGrep()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkGrep"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkGrep" class="py-name" href="#" onclick="return doclink('link-64', 'tsharkGrep', 'link-64');">tsharkGrep</a></tt><tt class="py-op">(</tt><tt class="py-name">tsharkPortStatus</tt><tt class="py-op">,</tt> <tt class="py-name">tsharkPortDown</tt><tt class="py-op">)</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-65', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">'Disable port: '</tt> <tt class="py-op">+</tt> <tt class="py-name">interfaceConfig</tt><tt class="py-op">)</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-66', 'sendline', 'link-25');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">'sh ifconfig '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-name">interfaceConfig</tt> <tt class="py-op">+</tt> <tt class="py-string">' down'</tt><tt class="py-op">)</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">'mininet>'</tt><tt class="py-op">)</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-name">jsonStrPtDown</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt> <tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-name">metricsPortDown</tt> <tt class="py-op">=</tt> <tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topologyEventsMetrics()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topologyEventsMetrics"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topologyEventsMetrics" class="py-name" href="#" onclick="return doclink('link-67', 'topologyEventsMetrics', 'link-67');">topologyEventsMetrics</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-name">jsonStrPtDown</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">metricsPortDown</tt><tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkStop()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkStop"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkStop" class="py-name" href="#" onclick="return doclink('link-68', 'tsharkStop', 'link-68');">tsharkStop</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-name">fPortDown</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">tsharkPortDown</tt><tt class="py-op">,</tt> <tt class="py-string">'r'</tt><tt class="py-op">)</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-name">fLine</tt> <tt class="py-op">=</tt> <tt class="py-name">fPortDown</tt><tt class="py-op">.</tt><tt class="py-name">readline</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-name">objDown</tt> <tt class="py-op">=</tt> <tt class="py-name">fLine</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">' '</tt><tt class="py-op">)</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">fLine</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-name">timestampBeginPtDown</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">objDown</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">*</tt> <tt class="py-number">1000</tt><tt class="py-op">)</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-comment"># At times, tshark reports timestamp at the 3rd</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-comment"># index of the array. If initial readings were</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-comment"># unlike the epoch timestamp, then check the 3rd</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-comment"># index and set that as a timestamp</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">timestampBeginPtDown</tt> <tt class="py-op"><</tt> <tt class="py-number">1400000000000</tt><tt class="py-op">:</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-name">timestampBeginPtDown</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">objDown</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">*</tt> <tt class="py-number">1000</tt><tt class="py-op">)</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-69" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-69', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">'Tshark output file returned unexpected'</tt> <tt class="py-op">+</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-string">' results: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">objDown</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-name">timestampBeginPtDown</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-name">fPortDown</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-name">nodeNum</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">+</tt><tt class="py-number">1</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-name">metricsDown</tt> <tt class="py-op">=</tt> <tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topologyEventsMetrics" class="py-name" href="#" onclick="return doclink('link-70', 'topologyEventsMetrics', 'link-67');">topologyEventsMetrics</a></tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-name">jsonStrPtDown</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">metricsDown</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-name">jsonObj</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">jsonStrPtDown</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonObj</tt><tt class="py-op">:</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-name">graphTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-name">jsonObj</tt><tt class="py-op">[</tt><tt class="py-name">graphTimestampKey</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'value'</tt><tt class="py-op">]</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-name">deviceTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-name">jsonObj</tt><tt class="py-op">[</tt><tt class="py-name">deviceTimestampKey</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'value'</tt><tt class="py-op">]</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-name">linkTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-name">jsonObj</tt><tt class="py-op">[</tt><tt class="py-name">linkTimestampKey</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'value'</tt><tt class="py-op">]</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-71', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt id="link-72" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-72', 'error', 'link-72');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Unexpected json object"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-name">graphTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-name">deviceTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-name">linkTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-73', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">'ptDownTimestamp: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">timestampBeginPtDown</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-74', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"graphTimestamp: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">graphTimestamp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-75', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"deviceTimestamp: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceTimestamp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-76', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"linkTimestamp: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">linkTimestamp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-name">ptDownEndToEnd</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">graphTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">timestampBeginPtDown</tt><tt class="py-op">)</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-name">ptDownOfpToDevice</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">deviceTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">timestampBeginPtDown</tt><tt class="py-op">)</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-name">ptDownDeviceToLink</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">linkTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">deviceTimestamp</tt><tt class="py-op">)</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-name">ptDownLinkToGraph</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">graphTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">linkTimestamp</tt><tt class="py-op">)</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ptDownEndToEnd</tt> <tt class="py-op"><</tt> <tt class="py-name">downThresholdMin</tt> <tt class="py-keyword">or</tt> <tt class="py-name">ptDownEndToEnd</tt> <tt class="py-op">>=</tt> <tt class="py-name">downThresholdMax</tt><tt class="py-op">:</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-77', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" surpassed threshold - port down End-to-end: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptDownEndToEnd</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op"><</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-78', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" warming up - port down End-to-end: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptDownEndToEnd</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt class="py-name">portDownEndToEndNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">ptDownEndToEnd</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-79', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" port down End-to-end: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptDownEndToEnd</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ptDownOfpToDevice</tt> <tt class="py-op"><</tt> <tt class="py-name">downThresholdMin</tt> <tt class="py-keyword">or</tt> <tt class="py-name">ptDownOfpToDevice</tt> <tt class="py-op">>=</tt> <tt class="py-name">downThresholdMax</tt><tt class="py-op">:</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-80', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" surpassed threshold - port down Ofp-to-device: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptDownOfpToDevice</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op"><</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-81', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" warming up - port down Ofp-to-device: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptDownOfpToDevice</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-name">portDownOfpToDevNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">ptDownOfpToDevice</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-82', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" port down Ofp-to-device: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptDownOfpToDevice</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ptDownDeviceToLink</tt> <tt class="py-op"><</tt> <tt class="py-name">downThresholdMin</tt> <tt class="py-keyword">or</tt> <tt class="py-name">ptDownDeviceToLink</tt> <tt class="py-op">>=</tt> <tt class="py-name">downThresholdMax</tt><tt class="py-op">:</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-83', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" surpassed threshold - port down Device-to-link: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptDownDeviceToLink</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op"><</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-84', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" warming up - port down Device-to-link: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptDownDeviceToLink</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-name">portDownDevToLinkNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">ptDownDeviceToLink</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-85', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" port down Device-to-link: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptDownDeviceToLink</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ptDownLinkToGraph</tt> <tt class="py-op"><</tt> <tt class="py-name">downThresholdMin</tt> <tt class="py-keyword">or</tt> <tt class="py-name">ptDownLinkToGraph</tt> <tt class="py-op">>=</tt> <tt class="py-name">downThresholdMax</tt><tt class="py-op">:</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-86', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" surpassed threshold - port down Link-to-graph: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptDownLinkToGraph</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op"><</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-87', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" warming up - port down Link-to-graph: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptDownLinkToGraph</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-name">portDownLinkToGraphNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">ptDownLinkToGraph</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-88', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" port down Link-to-graph: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptDownLinkToGraph</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">3</tt><tt class="py-op">)</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-89', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">'Starting wireshark capture for port status up'</tt><tt class="py-op">)</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkGrep" class="py-name" href="#" onclick="return doclink('link-90', 'tsharkGrep', 'link-64');">tsharkGrep</a></tt><tt class="py-op">(</tt><tt class="py-name">tsharkPortStatus</tt><tt class="py-op">,</tt> <tt class="py-name">tsharkPortUp</tt><tt class="py-op">)</tt> </tt>
-<a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-91', 'step', 'link-8');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">'Enable port and obtain timestamp'</tt><tt class="py-op">)</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-92', 'sendline', 'link-25');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">'sh ifconfig '</tt> <tt class="py-op">+</tt> <tt class="py-name">interfaceConfig</tt> <tt class="py-op">+</tt> <tt class="py-string">' up'</tt><tt class="py-op">)</tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">'mininet>'</tt><tt class="py-op">)</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> <tt class="py-name">jsonStrPtUp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt> <tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> <tt class="py-name">metricsPortUp</tt> <tt class="py-op">=</tt> <tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topologyEventsMetrics" class="py-name" href="#" onclick="return doclink('link-93', 'topologyEventsMetrics', 'link-67');">topologyEventsMetrics</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> <tt class="py-name">jsonStrPtUp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">metricsPortUp</tt><tt class="py-op">)</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkStop" class="py-name" href="#" onclick="return doclink('link-94', 'tsharkStop', 'link-68');">tsharkStop</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">3</tt><tt class="py-op">)</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> <tt class="py-name">fPortUp</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">tsharkPortUp</tt><tt class="py-op">,</tt> <tt class="py-string">'r'</tt><tt class="py-op">)</tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> <tt class="py-name">fLine</tt> <tt class="py-op">=</tt> <tt class="py-name">fPortUp</tt><tt class="py-op">.</tt><tt class="py-name">readline</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"> <tt class="py-name">objUp</tt> <tt class="py-op">=</tt> <tt class="py-name">fLine</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">' '</tt><tt class="py-op">)</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">fLine</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> <tt class="py-name">timestampBeginPtUp</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">objUp</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">*</tt> <tt class="py-number">1000</tt><tt class="py-op">)</tt> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">timestampBeginPtUp</tt> <tt class="py-op"><</tt> <tt class="py-number">1400000000000</tt><tt class="py-op">:</tt> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> <tt class="py-name">timestampBeginPtUp</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">objUp</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">*</tt> <tt class="py-number">1000</tt><tt class="py-op">)</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-95', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">'Tshark output file returned unexpected'</tt> <tt class="py-op">+</tt> <tt class="py-string">' results.'</tt><tt class="py-op">)</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"> <tt class="py-name">timestampBeginPtUp</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> <tt class="py-name">fPortUp</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"> </tt>
-<a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt class="py-name">nodeNum</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">+</tt><tt class="py-number">1</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"> <tt class="py-name">metricsUp</tt> <tt class="py-op">=</tt> <tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topologyEventsMetrics" class="py-name" href="#" onclick="return doclink('link-96', 'topologyEventsMetrics', 'link-67');">topologyEventsMetrics</a></tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"> <tt class="py-name">jsonStrUp</tt> <tt class="py-op">=</tt> <tt class="py-name">metricsUp</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"> <tt class="py-name">jsonObj</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">jsonStrPtUp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"> </tt>
-<a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonObj</tt><tt class="py-op">:</tt> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"> <tt class="py-name">graphTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-name">jsonObj</tt><tt class="py-op">[</tt><tt class="py-name">graphTimestampKey</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'value'</tt><tt class="py-op">]</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"> <tt class="py-name">deviceTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-name">jsonObj</tt><tt class="py-op">[</tt><tt class="py-name">deviceTimestampKey</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'value'</tt><tt class="py-op">]</tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"> <tt class="py-name">linkTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-name">jsonObj</tt><tt class="py-op">[</tt><tt class="py-name">linkTimestampKey</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'value'</tt><tt class="py-op">]</tt> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-97', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-98', 'error', 'link-72');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Unexpected json object"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt class="py-name">graphTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> <tt class="py-name">deviceTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> <tt class="py-name">linkTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> </tt>
-<a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> </tt>
-<a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-99', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">'ptUpTimestamp: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">timestampBeginPtUp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-100', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"graphTimestamp: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">graphTimestamp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-101', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"deviceTimestamp: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceTimestamp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L396"></a><tt class="py-lineno">396</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-102', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"linkTimestamp: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">linkTimestamp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"> <tt class="py-name">ptUpEndToEnd</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">graphTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">timestampBeginPtUp</tt><tt class="py-op">)</tt> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"> <tt class="py-name">ptUpOfpToDevice</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">deviceTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">timestampBeginPtUp</tt><tt class="py-op">)</tt> </tt>
-<a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"> <tt class="py-name">ptUpDeviceToLink</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">linkTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">deviceTimestamp</tt><tt class="py-op">)</tt> </tt>
-<a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"> <tt class="py-name">ptUpLinkToGraph</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">graphTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">linkTimestamp</tt><tt class="py-op">)</tt> </tt>
-<a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ptUpEndToEnd</tt> <tt class="py-op"><</tt> <tt class="py-name">upThresholdMin</tt> <tt class="py-keyword">or</tt> <tt class="py-name">ptUpEndToEnd</tt> <tt class="py-op">>=</tt> <tt class="py-name">upThresholdMax</tt><tt class="py-op">:</tt> </tt>
-<a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-103', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" surpassed threshold - port up End-to-end: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptUpEndToEnd</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op"><</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-104', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" warming up - port up End-to-end: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptUpEndToEnd</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"> <tt class="py-name">portUpEndToEndNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">ptUpEndToEnd</tt> </tt>
-<a name="L409"></a><tt class="py-lineno">409</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-105', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" port up End-to-end: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptUpEndToEnd</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ptUpOfpToDevice</tt> <tt class="py-op"><</tt> <tt class="py-name">upThresholdMin</tt> <tt class="py-keyword">or</tt> <tt class="py-name">ptUpOfpToDevice</tt> <tt class="py-op">>=</tt> <tt class="py-name">upThresholdMax</tt><tt class="py-op">:</tt> </tt>
-<a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-106" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-106', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" surpassed threshold - port up Ofp-to-device: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptUpOfpToDevice</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L413"></a><tt class="py-lineno">413</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op"><</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L414"></a><tt class="py-lineno">414</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-107', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" warming up - port up Ofp-to-device: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptUpOfpToDevice</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"> <tt class="py-name">portUpOfpToDevNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">ptUpOfpToDevice</tt> </tt>
-<a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-108', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" port up Ofp-to-device: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptUpOfpToDevice</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"> </tt>
-<a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ptUpDeviceToLink</tt> <tt class="py-op"><</tt> <tt class="py-name">upThresholdMin</tt> <tt class="py-keyword">or</tt> <tt class="py-name">ptUpDeviceToLink</tt> <tt class="py-op">>=</tt> <tt class="py-name">upThresholdMax</tt><tt class="py-op">:</tt> </tt>
-<a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-109', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" surpassed threshold - port up Device-to-link: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptUpDeviceToLink</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op"><</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-110', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" warming up - port up Device-to-link: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptUpDeviceToLink</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L423"></a><tt class="py-lineno">423</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"> <tt class="py-name">portUpDevToLinkNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">ptUpDeviceToLink</tt> </tt>
-<a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-111', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" port up Device-to-link: "</tt><tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptUpDeviceToLink</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"> </tt>
-<a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ptUpLinkToGraph</tt> <tt class="py-op"><</tt> <tt class="py-name">upThresholdMin</tt> <tt class="py-keyword">or</tt> <tt class="py-name">ptUpLinkToGraph</tt> <tt class="py-op">>=</tt> <tt class="py-name">upThresholdMax</tt><tt class="py-op">:</tt> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-112', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" surpassed threshold - port up Link-to-graph: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptUpLinkToGraph</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">i</tt> <tt class="py-op"><</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-113', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" warming up - port up Link-to-graph: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptUpLinkToGraph</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L431"></a><tt class="py-lineno">431</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"> <tt class="py-name">portUpLinkToGraphNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">ptUpLinkToGraph</tt> </tt>
-<a name="L433"></a><tt class="py-lineno">433</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-114', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" port up Link-to-graph: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ptUpLinkToGraph</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L434"></a><tt class="py-lineno">434</tt> <tt class="py-line"> </tt>
-<a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"> <tt class="py-name">dbCmdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L436"></a><tt class="py-lineno">436</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L437"></a><tt class="py-lineno">437</tt> <tt class="py-line"> <tt class="py-name">portUpEndToEndList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"> <tt class="py-name">portUpOfpToDevList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L439"></a><tt class="py-lineno">439</tt> <tt class="py-line"> <tt class="py-name">portUpDevToLinkList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L440"></a><tt class="py-lineno">440</tt> <tt class="py-line"> <tt class="py-name">portUpLinkToGraphList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"> </tt>
-<a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"> <tt class="py-name">portDownEndToEndList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L443"></a><tt class="py-lineno">443</tt> <tt class="py-line"> <tt class="py-name">portDownOfpToDevList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"> <tt class="py-name">portDownDevToLinkList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L445"></a><tt class="py-lineno">445</tt> <tt class="py-line"> <tt class="py-name">portDownLinkToGraphList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L446"></a><tt class="py-lineno">446</tt> <tt class="py-line"> </tt>
-<a name="L447"></a><tt class="py-lineno">447</tt> <tt class="py-line"> <tt class="py-name">portUpEndToEndAvg</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L448"></a><tt class="py-lineno">448</tt> <tt class="py-line"> <tt class="py-name">portUpOfpToDevAvg</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L449"></a><tt class="py-lineno">449</tt> <tt class="py-line"> <tt class="py-name">portUpDevToLinkAvg</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L450"></a><tt class="py-lineno">450</tt> <tt class="py-line"> <tt class="py-name">portUpLinkToGraphAvg</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L451"></a><tt class="py-lineno">451</tt> <tt class="py-line"> </tt>
-<a name="L452"></a><tt class="py-lineno">452</tt> <tt class="py-line"> <tt class="py-name">portDownEndToEndAvg</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L453"></a><tt class="py-lineno">453</tt> <tt class="py-line"> <tt class="py-name">portDownOfpToDevAvg</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L454"></a><tt class="py-lineno">454</tt> <tt class="py-line"> <tt class="py-name">portDownDevToLinkAvg</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L455"></a><tt class="py-lineno">455</tt> <tt class="py-line"> <tt class="py-name">portDownLinkToGraphAvg</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L456"></a><tt class="py-lineno">456</tt> <tt class="py-line"> </tt>
-<a name="L457"></a><tt class="py-lineno">457</tt> <tt class="py-line"> <tt class="py-comment"># TODO: Update for more pythonic way to get list</tt> </tt>
-<a name="L458"></a><tt class="py-lineno">458</tt> <tt class="py-line"> <tt class="py-comment"># portUpDevList = [item for item in portUpDevNodeIter[node]</tt> </tt>
-<a name="L459"></a><tt class="py-lineno">459</tt> <tt class="py-line"> <tt class="py-comment"># if item > 0.0]</tt> </tt>
-<a name="L460"></a><tt class="py-lineno">460</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">portUpEndToEndNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L461"></a><tt class="py-lineno">461</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">></tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L462"></a><tt class="py-lineno">462</tt> <tt class="py-line"> <tt class="py-name">portUpEndToEndList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L463"></a><tt class="py-lineno">463</tt> <tt class="py-line"> </tt>
-<a name="L464"></a><tt class="py-lineno">464</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">portUpOfpToDevNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L465"></a><tt class="py-lineno">465</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">></tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L466"></a><tt class="py-lineno">466</tt> <tt class="py-line"> <tt class="py-name">portUpOfpToDevList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L467"></a><tt class="py-lineno">467</tt> <tt class="py-line"> </tt>
-<a name="L468"></a><tt class="py-lineno">468</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">portUpDevToLinkNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L469"></a><tt class="py-lineno">469</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">></tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L470"></a><tt class="py-lineno">470</tt> <tt class="py-line"> <tt class="py-name">portUpDevToLinkList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L471"></a><tt class="py-lineno">471</tt> <tt class="py-line"> </tt>
-<a name="L472"></a><tt class="py-lineno">472</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">portUpLinkToGraphNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L473"></a><tt class="py-lineno">473</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">>=</tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L474"></a><tt class="py-lineno">474</tt> <tt class="py-line"> <tt class="py-name">portUpLinkToGraphList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L475"></a><tt class="py-lineno">475</tt> <tt class="py-line"> </tt>
-<a name="L476"></a><tt class="py-lineno">476</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">portDownEndToEndNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L477"></a><tt class="py-lineno">477</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">></tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L478"></a><tt class="py-lineno">478</tt> <tt class="py-line"> <tt class="py-name">portDownEndToEndList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L479"></a><tt class="py-lineno">479</tt> <tt class="py-line"> </tt>
-<a name="L480"></a><tt class="py-lineno">480</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">portDownOfpToDevNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L481"></a><tt class="py-lineno">481</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">></tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L482"></a><tt class="py-lineno">482</tt> <tt class="py-line"> <tt class="py-name">portDownOfpToDevList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L483"></a><tt class="py-lineno">483</tt> <tt class="py-line"> </tt>
-<a name="L484"></a><tt class="py-lineno">484</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">portDownDevToLinkNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L485"></a><tt class="py-lineno">485</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">>=</tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L486"></a><tt class="py-lineno">486</tt> <tt class="py-line"> <tt class="py-name">portDownDevToLinkList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L487"></a><tt class="py-lineno">487</tt> <tt class="py-line"> </tt>
-<a name="L488"></a><tt class="py-lineno">488</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">portDownLinkToGraphNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L489"></a><tt class="py-lineno">489</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">>=</tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L490"></a><tt class="py-lineno">490</tt> <tt class="py-line"> <tt class="py-name">portDownLinkToGraphList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L491"></a><tt class="py-lineno">491</tt> <tt class="py-line"> </tt>
-<a name="L492"></a><tt class="py-lineno">492</tt> <tt class="py-line"> <tt class="py-name">portUpEndToEndAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">portUpEndToEndList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L493"></a><tt class="py-lineno">493</tt> <tt class="py-line"> <tt class="py-name">portUpOfpToDevAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">portUpOfpToDevList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L494"></a><tt class="py-lineno">494</tt> <tt class="py-line"> <tt class="py-name">portUpDevToLinkAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">portUpDevToLinkList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L495"></a><tt class="py-lineno">495</tt> <tt class="py-line"> <tt class="py-name">portUpLinkToGraphAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">portUpLinkToGraphList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L496"></a><tt class="py-lineno">496</tt> <tt class="py-line"> </tt>
-<a name="L497"></a><tt class="py-lineno">497</tt> <tt class="py-line"> <tt class="py-name">portDownEndToEndAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">portDownEndToEndList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L498"></a><tt class="py-lineno">498</tt> <tt class="py-line"> <tt class="py-name">portDownOfpToDevAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">portDownOfpToDevList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L499"></a><tt class="py-lineno">499</tt> <tt class="py-line"> <tt class="py-name">portDownDevToLinkAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">portDownDevToLinkList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L500"></a><tt class="py-lineno">500</tt> <tt class="py-line"> <tt class="py-name">portDownLinkToGraphAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">portDownLinkToGraphList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L501"></a><tt class="py-lineno">501</tt> <tt class="py-line"> </tt>
-<a name="L502"></a><tt class="py-lineno">502</tt> <tt class="py-line"> <tt class="py-name">portUpStdDev</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">portUpEndToEndList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L503"></a><tt class="py-lineno">503</tt> <tt class="py-line"> <tt class="py-name">portDownStdDev</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">portDownEndToEndList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L504"></a><tt class="py-lineno">504</tt> <tt class="py-line"> </tt>
-<a name="L505"></a><tt class="py-lineno">505</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-115" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-115', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' - Node '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' Summary ---------------- '</tt><tt class="py-op">)</tt> </tt>
-<a name="L506"></a><tt class="py-lineno">506</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-116', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Port up End-to-end '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L507"></a><tt class="py-lineno">507</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">portUpEndToEndAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L508"></a><tt class="py-lineno">508</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-117', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Port up Ofp-to-device '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L509"></a><tt class="py-lineno">509</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">portUpOfpToDevAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L510"></a><tt class="py-lineno">510</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-118', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Port up Device-to-link '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L511"></a><tt class="py-lineno">511</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">portUpDevToLinkAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L512"></a><tt class="py-lineno">512</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-119', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Port up Link-to-graph '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L513"></a><tt class="py-lineno">513</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">portUpLinkToGraphAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L514"></a><tt class="py-lineno">514</tt> <tt class="py-line"> </tt>
-<a name="L515"></a><tt class="py-lineno">515</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-120" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-120', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Port down End-to-end '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L516"></a><tt class="py-lineno">516</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">portDownEndToEndAvg</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L517"></a><tt class="py-lineno">517</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-121" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-121', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Port down Ofp-to-device '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L518"></a><tt class="py-lineno">518</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">portDownOfpToDevAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L519"></a><tt class="py-lineno">519</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-122', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Port down Device-to-link '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L520"></a><tt class="py-lineno">520</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">portDownDevToLinkAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L521"></a><tt class="py-lineno">521</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-123', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Port down Link-to-graph'</tt> <tt class="py-op">+</tt> </tt>
-<a name="L522"></a><tt class="py-lineno">522</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">portDownLinkToGraphAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L523"></a><tt class="py-lineno">523</tt> <tt class="py-line"> </tt>
-<a name="L524"></a><tt class="py-lineno">524</tt> <tt class="py-line"> <tt class="py-name">dbCmdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-string">"INSERT INTO port_latency_details VALUES('"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L525"></a><tt class="py-lineno">525</tt> <tt class="py-line"> <tt class="py-name">timeToPost</tt> <tt class="py-op">+</tt> <tt class="py-string">"','port_latency_results',"</tt> <tt class="py-op">+</tt> <tt class="py-name">jenkinsBuildNumber</tt> <tt class="py-op">+</tt> </tt>
-<a name="L526"></a><tt class="py-lineno">526</tt> <tt class="py-line"> <tt class="py-string">','</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">",'baremetal"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L527"></a><tt class="py-lineno">527</tt> <tt class="py-line"> <tt class="py-string">"',"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L528"></a><tt class="py-lineno">528</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">portUpEndToEndAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt><tt class="py-string">','</tt> <tt class="py-op">+</tt> </tt>
-<a name="L529"></a><tt class="py-lineno">529</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">portUpOfpToDevAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> </tt>
-<a name="L530"></a><tt class="py-lineno">530</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">portUpDevToLinkAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> </tt>
-<a name="L531"></a><tt class="py-lineno">531</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">portUpLinkToGraphAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> </tt>
-<a name="L532"></a><tt class="py-lineno">532</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">portDownEndToEndAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> </tt>
-<a name="L533"></a><tt class="py-lineno">533</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">portDownOfpToDevAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> </tt>
-<a name="L534"></a><tt class="py-lineno">534</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">portDownDevToLinkAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> </tt>
-<a name="L535"></a><tt class="py-lineno">535</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">portDownLinkToGraphAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L536"></a><tt class="py-lineno">536</tt> <tt class="py-line"> <tt class="py-string">');'</tt><tt class="py-op">)</tt> </tt>
-<a name="L537"></a><tt class="py-lineno">537</tt> <tt class="py-line"> </tt>
-<a name="L538"></a><tt class="py-lineno">538</tt> <tt class="py-line"> <tt class="py-name">fResult</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">resultPath</tt><tt class="py-op">,</tt> <tt class="py-string">'a'</tt><tt class="py-op">)</tt> </tt>
-<a name="L539"></a><tt class="py-lineno">539</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">dbCmdList</tt><tt class="py-op">:</tt> </tt>
-<a name="L540"></a><tt class="py-lineno">540</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">line</tt><tt class="py-op">:</tt> </tt>
-<a name="L541"></a><tt class="py-lineno">541</tt> <tt class="py-line"> <tt class="py-name">fResult</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">line</tt> <tt class="py-op">+</tt> <tt class="py-string">'\n'</tt><tt class="py-op">)</tt> </tt>
-<a name="L542"></a><tt class="py-lineno">542</tt> <tt class="py-line"> </tt>
-<a name="L543"></a><tt class="py-lineno">543</tt> <tt class="py-line"> <tt class="py-name">fResult</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L544"></a><tt class="py-lineno">544</tt> <tt class="py-line"> </tt>
-<a name="L545"></a><tt class="py-lineno">545</tt> <tt class="py-line"> <tt class="py-comment"># Delete switches from controller to prepare for next</tt> </tt>
-<a name="L546"></a><tt class="py-lineno">546</tt> <tt class="py-line"> <tt class="py-comment"># set of tests</tt> </tt>
-<a name="L547"></a><tt class="py-lineno">547</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-124" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.deleteSwController()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#deleteSwController"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.deleteSwController" class="py-name" href="#" onclick="return doclink('link-124', 'deleteSwController', 'link-124');">deleteSwController</a></tt><tt class="py-op">(</tt><tt class="py-string">'s1'</tt><tt class="py-op">)</tt> </tt>
-<a name="L548"></a><tt class="py-lineno">548</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.deleteSwController" class="py-name" href="#" onclick="return doclink('link-125', 'deleteSwController', 'link-124');">deleteSwController</a></tt><tt class="py-op">(</tt><tt class="py-string">'s2'</tt><tt class="py-op">)</tt> </tt>
-<a name="L549"></a><tt class="py-lineno">549</tt> <tt class="py-line"> </tt>
-<a name="L550"></a><tt class="py-lineno">550</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-126', 'log', 'link-4');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Stopping mininet"</tt><tt class="py-op">)</tt> </tt>
-<a name="L551"></a><tt class="py-lineno">551</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet" class="py-name" href="#" onclick="return doclink('link-127', 'stopNet', 'link-127');">stopNet</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L552"></a><tt class="py-lineno">552</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html
deleted file mode 100644
index 09c1b88..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html
+++ /dev/null
@@ -1,229 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFportLat-module.html">Package SCPFportLat</a> ::
- <a href="TestON.tests.SCPFportLat.SCPFportLat-module.html">Module SCPFportLat</a> ::
- Class SCPFportLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SCPFportLat</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFportLat.SCPFportLat-pysrc.html#SCPFportLat">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFportLat.SCPFportLat-pysrc.html#SCPFportLat.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1"></a><span class="summary-sig-name">CASE1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFportLat.SCPFportLat-pysrc.html#SCPFportLat.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#CASE2" class="summary-sig-name">CASE2</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span><br />
- Bring port up / down and measure latency.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFportLat.SCPFportLat-pysrc.html#SCPFportLat.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Method Details</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-MethodDetails"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-</table>
-<a name="CASE2"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">CASE2</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">main</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="TestON.tests.SCPFportLat.SCPFportLat-pysrc.html#SCPFportLat.CASE2">source code</a></span>
- </td>
- </tr></table>
-
- <p>Bring port up / down and measure latency. Port enable / disable is
- simulated by ifconfig up / down</p>
- <p>In ONOS-next, we must ensure that the port we are manipulating is
- connected to another switch with a valid connection. Otherwise, graph
- view will not be updated.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFswitchLat-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFswitchLat-module.html
deleted file mode 100644
index 828898f..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFswitchLat-module.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFswitchLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SCPFswitchLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFswitchLat-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package SCPFswitchLat</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFswitchLat-pysrc.html">source code</a></span></p>
-<!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Submodules</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Submodules"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html">TestON.tests.SCPFswitchLat.SCPFswitchLat</a></strong> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFswitchLat-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFswitchLat-pysrc.html
deleted file mode 100644
index 96fd680..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFswitchLat-pysrc.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFswitchLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- Package SCPFswitchLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFswitchLat-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SCPFswitchLat-module.html">Package TestON.tests.SCPFswitchLat</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">1</tt> <tt class="py-line"> </tt>
-<a name="L2"></a><tt class="py-lineno">2</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:36 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html
deleted file mode 100644
index fbbe999..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html
+++ /dev/null
@@ -1,167 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFswitchLat.SCPFswitchLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFswitchLat-module.html">Package SCPFswitchLat</a> ::
- Module SCPFswitchLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module SCPFswitchLat</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-pysrc.html">source code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Classes</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Classes"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html" class="summary-name">SCPFswitchLat</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Variables</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Variables"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code><br />
- hash(x)
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFswitchLat.SCPFswitchLat-pysrc.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFswitchLat.SCPFswitchLat-pysrc.html
deleted file mode 100644
index 43c8417..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFswitchLat.SCPFswitchLat-pysrc.html
+++ /dev/null
@@ -1,989 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFswitchLat.SCPFswitchLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFswitchLat-module.html">Package SCPFswitchLat</a> ::
- Module SCPFswitchLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-pysrc.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html">Module TestON.tests.SCPFswitchLat.SCPFswitchLat</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># CASE1 starts number of nodes specified in param file</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># cameron@onlab.us</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"> </tt>
-<a name="SCPFswitchLat"></a><div id="SCPFswitchLat-def"><a name="L5"></a><tt class="py-lineno"> 5</tt> <a class="py-toggle" href="#" id="SCPFswitchLat-toggle" onclick="return toggle('SCPFswitchLat');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html">SCPFswitchLat</a><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFswitchLat-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SCPFswitchLat-expanded"><a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"> </tt>
-<a name="SCPFswitchLat.__init__"></a><div id="SCPFswitchLat.__init__-def"><a name="L7"></a><tt class="py-lineno"> 7</tt> <a class="py-toggle" href="#" id="SCPFswitchLat.__init__-toggle" onclick="return toggle('SCPFswitchLat.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__">__init__</a><tt class="py-op">(</tt> <tt class="py-param">self</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFswitchLat.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFswitchLat.__init__-expanded"><a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method TestON.bin.cli.CLI.default()=TestON.bin.cli.CLI-class.html#default"><a title="TestON.bin.cli.CLI.default" class="py-name" href="#" onclick="return doclink('link-0', 'default', 'link-0');">default</a></tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"> </tt>
-<a name="SCPFswitchLat.CASE1"></a><div id="SCPFswitchLat.CASE1-def"><a name="L10"></a><tt class="py-lineno"> 10</tt> <a class="py-toggle" href="#" id="SCPFswitchLat.CASE1-toggle" onclick="return toggle('SCPFswitchLat.CASE1');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#CASE1">CASE1</a><tt class="py-op">(</tt> <tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFswitchLat.CASE1-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFswitchLat.CASE1-expanded"><a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">init</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">init</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">bool</tt><tt class="py-op">:</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">Fals</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">NameError</tt><tt class="py-op">:</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> <tt class="py-comment">#Load values from params file</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'checkout'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> <tt id="link-1" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-1', 'gitPull', 'link-1');">gitPull</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'GIT'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'autopull'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-name">Apps</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellApps'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt class="py-name">BENCHIp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'BENCH'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ip'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt class="py-name">MN1Ip</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'MN'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ip1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'max'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-name">cellName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'ENV'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'cellName'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-name">homeDir</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Variable TestON.bin.cli.path=TestON.bin.cli-module.html#path,Variable TestON.core.teston.path=TestON.core.teston-module.html#path"><a title="TestON.bin.cli.path
-TestON.core.teston.path" class="py-name" href="#" onclick="return doclink('link-2', 'path', 'link-2');">path</a></tt><tt class="py-op">.</tt><tt class="py-name">expanduser</tt><tt class="py-op">(</tt><tt class="py-string">'~'</tt><tt class="py-op">)</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">topoCfgFile</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TEST'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'topoConfigFile'</tt><tt class="py-op">]</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">topoCfgName</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TEST'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'topoConfigName'</tt><tt class="py-op">]</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-name">switchEventResultPath</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'DB'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'switchEventResultPath'</tt><tt class="py-op">]</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">skipMvn</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt> <tt class="py-op">[</tt><tt class="py-string">'TEST'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'mci'</tt><tt class="py-op">]</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">testONpath</tt> <tt class="py-op">=</tt> <tt class="py-name">re</tt><tt class="py-op">.</tt><tt class="py-name">sub</tt><tt class="py-op">(</tt> <tt class="py-string">"(tests)$"</tt><tt class="py-op">,</tt> <tt class="py-string">"bin"</tt><tt class="py-op">,</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">testDir</tt> <tt class="py-op">)</tt> <tt class="py-comment"># TestON/bin</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-name">user</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'CTRL'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'user'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-comment"># -- INIT SECTION, ONLY RUNS ONCE -- #</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">init</tt> <tt class="py-op">==</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">init</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">clusterCount</tt> <tt class="py-comment">#number of nodes running</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">scale</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">commit</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">timeToPost</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">runNum</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">jenkinsBuildNumber</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt class="py-name">CLIs</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">CLIs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">8</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">CLIs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">,</tt> <tt class="py-string">'ONOS'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">i</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">'cli'</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-name">timeToPost</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt><tt class="py-string">'%Y-%m-%d %H:%M:%S'</tt><tt class="py-op">)</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">runNum</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt><tt class="py-string">'%d%H%M%S'</tt><tt class="py-op">)</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">jenkinsBuildNumber</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">environ</tt><tt class="py-op">[</tt><tt class="py-string">'BUILD_NUMBER'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-3', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">'Jenkins build number: '</tt> <tt class="py-op">+</tt> <tt class="py-name">jenkinsBuildNumber</tt> <tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">:</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">jenkinsBuildNumber</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-4', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">'Job is not run by jenkins. '</tt> <tt class="py-op">+</tt> <tt class="py-string">'Build number set to: '</tt> <tt class="py-op">+</tt> <tt class="py-name">jenkinsBuildNumber</tt><tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSIp</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getOnosIps"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps" class="py-name" href="#" onclick="return doclink('link-5', 'getOnosIps', 'link-5');">getOnosIps</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">scale</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'SCALE'</tt> <tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">","</tt><tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-comment">#mvn clean install, for debugging set param 'skipCleanInstall' to yes to speed up test</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">skipMvn</tt> <tt class="py-op">!=</tt> <tt class="py-string">"off"</tt><tt class="py-op">:</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">mvnResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cleanInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall" class="py-name" href="#" onclick="return doclink('link-6', 'cleanInstall', 'link-6');">cleanInstall</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-comment">#git</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method TestON.core.teston.TestON.step()=TestON.core.teston.TestON-class.html#step"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-7', 'step', 'link-7');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Git checkout and pull "</tt> <tt class="py-op">+</tt> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-8" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-8', 'gitPull', 'link-1');">gitPull</a></tt> <tt class="py-op">==</tt> <tt class="py-string">'on'</tt><tt class="py-op">:</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">checkoutResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitCheckout"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout" class="py-name" href="#" onclick="return doclink('link-9', 'gitCheckout', 'link-9');">gitCheckout</a></tt><tt class="py-op">(</tt> <tt class="py-name">checkoutBranch</tt> <tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">pullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull" class="py-name" href="#" onclick="return doclink('link-10', 'gitPull', 'link-1');">gitPull</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">checkoutResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">pullResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-11', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Skipped git checkout and pull"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-12', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-13', 'step', 'link-7');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Grabbing commit number"</tt><tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">commit</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion,Method TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion
-TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion" class="py-name" href="#" onclick="return doclink('link-14', 'getVersion', 'link-14');">getVersion</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-comment">####</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">commit</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">commit</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">=</tt> <tt class="py-name">testONpath</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"bin"</tt><tt class="py-op">,</tt><tt class="py-string">""</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"tests/SCPFswitchLat/Dependency/"</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#copyMininetFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile" class="py-name" href="#" onclick="return doclink('link-15', 'copyMininetFile', 'link-15');">copyMininetFile</a></tt><tt class="py-op">(</tt><tt class="py-string">"topo-perf-1sw.py"</tt><tt class="py-op">,</tt> <tt class="py-name">temp</tt><tt class="py-op">,</tt> <tt class="py-name">user</tt><tt class="py-op">,</tt> <tt class="py-string">"localhost"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-comment">#main.ONOSbench.handle.expect(":~")</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-16', 'step', 'link-7');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">'Clearing previous DB log file'</tt><tt class="py-op">)</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">switchEventResultPath</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">fSwitchLog</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">switchEventResultPath</tt><tt class="py-op">,</tt> <tt class="py-string">"w+"</tt><tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">fSwitchLog</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">fSwitchLog</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-comment"># -- END OF INIT SECTION --#</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-17', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-18', 'step', 'link-7');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Adjusting scale"</tt><tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">clusterCount</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">scale</tt><tt class="py-op">.</tt><tt class="py-name">remove</tt><tt class="py-op">(</tt><tt class="py-name">scale</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-comment">#kill off all onos processes</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-19', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-20', 'step', 'link-7');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">"Safety check, killing all ONOS processes before initiating enviornment setup"</tt><tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosDie"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie" class="py-name" href="#" onclick="return doclink('link-21', 'onosDie', 'link-21');">onosDie</a></tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-comment">#Uninstall everywhere</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-22', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-23', 'step', 'link-7');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Cleaning Enviornment..."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">maxNodes</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-24', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">" Uninstalling ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall" class="py-name" href="#" onclick="return doclink('link-25', 'onosUninstall', 'link-25');">onosUninstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-26', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Sleep 10 second for uninstall to settle..."</tt><tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-27', 'sendline', 'link-27');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-comment">#construct the cell file</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-28', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Creating cell file"</tt><tt class="py-op">)</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">cellIp</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt> <tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">cellIp</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile" class="py-name" href="#" onclick="return doclink('link-29', 'createCellFile', 'link-29');">createCellFile</a></tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">ip_address</tt><tt class="py-op">,</tt> <tt class="py-name">cellName</tt><tt class="py-op">,</tt> <tt class="py-name">MN1Ip</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">Apps</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">cellIp</tt><tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-30', 'step', 'link-7');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Set Cell"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell,Method TestON.drivers.common.cli.onosdriver.OnosDriver.setCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell" class="py-name" href="#" onclick="return doclink('link-31', 'setCell', 'link-31');">setCell</a></tt><tt class="py-op">(</tt><tt class="py-name">cellName</tt><tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-32', 'step', 'link-7');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Creating ONOS package"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">packageResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage" class="py-name" href="#" onclick="return doclink('link-33', 'onosPackage', 'link-33');">onosPackage</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-34', 'step', 'link-7');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">"verify cells"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">verifyCellResult</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell" class="py-name" href="#" onclick="return doclink('link-35', 'verifyCell', 'link-35');">verifyCell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-36', 'step', 'link-7');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">'Starting mininet topology '</tt><tt class="py-op">)</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet" class="py-name" href="#" onclick="return doclink('link-37', 'startNet', 'link-37');">startNet</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-38', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"Initializeing "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt> <tt class="py-name">clusterCount</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" node cluster."</tt> <tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-39', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Starting ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" at IP: "</tt> <tt class="py-op">+</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall" class="py-name" href="#" onclick="return doclink('link-40', 'onosInstall', 'link-40');">onosInstall</a></tt><tt class="py-op">(</tt> <tt class="py-name">node</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">50</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">15</tt><tt class="py-op">)</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"attempt "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline" class="py-name" href="#" onclick="return doclink('link-41', 'sendline', 'link-27');">sendline</a></tt><tt class="py-op">(</tt><tt class="py-string">"onos $OC1 summary"</tt><tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">expect</tt><tt class="py-op">(</tt><tt class="py-string">":~"</tt><tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">"nodes="</tt> <tt class="py-keyword">in</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">before</tt><tt class="py-op">:</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt> <tt class="py-number">2</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt id="link-42" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.isup()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-42', 'isup', 'link-42');">isup</a></tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-43', 'isup', 'link-42');">isup</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-44" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-44', 'isup', 'link-42');">isup</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-45', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" is up\n"</tt><tt class="py-op">)</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt id="link-46" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.isup" class="py-name" href="#" onclick="return doclink('link-46', 'isup', 'link-42');">isup</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-47', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" didn't start!"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-48', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Startup sequence complete"</tt><tt class="py-op">)</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-comment">#time.sleep(20)</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-49', 'step', 'link-7');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">'Start onos cli'</tt><tt class="py-op">)</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-name">cli1</tt> <tt class="py-op">=</tt> <tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#startOnosCli"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli" class="py-name" href="#" onclick="return doclink('link-50', 'startOnosCli', 'link-50');">startOnosCli</a></tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-51', 'step', 'link-7');">step</a></tt><tt class="py-op">(</tt> <tt class="py-string">'Configuring application parameters'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">configName</tt> <tt class="py-op">=</tt> <tt class="py-string">'org.onosproject.net.topology.impl.DefaultTopologyProvider'</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">configParam</tt> <tt class="py-op">=</tt> <tt class="py-string">'maxEvents 1'</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosCfgSet"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-52', 'onosCfgSet', 'link-52');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">configName</tt><tt class="py-op">,</tt> <tt class="py-name">configParam</tt> <tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">configParam</tt> <tt class="py-op">=</tt> <tt class="py-string">'maxBatchMs 0'</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-53', 'onosCfgSet', 'link-52');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">configName</tt><tt class="py-op">,</tt> <tt class="py-name">configParam</tt> <tt class="py-op">)</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">configParam</tt> <tt class="py-op">=</tt> <tt class="py-string">'maxIdleMs 0'</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet" class="py-name" href="#" onclick="return doclink('link-54', 'onosCfgSet', 'link-52');">onosCfgSet</a></tt><tt class="py-op">(</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">configName</tt><tt class="py-op">,</tt> <tt class="py-name">configParam</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> </tt>
-<a name="SCPFswitchLat.CASE2"></a><div id="SCPFswitchLat.CASE2-def"><a name="L182"></a><tt class="py-lineno">182</tt> <a class="py-toggle" href="#" id="SCPFswitchLat.CASE2-toggle" onclick="return toggle('SCPFswitchLat.CASE2');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#CASE2">CASE2</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">main</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SCPFswitchLat.CASE2-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SCPFswitchLat.CASE2-expanded"><a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-keyword">print</tt> <tt class="py-string">"Cluster size: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-string">"""</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"><tt class="py-string"> Assign s3 to ONOSbench and measure latency</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"><tt class="py-string"></tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"><tt class="py-string"> There are 4 levels of latency measurements to this test:</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"><tt class="py-string"> 1 ) End-to-end measurement: Complete end-to-end measurement</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"><tt class="py-string"> from TCP ( SYN/ACK ) handshake to Graph change</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"><tt class="py-string"> 2 ) OFP-to-graph measurement: 'ONOS processing' snippet of</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"><tt class="py-string"> measurement from OFP Vendor message to Graph change</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"><tt class="py-string"> 3 ) OFP-to-device measurement: 'ONOS processing without</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"><tt class="py-string"> graph change' snippet of measurement from OFP vendor</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"><tt class="py-string"> message to Device change timestamp</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"><tt class="py-string"> 4 ) T0-to-device measurement: Measurement that includes</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"><tt class="py-string"> the switch handshake to devices timestamp without</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"><tt class="py-string"> the graph view change. ( TCP handshake -> Device</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"><tt class="py-string"> change )</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"><tt class="py-string"> """</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">subprocess</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">requests</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">numpy</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-name">ONOSUser</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'CTRL'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'user'</tt><tt class="py-op">]</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">numIter</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TEST'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'numIter'</tt><tt class="py-op">]</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-name">iterIgnore</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TEST'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'iterIgnore'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-name">deviceTimestampKey</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'JSON'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'deviceTimestamp'</tt><tt class="py-op">]</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">graphTimestampKey</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'JSON'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'graphTimestamp'</tt><tt class="py-op">]</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">debugMode</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TEST'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'debugMode'</tt><tt class="py-op">]</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-name">onosLog</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TEST'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'onosLogFile'</tt><tt class="py-op">]</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-name">resultPath</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'DB'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'switchEventResultPath'</tt><tt class="py-op">]</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-name">thresholdStr</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt><tt class="py-string">'TEST'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'singleSwThreshold'</tt><tt class="py-op">]</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-name">thresholdObj</tt> <tt class="py-op">=</tt> <tt class="py-name">thresholdStr</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">','</tt><tt class="py-op">)</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-name">thresholdMin</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">thresholdObj</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">thresholdMax</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">thresholdObj</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-comment"># Look for 'role-request' messages,</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-comment"># which replaces the 'vendor' messages previously seen</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-comment"># on OVS 2.0.1</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-name">tsharkTcpString</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TSHARK'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'tcpSynAck'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-name">tsharkFeatureReply</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TSHARK'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'featureReply'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-name">tsharkRoleRequest</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TSHARK'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'roleRequest'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-name">tsharkOfString</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TSHARK'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'ofpRoleReply'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-name">tsharkFinAckSequence</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">params</tt><tt class="py-op">[</tt> <tt class="py-string">'TSHARK'</tt> <tt class="py-op">]</tt><tt class="py-op">[</tt> <tt class="py-string">'finAckSequence'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-name">tsharkOfOutput</tt> <tt class="py-op">=</tt> <tt class="py-string">'/tmp/tshark_of_topo.txt'</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">tsharkTcpOutput</tt> <tt class="py-op">=</tt> <tt class="py-string">'/tmp/tshark_tcp_topo.txt'</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-name">tsharkRoleOutput</tt> <tt class="py-op">=</tt> <tt class="py-string">'/tmp/tshark_role_request.txt'</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-name">tsharkFeatureOutput</tt> <tt class="py-op">=</tt> <tt class="py-string">'/tmp/tshark_feature_reply.txt'</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-name">tsharkFinAckOutput</tt> <tt class="py-op">=</tt> <tt class="py-string">'/tmp/tshark_fin_ack.txt'</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-comment"># Switch connect measurement list</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-comment"># TCP Syn/Ack -> Feature Reply latency collection for each node</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">tcpToFeatureLatNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-comment"># Feature Reply -> Role Request latency collection for each node</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">featureToRoleRequestLatNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-comment"># Role Request -> Role Reply latency collection for each node</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-name">roleRequestToRoleReplyLatNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-comment"># Role Reply -> Device Update latency collection for each node</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-name">roleReplyToDeviceLatNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-comment"># Device Update -> Graph Update latency collection for each node</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-name">deviceToGraphLatNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-name">endToEndLatNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-comment"># Switch disconnect measurement lists</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-comment"># Mininet Fin / Ack -> Mininet Ack</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">finAckTransactionLatNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-comment"># Mininet Ack -> Device Event</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">ackToDeviceLatNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-comment"># Device event -> Graph event</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-name">deviceToGraphDiscLatNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-name">endToEndDiscLatNodeIter</tt> <tt class="py-op">=</tt> <tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">zeros</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-name">assertion</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-name">localTime</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt><tt class="py-string">'%x %X'</tt><tt class="py-op">)</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-name">localTime</tt> <tt class="py-op">=</tt> <tt class="py-name">localTime</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">'/'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-name">localTime</tt> <tt class="py-op">=</tt> <tt class="py-name">localTime</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">' '</tt><tt class="py-op">,</tt> <tt class="py-string">'_'</tt><tt class="py-op">)</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-name">localTime</tt> <tt class="py-op">=</tt> <tt class="py-name">localTime</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">':'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debugMode</tt> <tt class="py-op">==</tt> <tt class="py-string">'on'</tt><tt class="py-op">:</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkPcap()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkPcap"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkPcap" class="py-name" href="#" onclick="return doclink('link-55', 'tsharkPcap', 'link-55');">tsharkPcap</a></tt><tt class="py-op">(</tt><tt class="py-string">'eth0'</tt><tt class="py-op">,</tt> <tt class="py-string">'/tmp/single_sw_lat_pcap_'</tt> <tt class="py-op">+</tt> <tt class="py-name">localTime</tt><tt class="py-op">)</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-56', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">'Debug mode is on'</tt><tt class="py-op">)</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-57', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">'Latency of adding one switch to controller'</tt><tt class="py-op">)</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-58', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">'First '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">iterIgnore</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' iterations ignored'</tt> <tt class="py-op">+</tt> <tt class="py-string">' for jvm warmup time'</tt><tt class="py-op">)</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-59', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">'Total iterations of test: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">numIter</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-60', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">'Starting tshark capture'</tt><tt class="py-op">)</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkGrep()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkGrep"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkGrep" class="py-name" href="#" onclick="return doclink('link-61', 'tsharkGrep', 'link-61');">tsharkGrep</a></tt><tt class="py-op">(</tt><tt class="py-name">tsharkTcpString</tt><tt class="py-op">,</tt> <tt class="py-name">tsharkTcpOutput</tt><tt class="py-op">)</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkGrep" class="py-name" href="#" onclick="return doclink('link-62', 'tsharkGrep', 'link-61');">tsharkGrep</a></tt><tt class="py-op">(</tt><tt class="py-name">tsharkOfString</tt><tt class="py-op">,</tt> <tt class="py-name">tsharkOfOutput</tt><tt class="py-op">)</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkGrep" class="py-name" href="#" onclick="return doclink('link-63', 'tsharkGrep', 'link-61');">tsharkGrep</a></tt><tt class="py-op">(</tt><tt class="py-name">tsharkRoleRequest</tt><tt class="py-op">,</tt> <tt class="py-name">tsharkRoleOutput</tt><tt class="py-op">)</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkGrep" class="py-name" href="#" onclick="return doclink('link-64', 'tsharkGrep', 'link-61');">tsharkGrep</a></tt><tt class="py-op">(</tt><tt class="py-name">tsharkFeatureReply</tt><tt class="py-op">,</tt> <tt class="py-name">tsharkFeatureOutput</tt><tt class="py-op">)</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-65', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">'Assigning s3 to controller'</tt><tt class="py-op">)</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignSwController"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController" class="py-name" href="#" onclick="return doclink('link-66', 'assignSwController', 'link-66');">assignSwController</a></tt><tt class="py-op">(</tt><tt class="py-name">sw</tt><tt class="py-op">=</tt><tt class="py-string">'s3'</tt><tt class="py-op">,</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-name">ip</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSIp</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-name">jsonStr</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt> <tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-name">metricsSwUp</tt> <tt class="py-op">=</tt> <tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topologyEventsMetrics()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topologyEventsMetrics"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topologyEventsMetrics" class="py-name" href="#" onclick="return doclink('link-67', 'topologyEventsMetrics', 'link-67');">topologyEventsMetrics</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-name">jsonStr</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">metricsSwUp</tt><tt class="py-op">)</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">10</tt><tt class="py-op">)</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-68', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">'Stopping all Tshark processes'</tt><tt class="py-op">)</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-69" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkStop()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkStop"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkStop" class="py-name" href="#" onclick="return doclink('link-69', 'tsharkStop', 'link-69');">tsharkStop</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-string">'''</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"><tt class="py-string"> main.log.info('Copying over tshark files')</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"><tt class="py-string"> os.system('scp ' + ONOSUser + '@' + main.ONOSIp[0] +</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"><tt class="py-string"> ':' + tsharkTcpOutput + ' /tmp/')</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"><tt class="py-string"> os.system('scp ' + ONOSUser + '@' + main.ONOSIp[0] +</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"><tt class="py-string"> ':' + tsharkRoleOutput + ' /tmp/')</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"><tt class="py-string"> os.system('scp ' + ONOSUser + '@' + main.ONOSIp[0] +</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"><tt class="py-string"> ':' + tsharkFeatureOutput + ' /tmp/')</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"><tt class="py-string"> os.system('scp ' + ONOSUser + '@' +</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"><tt class="py-string"> main.ONOSIp[0] + ':' + tsharkOfOutput + ' /tmp/')</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"><tt class="py-string"> '''</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-comment"># Get tcp syn / ack output</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-name">tcpFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">tsharkTcpOutput</tt><tt class="py-op">,</tt> <tt class="py-string">'r'</tt><tt class="py-op">)</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-name">tempText</tt> <tt class="py-op">=</tt> <tt class="py-name">tcpFile</tt><tt class="py-op">.</tt><tt class="py-name">readline</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-name">tempText</tt> <tt class="py-op">=</tt> <tt class="py-name">tempText</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">' '</tt><tt class="py-op">)</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-70', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">'Object read in from TCP capture: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">tempText</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">tempText</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-name">t0Tcp</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">tempText</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">*</tt> <tt class="py-number">1000.0</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-71', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-72" class="py-name" targets="Function TestON.bin.cli.error()=TestON.bin.cli-module.html#error"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-72', 'error', 'link-72');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">'Tshark output file for TCP'</tt> <tt class="py-op">+</tt> <tt class="py-string">' returned unexpected results'</tt><tt class="py-op">)</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> <tt class="py-name">t0Tcp</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> <tt class="py-name">assertion</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-name">tcpFile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"> <tt class="py-comment"># Get Role reply output</tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> <tt class="py-name">ofFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">tsharkOfOutput</tt><tt class="py-op">,</tt> <tt class="py-string">'r'</tt><tt class="py-op">)</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt class="py-name">lineOfp</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"> <tt class="py-name">tempText</tt> <tt class="py-op">=</tt> <tt class="py-name">ofFile</tt><tt class="py-op">.</tt><tt class="py-name">readline</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tempText</tt> <tt class="py-op">!=</tt> <tt class="py-string">''</tt><tt class="py-op">:</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-name">lineOfp</tt> <tt class="py-op">=</tt> <tt class="py-name">tempText</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> <tt class="py-name">obj</tt> <tt class="py-op">=</tt> <tt class="py-name">lineOfp</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">' '</tt><tt class="py-op">)</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-73', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">'Object read in from OFP capture: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">lineOfp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">obj</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> <tt class="py-name">t0Ofp</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">*</tt> <tt class="py-number">1000.0</tt> </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-74', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-75', 'error', 'link-72');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">'Tshark output file for OFP'</tt> <tt class="py-op">+</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"> <tt class="py-string">' returned unexpected results'</tt><tt class="py-op">)</tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> <tt class="py-name">t0Ofp</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"> <tt class="py-name">assertion</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> <tt class="py-name">ofFile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> <tt class="py-comment"># Get role request output</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> <tt class="py-name">roleFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">tsharkRoleOutput</tt><tt class="py-op">,</tt> <tt class="py-string">'r'</tt><tt class="py-op">)</tt> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> <tt class="py-name">tempText</tt> <tt class="py-op">=</tt> <tt class="py-name">roleFile</tt><tt class="py-op">.</tt><tt class="py-name">readline</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> <tt class="py-name">tempText</tt> <tt class="py-op">=</tt> <tt class="py-name">tempText</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">' '</tt><tt class="py-op">)</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">tempText</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-76', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">'Object read in from role request capture:'</tt> <tt class="py-op">+</tt> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">tempText</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> <tt class="py-name">roleTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">tempText</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">*</tt> <tt class="py-number">1000.0</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-77', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-78', 'error', 'link-72');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">'Tshark output file for role request'</tt> <tt class="py-op">+</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> <tt class="py-string">' returned unexpected results'</tt><tt class="py-op">)</tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> <tt class="py-name">timeRoleRequest</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"> <tt class="py-name">assertion</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-name">roleFile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"> <tt class="py-comment"># Get feature reply output</tt> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> <tt class="py-name">featureFile</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">tsharkFeatureOutput</tt><tt class="py-op">,</tt> <tt class="py-string">'r'</tt><tt class="py-op">)</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt class="py-name">tempText</tt> <tt class="py-op">=</tt> <tt class="py-name">featureFile</tt><tt class="py-op">.</tt><tt class="py-name">readline</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"> <tt class="py-name">tempText</tt> <tt class="py-op">=</tt> <tt class="py-name">tempText</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">' '</tt><tt class="py-op">)</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">tempText</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-79', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">'Object read in from feature reply capture: '</tt><tt class="py-op">+</tt> </tt>
-<a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">tempText</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tempText</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">' '</tt> <tt class="py-keyword">and</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">tempText</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">1400000000.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">=</tt> <tt class="py-name">tempText</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">tempText</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">' '</tt> <tt class="py-keyword">and</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">tempText</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">1400000000.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">=</tt> <tt class="py-name">tempText</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"> <tt class="py-name">featureTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">temp</tt><tt class="py-op">)</tt> <tt class="py-op">*</tt> <tt class="py-number">1000.0</tt> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-80', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-81', 'error', 'link-72');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">'Tshark output file for feature reply'</tt> <tt class="py-op">+</tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"> <tt class="py-string">' returned unexpected results'</tt><tt class="py-op">)</tt> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"> <tt class="py-name">timeFeatureReply</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> <tt class="py-name">assertion</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt class="py-name">featureFile</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> <tt class="py-name">nodeNum</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">+</tt><tt class="py-number">1</tt> </tt>
-<a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> <tt class="py-comment">#metricsSwUp = CLIs[node].topologyEventsMetrics</tt> </tt>
-<a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"> <tt class="py-comment">#jsonStr = metricsSwUp()</tt> </tt>
-<a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"> <tt class="py-name">jsonObj</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">jsonStr</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonObj</tt><tt class="py-op">:</tt> </tt>
-<a name="L396"></a><tt class="py-lineno">396</tt> <tt class="py-line"> <tt class="py-name">graphTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-name">jsonObj</tt><tt class="py-op">[</tt><tt class="py-name">graphTimestampKey</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'value'</tt><tt class="py-op">]</tt> </tt>
-<a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"> <tt class="py-name">deviceTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-name">jsonObj</tt><tt class="py-op">[</tt><tt class="py-name">deviceTimestampKey</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'value'</tt><tt class="py-op">]</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-82', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-83', 'error', 'link-72');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Unexpected JSON object"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"> <tt class="py-comment"># If we could not obtain the JSON object,</tt> </tt>
-<a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"> <tt class="py-comment"># set the timestamps to 0, which will be</tt> </tt>
-<a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"> <tt class="py-comment"># excluded from the measurement later on</tt> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"> <tt class="py-comment"># (realized as invalid)</tt> </tt>
-<a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"> <tt class="py-name">graphTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"> <tt class="py-name">deviceTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"> <tt class="py-name">endToEnd</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">graphTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">t0Tcp</tt><tt class="py-op">)</tt> </tt>
-<a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"> </tt>
-<a name="L409"></a><tt class="py-lineno">409</tt> <tt class="py-line"> <tt class="py-comment"># Below are measurement breakdowns of the end-to-end</tt> </tt>
-<a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> <tt class="py-comment"># measurement.</tt> </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> <tt class="py-name">tcpToFeature</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">featureTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">t0Tcp</tt><tt class="py-op">)</tt> </tt>
-<a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"> <tt class="py-name">featureToRole</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">roleTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">featureTimestamp</tt><tt class="py-op">)</tt> </tt>
-<a name="L413"></a><tt class="py-lineno">413</tt> <tt class="py-line"> <tt class="py-name">roleToOfp</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">t0Ofp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">roleTimestamp</tt><tt class="py-op">)</tt> </tt>
-<a name="L414"></a><tt class="py-lineno">414</tt> <tt class="py-line"> <tt class="py-name">ofpToDevice</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">deviceTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">t0Ofp</tt><tt class="py-op">)</tt> </tt>
-<a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"> <tt class="py-comment"># Timestamps gathered from ONOS are millisecond</tt> </tt>
-<a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"> <tt class="py-comment"># precision. They are returned as integers, thus no</tt> </tt>
-<a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"> <tt class="py-comment"># need to be more precise than 'int'. However,</tt> </tt>
-<a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"> <tt class="py-comment"># the processing seems to be mostly under 1 ms,</tt> </tt>
-<a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"> <tt class="py-comment"># thus this may be a problem point to handle any</tt> </tt>
-<a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"> <tt class="py-comment"># submillisecond output that we are unsure of.</tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"> <tt class="py-comment"># For now, this will be treated as 0 ms if less than 1 ms</tt> </tt>
-<a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"> <tt class="py-name">deviceToGraph</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">graphTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">deviceTimestamp</tt><tt class="py-op">)</tt> </tt>
-<a name="L423"></a><tt class="py-lineno">423</tt> <tt class="py-line"> </tt>
-<a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">endToEnd</tt> <tt class="py-op">>=</tt> <tt class="py-name">thresholdMin</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"> <tt class="py-name">endToEnd</tt> <tt class="py-op"><</tt> <tt class="py-name">thresholdMax</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"> <tt class="py-name">endToEndLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">endToEnd</tt> </tt>
-<a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-84', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> <tt class="py-string">" end-to-end: "</tt><tt class="py-op">+</tt> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">endToEnd</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-85', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> <tt class="py-string">" end-to-end "</tt><tt class="py-op">+</tt> </tt>
-<a name="L431"></a><tt class="py-lineno">431</tt> <tt class="py-line"> <tt class="py-string">"measurement ignored due to excess in "</tt><tt class="py-op">+</tt> </tt>
-<a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"> <tt class="py-string">"threshold or premature iteration: "</tt><tt class="py-op">)</tt> </tt>
-<a name="L433"></a><tt class="py-lineno">433</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-86', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">endToEnd</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L434"></a><tt class="py-lineno">434</tt> <tt class="py-line"> </tt>
-<a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tcpToFeature</tt> <tt class="py-op">>=</tt> <tt class="py-name">thresholdMin</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L436"></a><tt class="py-lineno">436</tt> <tt class="py-line"> <tt class="py-name">tcpToFeature</tt> <tt class="py-op"><</tt> <tt class="py-name">thresholdMax</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L437"></a><tt class="py-lineno">437</tt> <tt class="py-line"> <tt class="py-name">tcpToFeatureLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">tcpToFeature</tt> </tt>
-<a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-87', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> <tt class="py-string">" tcp-to-feature: "</tt><tt class="py-op">+</tt> </tt>
-<a name="L439"></a><tt class="py-lineno">439</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">tcpToFeature</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L440"></a><tt class="py-lineno">440</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-88', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> <tt class="py-string">" tcp-to-feature "</tt><tt class="py-op">+</tt> </tt>
-<a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"> <tt class="py-string">"measurement ignored due to excess in "</tt><tt class="py-op">+</tt> </tt>
-<a name="L443"></a><tt class="py-lineno">443</tt> <tt class="py-line"> <tt class="py-string">"threshold or premature iteration: "</tt><tt class="py-op">)</tt> </tt>
-<a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-89', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">tcpToFeature</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L445"></a><tt class="py-lineno">445</tt> <tt class="py-line"> </tt>
-<a name="L446"></a><tt class="py-lineno">446</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">featureToRole</tt> <tt class="py-op">>=</tt> <tt class="py-name">thresholdMin</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L447"></a><tt class="py-lineno">447</tt> <tt class="py-line"> <tt class="py-name">featureToRole</tt> <tt class="py-op"><</tt> <tt class="py-name">thresholdMax</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L448"></a><tt class="py-lineno">448</tt> <tt class="py-line"> <tt class="py-name">featureToRoleRequestLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">featureToRole</tt> </tt>
-<a name="L449"></a><tt class="py-lineno">449</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-90', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> <tt class="py-string">" feature-to-role: "</tt><tt class="py-op">+</tt> </tt>
-<a name="L450"></a><tt class="py-lineno">450</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">featureToRole</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L451"></a><tt class="py-lineno">451</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L452"></a><tt class="py-lineno">452</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-91', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> <tt class="py-string">" feature-to-role "</tt><tt class="py-op">+</tt> </tt>
-<a name="L453"></a><tt class="py-lineno">453</tt> <tt class="py-line"> <tt class="py-string">"measurement ignored due to excess in "</tt><tt class="py-op">+</tt> </tt>
-<a name="L454"></a><tt class="py-lineno">454</tt> <tt class="py-line"> <tt class="py-string">"threshold or premature iteration: "</tt><tt class="py-op">)</tt> </tt>
-<a name="L455"></a><tt class="py-lineno">455</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-92', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">featureToRole</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L456"></a><tt class="py-lineno">456</tt> <tt class="py-line"> </tt>
-<a name="L457"></a><tt class="py-lineno">457</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">roleToOfp</tt> <tt class="py-op">>=</tt> <tt class="py-name">thresholdMin</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L458"></a><tt class="py-lineno">458</tt> <tt class="py-line"> <tt class="py-name">roleToOfp</tt> <tt class="py-op"><</tt> <tt class="py-name">thresholdMax</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L459"></a><tt class="py-lineno">459</tt> <tt class="py-line"> <tt class="py-name">roleRequestToRoleReplyLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">roleToOfp</tt> </tt>
-<a name="L460"></a><tt class="py-lineno">460</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-93', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> <tt class="py-string">" role-to-reply: "</tt><tt class="py-op">+</tt> </tt>
-<a name="L461"></a><tt class="py-lineno">461</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">roleToOfp</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L462"></a><tt class="py-lineno">462</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L463"></a><tt class="py-lineno">463</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-94', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> <tt class="py-string">" role-to-reply "</tt><tt class="py-op">+</tt> </tt>
-<a name="L464"></a><tt class="py-lineno">464</tt> <tt class="py-line"> <tt class="py-string">"measurement ignored due to excess in "</tt><tt class="py-op">+</tt> </tt>
-<a name="L465"></a><tt class="py-lineno">465</tt> <tt class="py-line"> <tt class="py-string">"threshold or premature iteration: "</tt><tt class="py-op">)</tt> </tt>
-<a name="L466"></a><tt class="py-lineno">466</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-95', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">roleToOfp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L467"></a><tt class="py-lineno">467</tt> <tt class="py-line"> </tt>
-<a name="L468"></a><tt class="py-lineno">468</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ofpToDevice</tt> <tt class="py-op">>=</tt> <tt class="py-name">thresholdMin</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L469"></a><tt class="py-lineno">469</tt> <tt class="py-line"> <tt class="py-name">ofpToDevice</tt> <tt class="py-op"><</tt> <tt class="py-name">thresholdMax</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L470"></a><tt class="py-lineno">470</tt> <tt class="py-line"> <tt class="py-name">roleReplyToDeviceLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">ofpToDevice</tt> </tt>
-<a name="L471"></a><tt class="py-lineno">471</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-96', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> <tt class="py-string">" reply-to-device: "</tt><tt class="py-op">+</tt> </tt>
-<a name="L472"></a><tt class="py-lineno">472</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ofpToDevice</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L473"></a><tt class="py-lineno">473</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L474"></a><tt class="py-lineno">474</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-97', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> <tt class="py-string">" reply-to-device "</tt><tt class="py-op">+</tt> </tt>
-<a name="L475"></a><tt class="py-lineno">475</tt> <tt class="py-line"> <tt class="py-string">"measurement ignored due to excess in "</tt><tt class="py-op">+</tt> </tt>
-<a name="L476"></a><tt class="py-lineno">476</tt> <tt class="py-line"> <tt class="py-string">"threshold or premature iteration: "</tt><tt class="py-op">)</tt> </tt>
-<a name="L477"></a><tt class="py-lineno">477</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-98', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ofpToDevice</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L478"></a><tt class="py-lineno">478</tt> <tt class="py-line"> </tt>
-<a name="L479"></a><tt class="py-lineno">479</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">deviceToGraph</tt> <tt class="py-op">>=</tt> <tt class="py-name">thresholdMin</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L480"></a><tt class="py-lineno">480</tt> <tt class="py-line"> <tt class="py-name">deviceToGraph</tt> <tt class="py-op"><</tt> <tt class="py-name">thresholdMax</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L481"></a><tt class="py-lineno">481</tt> <tt class="py-line"> <tt class="py-name">deviceToGraphLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceToGraph</tt> </tt>
-<a name="L482"></a><tt class="py-lineno">482</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-99', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> <tt class="py-string">" device-to-graph: "</tt><tt class="py-op">+</tt> </tt>
-<a name="L483"></a><tt class="py-lineno">483</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceToGraph</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L484"></a><tt class="py-lineno">484</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L485"></a><tt class="py-lineno">485</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">deviceToGraph</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L486"></a><tt class="py-lineno">486</tt> <tt class="py-line"> <tt class="py-name">deviceToGraphLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L487"></a><tt class="py-lineno">487</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-100', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L488"></a><tt class="py-lineno">488</tt> <tt class="py-line"> <tt class="py-string">" device-to-graph measurement "</tt><tt class="py-op">+</tt> </tt>
-<a name="L489"></a><tt class="py-lineno">489</tt> <tt class="py-line"> <tt class="py-string">"was set to 0 ms because of precision "</tt><tt class="py-op">+</tt> </tt>
-<a name="L490"></a><tt class="py-lineno">490</tt> <tt class="py-line"> <tt class="py-string">"uncertainty. "</tt><tt class="py-op">)</tt> </tt>
-<a name="L491"></a><tt class="py-lineno">491</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L492"></a><tt class="py-lineno">492</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-101', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> </tt>
-<a name="L493"></a><tt class="py-lineno">493</tt> <tt class="py-line"> <tt class="py-string">" device-to-graph "</tt><tt class="py-op">+</tt> </tt>
-<a name="L494"></a><tt class="py-lineno">494</tt> <tt class="py-line"> <tt class="py-string">"measurement ignored due to excess in "</tt><tt class="py-op">+</tt> </tt>
-<a name="L495"></a><tt class="py-lineno">495</tt> <tt class="py-line"> <tt class="py-string">"threshold or premature iteration: "</tt><tt class="py-op">)</tt> </tt>
-<a name="L496"></a><tt class="py-lineno">496</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-102', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceToGraph</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L497"></a><tt class="py-lineno">497</tt> <tt class="py-line"> </tt>
-<a name="L498"></a><tt class="py-lineno">498</tt> <tt class="py-line"> <tt class="py-comment"># ********************</tt> </tt>
-<a name="L499"></a><tt class="py-lineno">499</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L500"></a><tt class="py-lineno">500</tt> <tt class="py-line"> </tt>
-<a name="L501"></a><tt class="py-lineno">501</tt> <tt class="py-line"> <tt class="py-comment"># Get device id to remove</tt> </tt>
-<a name="L502"></a><tt class="py-lineno">502</tt> <tt class="py-line"> <tt class="py-name">deviceIdJsonStr</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOS1cli</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#devices"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices" class="py-name" href="#" onclick="return doclink('link-103', 'devices', 'link-103');">devices</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L503"></a><tt class="py-lineno">503</tt> <tt class="py-line"> </tt>
-<a name="L504"></a><tt class="py-lineno">504</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-104', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Device obj obtained: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceIdJsonStr</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L505"></a><tt class="py-lineno">505</tt> <tt class="py-line"> <tt class="py-name">deviceId</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">deviceIdJsonStr</tt><tt class="py-op">)</tt> </tt>
-<a name="L506"></a><tt class="py-lineno">506</tt> <tt class="py-line"> </tt>
-<a name="L507"></a><tt class="py-lineno">507</tt> <tt class="py-line"> <tt class="py-name">deviceList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L508"></a><tt class="py-lineno">508</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">device</tt> <tt class="py-keyword">in</tt> <tt class="py-name">deviceId</tt><tt class="py-op">:</tt> </tt>
-<a name="L509"></a><tt class="py-lineno">509</tt> <tt class="py-line"> <tt class="py-name">deviceList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">device</tt><tt class="py-op">[</tt><tt class="py-string">'id'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L510"></a><tt class="py-lineno">510</tt> <tt class="py-line"> </tt>
-<a name="L511"></a><tt class="py-lineno">511</tt> <tt class="py-line"> <tt class="py-comment"># Measure switch down metrics</tt> </tt>
-<a name="L512"></a><tt class="py-lineno">512</tt> <tt class="py-line"> <tt class="py-comment"># TCP FIN/ACK -> TCP FIN</tt> </tt>
-<a name="L513"></a><tt class="py-lineno">513</tt> <tt class="py-line"> <tt class="py-comment"># TCP FIN -> Device Event</tt> </tt>
-<a name="L514"></a><tt class="py-lineno">514</tt> <tt class="py-line"> <tt class="py-comment"># Device Event -> Graph Event</tt> </tt>
-<a name="L515"></a><tt class="py-lineno">515</tt> <tt class="py-line"> <tt class="py-comment"># Capture switch down FIN / ACK packets</tt> </tt>
-<a name="L516"></a><tt class="py-lineno">516</tt> <tt class="py-line"> </tt>
-<a name="L517"></a><tt class="py-lineno">517</tt> <tt class="py-line"> <tt class="py-comment"># The -A 1 grep option allows us to grab 1 extra line after the</tt> </tt>
-<a name="L518"></a><tt class="py-lineno">518</tt> <tt class="py-line"> <tt class="py-comment"># last tshark output grepped originally</tt> </tt>
-<a name="L519"></a><tt class="py-lineno">519</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkGrep" class="py-name" href="#" onclick="return doclink('link-105', 'tsharkGrep', 'link-61');">tsharkGrep</a></tt><tt class="py-op">(</tt> <tt class="py-name">tsharkFinAckSequence</tt><tt class="py-op">,</tt> <tt class="py-name">tsharkFinAckOutput</tt><tt class="py-op">,</tt> </tt>
-<a name="L520"></a><tt class="py-lineno">520</tt> <tt class="py-line"> <tt class="py-name">grepOptions</tt> <tt class="py-op">=</tt> <tt class="py-string">'-A 1'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L521"></a><tt class="py-lineno">521</tt> <tt class="py-line"> </tt>
-<a name="L522"></a><tt class="py-lineno">522</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L523"></a><tt class="py-lineno">523</tt> <tt class="py-line"> </tt>
-<a name="L524"></a><tt class="py-lineno">524</tt> <tt class="py-line"> <tt class="py-name">removeJsonList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L525"></a><tt class="py-lineno">525</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-106" class="py-name"><a title="TestON.core.teston.TestON.step" class="py-name" href="#" onclick="return doclink('link-106', 'step', 'link-7');">step</a></tt><tt class="py-op">(</tt><tt class="py-string">'Remove switch from controller'</tt><tt class="py-op">)</tt> </tt>
-<a name="L526"></a><tt class="py-lineno">526</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.deleteSwController()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#deleteSwController"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.deleteSwController" class="py-name" href="#" onclick="return doclink('link-107', 'deleteSwController', 'link-107');">deleteSwController</a></tt><tt class="py-op">(</tt><tt class="py-string">'s3'</tt><tt class="py-op">)</tt> </tt>
-<a name="L527"></a><tt class="py-lineno">527</tt> <tt class="py-line"> <tt class="py-name">firstDevice</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceList</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L528"></a><tt class="py-lineno">528</tt> <tt class="py-line"> </tt>
-<a name="L529"></a><tt class="py-lineno">529</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">5</tt> <tt class="py-op">)</tt> </tt>
-<a name="L530"></a><tt class="py-lineno">530</tt> <tt class="py-line"> </tt>
-<a name="L531"></a><tt class="py-lineno">531</tt> <tt class="py-line"> <tt class="py-comment"># We need to get metrics before removing</tt> </tt>
-<a name="L532"></a><tt class="py-lineno">532</tt> <tt class="py-line"> <tt class="py-comment"># device from the store below.</tt> </tt>
-<a name="L533"></a><tt class="py-lineno">533</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L534"></a><tt class="py-lineno">534</tt> <tt class="py-line"> <tt class="py-name">metricsSwDown</tt> <tt class="py-op">=</tt> <tt class="py-name">CLIs</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topologyEventsMetrics" class="py-name" href="#" onclick="return doclink('link-108', 'topologyEventsMetrics', 'link-67');">topologyEventsMetrics</a></tt> </tt>
-<a name="L535"></a><tt class="py-lineno">535</tt> <tt class="py-line"> <tt class="py-name">jsonStr</tt> <tt class="py-op">=</tt> <tt class="py-name">metricsSwDown</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L536"></a><tt class="py-lineno">536</tt> <tt class="py-line"> <tt class="py-name">removeJsonList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">jsonStr</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
-<a name="L537"></a><tt class="py-lineno">537</tt> <tt class="py-line"> </tt>
-<a name="L538"></a><tt class="py-lineno">538</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkStop" class="py-name" href="#" onclick="return doclink('link-109', 'tsharkStop', 'link-69');">tsharkStop</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L539"></a><tt class="py-lineno">539</tt> <tt class="py-line"> </tt>
-<a name="L540"></a><tt class="py-lineno">540</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-110', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt> <tt class="py-string">"Removing device "</tt> <tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">firstDevice</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> </tt>
-<a name="L541"></a><tt class="py-lineno">541</tt> <tt class="py-line"> <tt class="py-string">" from ONOS"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L542"></a><tt class="py-lineno">542</tt> <tt class="py-line"> </tt>
-<a name="L543"></a><tt class="py-lineno">543</tt> <tt class="py-line"> <tt class="py-comment">#if deviceId:</tt> </tt>
-<a name="L544"></a><tt class="py-lineno">544</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOS1cli</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name" targets="Method TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deviceRemove()=TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deviceRemove"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deviceRemove" class="py-name" href="#" onclick="return doclink('link-111', 'deviceRemove', 'link-111');">deviceRemove</a></tt><tt class="py-op">(</tt><tt class="py-name">firstDevice</tt><tt class="py-op">)</tt> </tt>
-<a name="L545"></a><tt class="py-lineno">545</tt> <tt class="py-line"> </tt>
-<a name="L546"></a><tt class="py-lineno">546</tt> <tt class="py-line"> <tt class="py-comment">#main.log.info('Copying over tshark files')</tt> </tt>
-<a name="L547"></a><tt class="py-lineno">547</tt> <tt class="py-line"> <tt class="py-comment">#os.system('scp ' + ONOSUser + '@' + main.ONOSIp[0] + ':' + tsharkFinAckOutput + ' /tmp/')</tt> </tt>
-<a name="L548"></a><tt class="py-lineno">548</tt> <tt class="py-line"> </tt>
-<a name="L549"></a><tt class="py-lineno">549</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt> <tt class="py-number">10</tt> <tt class="py-op">)</tt> </tt>
-<a name="L550"></a><tt class="py-lineno">550</tt> <tt class="py-line"> <tt class="py-name">finAckOutputList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L551"></a><tt class="py-lineno">551</tt> <tt class="py-line"> <tt class="py-keyword">with</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">tsharkFinAckOutput</tt><tt class="py-op">,</tt> <tt class="py-string">'r'</tt><tt class="py-op">)</tt> <tt class="py-keyword">as</tt> <tt class="py-name">f</tt><tt class="py-op">:</tt> </tt>
-<a name="L552"></a><tt class="py-lineno">552</tt> <tt class="py-line"> <tt class="py-name">tempLine</tt> <tt class="py-op">=</tt> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt class="py-name">readlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L553"></a><tt class="py-lineno">553</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-112', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">'Object read in from FinAck capture: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L554"></a><tt class="py-lineno">554</tt> <tt class="py-line"> <tt class="py-string">"\n"</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">tempLine</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L555"></a><tt class="py-lineno">555</tt> <tt class="py-line"> </tt>
-<a name="L556"></a><tt class="py-lineno">556</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L557"></a><tt class="py-lineno">557</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">tempLine</tt><tt class="py-op">:</tt> </tt>
-<a name="L558"></a><tt class="py-lineno">558</tt> <tt class="py-line"> <tt class="py-name">obj</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">' '</tt><tt class="py-op">)</tt> </tt>
-<a name="L559"></a><tt class="py-lineno">559</tt> <tt class="py-line"> </tt>
-<a name="L560"></a><tt class="py-lineno">560</tt> <tt class="py-line"> <tt class="py-comment"># There are at least 3 objects in field (valid</tt> </tt>
-<a name="L561"></a><tt class="py-lineno">561</tt> <tt class="py-line"> <tt class="py-comment"># tshark output is lengthy)</tt> </tt>
-<a name="L562"></a><tt class="py-lineno">562</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">obj</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L563"></a><tt class="py-lineno">563</tt> <tt class="py-line"> <tt class="py-comment"># If first index of object is like an epoch time</tt> </tt>
-<a name="L564"></a><tt class="py-lineno">564</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">' '</tt> <tt class="py-keyword">and</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">1400000000.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L565"></a><tt class="py-lineno">565</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">=</tt> <tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L566"></a><tt class="py-lineno">566</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">' '</tt><tt class="py-keyword">and</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">1400000000.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L567"></a><tt class="py-lineno">567</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">=</tt> <tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> </tt>
-<a name="L568"></a><tt class="py-lineno">568</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-number">3</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">' '</tt><tt class="py-keyword">and</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-number">3</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">></tt> <tt class="py-number">1400000000.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L569"></a><tt class="py-lineno">569</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">=</tt> <tt class="py-name">obj</tt><tt class="py-op">[</tt><tt class="py-number">3</tt><tt class="py-op">]</tt> </tt>
-<a name="L570"></a><tt class="py-lineno">570</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L571"></a><tt class="py-lineno">571</tt> <tt class="py-line"> <tt class="py-name">temp</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L572"></a><tt class="py-lineno">572</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">index</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L573"></a><tt class="py-lineno">573</tt> <tt class="py-line"> <tt class="py-name">tFinAck</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">temp</tt><tt class="py-op">)</tt> <tt class="py-op">*</tt> <tt class="py-number">1000.0</tt> </tt>
-<a name="L574"></a><tt class="py-lineno">574</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-113', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"DEBUG-- tFinAck: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">tFinAck</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L575"></a><tt class="py-lineno">575</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">index</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L576"></a><tt class="py-lineno">576</tt> <tt class="py-line"> <tt class="py-name">tAck</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">temp</tt><tt class="py-op">)</tt> <tt class="py-op">*</tt> <tt class="py-number">1000.0</tt> </tt>
-<a name="L577"></a><tt class="py-lineno">577</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-114', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"DEBUG-- tAck: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">tAck</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L578"></a><tt class="py-lineno">578</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L579"></a><tt class="py-lineno">579</tt> <tt class="py-line"> <tt class="py-name">tAck</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L580"></a><tt class="py-lineno">580</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L581"></a><tt class="py-lineno">581</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-115" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-115', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-116', 'error', 'link-72');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">'Tshark output file for OFP'</tt> <tt class="py-op">+</tt> </tt>
-<a name="L582"></a><tt class="py-lineno">582</tt> <tt class="py-line"> <tt class="py-string">' returned unexpected results'</tt><tt class="py-op">)</tt> </tt>
-<a name="L583"></a><tt class="py-lineno">583</tt> <tt class="py-line"> <tt class="py-name">tFinAck</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L584"></a><tt class="py-lineno">584</tt> <tt class="py-line"> <tt class="py-name">tAck</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L585"></a><tt class="py-lineno">585</tt> <tt class="py-line"> <tt class="py-name">assertion</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">FALSE</tt> </tt>
-<a name="L586"></a><tt class="py-lineno">586</tt> <tt class="py-line"> </tt>
-<a name="L587"></a><tt class="py-lineno">587</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L588"></a><tt class="py-lineno">588</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-117', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"DEBUG-- tFinAck: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">tFinAck</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L589"></a><tt class="py-lineno">589</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-118', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"DEBUG-- tAck: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">tAck</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L590"></a><tt class="py-lineno">590</tt> <tt class="py-line"> </tt>
-<a name="L591"></a><tt class="py-lineno">591</tt> <tt class="py-line"> <tt class="py-comment"># with open() as f takes care of closing file</tt> </tt>
-<a name="L592"></a><tt class="py-lineno">592</tt> <tt class="py-line"> </tt>
-<a name="L593"></a><tt class="py-lineno">593</tt> <tt class="py-line"> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">sleep</tt><tt class="py-op">(</tt><tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L594"></a><tt class="py-lineno">594</tt> <tt class="py-line"> </tt>
-<a name="L595"></a><tt class="py-lineno">595</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L596"></a><tt class="py-lineno">596</tt> <tt class="py-line"> <tt class="py-name">nodeNum</tt> <tt class="py-op">=</tt> <tt class="py-name">node</tt><tt class="py-op">+</tt><tt class="py-number">1</tt> </tt>
-<a name="L597"></a><tt class="py-lineno">597</tt> <tt class="py-line"> <tt class="py-name">jsonObj</tt> <tt class="py-op">=</tt> <tt class="py-name">removeJsonList</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt> </tt>
-<a name="L598"></a><tt class="py-lineno">598</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">jsonObj</tt><tt class="py-op">:</tt> </tt>
-<a name="L599"></a><tt class="py-lineno">599</tt> <tt class="py-line"> <tt class="py-name">graphTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-name">jsonObj</tt><tt class="py-op">[</tt><tt class="py-name">graphTimestampKey</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'value'</tt><tt class="py-op">]</tt> </tt>
-<a name="L600"></a><tt class="py-lineno">600</tt> <tt class="py-line"> <tt class="py-name">deviceTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-name">jsonObj</tt><tt class="py-op">[</tt><tt class="py-name">deviceTimestampKey</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'value'</tt><tt class="py-op">]</tt> </tt>
-<a name="L601"></a><tt class="py-lineno">601</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-119', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Graph timestamp: "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">graphTimestamp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L602"></a><tt class="py-lineno">602</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-120" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-120', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"Device timestamp: "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceTimestamp</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L603"></a><tt class="py-lineno">603</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L604"></a><tt class="py-lineno">604</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-121" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-121', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt id="link-122" class="py-name"><a title="TestON.bin.cli.error" class="py-name" href="#" onclick="return doclink('link-122', 'error', 'link-72');">error</a></tt><tt class="py-op">(</tt> <tt class="py-string">"Unexpected JSON object"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L605"></a><tt class="py-lineno">605</tt> <tt class="py-line"> <tt class="py-comment"># If we could not obtain the JSON object,</tt> </tt>
-<a name="L606"></a><tt class="py-lineno">606</tt> <tt class="py-line"> <tt class="py-comment"># set the timestamps to 0, which will be</tt> </tt>
-<a name="L607"></a><tt class="py-lineno">607</tt> <tt class="py-line"> <tt class="py-comment"># excluded from the measurement later on</tt> </tt>
-<a name="L608"></a><tt class="py-lineno">608</tt> <tt class="py-line"> <tt class="py-comment"># (realized as invalid)</tt> </tt>
-<a name="L609"></a><tt class="py-lineno">609</tt> <tt class="py-line"> <tt class="py-name">graphTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L610"></a><tt class="py-lineno">610</tt> <tt class="py-line"> <tt class="py-name">deviceTimestamp</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L611"></a><tt class="py-lineno">611</tt> <tt class="py-line"> </tt>
-<a name="L612"></a><tt class="py-lineno">612</tt> <tt class="py-line"> <tt class="py-name">finAckTransaction</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">tAck</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">tFinAck</tt><tt class="py-op">)</tt> </tt>
-<a name="L613"></a><tt class="py-lineno">613</tt> <tt class="py-line"> <tt class="py-name">ackToDevice</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">deviceTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">tAck</tt><tt class="py-op">)</tt> </tt>
-<a name="L614"></a><tt class="py-lineno">614</tt> <tt class="py-line"> <tt class="py-name">deviceToGraph</tt> <tt class="py-op">=</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">graphTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">float</tt><tt class="py-op">(</tt><tt class="py-name">deviceTimestamp</tt><tt class="py-op">)</tt> </tt>
-<a name="L615"></a><tt class="py-lineno">615</tt> <tt class="py-line"> <tt class="py-name">endToEndDisc</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">graphTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">tFinAck</tt><tt class="py-op">)</tt> </tt>
-<a name="L616"></a><tt class="py-lineno">616</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-123', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"DEBUG-- endToEndDisc = graphTimestamp - tFinAck == ("</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">graphTimestamp</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"-"</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">tFinAck</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">")"</tt><tt class="py-op">)</tt> </tt>
-<a name="L617"></a><tt class="py-lineno">617</tt> <tt class="py-line"> </tt>
-<a name="L618"></a><tt class="py-lineno">618</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">endToEndDisc</tt> <tt class="py-op">>=</tt> <tt class="py-name">thresholdMin</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L619"></a><tt class="py-lineno">619</tt> <tt class="py-line"> <tt class="py-name">endToEndDisc</tt> <tt class="py-op"><</tt> <tt class="py-name">thresholdMax</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L620"></a><tt class="py-lineno">620</tt> <tt class="py-line"> <tt class="py-name">endToEndDiscLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">endToEndDisc</tt> </tt>
-<a name="L621"></a><tt class="py-lineno">621</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-124" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-124', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L622"></a><tt class="py-lineno">622</tt> <tt class="py-line"> <tt class="py-string">"end-to-end disconnection: "</tt><tt class="py-op">+</tt> </tt>
-<a name="L623"></a><tt class="py-lineno">623</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">endToEndDisc</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt> <tt class="py-op">)</tt> </tt>
-<a name="L624"></a><tt class="py-lineno">624</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L625"></a><tt class="py-lineno">625</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-125', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L626"></a><tt class="py-lineno">626</tt> <tt class="py-line"> <tt class="py-string">" end-to-end disconnection "</tt><tt class="py-op">+</tt> </tt>
-<a name="L627"></a><tt class="py-lineno">627</tt> <tt class="py-line"> <tt class="py-string">"measurement ignored due to excess in "</tt><tt class="py-op">+</tt> </tt>
-<a name="L628"></a><tt class="py-lineno">628</tt> <tt class="py-line"> <tt class="py-string">"threshold or premature iteration: "</tt><tt class="py-op">)</tt> </tt>
-<a name="L629"></a><tt class="py-lineno">629</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-126', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">endToEndDisc</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L630"></a><tt class="py-lineno">630</tt> <tt class="py-line"> </tt>
-<a name="L631"></a><tt class="py-lineno">631</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">finAckTransaction</tt> <tt class="py-op">>=</tt> <tt class="py-name">thresholdMin</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L632"></a><tt class="py-lineno">632</tt> <tt class="py-line"> <tt class="py-name">finAckTransaction</tt> <tt class="py-op"><</tt> <tt class="py-name">thresholdMax</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L633"></a><tt class="py-lineno">633</tt> <tt class="py-line"> <tt class="py-name">finAckTransactionLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">finAckTransaction</tt> </tt>
-<a name="L634"></a><tt class="py-lineno">634</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-127', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> </tt>
-<a name="L635"></a><tt class="py-lineno">635</tt> <tt class="py-line"> <tt class="py-string">" fin/ack transaction: "</tt><tt class="py-op">+</tt> </tt>
-<a name="L636"></a><tt class="py-lineno">636</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">finAckTransaction</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L637"></a><tt class="py-lineno">637</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L638"></a><tt class="py-lineno">638</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-128', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> </tt>
-<a name="L639"></a><tt class="py-lineno">639</tt> <tt class="py-line"> <tt class="py-string">" fin/ack transaction "</tt><tt class="py-op">+</tt> </tt>
-<a name="L640"></a><tt class="py-lineno">640</tt> <tt class="py-line"> <tt class="py-string">"measurement ignored due to excess in "</tt><tt class="py-op">+</tt> </tt>
-<a name="L641"></a><tt class="py-lineno">641</tt> <tt class="py-line"> <tt class="py-string">"threshold or premature iteration: "</tt><tt class="py-op">)</tt> </tt>
-<a name="L642"></a><tt class="py-lineno">642</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-129', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">finAckTransaction</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L643"></a><tt class="py-lineno">643</tt> <tt class="py-line"> </tt>
-<a name="L644"></a><tt class="py-lineno">644</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ackToDevice</tt> <tt class="py-op">>=</tt> <tt class="py-name">thresholdMin</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L645"></a><tt class="py-lineno">645</tt> <tt class="py-line"> <tt class="py-name">ackToDevice</tt> <tt class="py-op"><</tt> <tt class="py-name">thresholdMax</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L646"></a><tt class="py-lineno">646</tt> <tt class="py-line"> <tt class="py-name">ackToDeviceLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">ackToDevice</tt> </tt>
-<a name="L647"></a><tt class="py-lineno">647</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-130" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-130', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> </tt>
-<a name="L648"></a><tt class="py-lineno">648</tt> <tt class="py-line"> <tt class="py-string">" ack-to-device: "</tt><tt class="py-op">+</tt> </tt>
-<a name="L649"></a><tt class="py-lineno">649</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ackToDevice</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L650"></a><tt class="py-lineno">650</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L651"></a><tt class="py-lineno">651</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-131', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> </tt>
-<a name="L652"></a><tt class="py-lineno">652</tt> <tt class="py-line"> <tt class="py-string">" ack-to-device "</tt><tt class="py-op">+</tt> </tt>
-<a name="L653"></a><tt class="py-lineno">653</tt> <tt class="py-line"> <tt class="py-string">"measurement ignored due to excess in "</tt><tt class="py-op">+</tt> </tt>
-<a name="L654"></a><tt class="py-lineno">654</tt> <tt class="py-line"> <tt class="py-string">"threshold or premature iteration: "</tt><tt class="py-op">)</tt> </tt>
-<a name="L655"></a><tt class="py-lineno">655</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-132', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ackToDevice</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L656"></a><tt class="py-lineno">656</tt> <tt class="py-line"> </tt>
-<a name="L657"></a><tt class="py-lineno">657</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">deviceToGraph</tt> <tt class="py-op">>=</tt> <tt class="py-name">thresholdMin</tt> <tt class="py-keyword">and</tt>\ </tt>
-<a name="L658"></a><tt class="py-lineno">658</tt> <tt class="py-line"> <tt class="py-name">deviceToGraph</tt> <tt class="py-op"><</tt> <tt class="py-name">thresholdMax</tt> <tt class="py-keyword">and</tt> <tt class="py-name">i</tt> <tt class="py-op">>=</tt> <tt class="py-name">iterIgnore</tt><tt class="py-op">:</tt> </tt>
-<a name="L659"></a><tt class="py-lineno">659</tt> <tt class="py-line"> <tt class="py-name">deviceToGraphDiscLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">deviceToGraph</tt> </tt>
-<a name="L660"></a><tt class="py-lineno">660</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-133', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> </tt>
-<a name="L661"></a><tt class="py-lineno">661</tt> <tt class="py-line"> <tt class="py-string">" device-to-graph disconnect: "</tt><tt class="py-op">+</tt> </tt>
-<a name="L662"></a><tt class="py-lineno">662</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceToGraph</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">" ms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L663"></a><tt class="py-lineno">663</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L664"></a><tt class="py-lineno">664</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-134" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-134', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ONOS "</tt><tt class="py-op">+</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">nodeNum</tt><tt class="py-op">)</tt><tt class="py-op">+</tt> </tt>
-<a name="L665"></a><tt class="py-lineno">665</tt> <tt class="py-line"> <tt class="py-string">" device-to-graph disconnect "</tt><tt class="py-op">+</tt> </tt>
-<a name="L666"></a><tt class="py-lineno">666</tt> <tt class="py-line"> <tt class="py-string">"measurement ignored due to excess in "</tt><tt class="py-op">+</tt> </tt>
-<a name="L667"></a><tt class="py-lineno">667</tt> <tt class="py-line"> <tt class="py-string">"threshold or premature iteration: "</tt><tt class="py-op">)</tt> </tt>
-<a name="L668"></a><tt class="py-lineno">668</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-135', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceToGraph</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L669"></a><tt class="py-lineno">669</tt> <tt class="py-line"> </tt>
-<a name="L670"></a><tt class="py-lineno">670</tt> <tt class="py-line"> <tt class="py-name">endToEndAvg</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L671"></a><tt class="py-lineno">671</tt> <tt class="py-line"> <tt class="py-name">ofpToGraphAvg</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L672"></a><tt class="py-lineno">672</tt> <tt class="py-line"> <tt class="py-name">dbCmdList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L673"></a><tt class="py-lineno">673</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">node</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">clusterCount</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L674"></a><tt class="py-lineno">674</tt> <tt class="py-line"> <tt class="py-comment"># List of latency for each node</tt> </tt>
-<a name="L675"></a><tt class="py-lineno">675</tt> <tt class="py-line"> <tt class="py-name">endToEndList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L676"></a><tt class="py-lineno">676</tt> <tt class="py-line"> <tt class="py-name">tcpToFeatureList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L677"></a><tt class="py-lineno">677</tt> <tt class="py-line"> <tt class="py-name">featureToRoleList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L678"></a><tt class="py-lineno">678</tt> <tt class="py-line"> <tt class="py-name">roleToOfpList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L679"></a><tt class="py-lineno">679</tt> <tt class="py-line"> <tt class="py-name">ofpToDeviceList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L680"></a><tt class="py-lineno">680</tt> <tt class="py-line"> <tt class="py-name">deviceToGraphList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L681"></a><tt class="py-lineno">681</tt> <tt class="py-line"> </tt>
-<a name="L682"></a><tt class="py-lineno">682</tt> <tt class="py-line"> <tt class="py-name">finAckTransactionList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L683"></a><tt class="py-lineno">683</tt> <tt class="py-line"> <tt class="py-name">ackToDeviceList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L684"></a><tt class="py-lineno">684</tt> <tt class="py-line"> <tt class="py-name">deviceToGraphDiscList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L685"></a><tt class="py-lineno">685</tt> <tt class="py-line"> <tt class="py-name">endToEndDiscList</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L686"></a><tt class="py-lineno">686</tt> <tt class="py-line"> </tt>
-<a name="L687"></a><tt class="py-lineno">687</tt> <tt class="py-line"> <tt class="py-comment"># LatNodeIter 2d arrays contain all iteration latency</tt> </tt>
-<a name="L688"></a><tt class="py-lineno">688</tt> <tt class="py-line"> <tt class="py-comment"># for each node of the current scale cluster size</tt> </tt>
-<a name="L689"></a><tt class="py-lineno">689</tt> <tt class="py-line"> <tt class="py-comment"># Switch connection measurements</tt> </tt>
-<a name="L690"></a><tt class="py-lineno">690</tt> <tt class="py-line"> <tt class="py-comment"># Set further acceptance criteria for measurements</tt> </tt>
-<a name="L691"></a><tt class="py-lineno">691</tt> <tt class="py-line"> <tt class="py-comment"># here if you would like to filter reporting results</tt> </tt>
-<a name="L692"></a><tt class="py-lineno">692</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">endToEndLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L693"></a><tt class="py-lineno">693</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">></tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L694"></a><tt class="py-lineno">694</tt> <tt class="py-line"> <tt class="py-name">endToEndList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L695"></a><tt class="py-lineno">695</tt> <tt class="py-line"> </tt>
-<a name="L696"></a><tt class="py-lineno">696</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">tcpToFeatureLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L697"></a><tt class="py-lineno">697</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">></tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L698"></a><tt class="py-lineno">698</tt> <tt class="py-line"> <tt class="py-name">tcpToFeatureList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L699"></a><tt class="py-lineno">699</tt> <tt class="py-line"> </tt>
-<a name="L700"></a><tt class="py-lineno">700</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">featureToRoleRequestLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L701"></a><tt class="py-lineno">701</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">></tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L702"></a><tt class="py-lineno">702</tt> <tt class="py-line"> <tt class="py-name">featureToRoleList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L703"></a><tt class="py-lineno">703</tt> <tt class="py-line"> </tt>
-<a name="L704"></a><tt class="py-lineno">704</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">roleRequestToRoleReplyLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L705"></a><tt class="py-lineno">705</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">></tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L706"></a><tt class="py-lineno">706</tt> <tt class="py-line"> <tt class="py-name">roleToOfpList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L707"></a><tt class="py-lineno">707</tt> <tt class="py-line"> </tt>
-<a name="L708"></a><tt class="py-lineno">708</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">roleReplyToDeviceLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L709"></a><tt class="py-lineno">709</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">>=</tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L710"></a><tt class="py-lineno">710</tt> <tt class="py-line"> <tt class="py-name">ofpToDeviceList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L711"></a><tt class="py-lineno">711</tt> <tt class="py-line"> </tt>
-<a name="L712"></a><tt class="py-lineno">712</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">featureToRoleRequestLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L713"></a><tt class="py-lineno">713</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">></tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L714"></a><tt class="py-lineno">714</tt> <tt class="py-line"> <tt class="py-name">featureToRoleList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L715"></a><tt class="py-lineno">715</tt> <tt class="py-line"> </tt>
-<a name="L716"></a><tt class="py-lineno">716</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">deviceToGraphLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L717"></a><tt class="py-lineno">717</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">>=</tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L718"></a><tt class="py-lineno">718</tt> <tt class="py-line"> <tt class="py-name">deviceToGraphList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L719"></a><tt class="py-lineno">719</tt> <tt class="py-line"> </tt>
-<a name="L720"></a><tt class="py-lineno">720</tt> <tt class="py-line"> <tt class="py-comment"># Switch disconnect measurements</tt> </tt>
-<a name="L721"></a><tt class="py-lineno">721</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">endToEndDiscLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L722"></a><tt class="py-lineno">722</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">></tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L723"></a><tt class="py-lineno">723</tt> <tt class="py-line"> <tt class="py-name">endToEndDiscList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L724"></a><tt class="py-lineno">724</tt> <tt class="py-line"> </tt>
-<a name="L725"></a><tt class="py-lineno">725</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">finAckTransactionLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L726"></a><tt class="py-lineno">726</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">></tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L727"></a><tt class="py-lineno">727</tt> <tt class="py-line"> <tt class="py-name">finAckTransactionList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L728"></a><tt class="py-lineno">728</tt> <tt class="py-line"> </tt>
-<a name="L729"></a><tt class="py-lineno">729</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ackToDeviceLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L730"></a><tt class="py-lineno">730</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">></tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L731"></a><tt class="py-lineno">731</tt> <tt class="py-line"> <tt class="py-name">ackToDeviceList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L732"></a><tt class="py-lineno">732</tt> <tt class="py-line"> </tt>
-<a name="L733"></a><tt class="py-lineno">733</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">deviceToGraphDiscLatNodeIter</tt><tt class="py-op">[</tt><tt class="py-name">node</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L734"></a><tt class="py-lineno">734</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">item</tt> <tt class="py-op">>=</tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L735"></a><tt class="py-lineno">735</tt> <tt class="py-line"> <tt class="py-name">deviceToGraphDiscList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L736"></a><tt class="py-lineno">736</tt> <tt class="py-line"> </tt>
-<a name="L737"></a><tt class="py-lineno">737</tt> <tt class="py-line"> <tt class="py-name">endToEndAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">endToEndList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L738"></a><tt class="py-lineno">738</tt> <tt class="py-line"> <tt class="py-name">endToEndStdDev</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">endToEndList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L739"></a><tt class="py-lineno">739</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-136" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-136', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"endToEndList: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">endToEndList</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L740"></a><tt class="py-lineno">740</tt> <tt class="py-line"> </tt>
-<a name="L741"></a><tt class="py-lineno">741</tt> <tt class="py-line"> <tt class="py-name">tcpToFeatureAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">tcpToFeatureList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L742"></a><tt class="py-lineno">742</tt> <tt class="py-line"> <tt class="py-name">tcpToFeatureStdDev</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">tcpToFeatureList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L743"></a><tt class="py-lineno">743</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-137', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"tcpToFeatureList: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">tcpToFeatureList</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L744"></a><tt class="py-lineno">744</tt> <tt class="py-line"> </tt>
-<a name="L745"></a><tt class="py-lineno">745</tt> <tt class="py-line"> <tt class="py-name">featureToRoleAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">featureToRoleList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L746"></a><tt class="py-lineno">746</tt> <tt class="py-line"> <tt class="py-name">featureToRoleStdDev</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">featureToRoleList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L747"></a><tt class="py-lineno">747</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-138', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"featureToRoleList: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">featureToRoleList</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L748"></a><tt class="py-lineno">748</tt> <tt class="py-line"> </tt>
-<a name="L749"></a><tt class="py-lineno">749</tt> <tt class="py-line"> <tt class="py-name">roleToOfpAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">roleToOfpList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L750"></a><tt class="py-lineno">750</tt> <tt class="py-line"> <tt class="py-name">roleToOfpStdDev</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">roleToOfpList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L751"></a><tt class="py-lineno">751</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-139" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-139', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"roleToOfList: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">roleToOfpList</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L752"></a><tt class="py-lineno">752</tt> <tt class="py-line"> </tt>
-<a name="L753"></a><tt class="py-lineno">753</tt> <tt class="py-line"> <tt class="py-name">ofpToDeviceAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">ofpToDeviceList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L754"></a><tt class="py-lineno">754</tt> <tt class="py-line"> <tt class="py-name">ofpToDeviceStdDev</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">ofpToDeviceList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L755"></a><tt class="py-lineno">755</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-140" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-140', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ofpToDeviceList: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ofpToDeviceList</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L756"></a><tt class="py-lineno">756</tt> <tt class="py-line"> </tt>
-<a name="L757"></a><tt class="py-lineno">757</tt> <tt class="py-line"> <tt class="py-name">deviceToGraphAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">deviceToGraphList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L758"></a><tt class="py-lineno">758</tt> <tt class="py-line"> <tt class="py-name">deviceToGraphStdDev</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">deviceToGraphList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L759"></a><tt class="py-lineno">759</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-141" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-141', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"deviceToGraphList: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceToGraphList</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L760"></a><tt class="py-lineno">760</tt> <tt class="py-line"> </tt>
-<a name="L761"></a><tt class="py-lineno">761</tt> <tt class="py-line"> <tt class="py-name">endToEndDiscAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">endToEndDiscList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L762"></a><tt class="py-lineno">762</tt> <tt class="py-line"> <tt class="py-name">endToEndDiscStdDev</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">endToEndDiscList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L763"></a><tt class="py-lineno">763</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-142', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"endToEndDiscList: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">endToEndDiscList</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L764"></a><tt class="py-lineno">764</tt> <tt class="py-line"> </tt>
-<a name="L765"></a><tt class="py-lineno">765</tt> <tt class="py-line"> <tt class="py-name">finAckAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">finAckTransactionList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L766"></a><tt class="py-lineno">766</tt> <tt class="py-line"> <tt class="py-name">finAckStdDev</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">finAckTransactionList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L767"></a><tt class="py-lineno">767</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-143', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"finAckTransactionList: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">finAckTransactionList</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L768"></a><tt class="py-lineno">768</tt> <tt class="py-line"> </tt>
-<a name="L769"></a><tt class="py-lineno">769</tt> <tt class="py-line"> <tt class="py-name">ackToDeviceAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">ackToDeviceList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L770"></a><tt class="py-lineno">770</tt> <tt class="py-line"> <tt class="py-name">ackToDeviceStdDev</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">ackToDeviceList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L771"></a><tt class="py-lineno">771</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-144" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-144', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"ackToDeviceList: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ackToDeviceList</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L772"></a><tt class="py-lineno">772</tt> <tt class="py-line"> </tt>
-<a name="L773"></a><tt class="py-lineno">773</tt> <tt class="py-line"> <tt class="py-name">deviceToGraphDiscAvg</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">mean</tt><tt class="py-op">(</tt><tt class="py-name">deviceToGraphDiscList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L774"></a><tt class="py-lineno">774</tt> <tt class="py-line"> <tt class="py-name">deviceToGraphDiscStdDev</tt> <tt class="py-op">=</tt> <tt class="py-name">round</tt><tt class="py-op">(</tt><tt class="py-name">numpy</tt><tt class="py-op">.</tt><tt class="py-name">std</tt><tt class="py-op">(</tt><tt class="py-name">deviceToGraphDiscList</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L775"></a><tt class="py-lineno">775</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-145" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-145', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">info</tt><tt class="py-op">(</tt><tt class="py-string">"deviceToGraphDiscList: "</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceToGraphDiscList</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L776"></a><tt class="py-lineno">776</tt> <tt class="py-line"> </tt>
-<a name="L777"></a><tt class="py-lineno">777</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-146" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-146', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' - Node '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' Summary - '</tt><tt class="py-op">)</tt> </tt>
-<a name="L778"></a><tt class="py-lineno">778</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-147', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' - Switch Connection Statistics - '</tt><tt class="py-op">)</tt> </tt>
-<a name="L779"></a><tt class="py-lineno">779</tt> <tt class="py-line"> </tt>
-<a name="L780"></a><tt class="py-lineno">780</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-148" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-148', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' End-to-end Avg: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">endToEndAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L781"></a><tt class="py-lineno">781</tt> <tt class="py-line"> <tt class="py-string">' ms'</tt> <tt class="py-op">+</tt> <tt class="py-string">' End-to-end Std dev: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L782"></a><tt class="py-lineno">782</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">endToEndStdDev</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L783"></a><tt class="py-lineno">783</tt> <tt class="py-line"> </tt>
-<a name="L784"></a><tt class="py-lineno">784</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-149" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-149', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Tcp-to-feature-reply Avg: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L785"></a><tt class="py-lineno">785</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">tcpToFeatureAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L786"></a><tt class="py-lineno">786</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-150" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-150', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Tcp-to-feature-reply Std dev: '</tt><tt class="py-op">+</tt> </tt>
-<a name="L787"></a><tt class="py-lineno">787</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">tcpToFeatureStdDev</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L788"></a><tt class="py-lineno">788</tt> <tt class="py-line"> </tt>
-<a name="L789"></a><tt class="py-lineno">789</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-151" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-151', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Feature-reply-to-role-request Avg: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L790"></a><tt class="py-lineno">790</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">featureToRoleAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L791"></a><tt class="py-lineno">791</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-152', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Feature-reply-to-role-request Std Dev: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L792"></a><tt class="py-lineno">792</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">featureToRoleStdDev</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L793"></a><tt class="py-lineno">793</tt> <tt class="py-line"> </tt>
-<a name="L794"></a><tt class="py-lineno">794</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-153', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Role-request-to-role-reply Avg: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L795"></a><tt class="py-lineno">795</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">roleToOfpAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt><tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L796"></a><tt class="py-lineno">796</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-154" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-154', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Role-request-to-role-reply Std dev: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L797"></a><tt class="py-lineno">797</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">roleToOfpStdDev</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L798"></a><tt class="py-lineno">798</tt> <tt class="py-line"> </tt>
-<a name="L799"></a><tt class="py-lineno">799</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-155', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Role-reply-to-device Avg: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L800"></a><tt class="py-lineno">800</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ofpToDeviceAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt><tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L801"></a><tt class="py-lineno">801</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-156" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-156', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Role-reply-to-device Std dev: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L802"></a><tt class="py-lineno">802</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ofpToDeviceStdDev</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L803"></a><tt class="py-lineno">803</tt> <tt class="py-line"> </tt>
-<a name="L804"></a><tt class="py-lineno">804</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-157', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Device-to-graph Avg: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L805"></a><tt class="py-lineno">805</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceToGraphAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L806"></a><tt class="py-lineno">806</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-158" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-158', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt> <tt class="py-string">'Device-to-graph Std dev: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L807"></a><tt class="py-lineno">807</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceToGraphStdDev</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L808"></a><tt class="py-lineno">808</tt> <tt class="py-line"> </tt>
-<a name="L809"></a><tt class="py-lineno">809</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-159" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-159', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' - Switch Disconnection Statistics - '</tt><tt class="py-op">)</tt> </tt>
-<a name="L810"></a><tt class="py-lineno">810</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-160" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-160', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' End-to-end switch disconnect Avg: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L811"></a><tt class="py-lineno">811</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">endToEndDiscAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L812"></a><tt class="py-lineno">812</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-161" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-161', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' End-to-end switch disconnect Std dev: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L813"></a><tt class="py-lineno">813</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">endToEndDiscStdDev</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L814"></a><tt class="py-lineno">814</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-162', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Fin/Ack-to-Ack Avg: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">finAckAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L815"></a><tt class="py-lineno">815</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-163" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-163', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Fin/Ack-to-Ack Std dev: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L816"></a><tt class="py-lineno">816</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">finAckStdDev</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L817"></a><tt class="py-lineno">817</tt> <tt class="py-line"> </tt>
-<a name="L818"></a><tt class="py-lineno">818</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-164" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-164', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Ack-to-device Avg: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ackToDeviceAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L819"></a><tt class="py-lineno">819</tt> <tt class="py-line"> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L820"></a><tt class="py-lineno">820</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-165" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-165', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Ack-to-device Std dev: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ackToDeviceStdDev</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L821"></a><tt class="py-lineno">821</tt> <tt class="py-line"> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L822"></a><tt class="py-lineno">822</tt> <tt class="py-line"> </tt>
-<a name="L823"></a><tt class="py-lineno">823</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-166" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-166', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Device-to-graph (disconnect) Avg: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L824"></a><tt class="py-lineno">824</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceToGraphDiscAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L825"></a><tt class="py-lineno">825</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-167', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-string">' Device-to-graph (disconnect) Std dev: '</tt> <tt class="py-op">+</tt> </tt>
-<a name="L826"></a><tt class="py-lineno">826</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceToGraphDiscStdDev</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' ms'</tt><tt class="py-op">)</tt> </tt>
-<a name="L827"></a><tt class="py-lineno">827</tt> <tt class="py-line"> </tt>
-<a name="L828"></a><tt class="py-lineno">828</tt> <tt class="py-line"> <tt class="py-comment"># For database schema, refer to Amazon web services</tt> </tt>
-<a name="L829"></a><tt class="py-lineno">829</tt> <tt class="py-line"> <tt class="py-name">dbCmdList</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> </tt>
-<a name="L830"></a><tt class="py-lineno">830</tt> <tt class="py-line"> <tt class="py-string">"INSERT INTO switch_latency_details VALUES('"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L831"></a><tt class="py-lineno">831</tt> <tt class="py-line"> <tt class="py-name">timeToPost</tt> <tt class="py-op">+</tt> <tt class="py-string">"','switch_latency_results',"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L832"></a><tt class="py-lineno">832</tt> <tt class="py-line"> <tt class="py-name">jenkinsBuildNumber</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">clusterCount</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">",'baremetal"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L833"></a><tt class="py-lineno">833</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">node</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"',"</tt> <tt class="py-op">+</tt> </tt>
-<a name="L834"></a><tt class="py-lineno">834</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">endToEndAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> </tt>
-<a name="L835"></a><tt class="py-lineno">835</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">tcpToFeatureAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> </tt>
-<a name="L836"></a><tt class="py-lineno">836</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">featureToRoleAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> </tt>
-<a name="L837"></a><tt class="py-lineno">837</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">roleToOfpAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> </tt>
-<a name="L838"></a><tt class="py-lineno">838</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ofpToDeviceAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> </tt>
-<a name="L839"></a><tt class="py-lineno">839</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceToGraphAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> </tt>
-<a name="L840"></a><tt class="py-lineno">840</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">endToEndDiscAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> </tt>
-<a name="L841"></a><tt class="py-lineno">841</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">finAckAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> </tt>
-<a name="L842"></a><tt class="py-lineno">842</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">ackToDeviceAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">','</tt> <tt class="py-op">+</tt> </tt>
-<a name="L843"></a><tt class="py-lineno">843</tt> <tt class="py-line"> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">deviceToGraphDiscAvg</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> </tt>
-<a name="L844"></a><tt class="py-lineno">844</tt> <tt class="py-line"> <tt class="py-string">');'</tt><tt class="py-op">)</tt> </tt>
-<a name="L845"></a><tt class="py-lineno">845</tt> <tt class="py-line"> </tt>
-<a name="L846"></a><tt class="py-lineno">846</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">debugMode</tt> <tt class="py-op">==</tt> <tt class="py-string">'on'</tt><tt class="py-op">:</tt> </tt>
-<a name="L847"></a><tt class="py-lineno">847</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">ONOSbench</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name" targets="Method TestON.drivers.common.cli.onosdriver.OnosDriver.cpLogsToDir()=TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cpLogsToDir"><a title="TestON.drivers.common.cli.onosdriver.OnosDriver.cpLogsToDir" class="py-name" href="#" onclick="return doclink('link-168', 'cpLogsToDir', 'link-168');">cpLogsToDir</a></tt><tt class="py-op">(</tt><tt class="py-string">'/opt/onos/log/karaf.log'</tt><tt class="py-op">,</tt> </tt>
-<a name="L848"></a><tt class="py-lineno">848</tt> <tt class="py-line"> <tt class="py-string">'/tmp/'</tt><tt class="py-op">,</tt> <tt class="py-name">copyFileName</tt><tt class="py-op">=</tt><tt class="py-string">'sw_lat_karaf'</tt><tt class="py-op">)</tt> </tt>
-<a name="L849"></a><tt class="py-lineno">849</tt> <tt class="py-line"> <tt class="py-name">fResult</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">resultPath</tt><tt class="py-op">,</tt> <tt class="py-string">'a'</tt><tt class="py-op">)</tt> </tt>
-<a name="L850"></a><tt class="py-lineno">850</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">dbCmdList</tt><tt class="py-op">:</tt> </tt>
-<a name="L851"></a><tt class="py-lineno">851</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">line</tt><tt class="py-op">:</tt> </tt>
-<a name="L852"></a><tt class="py-lineno">852</tt> <tt class="py-line"> <tt class="py-name">fResult</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt><tt class="py-name">line</tt> <tt class="py-op">+</tt> <tt class="py-string">'\n'</tt><tt class="py-op">)</tt> </tt>
-<a name="L853"></a><tt class="py-lineno">853</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt id="link-169" class="py-name"><a title="TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log" class="py-name" href="#" onclick="return doclink('link-169', 'log', 'link-3');">log</a></tt><tt class="py-op">.</tt><tt class="py-name">report</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L854"></a><tt class="py-lineno">854</tt> <tt class="py-line"> <tt class="py-name">fResult</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L855"></a><tt class="py-lineno">855</tt> <tt class="py-line"> </tt>
-<a name="L856"></a><tt class="py-lineno">856</tt> <tt class="py-line"> <tt class="py-name">assertion</tt> <tt class="py-op">=</tt> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt> </tt>
-<a name="L857"></a><tt class="py-lineno">857</tt> <tt class="py-line"> </tt>
-<a name="L858"></a><tt class="py-lineno">858</tt> <tt class="py-line"> <tt class="py-name">utilities</tt><tt class="py-op">.</tt><tt class="py-name">assert_equals</tt><tt class="py-op">(</tt><tt class="py-name">expect</tt><tt class="py-op">=</tt><tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">TRUE</tt><tt class="py-op">,</tt> <tt class="py-name">actual</tt><tt class="py-op">=</tt><tt class="py-name">assertion</tt><tt class="py-op">,</tt> </tt>
-<a name="L859"></a><tt class="py-lineno">859</tt> <tt class="py-line"> <tt class="py-name">onpass</tt><tt class="py-op">=</tt><tt class="py-string">'Switch latency test successful'</tt><tt class="py-op">,</tt> </tt>
-<a name="L860"></a><tt class="py-lineno">860</tt> <tt class="py-line"> <tt id="link-170" class="py-name" targets="Method TestON.core.teston.TestON.onfail()=TestON.core.teston.TestON-class.html#onfail,Method TestON.drivers.common.clidriver.CLI.onfail()=TestON.drivers.common.clidriver.CLI-class.html#onfail"><a title="TestON.core.teston.TestON.onfail
-TestON.drivers.common.clidriver.CLI.onfail" class="py-name" href="#" onclick="return doclink('link-170', 'onfail', 'link-170');">onfail</a></tt><tt class="py-op">=</tt><tt class="py-string">'Switch latency test failed'</tt><tt class="py-op">)</tt> </tt>
-<a name="L861"></a><tt class="py-lineno">861</tt> <tt class="py-line"> </tt>
-<a name="L862"></a><tt class="py-lineno">862</tt> <tt class="py-line"> <tt class="py-name">main</tt><tt class="py-op">.</tt><tt class="py-name">Mininet1</tt><tt class="py-op">.</tt><tt id="link-171" class="py-name" targets="Method TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet()=TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopNet"><a title="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet" class="py-name" href="#" onclick="return doclink('link-171', 'stopNet', 'link-171');">stopNet</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L863"></a><tt class="py-lineno">863</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:40 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html b/TestON/Documentation/TestON_Document/TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html
deleted file mode 100644
index 7ef3880..0000000
--- a/TestON/Documentation/TestON_Document/TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html
+++ /dev/null
@@ -1,185 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="TestON-module.html">Package TestON</a> ::
- <a href="TestON.tests-module.html">Package tests</a> ::
- <a href="TestON.tests.SCPFswitchLat-module.html">Package SCPFswitchLat</a> ::
- <a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html">Module SCPFswitchLat</a> ::
- Class SCPFswitchLat
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SCPFswitchLat</h1><p class="nomargin-top"><span class="codelink"><a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-pysrc.html#SCPFswitchLat">source code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-pysrc.html#SCPFswitchLat.__init__">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE1"></a><span class="summary-sig-name">CASE1</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-pysrc.html#SCPFswitchLat.CASE1">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="CASE2"></a><span class="summary-sig-name">CASE2</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">main</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-pysrc.html#SCPFswitchLat.CASE2">source code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:35 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/api-objects.txt b/TestON/Documentation/TestON_Document/api-objects.txt
deleted file mode 100644
index db5f8b3..0000000
--- a/TestON/Documentation/TestON_Document/api-objects.txt
+++ /dev/null
@@ -1,1268 +0,0 @@
-TestON TestON-module.html
-TestON.__package__ TestON-module.html#__package__
-TestON.bin TestON.bin-module.html
-TestON.bin.__package__ TestON.bin-module.html#__package__
-TestON.bin.cli TestON.bin.cli-module.html
-TestON.bin.cli.dump TestON.bin.cli-module.html#dump
-TestON.bin.cli.dictToObj TestON.bin.cli-module.html#dictToObj
-TestON.bin.cli.path TestON.bin.cli-module.html#path
-TestON.bin.cli.logs_path TestON.bin.cli-module.html#logs_path
-TestON.bin.cli.config_path TestON.bin.cli-module.html#config_path
-TestON.bin.cli.introduction TestON.bin.cli-module.html#introduction
-TestON.bin.cli.__package__ TestON.bin.cli-module.html#__package__
-TestON.bin.cli.location TestON.bin.cli-module.html#location
-TestON.bin.cli.core_path TestON.bin.cli-module.html#core_path
-TestON.bin.cli.drivers_path TestON.bin.cli-module.html#drivers_path
-TestON.bin.cli.error TestON.bin.cli-module.html#error
-TestON.bin.cli.output TestON.bin.cli-module.html#output
-TestON.bin.cli.tests_path TestON.bin.cli-module.html#tests_path
-TestON.bin.generatedriver TestON.bin.generatedriver-module.html
-TestON.bin.generatedriver.__package__ TestON.bin.generatedriver-module.html#__package__
-TestON.bin.nec TestON.bin.nec-module.html
-TestON.bin.nec.__package__ TestON.bin.nec-module.html#__package__
-TestON.bin.updatedriver TestON.bin.updatedriver-module.html
-TestON.bin.updatedriver.__package__ TestON.bin.updatedriver-module.html#__package__
-TestON.bin.vyatta TestON.bin.vyatta-module.html
-TestON.bin.vyatta.__package__ TestON.bin.vyatta-module.html#__package__
-TestON.core TestON.core-module.html
-TestON.core.__package__ TestON.core-module.html#__package__
-TestON.core.Thread TestON.core.Thread-module.html
-TestON.core.Thread.__package__ TestON.core.Thread-module.html#__package__
-TestON.core.ast TestON.core.ast-module.html
-TestON.core.ast.fix_missing_locations TestON.core.ast-module.html#fix_missing_locations
-TestON.core.ast.get_docstring TestON.core.ast-module.html#get_docstring
-TestON.core.ast.PyCF_ONLY_AST TestON.core.ast-module.html#PyCF_ONLY_AST
-TestON.core.ast.iter_child_nodes TestON.core.ast-module.html#iter_child_nodes
-TestON.core.ast.walk TestON.core.ast-module.html#walk
-TestON.core.ast.increment_lineno TestON.core.ast-module.html#increment_lineno
-TestON.core.ast.dump TestON.core.ast-module.html#dump
-TestON.core.ast.iter_fields TestON.core.ast-module.html#iter_fields
-TestON.core.ast.parse TestON.core.ast-module.html#parse
-TestON.core.ast.__package__ TestON.core.ast-module.html#__package__
-TestON.core.ast.copy_location TestON.core.ast-module.html#copy_location
-TestON.core.ast.literal_eval TestON.core.ast-module.html#literal_eval
-TestON.core.dicttoobject TestON.core.dicttoobject-module.html
-TestON.core.dicttoobject.__package__ TestON.core.dicttoobject-module.html#__package__
-TestON.core.iniparser TestON.core.iniparser-module.html
-TestON.core.iniparser.__package__ TestON.core.iniparser-module.html#__package__
-TestON.core.jsonparser TestON.core.jsonparser-module.html
-TestON.core.jsonparser.__package__ TestON.core.jsonparser-module.html#__package__
-TestON.core.logger TestON.core.logger-module.html
-TestON.core.logger.__package__ TestON.core.logger-module.html#__package__
-TestON.core.openspeak TestON.core.openspeak-module.html
-TestON.core.openspeak.__package__ TestON.core.openspeak-module.html#__package__
-TestON.core.teston TestON.core.teston-module.html
-TestON.core.teston.load_parser TestON.core.teston-module.html#load_parser
-TestON.core.teston.load_defaultParser TestON.core.teston-module.html#load_defaultParser
-TestON.core.teston.verifyOnosCell TestON.core.teston-module.html#verifyOnosCell
-TestON.core.teston.verifyTest TestON.core.teston-module.html#verifyTest
-TestON.core.teston.path TestON.core.teston-module.html#path
-TestON.core.teston.logs_path TestON.core.teston-module.html#logs_path
-TestON.core.teston.load_defaultlogger TestON.core.teston-module.html#load_defaultlogger
-TestON.core.teston.config_path TestON.core.teston-module.html#config_path
-TestON.core.teston.verifyExample TestON.core.teston-module.html#verifyExample
-TestON.core.teston.__package__ TestON.core.teston-module.html#__package__
-TestON.core.teston.location TestON.core.teston-module.html#location
-TestON.core.teston.Thread TestON.core.Thread.Thread-class.html
-TestON.core.teston.verifyOptions TestON.core.teston-module.html#verifyOptions
-TestON.core.teston.verifyLogdir TestON.core.teston-module.html#verifyLogdir
-TestON.core.teston.core_path TestON.core.teston-module.html#core_path
-TestON.core.teston.verifyParams TestON.core.teston-module.html#verifyParams
-TestON.core.teston.drivers_path TestON.core.teston-module.html#drivers_path
-TestON.core.teston.load_logger TestON.core.teston-module.html#load_logger
-TestON.core.teston._echo TestON.core.teston-module.html#_echo
-TestON.core.teston.verifyTestScript TestON.core.teston-module.html#verifyTestScript
-TestON.core.teston.verifyMail TestON.core.teston-module.html#verifyMail
-TestON.core.teston.tests_path TestON.core.teston-module.html#tests_path
-TestON.core.teston.verifyTestCases TestON.core.teston-module.html#verifyTestCases
-TestON.core.testparser TestON.core.testparser-module.html
-TestON.core.testparser.__package__ TestON.core.testparser-module.html#__package__
-TestON.core.xmldict TestON.core.xmldict-module.html
-TestON.core.xmldict._from_xml TestON.core.xmldict-module.html#_from_xml
-TestON.core.xmldict._str_to_boolean TestON.core.xmldict-module.html#_str_to_boolean
-TestON.core.xmldict._to_xml TestON.core.xmldict-module.html#_to_xml
-TestON.core.xmldict._val_and_maybe_convert TestON.core.xmldict-module.html#_val_and_maybe_convert
-TestON.core.xmldict.dict_to_xml TestON.core.xmldict-module.html#dict_to_xml
-TestON.core.xmldict._list_from_xml TestON.core.xmldict-module.html#_list_from_xml
-TestON.core.xmldict._dict_to_xml TestON.core.xmldict-module.html#_dict_to_xml
-TestON.core.xmldict._is_xml_el_list TestON.core.xmldict-module.html#_is_xml_el_list
-TestON.core.xmldict.xml_to_dict TestON.core.xmldict-module.html#xml_to_dict
-TestON.core.xmldict._str_to_datetime TestON.core.xmldict-module.html#_str_to_datetime
-TestON.core.xmldict._dict_from_xml TestON.core.xmldict-module.html#_dict_from_xml
-TestON.core.xmldict._is_xml_el_dict TestON.core.xmldict-module.html#_is_xml_el_dict
-TestON.core.xmldict._extract_attrs TestON.core.xmldict-module.html#_extract_attrs
-TestON.core.xmldict.__package__ TestON.core.xmldict-module.html#__package__
-TestON.core.xmlparser TestON.core.xmlparser-module.html
-TestON.core.xmlparser.__package__ TestON.core.xmlparser-module.html#__package__
-TestON.drivers TestON.drivers-module.html
-TestON.drivers.__package__ TestON.drivers-module.html#__package__
-TestON.drivers.common TestON.drivers.common-module.html
-TestON.drivers.common.__package__ TestON.drivers.common-module.html#__package__
-TestON.drivers.common.api TestON.drivers.common.api-module.html
-TestON.drivers.common.api.__package__ TestON.drivers.common.api-module.html#__package__
-TestON.drivers.common.api.controller TestON.drivers.common.api.controller-module.html
-TestON.drivers.common.api.controller.__package__ TestON.drivers.common.api.controller-module.html#__package__
-TestON.drivers.common.api.controller.onosrestdriver TestON.drivers.common.api.controller.onosrestdriver-module.html
-TestON.drivers.common.api.controllerdriver TestON.drivers.common.api.controllerdriver-module.html
-TestON.drivers.common.api.fvtapidriver TestON.drivers.common.api.fvtapidriver-module.html
-TestON.drivers.common.api.fvtapidriver.config_default TestON.drivers.common.api.fvtapidriver-module.html#config_default
-TestON.drivers.common.api.fvtapidriver.test_set_init TestON.drivers.common.api.fvtapidriver-module.html#test_set_init
-TestON.drivers.common.apidriver TestON.drivers.common.apidriver-module.html
-TestON.drivers.common.cli TestON.drivers.common.cli-module.html
-TestON.drivers.common.cli.__package__ TestON.drivers.common.cli-module.html#__package__
-TestON.drivers.common.cli.dpclidriver TestON.drivers.common.cli.dpclidriver-module.html
-TestON.drivers.common.cli.emulator TestON.drivers.common.cli.emulator-module.html
-TestON.drivers.common.cli.emulator.__package__ TestON.drivers.common.cli.emulator-module.html#__package__
-TestON.drivers.common.cli.emulator.flowvisordriver TestON.drivers.common.cli.emulator.flowvisordriver-module.html
-TestON.drivers.common.cli.emulator.lincoedriver TestON.drivers.common.cli.emulator.lincoedriver-module.html
-TestON.drivers.common.cli.emulator.mininetclidriver TestON.drivers.common.cli.emulator.mininetclidriver-module.html
-TestON.drivers.common.cli.emulator.poxclidriver TestON.drivers.common.cli.emulator.poxclidriver-module.html
-TestON.drivers.common.cli.emulator.remotemininetdriver TestON.drivers.common.cli.emulator.remotemininetdriver-module.html
-TestON.drivers.common.cli.emulatordriver TestON.drivers.common.cli.emulatordriver-module.html
-TestON.drivers.common.cli.onosclidriver TestON.drivers.common.cli.onosclidriver-module.html
-TestON.drivers.common.cli.onosdriver TestON.drivers.common.cli.onosdriver-module.html
-TestON.drivers.common.cli.quaggaclidriver TestON.drivers.common.cli.quaggaclidriver-module.html
-TestON.drivers.common.cli.remotesys TestON.drivers.common.cli.remotesys-module.html
-TestON.drivers.common.cli.remotesys.__package__ TestON.drivers.common.cli.remotesys-module.html#__package__
-TestON.drivers.common.cli.remotesysdriver TestON.drivers.common.cli.remotesysdriver-module.html
-TestON.drivers.common.cli.remotetestbed TestON.drivers.common.cli.remotetestbed-module.html
-TestON.drivers.common.cli.remotetestbed.__package__ TestON.drivers.common.cli.remotetestbed-module.html#__package__
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html
-TestON.drivers.common.cli.remotetestbed.necswitchdriver TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.__package__ TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html#__package__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html
-TestON.drivers.common.cli.remotetestbed.remotevmdriver TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html
-TestON.drivers.common.cli.remotetestbeddriver TestON.drivers.common.cli.remotetestbeddriver-module.html
-TestON.drivers.common.cli.tool TestON.drivers.common.cli.tool-module.html
-TestON.drivers.common.cli.tool.__package__ TestON.drivers.common.cli.tool-module.html#__package__
-TestON.drivers.common.cli.tool.dpctlclidriver TestON.drivers.common.cli.tool.dpctlclidriver-module.html
-TestON.drivers.common.cli.toolsdriver TestON.drivers.common.cli.toolsdriver-module.html
-TestON.drivers.common.clidriver TestON.drivers.common.clidriver-module.html
-TestON.examples TestON.examples-module.html
-TestON.examples.__package__ TestON.examples-module.html#__package__
-TestON.examples.Assert TestON.examples.Assert-module.html
-TestON.examples.Assert.__package__ TestON.examples.Assert-module.html#__package__
-TestON.examples.Assert.Assert TestON.examples.Assert.Assert-module.html
-TestON.examples.Assert.Assert.__package__ TestON.examples.Assert.Assert-module.html#__package__
-TestON.examples.CaseParams TestON.examples.CaseParams-module.html
-TestON.examples.CaseParams.__package__ TestON.examples.CaseParams-module.html#__package__
-TestON.examples.CaseParams.CaseParams TestON.examples.CaseParams.CaseParams-module.html
-TestON.examples.CaseParams.CaseParams.__package__ TestON.examples.CaseParams.CaseParams-module.html#__package__
-TestON.examples.ExperimentTest TestON.examples.ExperimentTest-module.html
-TestON.examples.ExperimentTest.__package__ TestON.examples.ExperimentTest-module.html#__package__
-TestON.examples.ExperimentTest.ExperimentTest TestON.examples.ExperimentTest.ExperimentTest-module.html
-TestON.examples.ExperimentTest.ExperimentTest.__package__ TestON.examples.ExperimentTest.ExperimentTest-module.html#__package__
-TestON.examples.StepParams TestON.examples.StepParams-module.html
-TestON.examples.StepParams.__package__ TestON.examples.StepParams-module.html#__package__
-TestON.examples.StepParams.StepParams TestON.examples.StepParams.StepParams-module.html
-TestON.examples.StepParams.StepParams.__package__ TestON.examples.StepParams.StepParams-module.html#__package__
-TestON.examples.Topology TestON.examples.Topology-module.html
-TestON.examples.Topology.__package__ TestON.examples.Topology-module.html#__package__
-TestON.examples.Topology.Topology TestON.examples.Topology.Topology-module.html
-TestON.examples.Topology.Topology.__package__ TestON.examples.Topology.Topology-module.html#__package__
-TestON.lib TestON.lib-module.html
-TestON.lib.__package__ TestON.lib-module.html#__package__
-TestON.tests TestON.tests-module.html
-TestON.tests.__package__ TestON.tests-module.html#__package__
-TestON.tests.CHOtest TestON.tests.CHOtest-module.html
-TestON.tests.CHOtest.__package__ TestON.tests.CHOtest-module.html#__package__
-TestON.tests.CHOtest.CHOtest TestON.tests.CHOtest.CHOtest-module.html
-TestON.tests.CHOtest.CHOtest.__package__ TestON.tests.CHOtest.CHOtest-module.html#__package__
-TestON.tests.FUNCintent TestON.tests.FUNCintent-module.html
-TestON.tests.FUNCintent.__package__ TestON.tests.FUNCintent-module.html#__package__
-TestON.tests.FUNCintent.FUNCintent TestON.tests.FUNCintent.FUNCintent-module.html
-TestON.tests.FUNCintent.FUNCintent.__package__ TestON.tests.FUNCintent.FUNCintent-module.html#__package__
-TestON.tests.HAclusterRestart TestON.tests.HAclusterRestart-module.html
-TestON.tests.HAclusterRestart.__package__ TestON.tests.HAclusterRestart-module.html#__package__
-TestON.tests.HAclusterRestart.HAclusterRestart TestON.tests.HAclusterRestart.HAclusterRestart-module.html
-TestON.tests.HAclusterRestart.HAclusterRestart.__package__ TestON.tests.HAclusterRestart.HAclusterRestart-module.html#__package__
-TestON.tests.HAclusterRestart.dependencies TestON.tests.HAclusterRestart.dependencies-module.html
-TestON.tests.HAclusterRestart.dependencies.__package__ TestON.tests.HAclusterRestart.dependencies-module.html#__package__
-TestON.tests.HAclusterRestart.dependencies.Counters TestON.tests.HAclusterRestart.dependencies.Counters-module.html
-TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck TestON.tests.HAclusterRestart.dependencies.Counters-module.html#counterCheck
-TestON.tests.HAclusterRestart.dependencies.Counters.__init__ TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__
-TestON.tests.HAclusterRestart.dependencies.Counters.__package__ TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__package__
-TestON.tests.HAclusterRestart.dependencies.obelisk TestON.tests.HAclusterRestart.dependencies.obelisk-module.html
-TestON.tests.HAclusterRestart.dependencies.obelisk.topos TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#topos
-TestON.tests.HAclusterRestart.dependencies.obelisk.run TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#run
-TestON.tests.HAclusterRestart.dependencies.obelisk.__package__ TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#__package__
-TestON.tests.HAminorityRestart TestON.tests.HAminorityRestart-module.html
-TestON.tests.HAminorityRestart.__package__ TestON.tests.HAminorityRestart-module.html#__package__
-TestON.tests.HAminorityRestart.HAminorityRestart TestON.tests.HAminorityRestart.HAminorityRestart-module.html
-TestON.tests.HAminorityRestart.HAminorityRestart.__package__ TestON.tests.HAminorityRestart.HAminorityRestart-module.html#__package__
-TestON.tests.HAminorityRestart.dependencies TestON.tests.HAminorityRestart.dependencies-module.html
-TestON.tests.HAminorityRestart.dependencies.__package__ TestON.tests.HAminorityRestart.dependencies-module.html#__package__
-TestON.tests.HAminorityRestart.dependencies.Counters TestON.tests.HAminorityRestart.dependencies.Counters-module.html
-TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck TestON.tests.HAminorityRestart.dependencies.Counters-module.html#counterCheck
-TestON.tests.HAminorityRestart.dependencies.Counters.__init__ TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__
-TestON.tests.HAminorityRestart.dependencies.Counters.__package__ TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__package__
-TestON.tests.HAminorityRestart.dependencies.obelisk TestON.tests.HAminorityRestart.dependencies.obelisk-module.html
-TestON.tests.HAminorityRestart.dependencies.obelisk.topos TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#topos
-TestON.tests.HAminorityRestart.dependencies.obelisk.run TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#run
-TestON.tests.HAminorityRestart.dependencies.obelisk.__package__ TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#__package__
-TestON.tests.HAsanity TestON.tests.HAsanity-module.html
-TestON.tests.HAsanity.__package__ TestON.tests.HAsanity-module.html#__package__
-TestON.tests.HAsanity.HAsanity TestON.tests.HAsanity.HAsanity-module.html
-TestON.tests.HAsanity.HAsanity.__package__ TestON.tests.HAsanity.HAsanity-module.html#__package__
-TestON.tests.HAsanity.dependencies TestON.tests.HAsanity.dependencies-module.html
-TestON.tests.HAsanity.dependencies.__package__ TestON.tests.HAsanity.dependencies-module.html#__package__
-TestON.tests.HAsanity.dependencies.Counters TestON.tests.HAsanity.dependencies.Counters-module.html
-TestON.tests.HAsanity.dependencies.Counters.counterCheck TestON.tests.HAsanity.dependencies.Counters-module.html#counterCheck
-TestON.tests.HAsanity.dependencies.Counters.__init__ TestON.tests.HAsanity.dependencies.Counters-module.html#__init__
-TestON.tests.HAsanity.dependencies.Counters.__package__ TestON.tests.HAsanity.dependencies.Counters-module.html#__package__
-TestON.tests.HAsanity.dependencies.obelisk TestON.tests.HAsanity.dependencies.obelisk-module.html
-TestON.tests.HAsanity.dependencies.obelisk.topos TestON.tests.HAsanity.dependencies.obelisk-module.html#topos
-TestON.tests.HAsanity.dependencies.obelisk.run TestON.tests.HAsanity.dependencies.obelisk-module.html#run
-TestON.tests.HAsanity.dependencies.obelisk.__package__ TestON.tests.HAsanity.dependencies.obelisk-module.html#__package__
-TestON.tests.HAsingleInstanceRestart TestON.tests.HAsingleInstanceRestart-module.html
-TestON.tests.HAsingleInstanceRestart.__package__ TestON.tests.HAsingleInstanceRestart-module.html#__package__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.__package__ TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html#__package__
-TestON.tests.HAsingleInstanceRestart.dependencies TestON.tests.HAsingleInstanceRestart.dependencies-module.html
-TestON.tests.HAsingleInstanceRestart.dependencies.__package__ TestON.tests.HAsingleInstanceRestart.dependencies-module.html#__package__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#counterCheck
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__ TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__
-TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__package__ TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__package__
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.topos TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#topos
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#run
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.__package__ TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#__package__
-TestON.tests.SAMPscaleTopo TestON.tests.SAMPscaleTopo-module.html
-TestON.tests.SAMPscaleTopo.__package__ TestON.tests.SAMPscaleTopo-module.html#__package__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.__package__ TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html#__package__
-TestON.tests.SAMPstartTemplate TestON.tests.SAMPstartTemplate-module.html
-TestON.tests.SAMPstartTemplate.__package__ TestON.tests.SAMPstartTemplate-module.html#__package__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.__package__ TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html#__package__
-TestON.tests.SCPFcbench TestON.tests.SCPFcbench-module.html
-TestON.tests.SCPFcbench.__package__ TestON.tests.SCPFcbench-module.html#__package__
-TestON.tests.SCPFcbench.SCPFcbench TestON.tests.SCPFcbench.SCPFcbench-module.html
-TestON.tests.SCPFcbench.SCPFcbench.__package__ TestON.tests.SCPFcbench.SCPFcbench-module.html#__package__
-TestON.tests.SCPFflowTp1g TestON.tests.SCPFflowTp1g-module.html
-TestON.tests.SCPFflowTp1g.__package__ TestON.tests.SCPFflowTp1g-module.html#__package__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.__package__ TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html#__package__
-TestON.tests.SCPFintentEventTp TestON.tests.SCPFintentEventTp-module.html
-TestON.tests.SCPFintentEventTp.__package__ TestON.tests.SCPFintentEventTp-module.html#__package__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.__package__ TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html#__package__
-TestON.tests.SCPFintentInstallWithdrawLat TestON.tests.SCPFintentInstallWithdrawLat-module.html
-TestON.tests.SCPFintentInstallWithdrawLat.__package__ TestON.tests.SCPFintentInstallWithdrawLat-module.html#__package__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__package__ TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html#__package__
-TestON.tests.SCPFintentRerouteLat TestON.tests.SCPFintentRerouteLat-module.html
-TestON.tests.SCPFintentRerouteLat.__package__ TestON.tests.SCPFintentRerouteLat-module.html#__package__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.__package__ TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html#__package__
-TestON.tests.SCPFportLat TestON.tests.SCPFportLat-module.html
-TestON.tests.SCPFportLat.__package__ TestON.tests.SCPFportLat-module.html#__package__
-TestON.tests.SCPFportLat.SCPFportLat TestON.tests.SCPFportLat.SCPFportLat-module.html
-TestON.tests.SCPFportLat.SCPFportLat.__package__ TestON.tests.SCPFportLat.SCPFportLat-module.html#__package__
-TestON.tests.SCPFswitchLat TestON.tests.SCPFswitchLat-module.html
-TestON.tests.SCPFswitchLat.__package__ TestON.tests.SCPFswitchLat-module.html#__package__
-TestON.tests.SCPFswitchLat.SCPFswitchLat TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html
-TestON.tests.SCPFswitchLat.SCPFswitchLat.__package__ TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html#__package__
-TestON.bin.cli.CLI TestON.bin.cli.CLI-class.html
-TestON.bin.cli.CLI.do_help TestON.bin.cli.CLI-class.html#do_help
-TestON.bin.cli.CLI.prompt TestON.bin.cli.CLI-class.html#prompt
-TestON.bin.cli.CLI.do_resume TestON.bin.cli.CLI-class.html#do_resume
-TestON.bin.cli.CLI.parseArgs TestON.bin.cli.CLI-class.html#parseArgs
-TestON.bin.cli.CLI.do_compile TestON.bin.cli.CLI-class.html#do_compile
-TestON.bin.cli.CLI.do_echo TestON.bin.cli.CLI-class.html#do_echo
-TestON.bin.cli.CLI.__init__ TestON.bin.cli.CLI-class.html#__init__
-TestON.bin.cli.CLI.initOptions TestON.bin.cli.CLI-class.html#initOptions
-TestON.bin.cli.CLI.do_showlog TestON.bin.cli.CLI-class.html#do_showlog
-TestON.bin.cli.CLI.do_dumpvar TestON.bin.cli.CLI-class.html#do_dumpvar
-TestON.bin.cli.CLI.do_py TestON.bin.cli.CLI-class.html#do_py
-TestON.bin.cli.CLI.do_quit TestON.bin.cli.CLI-class.html#do_quit
-TestON.bin.cli.CLI.cmdloop TestON.bin.cli.CLI-class.html#cmdloop
-TestON.bin.cli.CLI.helpStr TestON.bin.cli.CLI-class.html#helpStr
-TestON.bin.cli.CLI.isatty TestON.bin.cli.CLI-class.html#isatty
-TestON.bin.cli.CLI.do_time TestON.bin.cli.CLI-class.html#do_time
-TestON.bin.cli.CLI.do_run TestON.bin.cli.CLI-class.html#do_run
-TestON.bin.cli.CLI.do_EOF TestON.bin.cli.CLI-class.html#do_EOF
-TestON.bin.cli.CLI.emptyline TestON.bin.cli.CLI-class.html#emptyline
-TestON.bin.cli.CLI.testcasesInRange TestON.bin.cli.CLI-class.html#testcasesInRange
-TestON.bin.cli.CLI.do_stop TestON.bin.cli.CLI-class.html#do_stop
-TestON.bin.cli.CLI.do_do TestON.bin.cli.CLI-class.html#do_do
-TestON.bin.cli.CLI.do_exit TestON.bin.cli.CLI-class.html#do_exit
-TestON.bin.cli.CLI.do_updatedriver TestON.bin.cli.CLI-class.html#do_updatedriver
-TestON.bin.cli.CLI.do_currentstep TestON.bin.cli.CLI-class.html#do_currentstep
-TestON.bin.cli.CLI.default TestON.bin.cli.CLI-class.html#default
-TestON.bin.cli.CLI.do_nextstep TestON.bin.cli.CLI-class.html#do_nextstep
-TestON.bin.cli.CLI.do_gettest TestON.bin.cli.CLI-class.html#do_gettest
-TestON.bin.cli.CLI.do_interpret TestON.bin.cli.CLI-class.html#do_interpret
-TestON.bin.cli.CLI.do_currentcase TestON.bin.cli.CLI-class.html#do_currentcase
-TestON.bin.cli.CLI.do_source TestON.bin.cli.CLI-class.html#do_source
-TestON.bin.cli.CLI.do_sh TestON.bin.cli.CLI-class.html#do_sh
-TestON.bin.cli.TestThread TestON.bin.cli.TestThread-class.html
-TestON.bin.cli.TestThread.__init__ TestON.bin.cli.TestThread-class.html#__init__
-TestON.bin.cli.TestThread.pause TestON.bin.cli.TestThread-class.html#pause
-TestON.bin.cli.TestThread.play TestON.bin.cli.TestThread-class.html#play
-TestON.bin.cli.TestThread.run TestON.bin.cli.TestThread-class.html#run
-TestON.bin.cli.TestThread.stop TestON.bin.cli.TestThread-class.html#stop
-TestON.bin.generatedriver.GenerateDriver TestON.bin.generatedriver.GenerateDriver-class.html
-TestON.bin.generatedriver.GenerateDriver.execute TestON.bin.generatedriver.GenerateDriver-class.html#execute
-TestON.bin.generatedriver.GenerateDriver.disconnect TestON.bin.generatedriver.GenerateDriver-class.html#disconnect
-TestON.bin.generatedriver.GenerateDriver.configure TestON.bin.generatedriver.GenerateDriver-class.html#configure
-TestON.bin.generatedriver.GenerateDriver.print_details TestON.bin.generatedriver.GenerateDriver-class.html#print_details
-TestON.bin.generatedriver.GenerateDriver.get_command_help TestON.bin.generatedriver.GenerateDriver-class.html#get_command_help
-TestON.bin.generatedriver.GenerateDriver.get_command_details TestON.bin.generatedriver.GenerateDriver-class.html#get_command_details
-TestON.bin.generatedriver.GenerateDriver.create_driver TestON.bin.generatedriver.GenerateDriver-class.html#create_driver
-TestON.bin.generatedriver.GenerateDriver.get_details_recursive TestON.bin.generatedriver.GenerateDriver-class.html#get_details_recursive
-TestON.bin.generatedriver.GenerateDriver.connect TestON.bin.generatedriver.GenerateDriver-class.html#connect
-TestON.bin.generatedriver.GenerateDriver.__init__ TestON.bin.generatedriver.GenerateDriver-class.html#__init__
-TestON.bin.nec.NEC TestON.bin.nec.NEC-class.html
-TestON.bin.nec.NEC.show_ssh TestON.bin.nec.NEC-class.html#show_ssh
-TestON.bin.nec.NEC.show_netconf TestON.bin.nec.NEC-class.html#show_netconf
-TestON.bin.nec.NEC.show TestON.bin.nec.NEC-class.html#show
-TestON.bin.nec.NEC.show_lldp TestON.bin.nec.NEC-class.html#show_lldp
-TestON.bin.nec.NEC.show_whoami TestON.bin.nec.NEC-class.html#show_whoami
-TestON.bin.nec.NEC.show_qos TestON.bin.nec.NEC-class.html#show_qos
-TestON.bin.nec.NEC.show_igmpsnooping TestON.bin.nec.NEC-class.html#show_igmpsnooping
-TestON.bin.nec.NEC.__init__ TestON.bin.nec.NEC-class.html#__init__
-TestON.bin.nec.NEC.show_environment TestON.bin.nec.NEC-class.html#show_environment
-TestON.bin.nec.NEC.show_configlockstatus TestON.bin.nec.NEC-class.html#show_configlockstatus
-TestON.bin.nec.NEC.show_channelgroup TestON.bin.nec.NEC-class.html#show_channelgroup
-TestON.bin.nec.NEC.show_version TestON.bin.nec.NEC-class.html#show_version
-TestON.bin.nec.NEC.show_ntp TestON.bin.nec.NEC-class.html#show_ntp
-TestON.bin.nec.NEC.show_mc TestON.bin.nec.NEC-class.html#show_mc
-TestON.bin.nec.NEC.show_history TestON.bin.nec.NEC-class.html#show_history
-TestON.bin.nec.NEC.show_efmoam TestON.bin.nec.NEC-class.html#show_efmoam
-TestON.bin.nec.NEC.show_system TestON.bin.nec.NEC-class.html#show_system
-TestON.bin.nec.NEC.show_processes TestON.bin.nec.NEC-class.html#show_processes
-TestON.bin.nec.NEC.show_vlan TestON.bin.nec.NEC-class.html#show_vlan
-TestON.bin.nec.NEC.show_interfaces TestON.bin.nec.NEC-class.html#show_interfaces
-TestON.bin.nec.NEC.show_port TestON.bin.nec.NEC-class.html#show_port
-TestON.bin.nec.NEC.show_memory TestON.bin.nec.NEC-class.html#show_memory
-TestON.bin.nec.NEC.show_acknowledgments_interface TestON.bin.nec.NEC-class.html#show_acknowledgments_interface
-TestON.bin.nec.NEC.show_oadp TestON.bin.nec.NEC-class.html#show_oadp
-TestON.bin.nec.NEC.show_tcpdump TestON.bin.nec.NEC-class.html#show_tcpdump
-TestON.bin.nec.NEC.show_dhcp TestON.bin.nec.NEC-class.html#show_dhcp
-TestON.bin.nec.NEC.show_openflow TestON.bin.nec.NEC-class.html#show_openflow
-TestON.bin.nec.NEC.show_macaddresstable TestON.bin.nec.NEC-class.html#show_macaddresstable
-TestON.bin.nec.NEC.show_cpu TestON.bin.nec.NEC-class.html#show_cpu
-TestON.bin.nec.NEC.show_file TestON.bin.nec.NEC-class.html#show_file
-TestON.bin.nec.NEC.show_sessions TestON.bin.nec.NEC-class.html#show_sessions
-TestON.bin.nec.NEC.show_gsrp TestON.bin.nec.NEC-class.html#show_gsrp
-TestON.bin.nec.NEC.show_clock TestON.bin.nec.NEC-class.html#show_clock
-TestON.bin.nec.NEC.show_vrrpstatus TestON.bin.nec.NEC-class.html#show_vrrpstatus
-TestON.bin.nec.NEC.show_flash TestON.bin.nec.NEC-class.html#show_flash
-TestON.bin.nec.NEC.show_license TestON.bin.nec.NEC-class.html#show_license
-TestON.bin.nec.NEC.show_ipdual TestON.bin.nec.NEC-class.html#show_ipdual
-TestON.bin.nec.NEC.show_ipv6dhcp TestON.bin.nec.NEC-class.html#show_ipv6dhcp
-TestON.bin.nec.NEC.show_autoconfig TestON.bin.nec.NEC-class.html#show_autoconfig
-TestON.bin.nec.NEC.show_logging TestON.bin.nec.NEC-class.html#show_logging
-TestON.bin.nec.NEC.show_sflow TestON.bin.nec.NEC-class.html#show_sflow
-TestON.bin.nec.NEC.show_loopdetection TestON.bin.nec.NEC-class.html#show_loopdetection
-TestON.bin.nec.NEC.show_track TestON.bin.nec.NEC-class.html#show_track
-TestON.bin.nec.NEC.show_acknowledgments TestON.bin.nec.NEC-class.html#show_acknowledgments
-TestON.bin.nec.NEC.show_cfm TestON.bin.nec.NEC-class.html#show_cfm
-TestON.bin.nec.NEC.show_power TestON.bin.nec.NEC-class.html#show_power
-TestON.bin.nec.NEC.show_netstat TestON.bin.nec.NEC-class.html#show_netstat
-TestON.bin.nec.NEC.show_spanningtree TestON.bin.nec.NEC-class.html#show_spanningtree
-TestON.bin.nec.NEC.show_mldsnooping TestON.bin.nec.NEC-class.html#show_mldsnooping
-TestON.bin.nec.NEC.show_dumpfile TestON.bin.nec.NEC-class.html#show_dumpfile
-TestON.bin.nec.NEC.show_axrp TestON.bin.nec.NEC-class.html#show_axrp
-TestON.bin.nec.NEC.show_qosflow TestON.bin.nec.NEC-class.html#show_qosflow
-TestON.bin.nec.NEC.show_dot1x TestON.bin.nec.NEC-class.html#show_dot1x
-TestON.bin.nec.NEC.show_techsupport TestON.bin.nec.NEC-class.html#show_techsupport
-TestON.bin.nec.NEC.show_ip TestON.bin.nec.NEC-class.html#show_ip
-TestON.bin.updatedriver.UpdateDriver TestON.bin.updatedriver.UpdateDriver-class.html
-TestON.bin.updatedriver.UpdateDriver.writeDriver TestON.bin.updatedriver.UpdateDriver-class.html#writeDriver
-TestON.bin.updatedriver.UpdateDriver.getDriverPath TestON.bin.updatedriver.UpdateDriver-class.html#getDriverPath
-TestON.bin.updatedriver.UpdateDriver.class_ignoreList TestON.bin.updatedriver.UpdateDriver-class.html#class_ignoreList
-TestON.bin.updatedriver.UpdateDriver.getList TestON.bin.updatedriver.UpdateDriver-class.html#getList
-TestON.bin.updatedriver.UpdateDriver.getmethods TestON.bin.updatedriver.UpdateDriver-class.html#getmethods
-TestON.bin.updatedriver.UpdateDriver.method_ignoreList TestON.bin.updatedriver.UpdateDriver-class.html#method_ignoreList
-TestON.bin.updatedriver.UpdateDriver.echo TestON.bin.updatedriver.UpdateDriver-class.html#echo
-TestON.bin.updatedriver.UpdateDriver.printHeader TestON.bin.updatedriver.UpdateDriver-class.html#printHeader
-TestON.bin.updatedriver.UpdateDriver.add_method TestON.bin.updatedriver.UpdateDriver-class.html#add_method
-TestON.bin.updatedriver.UpdateDriver.__init__ TestON.bin.updatedriver.UpdateDriver-class.html#__init__
-TestON.bin.updatedriver.UpdateDriver.configparser TestON.bin.updatedriver.UpdateDriver-class.html#configparser
-TestON.bin.updatedriver.UpdateDriver.getargs TestON.bin.updatedriver.UpdateDriver-class.html#getargs
-TestON.bin.updatedriver.UpdateDriver.appendDriver TestON.bin.updatedriver.UpdateDriver-class.html#appendDriver
-TestON.bin.updatedriver.UpdateDriver.getMethodArgsHash TestON.bin.updatedriver.UpdateDriver-class.html#getMethodArgsHash
-TestON.bin.vyatta.Vyatta TestON.bin.vyatta.Vyatta-class.html
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth0_duplex_auto TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_duplex_auto
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_md5_keyid TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_authentication_md5_keyid
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_duplex_full TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_duplex_full
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_DHCPv6 TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_DHCPv6
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth1_smp_affinity_auto TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_smp_affinity_auto
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_temporary TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_dhcpv6options_temporary
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth1 TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth1_speed TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_speed
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_description TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_description
-TestON.bin.vyatta.Vyatta.show_interfaces_loopback_lo TestON.bin.vyatta.Vyatta-class.html#show_interfaces_loopback_lo
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_duplex_half TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_duplex_half
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0 TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_Acquire TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_dhcpv6options_Acquire
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_bridgegroup TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_bridgegroup
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_firewall_in_name TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_in_name
-TestON.bin.vyatta.Vyatta.__init__ TestON.bin.vyatta.Vyatta-class.html#__init__
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_disablelinkdetect TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_disablelinkdetect
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_Disable TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_Disable
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth1_address TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_address
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth0_speed TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_speed
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_ip TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_Ignore TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_Ignore
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth0_hwid TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_hwid
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_firewall_out_ipv6name TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_out_ipv6name
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_firewall_in TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_in
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_Plain TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_authentication_Plain
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_ip_ospf TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_dhcpv6options_parametersonly TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_dhcpv6options_parametersonly
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_ip_ospf_OSPF TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_OSPF
-TestON.bin.vyatta.Vyatta.show_interfaces TestON.bin.vyatta.Vyatta-class.html#show_interfaces
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_hwid TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_hwid
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_duplex TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_duplex
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_disable TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_disable
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_address TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_address
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_hwid_Media TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_hwid_Media
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth1_duplex TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_duplex
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_ip_ospf_cost TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_cost
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth0_duplex TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_duplex
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_ip_ospf_bandwidth TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_bandwidth
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_duplex_auto TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_duplex_auto
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_md5 TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_authentication_md5
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth0_smp_affinity_auto TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_smp_affinity_auto
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_authentication
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_ip_enableproxyarp TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_enableproxyarp
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_firewall_out_name TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_out_name
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_bridgegroup_cost TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_bridgegroup_cost
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_firewall_out TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_out
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_bridgegroup_priority TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_bridgegroup_priority
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_ip_ospf_authentication_plaintextpassword TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_authentication_plaintextpassword
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_disableflowcontrol TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_disableflowcontrol
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_bondgroup TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_bondgroup
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_firewall_local_ipv6name TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_local_ipv6name
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth0_speed_auto TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_speed_auto
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_ip_Enable TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_Enable
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_firewall_in_ipv6name TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_in_ipv6name
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth1_hwid TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_hwid
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth1_speed_auto TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_speed_auto
-TestON.bin.vyatta.Vyatta.show_interfaces_loopback TestON.bin.vyatta.Vyatta-class.html#show_interfaces_loopback
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_dhcpv6options TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_dhcpv6options
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_firewall TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_firewall_local TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_local
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth1_smp_affinity TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_smp_affinity
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth1_duplex_auto TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_duplex_auto
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_bridgegroup_bridge TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_bridgegroup_bridge
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet
-TestON.bin.vyatta.Vyatta.set_interfaces_ethernet_eth0_firewall_local_name TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_local_name
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth0_smp_affinity TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_smp_affinity
-TestON.bin.vyatta.Vyatta.show_interfaces_ethernet_eth0 TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0
-TestON.core.Thread.Thread TestON.core.Thread.Thread-class.html
-TestON.core.Thread.Thread.__init__ TestON.core.Thread.Thread-class.html#__init__
-TestON.core.Thread.Thread.run TestON.core.Thread.Thread-class.html#run
-TestON.core.ast.NodeTransformer TestON.core.ast.NodeTransformer-class.html
-TestON.core.ast.NodeVisitor.visit TestON.core.ast.NodeVisitor-class.html#visit
-TestON.core.ast.NodeTransformer.generic_visit TestON.core.ast.NodeTransformer-class.html#generic_visit
-TestON.core.ast.NodeVisitor TestON.core.ast.NodeVisitor-class.html
-TestON.core.ast.NodeVisitor.visit TestON.core.ast.NodeVisitor-class.html#visit
-TestON.core.ast.NodeVisitor.generic_visit TestON.core.ast.NodeVisitor-class.html#generic_visit
-TestON.core.dicttoobject.DictToObject TestON.core.dicttoobject.DictToObject-class.html
-TestON.core.dicttoobject.DictToObject.__init__ TestON.core.dicttoobject.DictToObject-class.html#__init__
-TestON.core.dicttoobject.DictToObject.__setattr__ TestON.core.dicttoobject.DictToObject-class.html#__setattr__
-TestON.core.dicttoobject.DictToObject.__getattr__ TestON.core.dicttoobject.DictToObject-class.html#__getattr__
-TestON.core.dicttoobject.DictToObject.update TestON.core.dicttoobject.DictToObject-class.html#update
-TestON.core.dicttoobject.DictToObject.__update TestON.core.dicttoobject.DictToObject-class.html#__update
-TestON.core.dicttoobject.DictToObject.merge TestON.core.dicttoobject.DictToObject-class.html#merge
-TestON.core.iniparser.iniparser TestON.core.iniparser.iniparser-class.html
-TestON.core.iniparser.iniparser.parse TestON.core.iniparser.iniparser-class.html#parse
-TestON.core.iniparser.iniparser.parseParams TestON.core.iniparser.iniparser-class.html#parseParams
-TestON.core.iniparser.iniparser.__init__ TestON.core.iniparser.iniparser-class.html#__init__
-TestON.core.iniparser.iniparser.parseTopology TestON.core.iniparser.iniparser-class.html#parseTopology
-TestON.core.jsonparser.JsonParser TestON.core.jsonparser.JsonParser-class.html
-TestON.core.jsonparser.JsonParser.response_parse TestON.core.jsonparser.JsonParser-class.html#response_parse
-TestON.core.jsonparser.JsonParser.__init__ TestON.core.jsonparser.JsonParser-class.html#__init__
-TestON.core.logger.Logger TestON.core.logger.Logger-class.html
-TestON.core.logger.Logger.testSummary TestON.core.logger.Logger-class.html#testSummary
-TestON.core.logger.Logger._printHeader TestON.core.logger.Logger-class.html#_printHeader
-TestON.core.logger.Logger.updateCaseResults TestON.core.logger.Logger-class.html#updateCaseResults
-TestON.core.logger.Logger.initlog TestON.core.logger.Logger-class.html#initlog
-TestON.core.openspeak.OpenSpeak TestON.core.openspeak.OpenSpeak-class.html
-TestON.core.openspeak.OpenSpeak.translate_assertMessage TestON.core.openspeak.OpenSpeak-class.html#translate_assertMessage
-TestON.core.openspeak.OpenSpeak.translate_connect TestON.core.openspeak.OpenSpeak-class.html#translate_connect
-TestON.core.openspeak.OpenSpeak.verify_and_translate TestON.core.openspeak.OpenSpeak-class.html#verify_and_translate
-TestON.core.openspeak.OpenSpeak.translate_disconnect TestON.core.openspeak.OpenSpeak-class.html#translate_disconnect
-TestON.core.openspeak.OpenSpeak.translate_testcase_name TestON.core.openspeak.OpenSpeak-class.html#translate_testcase_name
-TestON.core.openspeak.OpenSpeak.translate_store TestON.core.openspeak.OpenSpeak-class.html#translate_store
-TestON.core.openspeak.OpenSpeak.translate_assertion TestON.core.openspeak.OpenSpeak-class.html#translate_assertion
-TestON.core.openspeak.OpenSpeak.translate_comment TestON.core.openspeak.OpenSpeak-class.html#translate_comment
-TestON.core.openspeak.OpenSpeak.translate_logs TestON.core.openspeak.OpenSpeak-class.html#translate_logs
-TestON.core.openspeak.OpenSpeak.translate_loop_block TestON.core.openspeak.OpenSpeak-class.html#translate_loop_block
-TestON.core.openspeak.OpenSpeak.translate_onDOAs TestON.core.openspeak.OpenSpeak-class.html#translate_onDOAs
-TestON.core.openspeak.OpenSpeak.__init__ TestON.core.openspeak.OpenSpeak-class.html#__init__
-TestON.core.openspeak.OpenSpeak.translate_if_else_operator TestON.core.openspeak.OpenSpeak-class.html#translate_if_else_operator
-TestON.core.openspeak.OpenSpeak.translate_conjuction TestON.core.openspeak.OpenSpeak-class.html#translate_conjuction
-TestON.core.openspeak.OpenSpeak.translate_parameters TestON.core.openspeak.OpenSpeak-class.html#translate_parameters
-TestON.core.openspeak.OpenSpeak.translate_repeat TestON.core.openspeak.OpenSpeak-class.html#translate_repeat
-TestON.core.openspeak.OpenSpeak._argsCheck TestON.core.openspeak.OpenSpeak-class.html#_argsCheck
-TestON.core.openspeak.OpenSpeak.translate_step TestON.core.openspeak.OpenSpeak-class.html#translate_step
-TestON.core.openspeak.OpenSpeak.translate_usingas TestON.core.openspeak.OpenSpeak-class.html#translate_usingas
-TestON.core.openspeak.OpenSpeak.translate_operator TestON.core.openspeak.OpenSpeak-class.html#translate_operator
-TestON.core.openspeak.OpenSpeak.interpret TestON.core.openspeak.OpenSpeak-class.html#interpret
-TestON.core.openspeak.OpenSpeak.compiler TestON.core.openspeak.OpenSpeak-class.html#compiler
-TestON.core.openspeak.OpenSpeak.parse_args TestON.core.openspeak.OpenSpeak-class.html#parse_args
-TestON.core.openspeak.OpenSpeak.translate_log_message TestON.core.openspeak.OpenSpeak-class.html#translate_log_message
-TestON.core.openspeak.OpenSpeak.translate_case_block TestON.core.openspeak.OpenSpeak-class.html#translate_case_block
-TestON.core.openspeak.OpenSpeak.handle_conjuction TestON.core.openspeak.OpenSpeak-class.html#handle_conjuction
-TestON.core.openspeak.OpenSpeak.translate_experimental_mode TestON.core.openspeak.OpenSpeak-class.html#translate_experimental_mode
-TestON.core.openspeak.OpenSpeak.translate_response_result TestON.core.openspeak.OpenSpeak-class.html#translate_response_result
-TestON.core.teston.TestON TestON.core.teston.TestON-class.html
-TestON.core.teston.TestON.case TestON.core.teston.TestON-class.html#case
-TestON.core.teston.TestON._getTest TestON.core.teston.TestON-class.html#_getTest
-TestON.core.teston.TestON.response_to_dict TestON.core.teston.TestON-class.html#response_to_dict
-TestON.core.teston.TestON.pause TestON.core.teston.TestON-class.html#pause
-TestON.core.teston.TestON.run TestON.core.teston.TestON-class.html#run
-TestON.core.teston.TestON.getDriverPath TestON.core.teston.TestON-class.html#getDriverPath
-TestON.core.teston.TestON.get_random TestON.core.teston.TestON-class.html#get_random
-TestON.core.teston.TestON.runStep TestON.core.teston.TestON-class.html#runStep
-TestON.core.teston.TestON.runCase TestON.core.teston.TestON-class.html#runCase
-TestON.core.teston.TestON.onfail TestON.core.teston.TestON-class.html#onfail
-TestON.core.teston.TestON.componentInit TestON.core.teston.TestON-class.html#componentInit
-TestON.core.teston.TestON.testDesc TestON.core.teston.TestON-class.html#testDesc
-TestON.core.teston.TestON.step TestON.core.teston.TestON-class.html#step
-TestON.core.teston.TestON.cleanup TestON.core.teston.TestON-class.html#cleanup
-TestON.core.teston.TestON.exit TestON.core.teston.TestON-class.html#exit
-TestON.core.teston.TestON.response_parser TestON.core.teston.TestON-class.html#response_parser
-TestON.core.teston.TestON.dict_to_return_format TestON.core.teston.TestON-class.html#dict_to_return_format
-TestON.core.teston.TestON.addCaseFooter TestON.core.teston.TestON-class.html#addCaseFooter
-TestON.core.teston.TestON.configparser TestON.core.teston.TestON-class.html#configparser
-TestON.core.teston.TestON.__init__ TestON.core.teston.TestON-class.html#__init__
-TestON.core.teston.TestON.addCaseHeader TestON.core.teston.TestON-class.html#addCaseHeader
-TestON.core.testparser.TestParser TestON.core.testparser.TestParser-class.html
-TestON.core.testparser.TestParser.case_code TestON.core.testparser.TestParser-class.html#case_code
-TestON.core.testparser.TestParser.getStepCode TestON.core.testparser.TestParser-class.html#getStepCode
-TestON.core.testparser.TestParser.step_code TestON.core.testparser.TestParser-class.html#step_code
-TestON.core.testparser.TestParser.__init__ TestON.core.testparser.TestParser-class.html#__init__
-TestON.core.xmlparser.xmlparser TestON.core.xmlparser.xmlparser-class.html
-TestON.core.xmlparser.xmlparser.parse TestON.core.xmlparser.xmlparser-class.html#parse
-TestON.core.xmlparser.xmlparser.parseParams TestON.core.xmlparser.xmlparser-class.html#parseParams
-TestON.core.xmlparser.xmlparser.__init__ TestON.core.xmlparser.xmlparser-class.html#__init__
-TestON.core.xmlparser.xmlparser.parseTopology TestON.core.xmlparser.xmlparser-class.html#parseTopology
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intents TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intents
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.removeIntent TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#removeIntent
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.checkFlowsState TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#checkFlowsState
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.connect TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.removeAllIntents TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#removeAllIntents
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.__init__ TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.apps TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#apps
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addPointIntent TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addPointIntent
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.send TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#send
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getFlows TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getFlows
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addFlow TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addFlow
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.removeFlow TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#removeFlow
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getHost TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getHost
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.activateApp TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#activateApp
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.flows TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#flows
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.checkIntentState TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#checkIntentState
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.intent TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intent
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.topology TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#topology
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.deactivateApp TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#deactivateApp
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getApp TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getApp
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.hosts TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#hosts
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getIntentState TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getIntentState
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.addHostIntent TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addHostIntent
-TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver.getIntentsId TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getIntentsId
-TestON.drivers.common.api.controllerdriver.Controller TestON.drivers.common.api.controllerdriver.Controller-class.html
-TestON.drivers.common.apidriver.API.connect TestON.drivers.common.apidriver.API-class.html#connect
-TestON.drivers.common.api.controllerdriver.Controller.__init__ TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.ofmsgSndCmpWithXid TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#ofmsgSndCmpWithXid
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.chkSwitchStats TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#chkSwitchStats
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.genPacketOut TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#genPacketOut
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.chkSliceStats TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#chkSliceStats
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.genPhyPort TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#genPhyPort
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.__init__ TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.recvStats TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#recvStats
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.disconnect TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#disconnect
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.setUp TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#setUp
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.genPacketIn TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#genPacketIn
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.ofmsgSndCmp TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#ofmsgSndCmp
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.simplePacket TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#simplePacket
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.setRule TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#setRule
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.close_log_handles TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#close_log_handles
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.chkFlowdb TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#chkFlowdb
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.genFlowModFlush TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#genFlowModFlush
-TestON.drivers.common.api.fvtapidriver.FvtApiDriver.connect TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect
-TestON.drivers.common.apidriver.API TestON.drivers.common.apidriver.API-class.html
-TestON.drivers.common.apidriver.API.connect TestON.drivers.common.apidriver.API-class.html#connect
-TestON.drivers.common.apidriver.API.__init__ TestON.drivers.common.apidriver.API-class.html#__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.connect TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.__init__ TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.disconnect TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#disconnect
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.pingall_interfaces TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#pingall_interfaces
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.cli.dpclidriver.DPCliDriver.create_interfaces TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#create_interfaces
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.connect TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.removeFlowSpace TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#removeFlowSpace
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.__init__ TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.listFlowSpace TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#listFlowSpace
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.disconnect TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#disconnect
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.addFlowSpace TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#addFlowSpace
-TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver.listDevices TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#listDevices
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.startSwitch TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#startSwitch
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.listPorts TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#listPorts
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.setInterfaceUp TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#setInterfaceUp
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.connect TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.__init__ TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.disconnect TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#disconnect
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.getDatapathId TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#getDatapathId
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.startConsole TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#startConsole
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.portDown TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#portDown
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.build TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#build
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.stopSwitch TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#stopSwitch
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.stopLincOEConsole TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#stopLincOEConsole
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.attachLincOESession TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#attachLincOESession
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver.portUp TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#portUp
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startNet TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startNet
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingIpv6Hosts TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingIpv6Hosts
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitchDPID TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitchDPID
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.numSwitchesNlinks TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#numSwitchesNlinks
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getVersion TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.disconnect TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#disconnect
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addHost TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addHost
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getDPID TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getDPID
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.decToHex TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#decToHex
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.startTcpdump TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startTcpdump
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.delSwitch TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delSwitch
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.nodes TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#nodes
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.iperfudpAll TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperfudpAll
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareHosts TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareHosts
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.dpctl TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#dpctl
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareSwitches TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareSwitches
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHostsOld TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getHostsOld
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.dump TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#dump
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignSwController TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignSwController
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addStaticMACAddress TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addStaticMACAddress
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getPorts TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getPorts
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.connect TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingall TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingall
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getMacAddress TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getMacAddress
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.intfs TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#intfs
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.moveHost TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#moveHost
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitchFlowCount TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitchFlowCount
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.net TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#net
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getIPAddress TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getIPAddress
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getLinks TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getLinks
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopTcpdump TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopTcpdump
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getHosts TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getHosts
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getFlowTable TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getFlowTable
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.changeIP TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#changeIP
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.plug TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#plug
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.iperfudp TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperfudp
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addLink TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addLink
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.compareLinks TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareLinks
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.fpingHost TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#fpingHost
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingHost TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingHost
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.changeDefaultGateway TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#changeDefaultGateway
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.verifySSH TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#verifySSH
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.iperftcp TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperftcp
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.assignVLAN TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignVLAN
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingpair TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingpair
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.stopNet TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopNet
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.delHost TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delHost
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.link TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#link
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.pingallHosts TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingallHosts
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.flowComp TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#flowComp
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwController TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwController
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.links TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#links
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.checkIP TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#checkIP
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.verifyStaticGWandMAC TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#verifyStaticGWandMAC
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.__init__ TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitches TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitches
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.deleteSwController TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#deleteSwController
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getInterfaceMACAddress TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getInterfaceMACAddress
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getInterfaces TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getInterfaces
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.calculateSwAndLinks TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#calculateSwAndLinks
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.arping TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#arping
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.update TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#update
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.iperftcpAll TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperftcpAll
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.addSwitch TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addSwitch
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.delLink TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delLink
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.getSwitch TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitch
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.checkFlows TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#checkFlows
-TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver.yank TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#yank
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.getcmd TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#getcmd
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.connect TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.__init__ TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.disconnect TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#disconnect
-TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver.get_version TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#get_version
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.checkForLoss TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#checkForLoss
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingKill TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingKill
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.connect TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingHost TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingHost
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.__init__ TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.disconnect TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#disconnect
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingHostOptical TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingHostOptical
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.checknum TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#checknum
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLongKill TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingLongKill
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.startTcpdump TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#startTcpdump
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingstatus TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingstatus
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.stopTcpdump TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#stopTcpdump
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.pingLong TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingLong
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.runOpticalMnScript TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#runOpticalMnScript
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.attachLincOESession TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#attachLincOESession
-TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver.setIpTablesOUTPUT TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#setIpTablesOUTPUT
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.cli.emulatordriver.Emulator TestON.drivers.common.cli.emulatordriver.Emulator-class.html
-TestON.drivers.common.clidriver.CLI.connect TestON.drivers.common.clidriver.CLI-class.html#connect
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.emulatordriver.Emulator.__init__ TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__
-TestON.drivers.common.clidriver.CLI.disconnect TestON.drivers.common.clidriver.CLI-class.html#disconnect
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.removeIntent TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#removeIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intentsEventsMetrics TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intentsEventsMetrics
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCell TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appStatus TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appStatus
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.rolesNotNull TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#rolesNotNull
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appIDs TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appIDs
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.disconnect TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#disconnect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addPointIntent TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addPointIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestAddAndGet TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counterTestAddAndGet
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.FlowAddedCount TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#FlowAddedCount
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.clusters TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#clusters
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.nodes TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#nodes
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deviceRemove TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deviceRemove
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.partitions TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#partitions
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevice TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getDevice
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkFlowsState TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkFlowsState
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addSinglepointToMultipointIntent TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addSinglepointToMultipointIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.summary TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#summary
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deactivateApp TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deactivateApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.hosts TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#hosts
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getIntentState TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getIntentState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addHostIntent TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addHostIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.ports TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#ports
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getCfg TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getCfg
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.appToIDCheck TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appToIDCheck
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaders TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#leaders
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.connect TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.balanceMasters TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#balanceMasters
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.sendline TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.leaderCandidates TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#leaderCandidates
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getHost TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getHost
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counters TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counters
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addMultipointToSinglepointIntent TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addMultipointToSinglepointIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkIntentState TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkIntentState
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.logout TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#logout
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topology TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topology
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllDevicesId TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllDevicesId
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkStatus TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkStatus
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.routes TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#routes
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestGet TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestGet
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestAdd TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestAdd
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.purgeWithdrawnIntents TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#purgeWithdrawnIntents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.app TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#app
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestRemove TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestRemove
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentsId TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllIntentsId
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.log TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.removeNode TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#removeNode
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.featureInstall TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#featureInstall
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pushTestIntents TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#pushTestIntents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.apps TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#apps
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.uninstallApp TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#uninstallApp
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getHostsId TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getHostsId
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addNode TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addNode
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestLeader TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestLeader
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllNodesId TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllNodesId
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getAllIntentIds TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllIntentIds
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.startOnosCli TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#startOnosCli
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.roles TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#roles
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intentSummary TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intentSummary
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setCfg TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCfg
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.devices TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#devices
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestWithdraw TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestWithdraw
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.specificLeaderCandidate TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#specificLeaderCandidate
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.intents TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intents
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.pendingMap TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#pendingMap
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.setTestSize TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestSize
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.links TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#links
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.featureUninstall TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#featureUninstall
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.__init__ TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.paths TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#paths
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDevicePortsEnabledCount TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getDevicePortsEnabledCount
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.deviceRole TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deviceRole
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkBalanceMasters TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkBalanceMasters
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getRole TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getRole
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addOpticalIntent TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addOpticalIntent
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.activateApp TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#activateApp
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.flows TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#flows
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.counterTestGetAndAdd TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counterTestGetAndAdd
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.topologyEventsMetrics TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topologyEventsMetrics
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.electionTestRun TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestRun
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.getDeviceLinksActiveCount TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getDeviceLinksActiveCount
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.checkMasters TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkMasters
-TestON.drivers.common.cli.onosclidriver.OnosCliDriver.addMplsIntent TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addMplsIntent
-TestON.drivers.common.cli.onosdriver.OnosDriver TestON.drivers.common.cli.onosdriver.OnosDriver-class.html
-TestON.drivers.common.cli.onosdriver.OnosDriver.setIpTables TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setIpTables
-TestON.drivers.common.cli.onosdriver.OnosDriver.pushTestIntentsShell TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#pushTestIntentsShell
-TestON.drivers.common.cli.onosdriver.OnosDriver.configNullDev TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#configNullDev
-TestON.drivers.common.cli.onosdriver.OnosDriver.onosUninstall TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall
-TestON.drivers.common.cli.onosdriver.OnosDriver.runOnosTopoCfg TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#runOnosTopoCfg
-TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkPcap TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkPcap
-TestON.drivers.common.cli.onosdriver.OnosDriver.setCell TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.connect TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.onosdriver.OnosDriver.onosStatus TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStatus
-TestON.drivers.common.cli.onosdriver.OnosDriver.__init__ TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__
-TestON.drivers.common.cli.onosdriver.OnosDriver.onosPackage TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage
-TestON.drivers.common.cli.onosdriver.OnosDriver.gitPull TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull
-TestON.drivers.common.cli.onosdriver.OnosDriver.disconnect TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#disconnect
-TestON.drivers.common.cli.onosdriver.OnosDriver.jvmSet TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#jvmSet
-TestON.drivers.common.cli.onosdriver.OnosDriver.createDBFile TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createDBFile
-TestON.drivers.common.cli.onosdriver.OnosDriver.onosInstall TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall
-TestON.drivers.common.cli.onosdriver.OnosDriver.logReport TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#logReport
-TestON.drivers.common.cli.onosdriver.OnosDriver.ptpd TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#ptpd
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.cli.onosdriver.OnosDriver.configNullLink TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#configNullLink
-TestON.drivers.common.cli.onosdriver.OnosDriver.onosCfgSet TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosCfgSet
-TestON.drivers.common.cli.onosdriver.OnosDriver.copyMininetFile TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#copyMininetFile
-TestON.drivers.common.cli.onosdriver.OnosDriver.onosStart TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStart
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.cli.onosdriver.OnosDriver.createCellFile TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile
-TestON.drivers.common.cli.onosdriver.OnosDriver.onosCli TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosCli
-TestON.drivers.common.cli.onosdriver.OnosDriver.cpLogsToDir TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cpLogsToDir
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.cli.onosdriver.OnosDriver.checkLogs TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#checkLogs
-TestON.drivers.common.cli.onosdriver.OnosDriver.verifySummary TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifySummary
-TestON.drivers.common.cli.onosdriver.OnosDriver.createLinkGraphFile TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createLinkGraphFile
-TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkStop TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkStop
-TestON.drivers.common.cli.onosdriver.OnosDriver.getVersion TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion
-TestON.drivers.common.cli.onosdriver.OnosDriver.onosRemoveRaftLogs TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosRemoveRaftLogs
-TestON.drivers.common.cli.onosdriver.OnosDriver.tsharkGrep TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkGrep
-TestON.drivers.common.cli.onosdriver.OnosDriver.verifyCell TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell
-TestON.drivers.common.cli.onosdriver.OnosDriver.getTopology TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getTopology
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.cli.onosdriver.OnosDriver.getEpochMs TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getEpochMs
-TestON.drivers.common.cli.onosdriver.OnosDriver.getOnosIps TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getOnosIps
-TestON.drivers.common.cli.onosdriver.OnosDriver.getBranchName TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getBranchName
-TestON.drivers.common.cli.onosdriver.OnosDriver.onosBuild TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosBuild
-TestON.drivers.common.cli.onosdriver.OnosDriver.onosStartNetwork TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStartNetwork
-TestON.drivers.common.cli.onosdriver.OnosDriver.onosStop TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStop
-TestON.drivers.common.cli.onosdriver.OnosDriver.isup TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup
-TestON.drivers.common.cli.onosdriver.OnosDriver.checkStatus TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#checkStatus
-TestON.drivers.common.cli.onosdriver.OnosDriver.onosDie TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosDie
-TestON.drivers.common.cli.onosdriver.OnosDriver.cleanInstall TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cleanInstall
-TestON.drivers.common.cli.onosdriver.OnosDriver.onosKill TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosKill
-TestON.drivers.common.cli.onosdriver.OnosDriver.detailed_status TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#detailed_status
-TestON.drivers.common.cli.onosdriver.OnosDriver.gitCheckout TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitCheckout
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disable_bgp_peer TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#disable_bgp_peer
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connect TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.deleteRoutes TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#deleteRoutes
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.addRoute TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#addRoute
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.__init__ TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.generateExpectedSingleRouteIntent TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#generateExpectedSingleRouteIntent
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.disconnect TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#disconnect
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.checkRoutes TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#checkRoutes
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.extractActualBgpIntents TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualBgpIntents
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.delRoute TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#delRoute
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.loginQuagga TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#loginQuagga
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.extractActualRouteIntentNum TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualRouteIntentNum
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.enable_bgp_peer TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#enable_bgp_peer
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.addRoutes TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#addRoutes
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.pingTest TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#pingTest
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.generateExpectedRouteIntents TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#generateExpectedRouteIntents
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.extractActualBgpIntentNum TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualBgpIntentNum
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.generatePrefixes TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#generatePrefixes
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.extractActualRoutesMaster TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualRoutesMaster
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.connectQuagga TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connectQuagga
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.generateExpectedBgpIntents TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#generateExpectedBgpIntents
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.extractActualRoutesOneDotZero TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualRoutesOneDotZero
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.extractActualRouteIntents TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualRouteIntents
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.generateExpectedOnePeerRouteIntents TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#generateExpectedOnePeerRouteIntents
-TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver.enterConfig TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#enterConfig
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.connect TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.__init__ TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__
-TestON.drivers.common.clidriver.CLI.disconnect TestON.drivers.common.clidriver.CLI-class.html#disconnect
-TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver.handle TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#handle
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.connect TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver.__init__ TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__
-TestON.drivers.common.clidriver.CLI.disconnect TestON.drivers.common.clidriver.CLI-class.html#disconnect
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_ssh TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_ssh
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_netconf TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_netconf
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_lldp TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_lldp
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_whoami TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_whoami
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_qos TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_qos
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_igmpsnooping TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_igmpsnooping
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.__init__ TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_environment TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_environment
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_configlockstatus TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_configlockstatus
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_channelgroup TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_channelgroup
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_version TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_version
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_ntp TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_ntp
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_mc TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_mc
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_history TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_history
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_efmoam TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_efmoam
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_system TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_system
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_processes TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_processes
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_vlan TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_vlan
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_interfaces TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_interfaces
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_port TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_port
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_memory TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_memory
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_acknowledgments_interface TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_acknowledgments_interface
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_oadp TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_oadp
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_tcpdump TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_tcpdump
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_dhcp TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_dhcp
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_openflow TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_openflow
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_macaddresstable TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_macaddresstable
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_cpu TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_cpu
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_file TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_file
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_sessions TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_sessions
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_gsrp TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_gsrp
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_clock TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_clock
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_vrrpstatus TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_vrrpstatus
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_flash TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_flash
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_license TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_license
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_ipdual TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_ipdual
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_ipv6dhcp TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_ipv6dhcp
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_autoconfig TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_autoconfig
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_logging TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_logging
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_sflow TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_sflow
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_loopdetection TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_loopdetection
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_track TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_track
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_acknowledgments TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_acknowledgments
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_cfm TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_cfm
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_power TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_power
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_netstat TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_netstat
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_spanningtree TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_spanningtree
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_mldsnooping TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_mldsnooping
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_dumpfile TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_dumpfile
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_axrp TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_axrp
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_qosflow TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_qosflow
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_dot1x TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_dot1x
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_techsupport TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_techsupport
-TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC.show_ip TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_ip
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.connect TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.__init__ TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__
-TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver.disconnect TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#disconnect
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.connect TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.__init__ TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__
-TestON.drivers.common.clidriver.CLI.disconnect TestON.drivers.common.clidriver.CLI-class.html#disconnect
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver.SSH TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#SSH
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.connect TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver.__init__ TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__
-TestON.drivers.common.clidriver.CLI.disconnect TestON.drivers.common.clidriver.CLI-class.html#disconnect
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.dumpAggregate TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#dumpAggregate
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.show TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#show
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.delFlow TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#delFlow
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.connect TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.__init__ TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__
-TestON.drivers.common.clidriver.CLI.disconnect TestON.drivers.common.clidriver.CLI-class.html#disconnect
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.addFlow TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#addFlow
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.dumpTables TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#dumpTables
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.showStatus TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#showStatus
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.showFlow TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#showFlow
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.dumpDesc TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#dumpDesc
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.desc_set TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#desc_set
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.dumpPorts TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#dumpPorts
-TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver.dumpFlow TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#dumpFlow
-TestON.drivers.common.cli.toolsdriver.Tools TestON.drivers.common.cli.toolsdriver.Tools-class.html
-TestON.drivers.common.clidriver.CLI.connect TestON.drivers.common.clidriver.CLI-class.html#connect
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.cli.toolsdriver.Tools.__init__ TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__
-TestON.drivers.common.clidriver.CLI.disconnect TestON.drivers.common.clidriver.CLI-class.html#disconnect
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.drivers.common.clidriver.CLI TestON.drivers.common.clidriver.CLI-class.html
-TestON.drivers.common.clidriver.CLI.connect TestON.drivers.common.clidriver.CLI-class.html#connect
-TestON.drivers.common.clidriver.CLI.secureCopy TestON.drivers.common.clidriver.CLI-class.html#secureCopy
-TestON.drivers.common.clidriver.CLI.__init__ TestON.drivers.common.clidriver.CLI-class.html#__init__
-TestON.drivers.common.clidriver.CLI.disconnect TestON.drivers.common.clidriver.CLI-class.html#disconnect
-TestON.drivers.common.clidriver.CLI.remove_contol_chars TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars
-TestON.drivers.common.clidriver.CLI.onfail TestON.drivers.common.clidriver.CLI-class.html#onfail
-TestON.drivers.common.clidriver.CLI.execute TestON.drivers.common.clidriver.CLI-class.html#execute
-TestON.drivers.common.clidriver.CLI.runAsSudoUser TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser
-TestON.examples.Assert.Assert.Assert TestON.examples.Assert.Assert.Assert-class.html
-TestON.examples.Assert.Assert.Assert.CASE1 TestON.examples.Assert.Assert.Assert-class.html#CASE1
-TestON.examples.Assert.Assert.Assert.__init__ TestON.examples.Assert.Assert.Assert-class.html#__init__
-TestON.examples.CaseParams.CaseParams.CaseParams TestON.examples.CaseParams.CaseParams.CaseParams-class.html
-TestON.examples.CaseParams.CaseParams.CaseParams.CASE1 TestON.examples.CaseParams.CaseParams.CaseParams-class.html#CASE1
-TestON.examples.CaseParams.CaseParams.CaseParams.CASE2 TestON.examples.CaseParams.CaseParams.CaseParams-class.html#CASE2
-TestON.examples.CaseParams.CaseParams.CaseParams.__init__ TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.CASE1 TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#CASE1
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.CASE2 TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#CASE2
-TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest.__init__ TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__
-TestON.examples.StepParams.StepParams.StepParams TestON.examples.StepParams.StepParams.StepParams-class.html
-TestON.examples.StepParams.StepParams.StepParams.CASE1 TestON.examples.StepParams.StepParams.StepParams-class.html#CASE1
-TestON.examples.StepParams.StepParams.StepParams.CASE2 TestON.examples.StepParams.StepParams.StepParams-class.html#CASE2
-TestON.examples.StepParams.StepParams.StepParams.__init__ TestON.examples.StepParams.StepParams.StepParams-class.html#__init__
-TestON.examples.Topology.Topology.Topology TestON.examples.Topology.Topology.Topology-class.html
-TestON.examples.Topology.Topology.Topology.CASE1 TestON.examples.Topology.Topology.Topology-class.html#CASE1
-TestON.examples.Topology.Topology.Topology.__init__ TestON.examples.Topology.Topology.Topology-class.html#__init__
-TestON.tests.CHOtest.CHOtest.CHOtest TestON.tests.CHOtest.CHOtest.CHOtest-class.html
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE98 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE98
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE91 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE91
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE90 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE90
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE93 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE93
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE92 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE92
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE94 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE94
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE97 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE97
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE96 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE96
-TestON.tests.CHOtest.CHOtest.CHOtest.__init__ TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE20 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE20
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE21 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE21
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE22 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE22
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE60 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE60
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE61 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE61
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE62 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE62
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE42 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE42
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE40 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE40
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE41 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE41
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE82 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE82
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE83 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE83
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE80 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE80
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE81 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE81
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE84 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE84
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE74 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE74
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE1 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE1
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE3 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE3
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE5 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE5
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE10 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE10
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE12 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE12
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE73 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE73
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE72 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE72
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE71 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE71
-TestON.tests.CHOtest.CHOtest.CHOtest.CASE70 TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE70
-TestON.tests.FUNCintent.FUNCintent.FUNCintent TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.CASE11 TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE11
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.CASE10 TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE10
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.CASE13 TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE13
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.CASE12 TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE12
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.CASE14 TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE14
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.CASE9 TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE9
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.CASE4000 TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE4000
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.CASE8 TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE8
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.CASE2000 TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE2000
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.CASE1000 TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE1000
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.CASE1 TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE1
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.CASE2 TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE2
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.CASE5000 TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE5000
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.CASE3000 TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE3000
-TestON.tests.FUNCintent.FUNCintent.FUNCintent.__init__ TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE11 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE11
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE10 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE10
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE13 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE13
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE12 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE12
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE15 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE15
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE14 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE14
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE17 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE17
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE16 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE16
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE21 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE21
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE9 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE9
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE8 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE8
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.__init__ TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE1 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE1
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE3 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE3
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE2 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE2
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE5 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE5
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE4 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE4
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE7 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE7
-TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart.CASE6 TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE6
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html
-TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo.__init__ TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE11 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE11
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE10 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE10
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE13 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE13
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE12 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE12
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE15 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE15
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE14 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE14
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE17 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE17
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE16 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE16
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE21 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE21
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE9 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE9
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE8 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE8
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.__init__ TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE1 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE1
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE3 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE3
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE2 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE2
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE5 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE5
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE4 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE4
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE7 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE7
-TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart.CASE6 TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE6
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html
-TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo.__init__ TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__
-TestON.tests.HAsanity.HAsanity.HAsanity TestON.tests.HAsanity.HAsanity.HAsanity-class.html
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE11 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE11
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE10 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE10
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE13 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE13
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE12 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE12
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE15 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE15
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE14 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE14
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE17 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE17
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE16 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE16
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE21 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE21
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE9 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE9
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE8 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE8
-TestON.tests.HAsanity.HAsanity.HAsanity.__init__ TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE1 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE1
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE3 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE3
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE2 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE2
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE5 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE5
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE4 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE4
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE7 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE7
-TestON.tests.HAsanity.HAsanity.HAsanity.CASE6 TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE6
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html
-TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo.__init__ TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE11 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE11
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE10 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE10
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE13 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE13
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE12 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE12
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE15 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE15
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE14 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE14
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE17 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE17
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE16 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE16
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE21 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE21
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE9 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE9
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE8 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE8
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.__init__ TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE1 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE1
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE3 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE3
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE2 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE2
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE5 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE5
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE4 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE4
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE7 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE7
-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart.CASE6 TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE6
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html
-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo.__init__ TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.CASE11 TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#CASE11
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.CASE9 TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#CASE9
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.CASE1001 TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#CASE1001
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.CASE1 TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#CASE1
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.CASE2 TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#CASE2
-TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo.__init__ TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.CASE11 TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#CASE11
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.CASE12 TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#CASE12
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.CASE9 TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#CASE9
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.CASE1 TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#CASE1
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.CASE2 TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#CASE2
-TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate.__init__ TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.CASE1 TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#CASE1
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.CASE2 TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#CASE2
-TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench.__init__ TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.CASE1 TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#CASE1
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.CASE2 TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#CASE2
-TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g.__init__ TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.CASE1 TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#CASE1
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.CASE2 TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#CASE2
-TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp.__init__ TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.CASE1 TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#CASE1
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.CASE2 TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#CASE2
-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__init__ TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.CASE1 TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#CASE1
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.CASE2 TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#CASE2
-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat.__init__ TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.CASE1 TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#CASE1
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.CASE2 TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#CASE2
-TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat.__init__ TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.CASE1 TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#CASE1
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.CASE2 TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#CASE2
-TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat.__init__ TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__
diff --git a/TestON/Documentation/TestON_Document/class-tree.html b/TestON/Documentation/TestON_Document/class-tree.html
deleted file mode 100644
index f0c1cf1..0000000
--- a/TestON/Documentation/TestON_Document/class-tree.html
+++ /dev/null
@@ -1,269 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class Hierarchy</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- > Trees </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%"> </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="class-tree.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<center><b>
- [ <a href="module-tree.html">Module Hierarchy</a>
- | <a href="class-tree.html">Class Hierarchy</a> ]
-</b></center><br />
-<h1 class="epydoc">Class Hierarchy</h1>
-<ul class="nomargin-top">
- <li> <strong class="uidlink"><a href="TestON.examples.Assert.Assert.Assert-class.html">TestON.examples.Assert.Assert.Assert</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">TestON.tests.CHOtest.CHOtest.CHOtest</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples.CaseParams.CaseParams.CaseParams-class.html">TestON.examples.CaseParams.CaseParams.CaseParams</a></strong>:
- <em class="summary">This example shows the usage of the CASE level parameters, in params file the
-[[CASE]]
- 'destination' = 'h2'</em>
- </li>
- <li> <strong class="uidlink">cmd.Cmd</strong>:
- <em class="summary">A simple framework for writing line-oriented command interpreters.</em>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.bin.cli.CLI-class.html">TestON.bin.cli.CLI</a></strong>:
- <em class="summary">command-line interface to execute the test.</em>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html">TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest</a></strong>:
- <em class="summary">Testing of the Experimental Mode</em>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">TestON.tests.FUNCintent.FUNCintent.FUNCintent</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.bin.generatedriver.GenerateDriver-class.html">TestON.bin.generatedriver.GenerateDriver</a></strong>:
- <em class="summary">This will</em>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">TestON.tests.HAsanity.HAsanity.HAsanity</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.core.jsonparser.JsonParser-class.html">TestON.core.jsonparser.JsonParser</a></strong>:
- <em class="summary">Module that parses the response Json to Dictionary and Vice versa.</em>
- </li>
- <li> <strong class="uidlink"><a href="TestON.core.logger.Logger-class.html">TestON.core.logger.Logger</a></strong>:
- <em class="summary">Add continuous logs and reports of the test.</em>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.bin.nec.NEC-class.html">TestON.bin.nec.NEC</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.core.openspeak.OpenSpeak-class.html">TestON.core.openspeak.OpenSpeak</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html">TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html">TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html">TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html">TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html">TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html">TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html">TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html">TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html">TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples.StepParams.StepParams.StepParams-class.html">TestON.examples.StepParams.StepParams.StepParams</a></strong>:
- <em class="summary">This example shows the usage of the STEP level parameters, in params file the
-[[CASE1]]
-[[[STEP1]]]
- 'host' = 'h2'</em>
- </li>
- <li> <strong class="uidlink">templatetest.TemplateTest</strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.core.teston.TestON-class.html">TestON.core.teston.TestON</a></strong>:
- <em class="summary">TestON will initiate the specified test.</em>
- </li>
- <li> <strong class="uidlink"><a href="TestON.core.testparser.TestParser-class.html">TestON.core.testparser.TestParser</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples.Topology.Topology.Topology-class.html">TestON.examples.Topology.Topology.Topology</a></strong>:
- <em class="summary">This example shows, how we can use the topology file:</em>
- </li>
- <li> <strong class="uidlink"><a href="TestON.bin.updatedriver.UpdateDriver-class.html">TestON.bin.updatedriver.UpdateDriver</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.bin.vyatta.Vyatta-class.html">TestON.bin.vyatta.Vyatta</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.core.iniparser.iniparser-class.html">TestON.core.iniparser.iniparser</a></strong>:
- <em class="summary">Manages authoring, parsing and execution of the test.</em>
- </li>
- <li> <strong class="uidlink">object</strong>:
- <em class="summary">The most base type</em>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.bin.cli.CLI-class.html">TestON.bin.cli.CLI</a></strong>:
- <em class="summary">command-line interface to execute the test.</em>
- </li>
- <li> <strong class="uidlink">TestON.drivers.component.Component</strong>:
- <em class="summary">This is the tempalte class for components</em>
- </li>
- <li> <strong class="uidlink"><a href="TestON.core.ast.NodeVisitor-class.html">TestON.core.ast.NodeVisitor</a></strong>:
- <em class="summary">A node visitor base class that walks the abstract syntax tree and
- calls a visitor function for every node found.</em>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.core.ast.NodeTransformer-class.html">TestON.core.ast.NodeTransformer</a></strong>:
- <em class="summary">A :class:`NodeVisitor` subclass that walks the abstract syntax tree
- and allows modification of nodes.</em>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink">mininet.topo.Topo</strong>:
- <em class="summary">Data center network representation for structured multi-trees.</em>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html">TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html">TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html">TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html">TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo</a></strong>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink">threading._Verbose</strong>
- <ul>
- <li> <strong class="uidlink">threading.Thread</strong>:
- <em class="summary">A class that represents a thread of control.</em>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.bin.cli.CLI-class.html">TestON.bin.cli.CLI</a></strong>:
- <em class="summary">command-line interface to execute the test.</em>
- </li>
- <li> <strong class="uidlink"><a href="TestON.bin.cli.TestThread-class.html">TestON.bin.cli.TestThread</a></strong>:
- <em class="summary">TestThread class will handle the test execution and will
- communicate with the thread in the do_run.</em>
- </li>
- <li> <strong class="uidlink"><a href="TestON.core.Thread.Thread-class.html">TestON.core.Thread.Thread</a></strong>
- </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink">dict</strong>:
- <em class="summary">dict() -> new empty dictionary
-dict(mapping) -> new dictionary initialized from a mapping object's
- (key, value) pairs
-dict(iterable) -> new dictionary initialized as if via:
- d = {}
- for k, v in iterable:
- d[k] = v
-dict(**kwargs) -> new dictionary initialized with the name=value pairs
- in the keyword argument list.</em>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.core.dicttoobject.DictToObject-class.html">TestON.core.dicttoobject.DictToObject</a></strong>
- </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.core.xmlparser.xmlparser-class.html">TestON.core.xmlparser.xmlparser</a></strong>
- </li>
-</ul>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- > Trees </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_api.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_api.gif
deleted file mode 100644
index 6432fa1..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_api.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_cli.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_cli.gif
deleted file mode 100644
index 5e24752..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_cli.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_cli_2.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_cli_2.gif
deleted file mode 100644
index 37f89e8..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_cli_2.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_controller.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_controller.gif
deleted file mode 100644
index 18d2f44..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_controller.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_dicttoobje.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_dicttoobje.gif
deleted file mode 100644
index 5361e0f..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_dicttoobje.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_dpclidrive.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_dpclidrive.gif
deleted file mode 100644
index c132d06..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_dpclidrive.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_dpctlclidr.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_dpctlclidr.gif
deleted file mode 100644
index 20a2464..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_dpctlclidr.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_emulator.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_emulator.gif
deleted file mode 100644
index 11e93b4..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_emulator.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_floodlight.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_floodlight.gif
deleted file mode 100644
index 088d48e..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_floodlight.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_flowvisord.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_flowvisord.gif
deleted file mode 100644
index 27fec39..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_flowvisord.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_fvtapidriv.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_fvtapidriv.gif
deleted file mode 100644
index 647823e..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_fvtapidriv.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_lincoedriv.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_lincoedriv.gif
deleted file mode 100644
index 2633006..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_lincoedriv.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_mininetcli.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_mininetcli.gif
deleted file mode 100644
index 4da9303..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_mininetcli.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_nodetransf.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_nodetransf.gif
deleted file mode 100644
index 5463f2d..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_nodetransf.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_nodevisito.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_nodevisito.gif
deleted file mode 100644
index aac535b..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_nodevisito.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_obelisktop.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_obelisktop.gif
deleted file mode 100644
index abd3094..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_obelisktop.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_obelisktop_2.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_obelisktop_2.gif
deleted file mode 100644
index abd3094..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_obelisktop_2.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_obelisktop_3.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_obelisktop_3.gif
deleted file mode 100644
index abd3094..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_obelisktop_3.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_obelisktop_4.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_obelisktop_4.gif
deleted file mode 100644
index abd3094..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_obelisktop_4.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_onosclidri.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_onosclidri.gif
deleted file mode 100644
index 8639187..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_onosclidri.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_onosdriver.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_onosdriver.gif
deleted file mode 100644
index 2c3511d..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_onosdriver.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_onosrestdr.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_onosrestdr.gif
deleted file mode 100644
index cab57cb..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_onosrestdr.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_poxclidriv.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_poxclidriv.gif
deleted file mode 100644
index 4d21162..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_poxclidriv.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_quaggaclid.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_quaggaclid.gif
deleted file mode 100644
index 0ea195b..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_quaggaclid.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_remotemini.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_remotemini.gif
deleted file mode 100644
index fa4fb98..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_remotemini.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_remotepoxd.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_remotepoxd.gif
deleted file mode 100644
index de2c0ee..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_remotepoxd.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_remotesysd.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_remotesysd.gif
deleted file mode 100644
index 2560626..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_remotesysd.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_remotetest.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_remotetest.gif
deleted file mode 100644
index 35cd722..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_remotetest.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_remotevmdr.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_remotevmdr.gif
deleted file mode 100644
index 21f4582..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_remotevmdr.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_testthread.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_testthread.gif
deleted file mode 100644
index a3e9fff..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_testthread.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_thread.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_thread.gif
deleted file mode 100644
index d8a26fc..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_thread.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/class_hierarchy_for_tools.gif b/TestON/Documentation/TestON_Document/class_hierarchy_for_tools.gif
deleted file mode 100644
index 2db54d0..0000000
--- a/TestON/Documentation/TestON_Document/class_hierarchy_for_tools.gif
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/crarr.png b/TestON/Documentation/TestON_Document/crarr.png
deleted file mode 100644
index 26b43c5..0000000
--- a/TestON/Documentation/TestON_Document/crarr.png
+++ /dev/null
Binary files differ
diff --git a/TestON/Documentation/TestON_Document/epydoc.css b/TestON/Documentation/TestON_Document/epydoc.css
deleted file mode 100644
index 86d4170..0000000
--- a/TestON/Documentation/TestON_Document/epydoc.css
+++ /dev/null
@@ -1,322 +0,0 @@
-
-
-/* Epydoc CSS Stylesheet
- *
- * This stylesheet can be used to customize the appearance of epydoc's
- * HTML output.
- *
- */
-
-/* Default Colors & Styles
- * - Set the default foreground & background color with 'body'; and
- * link colors with 'a:link' and 'a:visited'.
- * - Use bold for decision list terms.
- * - The heading styles defined here are used for headings *within*
- * docstring descriptions. All headings used by epydoc itself use
- * either class='epydoc' or class='toc' (CSS styles for both
- * defined below).
- */
-body { background: #ffffff; color: #000000; }
-p { margin-top: 0.5em; margin-bottom: 0.5em; }
-a:link { color: #0000ff; }
-a:visited { color: #204080; }
-dt { font-weight: bold; }
-h1 { font-size: +140%; font-style: italic;
- font-weight: bold; }
-h2 { font-size: +125%; font-style: italic;
- font-weight: bold; }
-h3 { font-size: +110%; font-style: italic;
- font-weight: normal; }
-code { font-size: 100%; }
-/* N.B.: class, not pseudoclass */
-a.link { font-family: monospace; }
-
-/* Page Header & Footer
- * - The standard page header consists of a navigation bar (with
- * pointers to standard pages such as 'home' and 'trees'); a
- * breadcrumbs list, which can be used to navigate to containing
- * classes or modules; options links, to show/hide private
- * variables and to show/hide frames; and a page title (using
- * <h1>). The page title may be followed by a link to the
- * corresponding source code (using 'span.codelink').
- * - The footer consists of a navigation bar, a timestamp, and a
- * pointer to epydoc's homepage.
- */
-h1.epydoc { margin: 0; font-size: +140%; font-weight: bold; }
-h2.epydoc { font-size: +130%; font-weight: bold; }
-h3.epydoc { font-size: +115%; font-weight: bold;
- margin-top: 0.2em; }
-td h3.epydoc { font-size: +115%; font-weight: bold;
- margin-bottom: 0; }
-table.navbar { background: #a0c0ff; color: #000000;
- border: 2px groove #c0d0d0; }
-table.navbar table { color: #000000; }
-th.navbar-select { background: #70b0ff;
- color: #000000; }
-table.navbar a { text-decoration: none; }
-table.navbar a:link { color: #0000ff; }
-table.navbar a:visited { color: #204080; }
-span.breadcrumbs { font-size: 85%; font-weight: bold; }
-span.options { font-size: 70%; }
-span.codelink { font-size: 85%; }
-td.footer { font-size: 85%; }
-
-/* Table Headers
- * - Each summary table and details section begins with a 'header'
- * row. This row contains a section title (marked by
- * 'span.table-header') as well as a show/hide private link
- * (marked by 'span.options', defined above).
- * - Summary tables that contain user-defined groups mark those
- * groups using 'group header' rows.
- */
-td.table-header { background: #70b0ff; color: #000000;
- border: 1px solid #608090; }
-td.table-header table { color: #000000; }
-td.table-header table a:link { color: #0000ff; }
-td.table-header table a:visited { color: #204080; }
-span.table-header { font-size: 120%; font-weight: bold; }
-th.group-header { background: #c0e0f8; color: #000000;
- text-align: left; font-style: italic;
- font-size: 115%;
- border: 1px solid #608090; }
-
-/* Summary Tables (functions, variables, etc)
- * - Each object is described by a single row of the table with
- * two cells. The left cell gives the object's type, and is
- * marked with 'code.summary-type'. The right cell gives the
- * object's name and a summary description.
- * - CSS styles for the table's header and group headers are
- * defined above, under 'Table Headers'
- */
-table.summary { border-collapse: collapse;
- background: #e8f0f8; color: #000000;
- border: 1px solid #608090;
- margin-bottom: 0.5em; }
-td.summary { border: 1px solid #608090; }
-code.summary-type { font-size: 85%; }
-table.summary a:link { color: #0000ff; }
-table.summary a:visited { color: #204080; }
-
-
-/* Details Tables (functions, variables, etc)
- * - Each object is described in its own div.
- * - A single-row summary table w/ table-header is used as
- * a header for each details section (CSS style for table-header
- * is defined above, under 'Table Headers').
- */
-table.details { border-collapse: collapse;
- background: #e8f0f8; color: #000000;
- border: 1px solid #608090;
- margin: .2em 0 0 0; }
-table.details table { color: #000000; }
-table.details a:link { color: #0000ff; }
-table.details a:visited { color: #204080; }
-
-/* Fields */
-dl.fields { margin-left: 2em; margin-top: 1em;
- margin-bottom: 1em; }
-dl.fields dd ul { margin-left: 0em; padding-left: 0em; }
-dl.fields dd ul li ul { margin-left: 2em; padding-left: 0em; }
-div.fields { margin-left: 2em; }
-div.fields p { margin-bottom: 0.5em; }
-
-/* Index tables (identifier index, term index, etc)
- * - link-index is used for indices containing lists of links
- * (namely, the identifier index & term index).
- * - index-where is used in link indices for the text indicating
- * the container/source for each link.
- * - metadata-index is used for indices containing metadata
- * extracted from fields (namely, the bug index & todo index).
- */
-table.link-index { border-collapse: collapse;
- background: #e8f0f8; color: #000000;
- border: 1px solid #608090; }
-td.link-index { border-width: 0px; }
-table.link-index a:link { color: #0000ff; }
-table.link-index a:visited { color: #204080; }
-span.index-where { font-size: 70%; }
-table.metadata-index { border-collapse: collapse;
- background: #e8f0f8; color: #000000;
- border: 1px solid #608090;
- margin: .2em 0 0 0; }
-td.metadata-index { border-width: 1px; border-style: solid; }
-table.metadata-index a:link { color: #0000ff; }
-table.metadata-index a:visited { color: #204080; }
-
-/* Function signatures
- * - sig* is used for the signature in the details section.
- * - .summary-sig* is used for the signature in the summary
- * table, and when listing property accessor functions.
- * */
-.sig-name { color: #006080; }
-.sig-arg { color: #008060; }
-.sig-default { color: #602000; }
-.summary-sig { font-family: monospace; }
-.summary-sig-name { color: #006080; font-weight: bold; }
-table.summary a.summary-sig-name:link
- { color: #006080; font-weight: bold; }
-table.summary a.summary-sig-name:visited
- { color: #006080; font-weight: bold; }
-.summary-sig-arg { color: #006040; }
-.summary-sig-default { color: #501800; }
-
-/* Subclass list
- */
-ul.subclass-list { display: inline; }
-ul.subclass-list li { display: inline; }
-
-/* To render variables, classes etc. like functions */
-table.summary .summary-name { color: #006080; font-weight: bold;
- font-family: monospace; }
-table.summary
- a.summary-name:link { color: #006080; font-weight: bold;
- font-family: monospace; }
-table.summary
- a.summary-name:visited { color: #006080; font-weight: bold;
- font-family: monospace; }
-
-/* Variable values
- * - In the 'variable details' sections, each varaible's value is
- * listed in a 'pre.variable' box. The width of this box is
- * restricted to 80 chars; if the value's repr is longer than
- * this it will be wrapped, using a backslash marked with
- * class 'variable-linewrap'. If the value's repr is longer
- * than 3 lines, the rest will be ellided; and an ellipsis
- * marker ('...' marked with 'variable-ellipsis') will be used.
- * - If the value is a string, its quote marks will be marked
- * with 'variable-quote'.
- * - If the variable is a regexp, it is syntax-highlighted using
- * the re* CSS classes.
- */
-pre.variable { padding: .5em; margin: 0;
- background: #dce4ec; color: #000000;
- border: 1px solid #708890; }
-.variable-linewrap { color: #604000; font-weight: bold; }
-.variable-ellipsis { color: #604000; font-weight: bold; }
-.variable-quote { color: #604000; font-weight: bold; }
-.variable-group { color: #008000; font-weight: bold; }
-.variable-op { color: #604000; font-weight: bold; }
-.variable-string { color: #006030; }
-.variable-unknown { color: #a00000; font-weight: bold; }
-.re { color: #000000; }
-.re-char { color: #006030; }
-.re-op { color: #600000; }
-.re-group { color: #003060; }
-.re-ref { color: #404040; }
-
-/* Base tree
- * - Used by class pages to display the base class hierarchy.
- */
-pre.base-tree { font-size: 80%; margin: 0; }
-
-/* Frames-based table of contents headers
- * - Consists of two frames: one for selecting modules; and
- * the other listing the contents of the selected module.
- * - h1.toc is used for each frame's heading
- * - h2.toc is used for subheadings within each frame.
- */
-h1.toc { text-align: center; font-size: 105%;
- margin: 0; font-weight: bold;
- padding: 0; }
-h2.toc { font-size: 100%; font-weight: bold;
- margin: 0.5em 0 0 -0.3em; }
-
-/* Syntax Highlighting for Source Code
- * - doctest examples are displayed in a 'pre.py-doctest' block.
- * If the example is in a details table entry, then it will use
- * the colors specified by the 'table pre.py-doctest' line.
- * - Source code listings are displayed in a 'pre.py-src' block.
- * Each line is marked with 'span.py-line' (used to draw a line
- * down the left margin, separating the code from the line
- * numbers). Line numbers are displayed with 'span.py-lineno'.
- * The expand/collapse block toggle button is displayed with
- * 'a.py-toggle' (Note: the CSS style for 'a.py-toggle' should not
- * modify the font size of the text.)
- * - If a source code page is opened with an anchor, then the
- * corresponding code block will be highlighted. The code
- * block's header is highlighted with 'py-highlight-hdr'; and
- * the code block's body is highlighted with 'py-highlight'.
- * - The remaining py-* classes are used to perform syntax
- * highlighting (py-string for string literals, py-name for names,
- * etc.)
- */
-pre.py-doctest { padding: .5em; margin: 1em;
- background: #e8f0f8; color: #000000;
- border: 1px solid #708890; }
-table pre.py-doctest { background: #dce4ec;
- color: #000000; }
-pre.py-src { border: 2px solid #000000;
- background: #f0f0f0; color: #000000; }
-.py-line { border-left: 2px solid #000000;
- margin-left: .2em; padding-left: .4em; }
-.py-lineno { font-style: italic; font-size: 90%;
- padding-left: .5em; }
-a.py-toggle { text-decoration: none; }
-div.py-highlight-hdr { border-top: 2px solid #000000;
- border-bottom: 2px solid #000000;
- background: #d8e8e8; }
-div.py-highlight { border-bottom: 2px solid #000000;
- background: #d0e0e0; }
-.py-prompt { color: #005050; font-weight: bold;}
-.py-more { color: #005050; font-weight: bold;}
-.py-string { color: #006030; }
-.py-comment { color: #003060; }
-.py-keyword { color: #600000; }
-.py-output { color: #404040; }
-.py-name { color: #000050; }
-.py-name:link { color: #000050 !important; }
-.py-name:visited { color: #000050 !important; }
-.py-number { color: #005000; }
-.py-defname { color: #000060; font-weight: bold; }
-.py-def-name { color: #000060; font-weight: bold; }
-.py-base-class { color: #000060; }
-.py-param { color: #000060; }
-.py-docstring { color: #006030; }
-.py-decorator { color: #804020; }
-/* Use this if you don't want links to names underlined: */
-/*a.py-name { text-decoration: none; }*/
-
-/* Graphs & Diagrams
- * - These CSS styles are used for graphs & diagrams generated using
- * Graphviz dot. 'img.graph-without-title' is used for bare
- * diagrams (to remove the border created by making the image
- * clickable).
- */
-img.graph-without-title { border: none; }
-img.graph-with-title { border: 1px solid #000000; }
-span.graph-title { font-weight: bold; }
-span.graph-caption { }
-
-/* General-purpose classes
- * - 'p.indent-wrapped-lines' defines a paragraph whose first line
- * is not indented, but whose subsequent lines are.
- * - The 'nomargin-top' class is used to remove the top margin (e.g.
- * from lists). The 'nomargin' class is used to remove both the
- * top and bottom margin (but not the left or right margin --
- * for lists, that would cause the bullets to disappear.)
- */
-p.indent-wrapped-lines { padding: 0 0 0 7em; text-indent: -7em;
- margin: 0; }
-.nomargin-top { margin-top: 0; }
-.nomargin { margin-top: 0; margin-bottom: 0; }
-
-/* HTML Log */
-div.log-block { padding: 0; margin: .5em 0 .5em 0;
- background: #e8f0f8; color: #000000;
- border: 1px solid #000000; }
-div.log-error { padding: .1em .3em .1em .3em; margin: 4px;
- background: #ffb0b0; color: #000000;
- border: 1px solid #000000; }
-div.log-warning { padding: .1em .3em .1em .3em; margin: 4px;
- background: #ffffb0; color: #000000;
- border: 1px solid #000000; }
-div.log-info { padding: .1em .3em .1em .3em; margin: 4px;
- background: #b0ffb0; color: #000000;
- border: 1px solid #000000; }
-h2.log-hdr { background: #70b0ff; color: #000000;
- margin: 0; padding: 0em 0.5em 0em 0.5em;
- border-bottom: 1px solid #000000; font-size: 110%; }
-p.log { font-weight: bold; margin: .5em 0 .5em 0; }
-tr.opt-changed { color: #000000; font-weight: bold; }
-tr.opt-default { color: #606060; }
-pre.log { margin: 0; padding: 0; padding-left: 1em; }
diff --git a/TestON/Documentation/TestON_Document/epydoc.js b/TestON/Documentation/TestON_Document/epydoc.js
deleted file mode 100644
index e787dbc..0000000
--- a/TestON/Documentation/TestON_Document/epydoc.js
+++ /dev/null
@@ -1,293 +0,0 @@
-function toggle_private() {
- // Search for any private/public links on this page. Store
- // their old text in "cmd," so we will know what action to
- // take; and change their text to the opposite action.
- var cmd = "?";
- var elts = document.getElementsByTagName("a");
- for(var i=0; i<elts.length; i++) {
- if (elts[i].className == "privatelink") {
- cmd = elts[i].innerHTML;
- elts[i].innerHTML = ((cmd && cmd.substr(0,4)=="show")?
- "hide private":"show private");
- }
- }
- // Update all DIVs containing private objects.
- var elts = document.getElementsByTagName("div");
- for(var i=0; i<elts.length; i++) {
- if (elts[i].className == "private") {
- elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?"none":"block");
- }
- else if (elts[i].className == "public") {
- elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?"block":"none");
- }
- }
- // Update all table rows containing private objects. Note, we
- // use "" instead of "block" becaue IE & firefox disagree on what
- // this should be (block vs table-row), and "" just gives the
- // default for both browsers.
- var elts = document.getElementsByTagName("tr");
- for(var i=0; i<elts.length; i++) {
- if (elts[i].className == "private") {
- elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?"none":"");
- }
- }
- // Update all list items containing private objects.
- var elts = document.getElementsByTagName("li");
- for(var i=0; i<elts.length; i++) {
- if (elts[i].className == "private") {
- elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?
- "none":"");
- }
- }
- // Update all list items containing private objects.
- var elts = document.getElementsByTagName("ul");
- for(var i=0; i<elts.length; i++) {
- if (elts[i].className == "private") {
- elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?"none":"block");
- }
- }
- // Set a cookie to remember the current option.
- document.cookie = "EpydocPrivate="+cmd;
- }
-function show_private() {
- var elts = document.getElementsByTagName("a");
- for(var i=0; i<elts.length; i++) {
- if (elts[i].className == "privatelink") {
- cmd = elts[i].innerHTML;
- if (cmd && cmd.substr(0,4)=="show")
- toggle_private();
- }
- }
- }
-function getCookie(name) {
- var dc = document.cookie;
- var prefix = name + "=";
- var begin = dc.indexOf("; " + prefix);
- if (begin == -1) {
- begin = dc.indexOf(prefix);
- if (begin != 0) return null;
- } else
- { begin += 2; }
- var end = document.cookie.indexOf(";", begin);
- if (end == -1)
- { end = dc.length; }
- return unescape(dc.substring(begin + prefix.length, end));
- }
-function setFrame(url1, url2) {
- parent.frames[1].location.href = url1;
- parent.frames[2].location.href = url2;
- }
-function checkCookie() {
- var cmd=getCookie("EpydocPrivate");
- if (cmd && cmd.substr(0,4)!="show" && location.href.indexOf("#_") < 0)
- toggle_private();
- }
-function toggleCallGraph(id) {
- var elt = document.getElementById(id);
- if (elt.style.display == "none")
- elt.style.display = "block";
- else
- elt.style.display = "none";
- }
-function expand(id) {
- var elt = document.getElementById(id+"-expanded");
- if (elt) elt.style.display = "block";
- var elt = document.getElementById(id+"-expanded-linenums");
- if (elt) elt.style.display = "block";
- var elt = document.getElementById(id+"-collapsed");
- if (elt) { elt.innerHTML = ""; elt.style.display = "none"; }
- var elt = document.getElementById(id+"-collapsed-linenums");
- if (elt) { elt.innerHTML = ""; elt.style.display = "none"; }
- var elt = document.getElementById(id+"-toggle");
- if (elt) { elt.innerHTML = "-"; }
-}
-
-function collapse(id) {
- var elt = document.getElementById(id+"-expanded");
- if (elt) elt.style.display = "none";
- var elt = document.getElementById(id+"-expanded-linenums");
- if (elt) elt.style.display = "none";
- var elt = document.getElementById(id+"-collapsed-linenums");
- if (elt) { elt.innerHTML = "<br />"; elt.style.display="block"; }
- var elt = document.getElementById(id+"-toggle");
- if (elt) { elt.innerHTML = "+"; }
- var elt = document.getElementById(id+"-collapsed");
- if (elt) {
- elt.style.display = "block";
-
- var indent = elt.getAttribute("indent");
- var pad = elt.getAttribute("pad");
- var s = "<tt class='py-lineno'>";
- for (var i=0; i<pad.length; i++) { s += " " }
- s += "</tt>";
- s += " <tt class='py-line'>";
- for (var i=0; i<indent.length; i++) { s += " " }
- s += "<a href='#' onclick='expand(\"" + id;
- s += "\");return false'>...</a></tt><br />";
- elt.innerHTML = s;
- }
-}
-
-function toggle(id) {
- elt = document.getElementById(id+"-toggle");
- if (elt.innerHTML == "-")
- collapse(id);
- else
- expand(id);
- return false;
-}
-
-function highlight(id) {
- var elt = document.getElementById(id+"-def");
- if (elt) elt.className = "py-highlight-hdr";
- var elt = document.getElementById(id+"-expanded");
- if (elt) elt.className = "py-highlight";
- var elt = document.getElementById(id+"-collapsed");
- if (elt) elt.className = "py-highlight";
-}
-
-function num_lines(s) {
- var n = 1;
- var pos = s.indexOf("\n");
- while ( pos > 0) {
- n += 1;
- pos = s.indexOf("\n", pos+1);
- }
- return n;
-}
-
-// Collapse all blocks that mave more than `min_lines` lines.
-function collapse_all(min_lines) {
- var elts = document.getElementsByTagName("div");
- for (var i=0; i<elts.length; i++) {
- var elt = elts[i];
- var split = elt.id.indexOf("-");
- if (split > 0)
- if (elt.id.substring(split, elt.id.length) == "-expanded")
- if (num_lines(elt.innerHTML) > min_lines)
- collapse(elt.id.substring(0, split));
- }
-}
-
-function expandto(href) {
- var start = href.indexOf("#")+1;
- if (start != 0 && start != href.length) {
- if (href.substring(start, href.length) != "-") {
- collapse_all(4);
- pos = href.indexOf(".", start);
- while (pos != -1) {
- var id = href.substring(start, pos);
- expand(id);
- pos = href.indexOf(".", pos+1);
- }
- var id = href.substring(start, href.length);
- expand(id);
- highlight(id);
- }
- }
-}
-
-function kill_doclink(id) {
- var parent = document.getElementById(id);
- parent.removeChild(parent.childNodes.item(0));
-}
-function auto_kill_doclink(ev) {
- if (!ev) var ev = window.event;
- if (!this.contains(ev.toElement)) {
- var parent = document.getElementById(this.parentID);
- parent.removeChild(parent.childNodes.item(0));
- }
-}
-
-function doclink(id, name, targets_id) {
- var elt = document.getElementById(id);
-
- // If we already opened the box, then destroy it.
- // (This case should never occur, but leave it in just in case.)
- if (elt.childNodes.length > 1) {
- elt.removeChild(elt.childNodes.item(0));
- }
- else {
- // The outer box: relative + inline positioning.
- var box1 = document.createElement("div");
- box1.style.position = "relative";
- box1.style.display = "inline";
- box1.style.top = 0;
- box1.style.left = 0;
-
- // A shadow for fun
- var shadow = document.createElement("div");
- shadow.style.position = "absolute";
- shadow.style.left = "-1.3em";
- shadow.style.top = "-1.3em";
- shadow.style.background = "#404040";
-
- // The inner box: absolute positioning.
- var box2 = document.createElement("div");
- box2.style.position = "relative";
- box2.style.border = "1px solid #a0a0a0";
- box2.style.left = "-.2em";
- box2.style.top = "-.2em";
- box2.style.background = "white";
- box2.style.padding = ".3em .4em .3em .4em";
- box2.style.fontStyle = "normal";
- box2.onmouseout=auto_kill_doclink;
- box2.parentID = id;
-
- // Get the targets
- var targets_elt = document.getElementById(targets_id);
- var targets = targets_elt.getAttribute("targets");
- var links = "";
- target_list = targets.split(",");
- for (var i=0; i<target_list.length; i++) {
- var target = target_list[i].split("=");
- links += "<li><a href='" + target[1] +
- "' style='text-decoration:none'>" +
- target[0] + "</a></li>";
- }
-
- // Put it all together.
- elt.insertBefore(box1, elt.childNodes.item(0));
- //box1.appendChild(box2);
- box1.appendChild(shadow);
- shadow.appendChild(box2);
- box2.innerHTML =
- "Which <b>"+name+"</b> do you want to see documentation for?" +
- "<ul style='margin-bottom: 0;'>" +
- links +
- "<li><a href='#' style='text-decoration:none' " +
- "onclick='kill_doclink(\""+id+"\");return false;'>"+
- "<i>None of the above</i></a></li></ul>";
- }
- return false;
-}
-
-function get_anchor() {
- var href = location.href;
- var start = href.indexOf("#")+1;
- if ((start != 0) && (start != href.length))
- return href.substring(start, href.length);
- }
-function redirect_url(dottedName) {
- // Scan through each element of the "pages" list, and check
- // if "name" matches with any of them.
- for (var i=0; i<pages.length; i++) {
-
- // Each page has the form "<pagename>-m" or "<pagename>-c";
- // extract the <pagename> portion & compare it to dottedName.
- var pagename = pages[i].substring(0, pages[i].length-2);
- if (pagename == dottedName.substring(0,pagename.length)) {
-
- // We've found a page that matches `dottedName`;
- // construct its URL, using leftover `dottedName`
- // content to form an anchor.
- var pagetype = pages[i].charAt(pages[i].length-1);
- var url = pagename + ((pagetype=="m")?"-module.html":
- "-class.html");
- if (dottedName.length > pagename.length)
- url += "#" + dottedName.substring(pagename.length+1,
- dottedName.length);
- return url;
- }
- }
- }
diff --git a/TestON/Documentation/TestON_Document/frames.html b/TestON/Documentation/TestON_Document/frames.html
deleted file mode 100644
index ea95490..0000000
--- a/TestON/Documentation/TestON_Document/frames.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
- "DTD/xhtml1-frameset.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title> TestON </title>
-</head>
-<frameset cols="20%,80%">
- <frameset rows="30%,70%">
- <frame src="toc.html" name="moduleListFrame"
- id="moduleListFrame" />
- <frame src="toc-everything.html" name="moduleFrame"
- id="moduleFrame" />
- </frameset>
- <frame src="TestON-module.html" name="mainFrame" id="mainFrame" />
-</frameset>
-</html>
diff --git a/TestON/Documentation/TestON_Document/help.html b/TestON/Documentation/TestON_Document/help.html
deleted file mode 100644
index cd9a3b9..0000000
--- a/TestON/Documentation/TestON_Document/help.html
+++ /dev/null
@@ -1,278 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Help</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- > Help </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%"> </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="help.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-
-<h1 class="epydoc"> API Documentation </h1>
-
-<p> This document contains the API (Application Programming Interface)
-documentation for TestON. Documentation for the Python
-objects defined by the project is divided into separate pages for each
-package, module, and class. The API documentation also includes two
-pages containing information about the project as a whole: a trees
-page, and an index page. </p>
-
-<h2> Object Documentation </h2>
-
- <p>Each <strong>Package Documentation</strong> page contains: </p>
- <ul>
- <li> A description of the package. </li>
- <li> A list of the modules and sub-packages contained by the
- package. </li>
- <li> A summary of the classes defined by the package. </li>
- <li> A summary of the functions defined by the package. </li>
- <li> A summary of the variables defined by the package. </li>
- <li> A detailed description of each function defined by the
- package. </li>
- <li> A detailed description of each variable defined by the
- package. </li>
- </ul>
-
- <p>Each <strong>Module Documentation</strong> page contains:</p>
- <ul>
- <li> A description of the module. </li>
- <li> A summary of the classes defined by the module. </li>
- <li> A summary of the functions defined by the module. </li>
- <li> A summary of the variables defined by the module. </li>
- <li> A detailed description of each function defined by the
- module. </li>
- <li> A detailed description of each variable defined by the
- module. </li>
- </ul>
-
- <p>Each <strong>Class Documentation</strong> page contains: </p>
- <ul>
- <li> A class inheritance diagram. </li>
- <li> A list of known subclasses. </li>
- <li> A description of the class. </li>
- <li> A summary of the methods defined by the class. </li>
- <li> A summary of the instance variables defined by the class. </li>
- <li> A summary of the class (static) variables defined by the
- class. </li>
- <li> A detailed description of each method defined by the
- class. </li>
- <li> A detailed description of each instance variable defined by the
- class. </li>
- <li> A detailed description of each class (static) variable defined
- by the class. </li>
- </ul>
-
-<h2> Project Documentation </h2>
-
- <p> The <strong>Trees</strong> page contains the module and class hierarchies: </p>
- <ul>
- <li> The <em>module hierarchy</em> lists every package and module, with
- modules grouped into packages. At the top level, and within each
- package, modules and sub-packages are listed alphabetically. </li>
- <li> The <em>class hierarchy</em> lists every class, grouped by base
- class. If a class has more than one base class, then it will be
- listed under each base class. At the top level, and under each base
- class, classes are listed alphabetically. </li>
- </ul>
-
- <p> The <strong>Index</strong> page contains indices of terms and
- identifiers: </p>
- <ul>
- <li> The <em>term index</em> lists every term indexed by any object's
- documentation. For each term, the index provides links to each
- place where the term is indexed. </li>
- <li> The <em>identifier index</em> lists the (short) name of every package,
- module, class, method, function, variable, and parameter. For each
- identifier, the index provides a short description, and a link to
- its documentation. </li>
- </ul>
-
-<h2> The Table of Contents </h2>
-
-<p> The table of contents occupies the two frames on the left side of
-the window. The upper-left frame displays the <em>project
-contents</em>, and the lower-left frame displays the <em>module
-contents</em>: </p>
-
-<table class="help summary" border="1" cellspacing="0" cellpadding="3">
- <tr style="height: 30%">
- <td align="center" style="font-size: small">
- Project<br />Contents<hr />...</td>
- <td align="center" style="font-size: small" rowspan="2" width="70%">
- API<br />Documentation<br />Frame<br /><br /><br />
- </td>
- </tr>
- <tr>
- <td align="center" style="font-size: small">
- Module<br />Contents<hr /> <br />...<br />
- </td>
- </tr>
-</table><br />
-
-<p> The <strong>project contents frame</strong> contains a list of all packages
-and modules that are defined by the project. Clicking on an entry
-will display its contents in the module contents frame. Clicking on a
-special entry, labeled "Everything," will display the contents of
-the entire project. </p>
-
-<p> The <strong>module contents frame</strong> contains a list of every
-submodule, class, type, exception, function, and variable defined by a
-module or package. Clicking on an entry will display its
-documentation in the API documentation frame. Clicking on the name of
-the module, at the top of the frame, will display the documentation
-for the module itself. </p>
-
-<p> The "<strong>frames</strong>" and "<strong>no frames</strong>" buttons below the top
-navigation bar can be used to control whether the table of contents is
-displayed or not. </p>
-
-<h2> The Navigation Bar </h2>
-
-<p> A navigation bar is located at the top and bottom of every page.
-It indicates what type of page you are currently viewing, and allows
-you to go to related pages. The following table describes the labels
-on the navigation bar. Note that not some labels (such as
-[Parent]) are not displayed on all pages. </p>
-
-<table class="summary" border="1" cellspacing="0" cellpadding="3" width="100%">
-<tr class="summary">
- <th>Label</th>
- <th>Highlighted when...</th>
- <th>Links to...</th>
-</tr>
- <tr><td valign="top"><strong>[Parent]</strong></td>
- <td valign="top"><em>(never highlighted)</em></td>
- <td valign="top"> the parent of the current package </td></tr>
- <tr><td valign="top"><strong>[Package]</strong></td>
- <td valign="top">viewing a package</td>
- <td valign="top">the package containing the current object
- </td></tr>
- <tr><td valign="top"><strong>[Module]</strong></td>
- <td valign="top">viewing a module</td>
- <td valign="top">the module containing the current object
- </td></tr>
- <tr><td valign="top"><strong>[Class]</strong></td>
- <td valign="top">viewing a class </td>
- <td valign="top">the class containing the current object</td></tr>
- <tr><td valign="top"><strong>[Trees]</strong></td>
- <td valign="top">viewing the trees page</td>
- <td valign="top"> the trees page </td></tr>
- <tr><td valign="top"><strong>[Index]</strong></td>
- <td valign="top">viewing the index page</td>
- <td valign="top"> the index page </td></tr>
- <tr><td valign="top"><strong>[Help]</strong></td>
- <td valign="top">viewing the help page</td>
- <td valign="top"> the help page </td></tr>
-</table>
-
-<p> The "<strong>show private</strong>" and "<strong>hide private</strong>" buttons below
-the top navigation bar can be used to control whether documentation
-for private objects is displayed. Private objects are usually defined
-as objects whose (short) names begin with a single underscore, but do
-not end with an underscore. For example, "<code>_x</code>",
-"<code>__pprint</code>", and "<code>epydoc.epytext._tokenize</code>"
-are private objects; but "<code>re.sub</code>",
-"<code>__init__</code>", and "<code>type_</code>" are not. However,
-if a module defines the "<code>__all__</code>" variable, then its
-contents are used to decide which objects are private. </p>
-
-<p> A timestamp below the bottom navigation bar indicates when each
-page was last updated. </p>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- > Help </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/identifier-index.html b/TestON/Documentation/TestON_Document/identifier-index.html
deleted file mode 100644
index 2741197..0000000
--- a/TestON/Documentation/TestON_Document/identifier-index.html
+++ /dev/null
@@ -1,3432 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Identifier Index</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- > Indices </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%"> </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="identifier-index.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<table border="0" width="100%">
-<tr valign="bottom"><td>
-<h1 class="epydoc">Identifier Index</h1>
-</td><td>
-[
- <a href="#A">A</a>
- <a href="#B">B</a>
- <a href="#C">C</a>
- <a href="#D">D</a>
- <a href="#E">E</a>
- <a href="#F">F</a>
- <a href="#G">G</a>
- <a href="#H">H</a>
- <a href="#I">I</a>
- <a href="#J">J</a>
- K
- <a href="#L">L</a>
- <a href="#M">M</a>
- <a href="#N">N</a>
- <a href="#O">O</a>
- <a href="#P">P</a>
- <a href="#Q">Q</a>
- <a href="#R">R</a>
- <a href="#S">S</a>
- <a href="#T">T</a>
- <a href="#U">U</a>
- <a href="#V">V</a>
- <a href="#W">W</a>
- <a href="#X">X</a>
- <a href="#Y">Y</a>
- Z
- <a href="#_">_</a>
-]
-</td></table>
-<table border="0" width="100%">
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="A">A</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#activateApp">activateApp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addNode">addNode()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appIDs">appIDs()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#activateApp">activateApp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addOpticalIntent">addOpticalIntent()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#apps">apps()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver.UpdateDriver-class.html#add_method">add_method()</a><br />
-<span class="index-where">(in <a href="TestON.bin.updatedriver.UpdateDriver-class.html">UpdateDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addPointIntent">addPointIntent()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#apps">apps()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#addCaseFooter">addCaseFooter()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addPointIntent">addPointIntent()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appStatus">appStatus()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#addCaseHeader">addCaseHeader()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#addRoute">addRoute()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#appToIDCheck">appToIDCheck()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addFlow">addFlow()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#addRoutes">addRoutes()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#arping">arping()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#addFlow">addFlow()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html">DpctlCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addSinglepointToMultipointIntent">addSinglepointToMultipointIntent()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.Assert-module.html">Assert</a><br />
-<span class="index-where">(in <a href="TestON.examples-module.html">TestON.examples</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#addFlowSpace">addFlowSpace()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html">FlowVisorDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addStaticMACAddress">addStaticMACAddress()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.Assert.Assert-module.html">Assert</a><br />
-<span class="index-where">(in <a href="TestON.examples.Assert-module.html">TestON.examples.Assert</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addHost">addHost()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addSwitch">addSwitch()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.Assert.Assert.Assert-class.html">Assert</a><br />
-<span class="index-where">(in <a href="TestON.examples.Assert.Assert-module.html">TestON.examples.Assert.Assert</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#addHostIntent">addHostIntent()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api-module.html">api</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common-module.html">TestON.drivers.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignSwController">assignSwController()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addHostIntent">addHostIntent()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.apidriver.API-class.html">API</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.apidriver-module.html">TestON.drivers.common.apidriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#assignVLAN">assignVLAN()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#addLink">addLink()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.apidriver-module.html">apidriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common-module.html">TestON.drivers.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.ast-module.html">ast</a><br />
-<span class="index-where">(in <a href="TestON.core-module.html">TestON.core</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addMplsIntent">addMplsIntent()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#app">app()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#attachLincOESession">attachLincOESession()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html">LincOEDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#addMultipointToSinglepointIntent">addMultipointToSinglepointIntent()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver.UpdateDriver-class.html#appendDriver">appendDriver()</a><br />
-<span class="index-where">(in <a href="TestON.bin.updatedriver.UpdateDriver-class.html">UpdateDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#attachLincOESession">attachLincOESession()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a>)</span></td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="B">B</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#balanceMasters">balanceMasters()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin-module.html">bin</a><br />
-<span class="index-where">(in <a href="TestON-module.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#build">build()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html">LincOEDriver</a>)</span></td>
-</tr>
-<tr><td class="link-index"> </td><td class="link-index"> </td><td class="link-index"> </td></tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="C">C</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#calculateSwAndLinks">calculateSwAndLinks()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE20">CASE20()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#checkLogs">checkLogs()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#case">case()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE2000">CASE2000()</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkMasters">checkMasters()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.examples.Assert.Assert.Assert-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.examples.Assert.Assert.Assert-class.html">Assert</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE21">CASE21()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#checknum">checknum()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.examples.CaseParams.CaseParams.CaseParams-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.examples.CaseParams.CaseParams.CaseParams-class.html">CaseParams</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE21">CASE21()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#checkRoutes">checkRoutes()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html">ExperimentTest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE21">CASE21()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkStatus">checkStatus()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.examples.StepParams.StepParams.StepParams-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.examples.StepParams.StepParams.StepParams-class.html">StepParams</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE21">CASE21()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#checkStatus">checkStatus()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.examples.Topology.Topology.Topology-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.examples.Topology.Topology.Topology-class.html">Topology</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE21">CASE21()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#chkFlowdb">chkFlowdb()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE22">CASE22()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#chkSliceStats">chkSliceStats()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE3">CASE3()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#chkSwitchStats">chkSwitchStats()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE3">CASE3()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest-module.html">CHOtest</a><br />
-<span class="index-where">(in <a href="TestON.tests-module.html">TestON.tests</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE3">CASE3()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest-module.html">CHOtest</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest-module.html">TestON.tests.CHOtest</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE3">CASE3()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest-module.html">TestON.tests.CHOtest.CHOtest</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE3">CASE3()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver.UpdateDriver-class.html#class_ignoreList">class_ignoreList()</a><br />
-<span class="index-where">(in <a href="TestON.bin.updatedriver.UpdateDriver-class.html">UpdateDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html">SAMPscaleTopo</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE3000">CASE3000()</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cleanInstall">cleanInstall()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html">SAMPstartTemplate</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE4">CASE4()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#cleanup">cleanup()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html">SCPFcbench</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE4">CASE4()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli-module.html">cli</a><br />
-<span class="index-where">(in <a href="TestON.bin-module.html">TestON.bin</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html">SCPFflowTp1g</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE4">CASE4()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html">CLI</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli-module.html">TestON.bin.cli</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html">SCPFintentEventTp</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE4">CASE4()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli-module.html">cli</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common-module.html">TestON.drivers.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html">SCPFintentInstallWithdrawLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE40">CASE40()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.clidriver.CLI-class.html">CLI</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.clidriver-module.html">TestON.drivers.common.clidriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html">SCPFintentRerouteLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE4000">CASE4000()</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.clidriver-module.html">clidriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common-module.html">TestON.drivers.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html">SCPFportLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE41">CASE41()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#close_log_handles">close_log_handles()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#CASE1">CASE1()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html">SCPFswitchLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE42">CASE42()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#clusters">clusters()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE10">CASE10()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE5">CASE5()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#cmdloop">cmdloop()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE10">CASE10()</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE5">CASE5()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common-module.html">common</a><br />
-<span class="index-where">(in <a href="TestON.drivers-module.html">TestON.drivers</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE10">CASE10()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE5">CASE5()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareHosts">compareHosts()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE10">CASE10()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE5">CASE5()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareLinks">compareLinks()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE10">CASE10()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE5">CASE5()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#compareSwitches">compareSwitches()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE10">CASE10()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE5000">CASE5000()</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#compiler">compiler()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE1000">CASE1000()</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE6">CASE6()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#componentInit">componentInit()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#CASE1001">CASE1001()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html">SAMPscaleTopo</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE6">CASE6()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver-module.html#config_default">config_default</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver-module.html">TestON.drivers.common.api.fvtapidriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE11">CASE11()</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE6">CASE6()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli-module.html#config_path">config_path</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli-module.html">TestON.bin.cli</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE11">CASE11()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE6">CASE6()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#config_path">config_path</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE11">CASE11()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE60">CASE60()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#configNullDev">configNullDev()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE11">CASE11()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE61">CASE61()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#configNullLink">configNullLink()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE11">CASE11()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE62">CASE62()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver.UpdateDriver-class.html#configparser">configparser()</a><br />
-<span class="index-where">(in <a href="TestON.bin.updatedriver.UpdateDriver-class.html">UpdateDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#CASE11">CASE11()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html">SAMPscaleTopo</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE7">CASE7()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#configparser">configparser()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#CASE11">CASE11()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html">SAMPstartTemplate</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE7">CASE7()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.generatedriver.GenerateDriver-class.html#configure">configure()</a><br />
-<span class="index-where">(in <a href="TestON.bin.generatedriver.GenerateDriver-class.html">GenerateDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE12">CASE12()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE7">CASE7()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.generatedriver.GenerateDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.bin.generatedriver.GenerateDriver-class.html">GenerateDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE12">CASE12()</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE7">CASE7()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE12">CASE12()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE70">CASE70()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE12">CASE12()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE71">CASE71()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.apidriver.API-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.apidriver.API-class.html">API</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE12">CASE12()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE72">CASE72()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html">DPCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE12">CASE12()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE73">CASE73()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html">FlowVisorDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#CASE12">CASE12()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html">SAMPstartTemplate</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE74">CASE74()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html">LincOEDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE13">CASE13()</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE8">CASE8()</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE13">CASE13()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE8">CASE8()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html">PoxCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE13">CASE13()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE8">CASE8()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE13">CASE13()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE8">CASE8()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE13">CASE13()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE8">CASE8()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE14">CASE14()</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE80">CASE80()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE14">CASE14()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE81">CASE81()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html">RemoteSysDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE14">CASE14()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE82">CASE82()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html">FloodLightCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE14">CASE14()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE83">CASE83()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html">RemotePoxDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE14">CASE14()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE84">CASE84()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html">RemoteVMDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE15">CASE15()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE9">CASE9()</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html">RemoteTestBedDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE15">CASE15()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE9">CASE9()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html">DpctlCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE15">CASE15()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE9">CASE9()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.clidriver.CLI-class.html#connect">connect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.clidriver.CLI-class.html">CLI</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE15">CASE15()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE9">CASE9()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#connectQuagga">connectQuagga()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE16">CASE16()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE9">CASE9()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller-module.html">controller</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api-module.html">TestON.drivers.common.api</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE16">CASE16()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#CASE9">CASE9()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html">SAMPscaleTopo</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controllerdriver.Controller-class.html">Controller</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controllerdriver-module.html">TestON.drivers.common.api.controllerdriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE16">CASE16()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#CASE9">CASE9()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html">SAMPstartTemplate</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controllerdriver-module.html">controllerdriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api-module.html">TestON.drivers.common.api</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE16">CASE16()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE90">CASE90()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.ast-module.html#copy_location">copy_location()</a><br />
-<span class="index-where">(in <a href="TestON.core.ast-module.html">TestON.core.ast</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE17">CASE17()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE91">CASE91()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#copyMininetFile">copyMininetFile()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE17">CASE17()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE92">CASE92()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core-module.html">core</a><br />
-<span class="index-where">(in <a href="TestON-module.html">TestON</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE17">CASE17()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE93">CASE93()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli-module.html#core_path">core_path</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli-module.html">TestON.bin.cli</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE17">CASE17()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE94">CASE94()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#core_path">core_path</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.examples.CaseParams.CaseParams.CaseParams-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.examples.CaseParams.CaseParams.CaseParams-class.html">CaseParams</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE96">CASE96()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html#counterCheck">counterCheck()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html">TestON.tests.HAclusterRestart.dependencies.Counters</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html">ExperimentTest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE97">CASE97()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html#counterCheck">counterCheck()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html">TestON.tests.HAminorityRestart.dependencies.Counters</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.examples.StepParams.StepParams.StepParams-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.examples.StepParams.StepParams.StepParams-class.html">StepParams</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#CASE98">CASE98()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.dependencies.Counters-module.html#counterCheck">counterCheck()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.dependencies.Counters-module.html">TestON.tests.HAsanity.dependencies.Counters</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.testparser.TestParser-class.html#case_code">case_code()</a><br />
-<span class="index-where">(in <a href="TestON.core.testparser.TestParser-class.html">TestParser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#counterCheck">counterCheck()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.Counters</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.CaseParams-module.html">CaseParams</a><br />
-<span class="index-where">(in <a href="TestON.examples-module.html">TestON.examples</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html">Counters</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.dependencies-module.html">TestON.tests.HAclusterRestart.dependencies</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.CaseParams.CaseParams-module.html">CaseParams</a><br />
-<span class="index-where">(in <a href="TestON.examples.CaseParams-module.html">TestON.examples.CaseParams</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html">Counters</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.dependencies-module.html">TestON.tests.HAminorityRestart.dependencies</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.CaseParams.CaseParams.CaseParams-class.html">CaseParams</a><br />
-<span class="index-where">(in <a href="TestON.examples.CaseParams.CaseParams-module.html">TestON.examples.CaseParams.CaseParams</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.dependencies.Counters-module.html">Counters</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.dependencies-module.html">TestON.tests.HAsanity.dependencies</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#changeDefaultGateway">changeDefaultGateway()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html">Counters</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html">TestON.tests.HAsingleInstanceRestart.dependencies</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html">SAMPscaleTopo</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#changeIP">changeIP()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counters">counters()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html">SAMPstartTemplate</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkBalanceMasters">checkBalanceMasters()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counterTestAddAndGet">counterTestAddAndGet()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html">SCPFcbench</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#checkFlows">checkFlows()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#counterTestGetAndAdd">counterTestGetAndAdd()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html">SCPFflowTp1g</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#checkFlowsState">checkFlowsState()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#cpLogsToDir">cpLogsToDir()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html">SCPFintentEventTp</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkFlowsState">checkFlowsState()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.generatedriver.GenerateDriver-class.html#create_driver">create_driver()</a><br />
-<span class="index-where">(in <a href="TestON.bin.generatedriver.GenerateDriver-class.html">GenerateDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html">SCPFintentInstallWithdrawLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#checkForLoss">checkForLoss()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#create_interfaces">create_interfaces()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html">DPCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html">SCPFintentRerouteLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#checkIntentState">checkIntentState()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createCellFile">createCellFile()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html">SCPFportLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#checkIntentState">checkIntentState()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createDBFile">createDBFile()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#CASE2">CASE2()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html">SCPFswitchLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#checkIP">checkIP()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#createLinkGraphFile">createLinkGraphFile()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="D">D</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#deactivateApp">deactivateApp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.generatedriver.GenerateDriver-class.html#disconnect">disconnect()</a><br />
-<span class="index-where">(in <a href="TestON.bin.generatedriver.GenerateDriver-class.html">GenerateDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_quit">do_quit()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deactivateApp">deactivateApp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#disconnect">disconnect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_resume">do_resume()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#decToHex">decToHex()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#disconnect">disconnect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html">DPCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_run">do_run()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#default">default()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#disconnect">disconnect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html">FlowVisorDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_sh">do_sh()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#deleteRoutes">deleteRoutes()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#disconnect">disconnect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html">LincOEDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_showlog">do_showlog()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#deleteSwController">deleteSwController()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#disconnect">disconnect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_source">do_source()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#delFlow">delFlow()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html">DpctlCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#disconnect">disconnect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html">PoxCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_stop">do_stop()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delHost">delHost()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#disconnect">disconnect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_time">do_time()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delLink">delLink()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#disconnect">disconnect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_updatedriver">do_updatedriver()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#delRoute">delRoute()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#disconnect">disconnect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.dpclidriver-module.html">dpclidriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#delSwitch">delSwitch()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#disconnect">disconnect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html">DPCliDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.dpclidriver-module.html">TestON.drivers.common.cli.dpclidriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.dependencies-module.html">dependencies</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart-module.html">TestON.tests.HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#disconnect">disconnect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html">RemotePoxDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#dpctl">dpctl()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.dependencies-module.html">dependencies</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart-module.html">TestON.tests.HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.clidriver.CLI-class.html#disconnect">disconnect()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.clidriver.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-module.html">dpctlclidriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.tool-module.html">TestON.drivers.common.cli.tool</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.dependencies-module.html">dependencies</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity-module.html">TestON.tests.HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_compile">do_compile()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html">DpctlCliDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.tool.dpctlclidriver-module.html">TestON.drivers.common.cli.tool.dpctlclidriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html">dependencies</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart-module.html">TestON.tests.HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_currentcase">do_currentcase()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers-module.html">drivers</a><br />
-<span class="index-where">(in <a href="TestON-module.html">TestON</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#desc_set">desc_set()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html">DpctlCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_currentstep">do_currentstep()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli-module.html#drivers_path">drivers_path</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli-module.html">TestON.bin.cli</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#detailed_status">detailed_status()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_do">do_do()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#drivers_path">drivers_path</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deviceRemove">deviceRemove()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_dumpvar">do_dumpvar()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli-module.html#dump">dump</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli-module.html">TestON.bin.cli</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#deviceRole">deviceRole()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_echo">do_echo()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.ast-module.html#dump">dump()</a><br />
-<span class="index-where">(in <a href="TestON.core.ast-module.html">TestON.core.ast</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#devices">devices()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_EOF">do_EOF()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#dump">dump()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#dict_to_return_format">dict_to_return_format()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_exit">do_exit()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#dumpAggregate">dumpAggregate()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html">DpctlCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.xmldict-module.html#dict_to_xml">dict_to_xml()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_gettest">do_gettest()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#dumpDesc">dumpDesc()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html">DpctlCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.cli-module.html#dictToObj">dictToObj()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli-module.html">TestON.bin.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_help">do_help()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#dumpFlow">dumpFlow()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html">DpctlCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.dicttoobject-module.html">dicttoobject</a><br />
-<span class="index-where">(in <a href="TestON.core-module.html">TestON.core</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_interpret">do_interpret()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#dumpPorts">dumpPorts()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html">DpctlCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.dicttoobject.DictToObject-class.html">DictToObject</a><br />
-<span class="index-where">(in <a href="TestON.core.dicttoobject-module.html">TestON.core.dicttoobject</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_nextstep">do_nextstep()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#dumpTables">dumpTables()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html">DpctlCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#disable_bgp_peer">disable_bgp_peer()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#do_py">do_py()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="E">E</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver.UpdateDriver-class.html#echo">echo()</a><br />
-<span class="index-where">(in <a href="TestON.bin.updatedriver.UpdateDriver-class.html">UpdateDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#enable_bgp_peer">enable_bgp_peer()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.ExperimentTest.ExperimentTest-module.html">ExperimentTest</a><br />
-<span class="index-where">(in <a href="TestON.examples.ExperimentTest-module.html">TestON.examples.ExperimentTest</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestLeader">electionTestLeader()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#enterConfig">enterConfig()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html">ExperimentTest</a><br />
-<span class="index-where">(in <a href="TestON.examples.ExperimentTest.ExperimentTest-module.html">TestON.examples.ExperimentTest.ExperimentTest</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestRun">electionTestRun()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli-module.html#error">error()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli-module.html">TestON.bin.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualBgpIntentNum">extractActualBgpIntentNum()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#electionTestWithdraw">electionTestWithdraw()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples-module.html">examples</a><br />
-<span class="index-where">(in <a href="TestON-module.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualBgpIntents">extractActualBgpIntents()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#emptyline">emptyline()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.generatedriver.GenerateDriver-class.html#execute">execute()</a><br />
-<span class="index-where">(in <a href="TestON.bin.generatedriver.GenerateDriver-class.html">GenerateDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualRouteIntentNum">extractActualRouteIntentNum()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator-module.html">emulator</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.clidriver.CLI-class.html#execute">execute()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.clidriver.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualRouteIntents">extractActualRouteIntents()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html">Emulator</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulatordriver-module.html">TestON.drivers.common.cli.emulatordriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#exit">exit()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualRoutesMaster">extractActualRoutesMaster()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulatordriver-module.html">emulatordriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.ExperimentTest-module.html">ExperimentTest</a><br />
-<span class="index-where">(in <a href="TestON.examples-module.html">TestON.examples</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#extractActualRoutesOneDotZero">extractActualRoutesOneDotZero()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="F">F</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#featureInstall">featureInstall()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#flowComp">flowComp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent-module.html">FUNCintent</a><br />
-<span class="index-where">(in <a href="TestON.tests-module.html">TestON.tests</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#featureUninstall">featureUninstall()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#flows">flows()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent-module.html">FUNCintent</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent-module.html">TestON.tests.FUNCintent</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.ast-module.html#fix_missing_locations">fix_missing_locations()</a><br />
-<span class="index-where">(in <a href="TestON.core.ast-module.html">TestON.core.ast</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#flows">flows()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent-module.html">TestON.tests.FUNCintent.FUNCintent</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html">floodlightclidriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed-module.html">TestON.drivers.common.cli.remotetestbed</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-module.html">flowvisordriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator-module.html">TestON.drivers.common.cli.emulator</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver-module.html">fvtapidriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api-module.html">TestON.drivers.common.api</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html">FloodLightCliDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html">TestON.drivers.common.cli.remotetestbed.floodlightclidriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html">FlowVisorDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.flowvisordriver-module.html">TestON.drivers.common.cli.emulator.flowvisordriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver-module.html">TestON.drivers.common.api.fvtapidriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#FlowAddedCount">FlowAddedCount()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#fpingHost">fpingHost()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="G">G</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.generatedriver-module.html">generatedriver</a><br />
-<span class="index-where">(in <a href="TestON.bin-module.html">TestON.bin</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getApp">getApp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getInterfaceMACAddress">getInterfaceMACAddress()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.generatedriver.GenerateDriver-class.html">GenerateDriver</a><br />
-<span class="index-where">(in <a href="TestON.bin.generatedriver-module.html">TestON.bin.generatedriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver.UpdateDriver-class.html#getargs">getargs()</a><br />
-<span class="index-where">(in <a href="TestON.bin.updatedriver.UpdateDriver-class.html">UpdateDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getInterfaces">getInterfaces()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#generateExpectedBgpIntents">generateExpectedBgpIntents()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getBranchName">getBranchName()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getIPAddress">getIPAddress()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#generateExpectedOnePeerRouteIntents">generateExpectedOnePeerRouteIntents()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getCfg">getCfg()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getLinks">getLinks()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#generateExpectedRouteIntents">generateExpectedRouteIntents()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#getcmd">getcmd()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html">PoxCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver.UpdateDriver-class.html#getList">getList()</a><br />
-<span class="index-where">(in <a href="TestON.bin.updatedriver.UpdateDriver-class.html">UpdateDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#generateExpectedSingleRouteIntent">generateExpectedSingleRouteIntent()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#getDatapathId">getDatapathId()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html">LincOEDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getMacAddress">getMacAddress()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#generatePrefixes">generatePrefixes()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getDevice">getDevice()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver.UpdateDriver-class.html#getMethodArgsHash">getMethodArgsHash()</a><br />
-<span class="index-where">(in <a href="TestON.bin.updatedriver.UpdateDriver-class.html">UpdateDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.ast.NodeTransformer-class.html#generic_visit">generic_visit()</a><br />
-<span class="index-where">(in <a href="TestON.core.ast.NodeTransformer-class.html">NodeTransformer</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getDeviceLinksActiveCount">getDeviceLinksActiveCount()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver.UpdateDriver-class.html#getmethods">getmethods()</a><br />
-<span class="index-where">(in <a href="TestON.bin.updatedriver.UpdateDriver-class.html">UpdateDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.ast.NodeVisitor-class.html#generic_visit">generic_visit()</a><br />
-<span class="index-where">(in <a href="TestON.core.ast.NodeVisitor-class.html">NodeVisitor</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getDevicePortsEnabledCount">getDevicePortsEnabledCount()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getOnosIps">getOnosIps()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#genFlowModFlush">genFlowModFlush()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getDPID">getDPID()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getPorts">getPorts()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#genPacketIn">genPacketIn()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver.UpdateDriver-class.html#getDriverPath">getDriverPath()</a><br />
-<span class="index-where">(in <a href="TestON.bin.updatedriver.UpdateDriver-class.html">UpdateDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getRole">getRole()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#genPacketOut">genPacketOut()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#getDriverPath">getDriverPath()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.testparser.TestParser-class.html#getStepCode">getStepCode()</a><br />
-<span class="index-where">(in <a href="TestON.core.testparser.TestParser-class.html">TestParser</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#genPhyPort">genPhyPort()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getEpochMs">getEpochMs()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwController">getSwController()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.generatedriver.GenerateDriver-class.html#get_command_details">get_command_details()</a><br />
-<span class="index-where">(in <a href="TestON.bin.generatedriver.GenerateDriver-class.html">GenerateDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getFlows">getFlows()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitch">getSwitch()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.generatedriver.GenerateDriver-class.html#get_command_help">get_command_help()</a><br />
-<span class="index-where">(in <a href="TestON.bin.generatedriver.GenerateDriver-class.html">GenerateDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getFlowTable">getFlowTable()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitchDPID">getSwitchDPID()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.generatedriver.GenerateDriver-class.html#get_details_recursive">get_details_recursive()</a><br />
-<span class="index-where">(in <a href="TestON.bin.generatedriver.GenerateDriver-class.html">GenerateDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getHost">getHost()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitches">getSwitches()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.ast-module.html#get_docstring">get_docstring()</a><br />
-<span class="index-where">(in <a href="TestON.core.ast-module.html">TestON.core.ast</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getHost">getHost()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getSwitchFlowCount">getSwitchFlowCount()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#get_random">get_random()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getHosts">getHosts()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getTopology">getTopology()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#get_version">get_version()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html">PoxCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getHostsId">getHostsId()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getVersion">getVersion()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllDevicesId">getAllDevicesId()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#getHostsOld">getHostsOld()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#getVersion">getVersion()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllIntentIds">getAllIntentIds()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getIntentsId">getIntentsId()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitCheckout">gitCheckout()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllIntentsId">getAllIntentsId()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#getIntentState">getIntentState()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#gitPull">gitPull()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getAllNodesId">getAllNodesId()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#getIntentState">getIntentState()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="H">H</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart-module.html">HAclusterRestart</a><br />
-<span class="index-where">(in <a href="TestON.tests-module.html">TestON.tests</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#handle_conjuction">handle_conjuction()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html">TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-module.html">HAclusterRestart</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart-module.html">TestON.tests.HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity-module.html">HAsanity</a><br />
-<span class="index-where">(in <a href="TestON.tests-module.html">TestON.tests</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#helpStr">helpStr</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart-module.html">TestON.tests.HAclusterRestart.HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity-module.html">HAsanity</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity-module.html">TestON.tests.HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#hosts">hosts()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart-module.html">HAminorityRestart</a><br />
-<span class="index-where">(in <a href="TestON.tests-module.html">TestON.tests</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity-module.html">TestON.tests.HAsanity.HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#hosts">hosts()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-module.html">HAminorityRestart</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart-module.html">TestON.tests.HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart-module.html">HAsingleInstanceRestart</a><br />
-<span class="index-where">(in <a href="TestON.tests-module.html">TestON.tests</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart-module.html">TestON.tests.HAminorityRestart.HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html">HAsingleInstanceRestart</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart-module.html">TestON.tests.HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="I">I</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.ast-module.html#increment_lineno">increment_lineno()</a><br />
-<span class="index-where">(in <a href="TestON.core.ast-module.html">TestON.core.ast</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intents">intents()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperftcpAll">iperftcpAll()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.iniparser-module.html">iniparser</a><br />
-<span class="index-where">(in <a href="TestON.core-module.html">TestON.core</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intentsEventsMetrics">intentsEventsMetrics()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperfudp">iperfudp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.iniparser.iniparser-class.html">iniparser</a><br />
-<span class="index-where">(in <a href="TestON.core.iniparser-module.html">TestON.core.iniparser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#intentSummary">intentSummary()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperfudpAll">iperfudpAll()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.logger.Logger-class.html#initlog">initlog()</a><br />
-<span class="index-where">(in <a href="TestON.core.logger.Logger-class.html">Logger</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#interpret">interpret()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#isatty">isatty()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#initOptions">initOptions()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#intfs">intfs()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#isup">isup()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intent">intent()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli-module.html#introduction">introduction</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli-module.html">TestON.bin.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.ast-module.html#iter_child_nodes">iter_child_nodes()</a><br />
-<span class="index-where">(in <a href="TestON.core.ast-module.html">TestON.core.ast</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#intents">intents()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#iperftcp">iperftcp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.ast-module.html#iter_fields">iter_fields()</a><br />
-<span class="index-where">(in <a href="TestON.core.ast-module.html">TestON.core.ast</a>)</span></td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="J">J</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.jsonparser-module.html">jsonparser</a><br />
-<span class="index-where">(in <a href="TestON.core-module.html">TestON.core</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.jsonparser.JsonParser-class.html">JsonParser</a><br />
-<span class="index-where">(in <a href="TestON.core.jsonparser-module.html">TestON.core.jsonparser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#jvmSet">jvmSet()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr><td class="link-index"> </td><td class="link-index"> </td><td class="link-index"> </td></tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="L">L</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#leaderCandidates">leaderCandidates()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#listFlowSpace">listFlowSpace()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html">FlowVisorDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#log">log()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#leaders">leaders()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#listPorts">listPorts()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html">LincOEDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.logger-module.html">logger</a><br />
-<span class="index-where">(in <a href="TestON.core-module.html">TestON.core</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.lib-module.html">lib</a><br />
-<span class="index-where">(in <a href="TestON-module.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.ast-module.html#literal_eval">literal_eval()</a><br />
-<span class="index-where">(in <a href="TestON.core.ast-module.html">TestON.core.ast</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.logger.Logger-class.html">Logger</a><br />
-<span class="index-where">(in <a href="TestON.core.logger-module.html">TestON.core.logger</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.lincoedriver-module.html">lincoedriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator-module.html">TestON.drivers.common.cli.emulator</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#load_defaultlogger">load_defaultlogger()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#loginQuagga">loginQuagga()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html">LincOEDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.lincoedriver-module.html">TestON.drivers.common.cli.emulator.lincoedriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#load_defaultParser">load_defaultParser()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#logout">logout()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#link">link()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#load_logger">load_logger()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#logReport">logReport()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#links">links()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#load_parser">load_parser()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli-module.html#logs_path">logs_path</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli-module.html">TestON.bin.cli</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#links">links()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli-module.html#location">location</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli-module.html">TestON.bin.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#logs_path">logs_path</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#listDevices">listDevices()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html">FlowVisorDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#location">location</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="M">M</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.dicttoobject.DictToObject-class.html#merge">merge()</a><br />
-<span class="index-where">(in <a href="TestON.core.dicttoobject.DictToObject-class.html">DictToObject</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-module.html">mininetclidriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator-module.html">TestON.drivers.common.cli.emulator</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#moveHost">moveHost()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver.UpdateDriver-class.html#method_ignoreList">method_ignoreList()</a><br />
-<span class="index-where">(in <a href="TestON.bin.updatedriver.UpdateDriver-class.html">UpdateDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver-module.html">TestON.drivers.common.cli.emulator.mininetclidriver</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="N">N</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.nec-module.html">nec</a><br />
-<span class="index-where">(in <a href="TestON.bin-module.html">TestON.bin</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#net">net()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.ast.NodeVisitor-class.html">NodeVisitor</a><br />
-<span class="index-where">(in <a href="TestON.core.ast-module.html">TestON.core.ast</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html">NEC</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec-module.html">TestON.bin.nec</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#nodes">nodes()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#numSwitchesNlinks">numSwitchesNlinks()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html">TestON.drivers.common.cli.remotetestbed.necswitchdriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#nodes">nodes()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html">necswitchdriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed-module.html">TestON.drivers.common.cli.remotetestbed</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.ast.NodeTransformer-class.html">NodeTransformer</a><br />
-<span class="index-where">(in <a href="TestON.core.ast-module.html">TestON.core.ast</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="O">O</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html">obelisk</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.dependencies-module.html">TestON.tests.HAclusterRestart.dependencies</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosBuild">onosBuild()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver-module.html">onosrestdriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller-module.html">TestON.drivers.common.api.controller</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html">obelisk</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.dependencies-module.html">TestON.tests.HAminorityRestart.dependencies</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosCfgSet">onosCfgSet()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver-module.html">TestON.drivers.common.api.controller.onosrestdriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.dependencies.obelisk-module.html">obelisk</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.dependencies-module.html">TestON.tests.HAsanity.dependencies</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosCli">onosCli()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStart">onosStart()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html">obelisk</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html">TestON.tests.HAsingleInstanceRestart.dependencies</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver-module.html">onosclidriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStartNetwork">onosStartNetwork()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html">ObeliskTopo</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html">TestON.tests.HAclusterRestart.dependencies.obelisk</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver-module.html">TestON.drivers.common.cli.onosclidriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStatus">onosStatus()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html">ObeliskTopo</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html">TestON.tests.HAminorityRestart.dependencies.obelisk</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosDie">onosDie()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosStop">onosStop()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html">ObeliskTopo</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.dependencies.obelisk-module.html">TestON.tests.HAsanity.dependencies.obelisk</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver-module.html">onosdriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosUninstall">onosUninstall()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html">ObeliskTopo</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.obelisk</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver-module.html">TestON.drivers.common.cli.onosdriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak-module.html">openspeak</a><br />
-<span class="index-where">(in <a href="TestON.core-module.html">TestON.core</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#ofmsgSndCmp">ofmsgSndCmp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosInstall">onosInstall()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak-module.html">TestON.core.openspeak</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#ofmsgSndCmpWithXid">ofmsgSndCmpWithXid()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosKill">onosKill()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli-module.html#output">output()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli-module.html">TestON.bin.cli</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#onfail">onfail()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosPackage">onosPackage()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.clidriver.CLI-class.html#onfail">onfail()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.clidriver.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#onosRemoveRaftLogs">onosRemoveRaftLogs()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="P">P</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.ast-module.html#parse">parse()</a><br />
-<span class="index-where">(in <a href="TestON.core.ast-module.html">TestON.core.ast</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#pendingMap">pendingMap()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#plug">plug()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.iniparser.iniparser-class.html#parse">parse()</a><br />
-<span class="index-where">(in <a href="TestON.core.iniparser.iniparser-class.html">iniparser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingall">pingall()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#portDown">portDown()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html">LincOEDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.xmlparser.xmlparser-class.html#parse">parse()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmlparser.xmlparser-class.html">xmlparser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#pingall_interfaces">pingall_interfaces()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html">DPCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#ports">ports()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#parse_args">parse_args()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingallHosts">pingallHosts()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#portUp">portUp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html">LincOEDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#parseArgs">parseArgs()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingHost">pingHost()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.poxclidriver-module.html">poxclidriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator-module.html">TestON.drivers.common.cli.emulator</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.iniparser.iniparser-class.html#parseParams">parseParams()</a><br />
-<span class="index-where">(in <a href="TestON.core.iniparser.iniparser-class.html">iniparser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingHost">pingHost()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html">PoxCliDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.poxclidriver-module.html">TestON.drivers.common.cli.emulator.poxclidriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.xmlparser.xmlparser-class.html#parseParams">parseParams()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmlparser.xmlparser-class.html">xmlparser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingHostOptical">pingHostOptical()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.generatedriver.GenerateDriver-class.html#print_details">print_details()</a><br />
-<span class="index-where">(in <a href="TestON.bin.generatedriver.GenerateDriver-class.html">GenerateDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.iniparser.iniparser-class.html#parseTopology">parseTopology()</a><br />
-<span class="index-where">(in <a href="TestON.core.iniparser.iniparser-class.html">iniparser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingIpv6Hosts">pingIpv6Hosts()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver.UpdateDriver-class.html#printHeader">printHeader()</a><br />
-<span class="index-where">(in <a href="TestON.bin.updatedriver.UpdateDriver-class.html">UpdateDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.xmlparser.xmlparser-class.html#parseTopology">parseTopology()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmlparser.xmlparser-class.html">xmlparser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingKill">pingKill()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#prompt">prompt</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#partitions">partitions()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingLong">pingLong()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#ptpd">ptpd()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.cli-module.html#path">path</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli-module.html">TestON.bin.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingLongKill">pingLongKill()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#purgeWithdrawnIntents">purgeWithdrawnIntents()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#path">path</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#pingpair">pingpair()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#pushTestIntents">pushTestIntents()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#paths">paths()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#pingstatus">pingstatus()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#pushTestIntentsShell">pushTestIntentsShell()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.TestThread-class.html#pause">pause()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.TestThread-class.html">TestThread</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#pingTest">pingTest()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.ast-module.html#PyCF_ONLY_AST">PyCF_ONLY_AST</a><br />
-<span class="index-where">(in <a href="TestON.core.ast-module.html">TestON.core.ast</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#pause">pause()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.TestThread-class.html#play">play()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.TestThread-class.html">TestThread</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="Q">Q</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver-module.html">quaggaclidriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver-module.html">TestON.drivers.common.cli.quaggaclidriver</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-<tr><td class="link-index"> </td><td class="link-index"> </td><td class="link-index"> </td></tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="R">R</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#recvStats">recvStats()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.clidriver.CLI-class.html#remove_contol_chars">remove_contol_chars()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.clidriver.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.TestThread-class.html#run">run()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.TestThread-class.html">TestThread</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-module.html">remotemininetdriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator-module.html">TestON.drivers.common.cli.emulator</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#removeAllIntents">removeAllIntents()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.Thread.Thread-class.html#run">run()</a><br />
-<span class="index-where">(in <a href="TestON.core.Thread.Thread-class.html">Thread</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver-module.html">TestON.drivers.common.cli.emulator.remotemininetdriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#removeFlow">removeFlow()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#run">run()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html">remotepoxdriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed-module.html">TestON.drivers.common.cli.remotetestbed</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#removeFlowSpace">removeFlowSpace()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html">FlowVisorDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#run">run()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html">TestON.tests.HAclusterRestart.dependencies.obelisk</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html">RemotePoxDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html">TestON.drivers.common.cli.remotetestbed.remotepoxdriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#removeIntent">removeIntent()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#run">run()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html">TestON.tests.HAminorityRestart.dependencies.obelisk</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotesys-module.html">remotesys</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#removeIntent">removeIntent()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.dependencies.obelisk-module.html#run">run()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.dependencies.obelisk-module.html">TestON.tests.HAsanity.dependencies.obelisk</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotesysdriver-module.html">remotesysdriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#removeNode">removeNode()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#run">run()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.obelisk</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html">RemoteSysDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotesysdriver-module.html">TestON.drivers.common.cli.remotesysdriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.jsonparser.JsonParser-class.html#response_parse">response_parse()</a><br />
-<span class="index-where">(in <a href="TestON.core.jsonparser.JsonParser-class.html">JsonParser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.clidriver.CLI-class.html#runAsSudoUser">runAsSudoUser()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.clidriver.CLI-class.html">CLI</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed-module.html">remotetestbed</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#response_parser">response_parser()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#runCase">runCase()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbeddriver-module.html">remotetestbeddriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#response_to_dict">response_to_dict()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#runOnosTopoCfg">runOnosTopoCfg()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html">RemoteTestBedDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbeddriver-module.html">TestON.drivers.common.cli.remotetestbeddriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#roles">roles()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#runOpticalMnScript">runOpticalMnScript()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html">remotevmdriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed-module.html">TestON.drivers.common.cli.remotetestbed</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#rolesNotNull">rolesNotNull()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#runStep">runStep()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html">RemoteVMDriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html">TestON.drivers.common.cli.remotetestbed.remotevmdriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#routes">routes()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="S">S</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPscaleTopo-module.html">SAMPscaleTopo</a><br />
-<span class="index-where">(in <a href="TestON.tests-module.html">TestON.tests</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setIpTables">setIpTables()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_lldp">show_lldp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html">SAMPscaleTopo</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPscaleTopo-module.html">TestON.tests.SAMPscaleTopo</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#setIpTablesOUTPUT">setIpTablesOUTPUT()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_logging">show_logging()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html">SAMPscaleTopo</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html">TestON.tests.SAMPscaleTopo.SAMPscaleTopo</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#setRule">setRule()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_logging">show_logging()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPstartTemplate-module.html">SAMPstartTemplate</a><br />
-<span class="index-where">(in <a href="TestON.tests-module.html">TestON.tests</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestAdd">setTestAdd()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_loopdetection">show_loopdetection()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html">SAMPstartTemplate</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPstartTemplate-module.html">TestON.tests.SAMPstartTemplate</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestGet">setTestGet()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_loopdetection">show_loopdetection()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html">SAMPstartTemplate</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html">TestON.tests.SAMPstartTemplate.SAMPstartTemplate</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestRemove">setTestRemove()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_macaddresstable">show_macaddresstable()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFcbench-module.html">SCPFcbench</a><br />
-<span class="index-where">(in <a href="TestON.tests-module.html">TestON.tests</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setTestSize">setTestSize()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_macaddresstable">show_macaddresstable()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFcbench.SCPFcbench-module.html">SCPFcbench</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFcbench-module.html">TestON.tests.SCPFcbench</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#setUp">setUp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_mc">show_mc()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html">SCPFcbench</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFcbench.SCPFcbench-module.html">TestON.tests.SCPFcbench.SCPFcbench</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show">show()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_mc">show_mc()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFflowTp1g-module.html">SCPFflowTp1g</a><br />
-<span class="index-where">(in <a href="TestON.tests-module.html">TestON.tests</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show">show()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_memory">show_memory()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html">SCPFflowTp1g</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFflowTp1g-module.html">TestON.tests.SCPFflowTp1g</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#show">show()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html">DpctlCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_memory">show_memory()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html">SCPFflowTp1g</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html">TestON.tests.SCPFflowTp1g.SCPFflowTp1g</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_acknowledgments">show_acknowledgments()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_mldsnooping">show_mldsnooping()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentEventTp-module.html">SCPFintentEventTp</a><br />
-<span class="index-where">(in <a href="TestON.tests-module.html">TestON.tests</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_acknowledgments">show_acknowledgments()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_mldsnooping">show_mldsnooping()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html">SCPFintentEventTp</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentEventTp-module.html">TestON.tests.SCPFintentEventTp</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_acknowledgments_interface">show_acknowledgments_interface()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_netconf">show_netconf()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html">SCPFintentEventTp</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html">TestON.tests.SCPFintentEventTp.SCPFintentEventTp</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_acknowledgments_interface">show_acknowledgments_interface()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_netconf">show_netconf()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentInstallWithdrawLat-module.html">SCPFintentInstallWithdrawLat</a><br />
-<span class="index-where">(in <a href="TestON.tests-module.html">TestON.tests</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_autoconfig">show_autoconfig()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_netstat">show_netstat()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html">SCPFintentInstallWithdrawLat</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentInstallWithdrawLat-module.html">TestON.tests.SCPFintentInstallWithdrawLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_autoconfig">show_autoconfig()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_netstat">show_netstat()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html">SCPFintentInstallWithdrawLat</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html">TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_axrp">show_axrp()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_ntp">show_ntp()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentRerouteLat-module.html">SCPFintentRerouteLat</a><br />
-<span class="index-where">(in <a href="TestON.tests-module.html">TestON.tests</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_axrp">show_axrp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_ntp">show_ntp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html">SCPFintentRerouteLat</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentRerouteLat-module.html">TestON.tests.SCPFintentRerouteLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_cfm">show_cfm()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_oadp">show_oadp()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html">SCPFintentRerouteLat</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html">TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_cfm">show_cfm()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_oadp">show_oadp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFportLat-module.html">SCPFportLat</a><br />
-<span class="index-where">(in <a href="TestON.tests-module.html">TestON.tests</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_channelgroup">show_channelgroup()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_openflow">show_openflow()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFportLat.SCPFportLat-module.html">SCPFportLat</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFportLat-module.html">TestON.tests.SCPFportLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_channelgroup">show_channelgroup()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_openflow">show_openflow()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html">SCPFportLat</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFportLat.SCPFportLat-module.html">TestON.tests.SCPFportLat.SCPFportLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_clock">show_clock()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_port">show_port()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFswitchLat-module.html">SCPFswitchLat</a><br />
-<span class="index-where">(in <a href="TestON.tests-module.html">TestON.tests</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_clock">show_clock()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_port">show_port()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html">SCPFswitchLat</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFswitchLat-module.html">TestON.tests.SCPFswitchLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_configlockstatus">show_configlockstatus()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_power">show_power()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html">SCPFswitchLat</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html">TestON.tests.SCPFswitchLat.SCPFswitchLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_configlockstatus">show_configlockstatus()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_power">show_power()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.clidriver.CLI-class.html#secureCopy">secureCopy()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.clidriver.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_cpu">show_cpu()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_processes">show_processes()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#send">send()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_cpu">show_cpu()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_processes">show_processes()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#sendline">sendline()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_dhcp">show_dhcp()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_qos">show_qos()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet">set_interfaces_ethernet()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_dhcp">show_dhcp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_qos">show_qos()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0">set_interfaces_ethernet_eth0()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_dot1x">show_dot1x()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_qosflow">show_qosflow()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_address">set_interfaces_ethernet_eth0_address()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_dot1x">show_dot1x()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_qosflow">show_qosflow()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_bondgroup">set_interfaces_ethernet_eth0_bondgroup()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_dumpfile">show_dumpfile()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_sessions">show_sessions()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_bridgegroup">set_interfaces_ethernet_eth0_bridgegroup()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_dumpfile">show_dumpfile()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_sessions">show_sessions()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_bridgegroup_bridge">set_interfaces_ethernet_eth0_bridgegroup_bridge()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_efmoam">show_efmoam()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_sflow">show_sflow()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_bridgegroup_cost">set_interfaces_ethernet_eth0_bridgegroup_cost()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_efmoam">show_efmoam()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_sflow">show_sflow()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_bridgegroup_priority">set_interfaces_ethernet_eth0_bridgegroup_priority()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_environment">show_environment()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_spanningtree">show_spanningtree()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_description">set_interfaces_ethernet_eth0_description()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_environment">show_environment()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_spanningtree">show_spanningtree()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_DHCPv6">set_interfaces_ethernet_eth0_DHCPv6()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_file">show_file()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_ssh">show_ssh()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_dhcpv6options">set_interfaces_ethernet_eth0_dhcpv6options()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_file">show_file()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_ssh">show_ssh()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_dhcpv6options_Acquire">set_interfaces_ethernet_eth0_dhcpv6options_Acquire()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_flash">show_flash()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_system">show_system()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_dhcpv6options_parametersonly">set_interfaces_ethernet_eth0_dhcpv6options_parametersonly()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_flash">show_flash()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_system">show_system()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_dhcpv6options_temporary">set_interfaces_ethernet_eth0_dhcpv6options_temporary()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_gsrp">show_gsrp()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_tcpdump">show_tcpdump()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_Disable">set_interfaces_ethernet_eth0_Disable()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_gsrp">show_gsrp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_tcpdump">show_tcpdump()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_disable">set_interfaces_ethernet_eth0_disable()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_history">show_history()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_techsupport">show_techsupport()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_disableflowcontrol">set_interfaces_ethernet_eth0_disableflowcontrol()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_history">show_history()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_techsupport">show_techsupport()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_disablelinkdetect">set_interfaces_ethernet_eth0_disablelinkdetect()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_igmpsnooping">show_igmpsnooping()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_track">show_track()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_duplex">set_interfaces_ethernet_eth0_duplex()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_igmpsnooping">show_igmpsnooping()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_track">show_track()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_duplex_auto">set_interfaces_ethernet_eth0_duplex_auto()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_interfaces">show_interfaces()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_version">show_version()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_duplex_full">set_interfaces_ethernet_eth0_duplex_full()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces">show_interfaces()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_version">show_version()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_duplex_half">set_interfaces_ethernet_eth0_duplex_half()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_interfaces">show_interfaces()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_vlan">show_vlan()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall">set_interfaces_ethernet_eth0_firewall()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet">show_interfaces_ethernet()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_vlan">show_vlan()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_in">set_interfaces_ethernet_eth0_firewall_in()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0">show_interfaces_ethernet_eth0()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_vrrpstatus">show_vrrpstatus()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_in_ipv6name">set_interfaces_ethernet_eth0_firewall_in_ipv6name()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_duplex">show_interfaces_ethernet_eth0_duplex()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_vrrpstatus">show_vrrpstatus()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_in_name">set_interfaces_ethernet_eth0_firewall_in_name()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_duplex_auto">show_interfaces_ethernet_eth0_duplex_auto()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_whoami">show_whoami()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_local">set_interfaces_ethernet_eth0_firewall_local()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_hwid">show_interfaces_ethernet_eth0_hwid()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_whoami">show_whoami()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_local_ipv6name">set_interfaces_ethernet_eth0_firewall_local_ipv6name()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_smp_affinity">show_interfaces_ethernet_eth0_smp_affinity()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#showFlow">showFlow()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html">DpctlCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_local_name">set_interfaces_ethernet_eth0_firewall_local_name()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_smp_affinity_auto">show_interfaces_ethernet_eth0_smp_affinity_auto()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#showStatus">showStatus()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html">DpctlCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_out">set_interfaces_ethernet_eth0_firewall_out()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_speed">show_interfaces_ethernet_eth0_speed()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#simplePacket">simplePacket()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_out_ipv6name">set_interfaces_ethernet_eth0_firewall_out_ipv6name()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth0_speed_auto">show_interfaces_ethernet_eth0_speed_auto()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#specificLeaderCandidate">specificLeaderCandidate()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_firewall_out_name">set_interfaces_ethernet_eth0_firewall_out_name()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1">show_interfaces_ethernet_eth1()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#SSH">SSH()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html">RemoteVMDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_hwid">set_interfaces_ethernet_eth0_hwid()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_address">show_interfaces_ethernet_eth1_address()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#startConsole">startConsole()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html">LincOEDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_hwid_Media">set_interfaces_ethernet_eth0_hwid_Media()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_duplex">show_interfaces_ethernet_eth1_duplex()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startNet">startNet()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_Ignore">set_interfaces_ethernet_eth0_Ignore()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_duplex_auto">show_interfaces_ethernet_eth1_duplex_auto()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#startOnosCli">startOnosCli()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip">set_interfaces_ethernet_eth0_ip()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_hwid">show_interfaces_ethernet_eth1_hwid()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#startSwitch">startSwitch()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html">LincOEDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_Enable">set_interfaces_ethernet_eth0_ip_Enable()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_smp_affinity">show_interfaces_ethernet_eth1_smp_affinity()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#startTcpdump">startTcpdump()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_enableproxyarp">set_interfaces_ethernet_eth0_ip_enableproxyarp()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_smp_affinity_auto">show_interfaces_ethernet_eth1_smp_affinity_auto()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#startTcpdump">startTcpdump()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf">set_interfaces_ethernet_eth0_ip_ospf()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_speed">show_interfaces_ethernet_eth1_speed()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#step">step()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_authentication">set_interfaces_ethernet_eth0_ip_ospf_authentication()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_ethernet_eth1_speed_auto">show_interfaces_ethernet_eth1_speed_auto()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.testparser.TestParser-class.html#step_code">step_code()</a><br />
-<span class="index-where">(in <a href="TestON.core.testparser.TestParser-class.html">TestParser</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_authentication_md5">set_interfaces_ethernet_eth0_ip_ospf_authentication_md5()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_loopback">show_interfaces_loopback()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.StepParams-module.html">StepParams</a><br />
-<span class="index-where">(in <a href="TestON.examples-module.html">TestON.examples</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_authentication_md5_keyid">set_interfaces_ethernet_eth0_ip_ospf_authentication_md5_keyid()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#show_interfaces_loopback_lo">show_interfaces_loopback_lo()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.StepParams.StepParams-module.html">StepParams</a><br />
-<span class="index-where">(in <a href="TestON.examples.StepParams-module.html">TestON.examples.StepParams</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_authentication_Plain">set_interfaces_ethernet_eth0_ip_ospf_authentication_Plain()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_ip">show_ip()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.StepParams.StepParams.StepParams-class.html">StepParams</a><br />
-<span class="index-where">(in <a href="TestON.examples.StepParams.StepParams-module.html">TestON.examples.StepParams.StepParams</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_authentication_plaintextpassword">set_interfaces_ethernet_eth0_ip_ospf_authentication_plaintextpassword()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_ip">show_ip()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.TestThread-class.html#stop">stop()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.TestThread-class.html">TestThread</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_bandwidth">set_interfaces_ethernet_eth0_ip_ospf_bandwidth()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_ipdual">show_ipdual()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#stopLincOEConsole">stopLincOEConsole()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html">LincOEDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_cost">set_interfaces_ethernet_eth0_ip_ospf_cost()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_ipdual">show_ipdual()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopNet">stopNet()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#set_interfaces_ethernet_eth0_ip_ospf_OSPF">set_interfaces_ethernet_eth0_ip_ospf_OSPF()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_ipv6dhcp">show_ipv6dhcp()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#stopSwitch">stopSwitch()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html">LincOEDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCell">setCell()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_ipv6dhcp">show_ipv6dhcp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#stopTcpdump">stopTcpdump()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#setCell">setCell()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_license">show_license()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#stopTcpdump">stopTcpdump()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#setCfg">setCfg()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#show_license">show_license()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#summary">summary()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#setInterfaceUp">setInterfaceUp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html">LincOEDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#show_lldp">show_lldp()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="T">T</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver-module.html#test_set_init">test_set_init()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver-module.html">TestON.drivers.common.api.fvtapidriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.Topology-module.html">Topology</a><br />
-<span class="index-where">(in <a href="TestON.examples-module.html">TestON.examples</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_if_else_operator">translate_if_else_operator()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#testcasesInRange">testcasesInRange()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.Topology.Topology-module.html">Topology</a><br />
-<span class="index-where">(in <a href="TestON.examples.Topology-module.html">TestON.examples.Topology</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_log_message">translate_log_message()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#testDesc">testDesc()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.Topology.Topology.Topology-class.html">Topology</a><br />
-<span class="index-where">(in <a href="TestON.examples.Topology.Topology-module.html">TestON.examples.Topology.Topology</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_logs">translate_logs()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON-module.html">TestON</a></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#topology">topology()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_loop_block">translate_loop_block()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html">teston</a><br />
-<span class="index-where">(in <a href="TestON.core-module.html">TestON.core</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topology">topology()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_onDOAs">translate_onDOAs()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html">TestON</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#topologyEventsMetrics">topologyEventsMetrics()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_operator">translate_operator()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.testparser-module.html">testparser</a><br />
-<span class="index-where">(in <a href="TestON.core-module.html">TestON.core</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#topos">topos</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html">TestON.tests.HAclusterRestart.dependencies.obelisk</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_parameters">translate_parameters()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.testparser.TestParser-class.html">TestParser</a><br />
-<span class="index-where">(in <a href="TestON.core.testparser-module.html">TestON.core.testparser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#topos">topos</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html">TestON.tests.HAminorityRestart.dependencies.obelisk</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_repeat">translate_repeat()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests-module.html">tests</a><br />
-<span class="index-where">(in <a href="TestON-module.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.dependencies.obelisk-module.html#topos">topos</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.dependencies.obelisk-module.html">TestON.tests.HAsanity.dependencies.obelisk</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_response_result">translate_response_result()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.cli-module.html#tests_path">tests_path</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli-module.html">TestON.bin.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#topos">topos</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.obelisk</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_step">translate_step()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#tests_path">tests_path</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_assertion">translate_assertion()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_store">translate_store()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.logger.Logger-class.html#testSummary">testSummary()</a><br />
-<span class="index-where">(in <a href="TestON.core.logger.Logger-class.html">Logger</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_assertMessage">translate_assertMessage()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_testcase_name">translate_testcase_name()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.TestThread-class.html">TestThread</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli-module.html">TestON.bin.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_case_block">translate_case_block()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_usingas">translate_usingas()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.Thread-module.html">Thread</a><br />
-<span class="index-where">(in <a href="TestON.core-module.html">TestON.core</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_comment">translate_comment()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkGrep">tsharkGrep()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.Thread.Thread-class.html">Thread</a><br />
-<span class="index-where">(in <a href="TestON.core.Thread-module.html">TestON.core.Thread</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_conjuction">translate_conjuction()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkPcap">tsharkPcap()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool-module.html">tool</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_connect">translate_connect()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#tsharkStop">tsharkStop()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.toolsdriver.Tools-class.html">Tools</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.toolsdriver-module.html">TestON.drivers.common.cli.toolsdriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_disconnect">translate_disconnect()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.toolsdriver-module.html">toolsdriver</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#translate_experimental_mode">translate_experimental_mode()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="U">U</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#uninstallApp">uninstallApp()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#update">update()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver-module.html">updatedriver</a><br />
-<span class="index-where">(in <a href="TestON.bin-module.html">TestON.bin</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.dicttoobject.DictToObject-class.html#update">update()</a><br />
-<span class="index-where">(in <a href="TestON.core.dicttoobject.DictToObject-class.html">DictToObject</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.logger.Logger-class.html#updateCaseResults">updateCaseResults()</a><br />
-<span class="index-where">(in <a href="TestON.core.logger.Logger-class.html">Logger</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver.UpdateDriver-class.html">UpdateDriver</a><br />
-<span class="index-where">(in <a href="TestON.bin.updatedriver-module.html">TestON.bin.updatedriver</a>)</span></td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="V">V</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#verify_and_translate">verify_and_translate()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#verifyOptions">verifyOptions()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#verifyTestCases">verifyTestCases()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifyCell">verifyCell()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#verifyParams">verifyParams()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#verifyTestScript">verifyTestScript()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#verifyExample">verifyExample()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#verifySSH">verifySSH()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.ast.NodeVisitor-class.html#visit">visit()</a><br />
-<span class="index-where">(in <a href="TestON.core.ast.NodeVisitor-class.html">NodeVisitor</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#verifyLogdir">verifyLogdir()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#verifyStaticGWandMAC">verifyStaticGWandMAC()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta-module.html">vyatta</a><br />
-<span class="index-where">(in <a href="TestON.bin-module.html">TestON.bin</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#verifyMail">verifyMail()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#verifySummary">verifySummary()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta-module.html">TestON.bin.vyatta</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#verifyOnosCell">verifyOnosCell()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#verifyTest">verifyTest()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="W">W</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.ast-module.html#walk">walk()</a><br />
-<span class="index-where">(in <a href="TestON.core.ast-module.html">TestON.core.ast</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver.UpdateDriver-class.html#writeDriver">writeDriver()</a><br />
-<span class="index-where">(in <a href="TestON.bin.updatedriver.UpdateDriver-class.html">UpdateDriver</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-<tr><td class="link-index"> </td><td class="link-index"> </td><td class="link-index"> </td></tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="X">X</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.xmldict-module.html#xml_to_dict">xml_to_dict()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.xmlparser-module.html">xmlparser</a><br />
-<span class="index-where">(in <a href="TestON.core-module.html">TestON.core</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.xmldict-module.html">xmldict</a><br />
-<span class="index-where">(in <a href="TestON.core-module.html">TestON.core</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.xmlparser.xmlparser-class.html">xmlparser</a><br />
-<span class="index-where">(in <a href="TestON.core.xmlparser-module.html">TestON.core.xmlparser</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="Y">Y</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#yank">yank()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-<td width="33%" class="link-index"> </td>
-</tr>
-<tr><td class="link-index"> </td><td class="link-index"> </td><td class="link-index"> </td></tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="_">_</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.dicttoobject.DictToObject-class.html#__getattr__">__getattr__()</a><br />
-<span class="index-where">(in <a href="TestON.core.dicttoobject.DictToObject-class.html">DictToObject</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html">ObeliskTopo</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart-module.html">TestON.tests.HAclusterRestart</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.CLI-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html">SAMPscaleTopo</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html">TestON.tests.HAclusterRestart.dependencies.Counters</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.cli.TestThread-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli.TestThread-class.html">TestThread</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html">SAMPstartTemplate</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.dependencies-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.dependencies-module.html">TestON.tests.HAclusterRestart.dependencies</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.generatedriver.GenerateDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.bin.generatedriver.GenerateDriver-class.html">GenerateDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html">SCPFcbench</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html">TestON.tests.HAclusterRestart.dependencies.obelisk</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.nec.NEC-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html">SCPFflowTp1g</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart-module.html">TestON.tests.HAminorityRestart.HAminorityRestart</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver.UpdateDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.bin.updatedriver.UpdateDriver-class.html">UpdateDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html">SCPFintentEventTp</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart-module.html">TestON.tests.HAminorityRestart</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta.Vyatta-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta.Vyatta-class.html">Vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html">SCPFintentInstallWithdrawLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html">TestON.tests.HAminorityRestart.dependencies.Counters</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.Thread.Thread-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.core.Thread.Thread-class.html">Thread</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html">SCPFintentRerouteLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.dependencies-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.dependencies-module.html">TestON.tests.HAminorityRestart.dependencies</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.dicttoobject.DictToObject-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.core.dicttoobject.DictToObject-class.html">DictToObject</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html">SCPFportLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html">TestON.tests.HAminorityRestart.dependencies.obelisk</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.iniparser.iniparser-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.core.iniparser.iniparser-class.html">iniparser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html">SCPFswitchLat</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity-module.html">TestON.tests.HAsanity.HAsanity</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.jsonparser.JsonParser-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.core.jsonparser.JsonParser-class.html">JsonParser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON-module.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity-module.html">TestON.tests.HAsanity</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.bin-module.html">TestON.bin</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.dependencies.Counters-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.dependencies.Counters-module.html">TestON.tests.HAsanity.dependencies.Counters</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.cli-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.bin.cli-module.html">TestON.bin.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.dependencies-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.dependencies-module.html">TestON.tests.HAsanity.dependencies</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.testparser.TestParser-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.core.testparser.TestParser-class.html">TestParser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.generatedriver-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.bin.generatedriver-module.html">TestON.bin.generatedriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.dependencies.obelisk-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.dependencies.obelisk-module.html">TestON.tests.HAsanity.dependencies.obelisk</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.core.xmlparser.xmlparser-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmlparser.xmlparser-class.html">xmlparser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.nec-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.bin.nec-module.html">TestON.bin.nec</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html">TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html">OnosRestDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.updatedriver-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.bin.updatedriver-module.html">TestON.bin.updatedriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart-module.html">TestON.tests.HAsingleInstanceRestart</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controllerdriver.Controller-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controllerdriver.Controller-class.html">Controller</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.bin.vyatta-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.bin.vyatta-module.html">TestON.bin.vyatta</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.Counters</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html">FvtApiDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.Thread-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.core.Thread-module.html">TestON.core.Thread</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html">TestON.tests.HAsingleInstanceRestart.dependencies</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.apidriver.API-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.apidriver.API-class.html">API</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.core-module.html">TestON.core</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.obelisk</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html">DPCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.ast-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.core.ast-module.html">TestON.core.ast</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html">TestON.tests.SAMPscaleTopo.SAMPscaleTopo</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html">FlowVisorDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.dicttoobject-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.core.dicttoobject-module.html">TestON.core.dicttoobject</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPscaleTopo-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPscaleTopo-module.html">TestON.tests.SAMPscaleTopo</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html">LincOEDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.iniparser-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.core.iniparser-module.html">TestON.core.iniparser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html">TestON.tests.SAMPstartTemplate.SAMPstartTemplate</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html">MininetCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.jsonparser-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.core.jsonparser-module.html">TestON.core.jsonparser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SAMPstartTemplate-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SAMPstartTemplate-module.html">TestON.tests.SAMPstartTemplate</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html">PoxCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.logger-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.core.logger-module.html">TestON.core.logger</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFcbench.SCPFcbench-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFcbench.SCPFcbench-module.html">TestON.tests.SCPFcbench.SCPFcbench</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html">RemoteMininetDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak-module.html">TestON.core.openspeak</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFcbench-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFcbench-module.html">TestON.tests.SCPFcbench</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html">Emulator</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html">TestON.tests.SCPFflowTp1g.SCPFflowTp1g</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html">OnosCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.testparser-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.core.testparser-module.html">TestON.core.testparser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFflowTp1g-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFflowTp1g-module.html">TestON.tests.SCPFflowTp1g</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html">OnosDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.xmldict-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html">TestON.tests.SCPFintentEventTp.SCPFintentEventTp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html">QuaggaCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.xmlparser-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.core.xmlparser-module.html">TestON.core.xmlparser</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentEventTp-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentEventTp-module.html">TestON.tests.SCPFintentEventTp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html">RemoteSysDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.drivers-module.html">TestON.drivers</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html">TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html">FloodLightCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common-module.html">TestON.drivers.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentInstallWithdrawLat-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentInstallWithdrawLat-module.html">TestON.tests.SCPFintentInstallWithdrawLat</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html">NEC</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api-module.html">TestON.drivers.common.api</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html">TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html">RemotePoxDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.api.controller-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.api.controller-module.html">TestON.drivers.common.api.controller</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFintentRerouteLat-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFintentRerouteLat-module.html">TestON.tests.SCPFintentRerouteLat</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html">RemoteVMDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFportLat.SCPFportLat-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFportLat.SCPFportLat-module.html">TestON.tests.SCPFportLat.SCPFportLat</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html">RemoteTestBedDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.emulator-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.emulator-module.html">TestON.drivers.common.cli.emulator</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFportLat-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFportLat-module.html">TestON.tests.SCPFportLat</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html">DpctlCliDriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotesys-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotesys-module.html">TestON.drivers.common.cli.remotesys</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html">TestON.tests.SCPFswitchLat.SCPFswitchLat</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.toolsdriver.Tools-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.toolsdriver.Tools-class.html">Tools</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed-module.html">TestON.drivers.common.cli.remotetestbed</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.SCPFswitchLat-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.SCPFswitchLat-module.html">TestON.tests.SCPFswitchLat</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.clidriver.CLI-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.clidriver.CLI-class.html">CLI</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html">TestON.drivers.common.cli.remotetestbed.necswitchdriver</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests-module.html">TestON.tests</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.examples.Assert.Assert.Assert-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.examples.Assert.Assert.Assert-class.html">Assert</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.drivers.common.cli.tool-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.drivers.common.cli.tool-module.html">TestON.drivers.common.cli.tool</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.dicttoobject.DictToObject-class.html#__setattr__">__setattr__()</a><br />
-<span class="index-where">(in <a href="TestON.core.dicttoobject.DictToObject-class.html">DictToObject</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.examples.CaseParams.CaseParams.CaseParams-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.examples.CaseParams.CaseParams.CaseParams-class.html">CaseParams</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.Assert.Assert-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.examples.Assert.Assert-module.html">TestON.examples.Assert.Assert</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.dicttoobject.DictToObject-class.html#__update">__update()</a><br />
-<span class="index-where">(in <a href="TestON.core.dicttoobject.DictToObject-class.html">DictToObject</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html">ExperimentTest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.Assert-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.examples.Assert-module.html">TestON.examples.Assert</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.openspeak.OpenSpeak-class.html#_argsCheck">_argsCheck()</a><br />
-<span class="index-where">(in <a href="TestON.core.openspeak.OpenSpeak-class.html">OpenSpeak</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.examples.StepParams.StepParams.StepParams-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.examples.StepParams.StepParams.StepParams-class.html">StepParams</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.CaseParams.CaseParams-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.examples.CaseParams.CaseParams-module.html">TestON.examples.CaseParams.CaseParams</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.xmldict-module.html#_dict_from_xml">_dict_from_xml()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.examples.Topology.Topology.Topology-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.examples.Topology.Topology.Topology-class.html">Topology</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.CaseParams-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.examples.CaseParams-module.html">TestON.examples.CaseParams</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.xmldict-module.html#_dict_to_xml">_dict_to_xml()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html">CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.ExperimentTest.ExperimentTest-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.examples.ExperimentTest.ExperimentTest-module.html">TestON.examples.ExperimentTest.ExperimentTest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston-module.html#_echo">_echo()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston-module.html">TestON.core.teston</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html">FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.ExperimentTest-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.examples.ExperimentTest-module.html">TestON.examples.ExperimentTest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.xmldict-module.html#_extract_attrs">_extract_attrs()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html">HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.StepParams.StepParams-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.examples.StepParams.StepParams-module.html">TestON.examples.StepParams.StepParams</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.xmldict-module.html#_from_xml">_from_xml()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html">TestON.tests.HAclusterRestart.dependencies.Counters</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.StepParams-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.examples.StepParams-module.html">TestON.examples.StepParams</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.teston.TestON-class.html#_getTest">_getTest()</a><br />
-<span class="index-where">(in <a href="TestON.core.teston.TestON-class.html">TestON</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html">ObeliskTopo</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.Topology.Topology-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.examples.Topology.Topology-module.html">TestON.examples.Topology.Topology</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.xmldict-module.html#_is_xml_el_dict">_is_xml_el_dict()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html">HAminorityRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples.Topology-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.examples.Topology-module.html">TestON.examples.Topology</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.xmldict-module.html#_is_xml_el_list">_is_xml_el_list()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html">TestON.tests.HAminorityRestart.dependencies.Counters</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.examples-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.examples-module.html">TestON.examples</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.xmldict-module.html#_list_from_xml">_list_from_xml()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html">ObeliskTopo</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.lib-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.lib-module.html">TestON.lib</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.logger.Logger-class.html#_printHeader">_printHeader()</a><br />
-<span class="index-where">(in <a href="TestON.core.logger.Logger-class.html">Logger</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html">HAsanity</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest.CHOtest-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest.CHOtest-module.html">TestON.tests.CHOtest.CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.xmldict-module.html#_str_to_boolean">_str_to_boolean()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.dependencies.Counters-module.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.dependencies.Counters-module.html">TestON.tests.HAsanity.dependencies.Counters</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.CHOtest-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.CHOtest-module.html">TestON.tests.CHOtest</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.xmldict-module.html#_str_to_datetime">_str_to_datetime()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html">ObeliskTopo</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent.FUNCintent-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent.FUNCintent-module.html">TestON.tests.FUNCintent.FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.xmldict-module.html#_to_xml">_to_xml()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html">HAsingleInstanceRestart</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.FUNCintent-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.FUNCintent-module.html">TestON.tests.FUNCintent</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.core.xmldict-module.html#_val_and_maybe_convert">_val_and_maybe_convert()</a><br />
-<span class="index-where">(in <a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.Counters</a>)</span></td>
-<td width="33%" class="link-index"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-module.html#__package__">__package__</a><br />
-<span class="index-where">(in <a href="TestON.tests.HAclusterRestart.HAclusterRestart-module.html">TestON.tests.HAclusterRestart.HAclusterRestart</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-</table>
-</td></tr>
-</table>
-<br /><br /><!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th> <a
- href="module-tree.html">Trees</a> </th>
-
- <!-- Index link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- > Indices </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/index.html b/TestON/Documentation/TestON_Document/index.html
deleted file mode 100644
index ea95490..0000000
--- a/TestON/Documentation/TestON_Document/index.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
- "DTD/xhtml1-frameset.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title> TestON </title>
-</head>
-<frameset cols="20%,80%">
- <frameset rows="30%,70%">
- <frame src="toc.html" name="moduleListFrame"
- id="moduleListFrame" />
- <frame src="toc-everything.html" name="moduleFrame"
- id="moduleFrame" />
- </frameset>
- <frame src="TestON-module.html" name="mainFrame" id="mainFrame" />
-</frameset>
-</html>
diff --git a/TestON/Documentation/TestON_Document/module-tree.html b/TestON/Documentation/TestON_Document/module-tree.html
deleted file mode 100644
index bb0be34..0000000
--- a/TestON/Documentation/TestON_Document/module-tree.html
+++ /dev/null
@@ -1,346 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Module Hierarchy</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- > Trees </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%"> </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span></td></tr>
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >] | <a href="module-tree.html"
- target="_top">no frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<center><b>
- [ <a href="module-tree.html">Module Hierarchy</a>
- | <a href="class-tree.html">Class Hierarchy</a> ]
-</b></center><br />
-<h1 class="epydoc">Module Hierarchy</h1>
-<ul class="nomargin-top">
- <li> <strong class="uidlink"><a href="TestON-module.html">TestON</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.bin-module.html">TestON.bin</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.bin.cli-module.html">TestON.bin.cli</a></strong>: <em class="summary">Created on 20-Dec-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.bin.generatedriver-module.html">TestON.bin.generatedriver</a></strong>: <em class="summary">Created on 11-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.bin.nec-module.html">TestON.bin.nec</a></strong> </li>
- <li> <strong class="uidlink">TestON.bin.pronto</strong> </li>
- <li> <strong class="uidlink"><a href="TestON.bin.updatedriver-module.html">TestON.bin.updatedriver</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.bin.vyatta-module.html">TestON.bin.vyatta</a></strong>: <em class="summary">TestON is free software: you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.core-module.html">TestON.core</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.core.Thread-module.html">TestON.core.Thread</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.core.ast-module.html">TestON.core.ast</a></strong>: <em class="summary">ast
-~~~</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.dicttoobject-module.html">TestON.core.dicttoobject</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.core.iniparser-module.html">TestON.core.iniparser</a></strong>: <em class="summary">Created on 07-Jan-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.jsonparser-module.html">TestON.core.jsonparser</a></strong>: <em class="summary">Created on 07-Jan-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.logger-module.html">TestON.core.logger</a></strong>: <em class="summary">Created on 07-Jan-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.openspeak-module.html">TestON.core.openspeak</a></strong>: <em class="summary">Created on 20-Dec-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.teston-module.html">TestON.core.teston</a></strong>: <em class="summary">Created on 22-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.testparser-module.html">TestON.core.testparser</a></strong>: <em class="summary">Created on 26-Dec-2012</em> </li>
- <li> <strong class="uidlink">TestON.core.utilities</strong> </li>
- <li> <strong class="uidlink"><a href="TestON.core.xmldict-module.html">TestON.core.xmldict</a></strong>: <em class="summary">Created on 03-Dec-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.core.xmlparser-module.html">TestON.core.xmlparser</a></strong>: <em class="summary">Created on 07-Jan-2013</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers-module.html">TestON.drivers</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common-module.html">TestON.drivers.common</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api-module.html">TestON.drivers.common.api</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.controller-module.html">TestON.drivers.common.api.controller</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.controller.onosrestdriver-module.html">TestON.drivers.common.api.controller.onosrestdriver</a></strong>: <em class="summary">Created on 07-08-2015</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.controllerdriver-module.html">TestON.drivers.common.api.controllerdriver</a></strong>: <em class="summary">Created on 29-Nov-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.api.fvtapidriver-module.html">TestON.drivers.common.api.fvtapidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.apidriver-module.html">TestON.drivers.common.apidriver</a></strong>: <em class="summary">Created on 22-Nov-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli-module.html">TestON.drivers.common.cli</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.dpclidriver-module.html">TestON.drivers.common.cli.dpclidriver</a></strong>: <em class="summary">Driver for blank dataplane VMs.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator-module.html">TestON.drivers.common.cli.emulator</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.flowvisordriver-module.html">TestON.drivers.common.cli.emulator.flowvisordriver</a></strong>: <em class="summary">Created on 26-Mar-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.lincoedriver-module.html">TestON.drivers.common.cli.emulator.lincoedriver</a></strong>: <em class="summary">This driver handles the optical switch emulator linc-oe.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.mininetclidriver-module.html">TestON.drivers.common.cli.emulator.mininetclidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.poxclidriver-module.html">TestON.drivers.common.cli.emulator.poxclidriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulator.remotemininetdriver-module.html">TestON.drivers.common.cli.emulator.remotemininetdriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.emulatordriver-module.html">TestON.drivers.common.cli.emulatordriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.onosclidriver-module.html">TestON.drivers.common.cli.onosclidriver</a></strong>: <em class="summary">This driver enters the onos> prompt to issue commands.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.onosdriver-module.html">TestON.drivers.common.cli.onosdriver</a></strong>: <em class="summary">This driver interacts with ONOS bench, the OSGi platform that
- configures the ONOS nodes.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.quaggaclidriver-module.html">TestON.drivers.common.cli.quaggaclidriver</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotesys-module.html">TestON.drivers.common.cli.remotesys</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotesysdriver-module.html">TestON.drivers.common.cli.remotesysdriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed-module.html">TestON.drivers.common.cli.remotetestbed</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html">TestON.drivers.common.cli.remotetestbed.floodlightclidriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html">TestON.drivers.common.cli.remotetestbed.necswitchdriver</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html">TestON.drivers.common.cli.remotetestbed.remotepoxdriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html">TestON.drivers.common.cli.remotetestbed.remotevmdriver</a></strong>: <em class="summary">Created on 12-Feb-2013</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.remotetestbeddriver-module.html">TestON.drivers.common.cli.remotetestbeddriver</a></strong>: <em class="summary">Created on 26-Oct-2012</em> </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.tool-module.html">TestON.drivers.common.cli.tool</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.tool.dpctlclidriver-module.html">TestON.drivers.common.cli.tool.dpctlclidriver</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.cli.toolsdriver-module.html">TestON.drivers.common.cli.toolsdriver</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.drivers.common.clidriver-module.html">TestON.drivers.common.clidriver</a></strong>: <em class="summary">Created on 24-Oct-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink">TestON.drivers.component</strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples-module.html">TestON.examples</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.Assert-module.html">TestON.examples.Assert</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.Assert.Assert-module.html">TestON.examples.Assert.Assert</a></strong>: <em class="summary">TestON is free software: you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples.CaseParams-module.html">TestON.examples.CaseParams</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.CaseParams.CaseParams-module.html">TestON.examples.CaseParams.CaseParams</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples.ExperimentTest-module.html">TestON.examples.ExperimentTest</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.ExperimentTest.ExperimentTest-module.html">TestON.examples.ExperimentTest.ExperimentTest</a></strong>: <em class="summary">Created on 26-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples.StepParams-module.html">TestON.examples.StepParams</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.StepParams.StepParams-module.html">TestON.examples.StepParams.StepParams</a></strong>: <em class="summary">Created on 28-Nov-2012</em> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.examples.Topology-module.html">TestON.examples.Topology</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.examples.Topology.Topology-module.html">TestON.examples.Topology.Topology</a></strong>: <em class="summary">Created on 28-Nov-2012</em> </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.lib-module.html">TestON.lib</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests-module.html">TestON.tests</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.CHOtest-module.html">TestON.tests.CHOtest</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.CHOtest.CHOtest-module.html">TestON.tests.CHOtest.CHOtest</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.FUNCintent-module.html">TestON.tests.FUNCintent</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.FUNCintent.FUNCintent-module.html">TestON.tests.FUNCintent.FUNCintent</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart-module.html">TestON.tests.HAclusterRestart</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.HAclusterRestart-module.html">TestON.tests.HAclusterRestart.HAclusterRestart</a></strong>: <em class="summary">Description: This test is to determine if ONOS can handle
- all of it's nodes restarting</em> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.dependencies-module.html">TestON.tests.HAclusterRestart.dependencies</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html">TestON.tests.HAclusterRestart.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html">TestON.tests.HAclusterRestart.dependencies.obelisk</a></strong> </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart-module.html">TestON.tests.HAminorityRestart</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.HAminorityRestart-module.html">TestON.tests.HAminorityRestart.HAminorityRestart</a></strong>: <em class="summary">Description: This test is to determine if ONOS can handle
- a minority of it's nodes restarting</em> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.dependencies-module.html">TestON.tests.HAminorityRestart.dependencies</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html">TestON.tests.HAminorityRestart.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html">TestON.tests.HAminorityRestart.dependencies.obelisk</a></strong> </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity-module.html">TestON.tests.HAsanity</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.HAsanity-module.html">TestON.tests.HAsanity.HAsanity</a></strong>: <em class="summary">Description: This test is to determine if the HA test setup is
- working correctly.</em> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.dependencies-module.html">TestON.tests.HAsanity.dependencies</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.dependencies.Counters-module.html">TestON.tests.HAsanity.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsanity.dependencies.obelisk-module.html">TestON.tests.HAsanity.dependencies.obelisk</a></strong> </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart-module.html">TestON.tests.HAsingleInstanceRestart</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html">TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart</a></strong>: <em class="summary">Description: This test is to determine if a single
- instance ONOS 'cluster' can handle a restart</em> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html">TestON.tests.HAsingleInstanceRestart.dependencies</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.Counters</a></strong> </li>
- <li> <strong class="uidlink"><a href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html">TestON.tests.HAsingleInstanceRestart.dependencies.obelisk</a></strong> </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SAMPscaleTopo-module.html">TestON.tests.SAMPscaleTopo</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html">TestON.tests.SAMPscaleTopo.SAMPscaleTopo</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SAMPstartTemplate-module.html">TestON.tests.SAMPstartTemplate</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html">TestON.tests.SAMPstartTemplate.SAMPstartTemplate</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFcbench-module.html">TestON.tests.SCPFcbench</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFcbench.SCPFcbench-module.html">TestON.tests.SCPFcbench.SCPFcbench</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFflowTp1g-module.html">TestON.tests.SCPFflowTp1g</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html">TestON.tests.SCPFflowTp1g.SCPFflowTp1g</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentEventTp-module.html">TestON.tests.SCPFintentEventTp</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html">TestON.tests.SCPFintentEventTp.SCPFintentEventTp</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentInstallWithdrawLat-module.html">TestON.tests.SCPFintentInstallWithdrawLat</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html">TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentRerouteLat-module.html">TestON.tests.SCPFintentRerouteLat</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html">TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFportLat-module.html">TestON.tests.SCPFportLat</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFportLat.SCPFportLat-module.html">TestON.tests.SCPFportLat.SCPFportLat</a></strong> </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFswitchLat-module.html">TestON.tests.SCPFswitchLat</a></strong>
- <ul>
- <li> <strong class="uidlink"><a href="TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html">TestON.tests.SCPFswitchLat.SCPFswitchLat</a></strong> </li>
- </ul>
- </li>
- </ul>
- </li>
- </ul>
- </li>
-</ul>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th> <a
- href="TestON-module.html">Home</a> </th>
-
- <!-- Tree link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- > Trees </th>
-
- <!-- Index link -->
- <th> <a
- href="identifier-index.html">Indices</a> </th>
-
- <!-- Help link -->
- <th> <a
- href="help.html">Help</a> </th>
-
- <!-- Project homepage -->
- <th class="navbar" align="right" width="100%">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr><th class="navbar" align="center"
- >TestON</th>
- </tr></table></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon Aug 10 11:12:34 2015
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/redirect.html b/TestON/Documentation/TestON_Document/redirect.html
deleted file mode 100644
index b5955e3..0000000
--- a/TestON/Documentation/TestON_Document/redirect.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<html><head><title>Epydoc Redirect Page</title>
-<meta http-equiv="cache-control" content="no-cache" />
-<meta http-equiv="expires" content="0" />
-<meta http-equiv="pragma" content="no-cache" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-<body>
-<script type="text/javascript">
-<!--
-var pages = ["TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-c", "TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-c", "TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-c", "TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-c", "TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-c", "TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-c", "TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-m", "TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-c", "TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-c", "TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-c", "TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-c", "TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-c", "TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-c", "TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-c", "TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-c", "TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-c", "TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-c", "TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-c", "TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-c", "TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-m", "TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-c", "TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-c", "TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-c", "TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-c", "TestON.drivers.common.cli.remotetestbed.floodlightclidriver-m", "TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-c", "TestON.tests.HAsingleInstanceRestart.dependencies.Counters-m", "TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-m", "TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-c", "TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-c", "TestON.drivers.common.cli.remotetestbed.necswitchdriver-m", "TestON.drivers.common.cli.remotetestbed.remotepoxdriver-m", "TestON.drivers.common.cli.emulator.remotemininetdriver-m", "TestON.drivers.common.cli.remotetestbed.remotevmdriver-m", "TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-m", "TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-c", "TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-c", "TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-c", "TestON.drivers.common.api.controllerdriver.Controller-c", "TestON.drivers.common.cli.onosclidriver.OnosCliDriver-c", "TestON.tests.HAminorityRestart.dependencies.Counters-m", "TestON.drivers.common.api.controller.onosrestdriver-m", "TestON.drivers.common.cli.emulator.mininetclidriver-m", "TestON.tests.HAclusterRestart.dependencies.Counters-m", "TestON.tests.HAminorityRestart.dependencies.obelisk-m", "TestON.drivers.common.api.fvtapidriver.FvtApiDriver-c", "TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-c", "TestON.drivers.common.cli.emulator.flowvisordriver-m", "TestON.tests.HAclusterRestart.dependencies.obelisk-m", "TestON.tests.HAsingleInstanceRestart.dependencies-m", "TestON.drivers.common.cli.dpclidriver.DPCliDriver-c", "TestON.drivers.common.cli.emulatordriver.Emulator-c", "TestON.tests.HAminorityRestart.HAminorityRestart-m", "TestON.tests.SAMPstartTemplate.SAMPstartTemplate-m", "TestON.tests.SCPFintentEventTp.SCPFintentEventTp-m", "TestON.examples.CaseParams.CaseParams.CaseParams-c", "TestON.examples.StepParams.StepParams.StepParams-c", "TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-c", "TestON.drivers.common.cli.emulator.lincoedriver-m", "TestON.drivers.common.cli.emulator.poxclidriver-m", "TestON.drivers.common.cli.onosdriver.OnosDriver-c", "TestON.tests.HAclusterRestart.HAclusterRestart-m", "TestON.drivers.common.cli.remotetestbeddriver-m", "TestON.drivers.common.cli.tool.dpctlclidriver-m", "TestON.examples.ExperimentTest.ExperimentTest-m", "TestON.tests.FUNCintent.FUNCintent.FUNCintent-c", "TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-c", "TestON.tests.HAminorityRestart.dependencies-m", "TestON.tests.HAsanity.dependencies.Counters-m", "TestON.drivers.common.cli.toolsdriver.Tools-c", "TestON.drivers.common.api.controllerdriver-m", "TestON.tests.HAclusterRestart.dependencies-m", "TestON.tests.HAsanity.dependencies.obelisk-m", "TestON.examples.Topology.Topology.Topology-c", "TestON.drivers.common.cli.quaggaclidriver-m", "TestON.drivers.common.cli.remotesysdriver-m", "TestON.tests.SCPFintentInstallWithdrawLat-m", "TestON.drivers.common.cli.emulatordriver-m", "TestON.tests.SAMPscaleTopo.SAMPscaleTopo-m", "TestON.tests.SCPFswitchLat.SCPFswitchLat-m", "TestON.bin.generatedriver.GenerateDriver-c", "TestON.drivers.common.cli.onosclidriver-m", "TestON.drivers.common.cli.remotetestbed-m", "TestON.tests.HAsanity.HAsanity.HAsanity-c", "TestON.drivers.common.api.fvtapidriver-m", "TestON.tests.SCPFflowTp1g.SCPFflowTp1g-m", "TestON.drivers.common.cli.dpclidriver-m", "TestON.drivers.common.cli.toolsdriver-m", "TestON.examples.CaseParams.CaseParams-m", "TestON.examples.StepParams.StepParams-m", "TestON.core.dicttoobject.DictToObject-c", "TestON.drivers.common.api.controller-m", "TestON.drivers.common.cli.onosdriver-m", "TestON.tests.HAsingleInstanceRestart-m", "TestON.tests.SCPFportLat.SCPFportLat-m", "TestON.bin.updatedriver.UpdateDriver-c", "TestON.examples.Assert.Assert.Assert-c", "TestON.tests.CHOtest.CHOtest.CHOtest-c", "TestON.drivers.common.cli.remotesys-m", "TestON.drivers.common.apidriver.API-c", "TestON.drivers.common.clidriver.CLI-c", "TestON.drivers.common.cli.emulator-m", "TestON.tests.FUNCintent.FUNCintent-m", "TestON.tests.HAsanity.dependencies-m", "TestON.tests.SCPFcbench.SCPFcbench-m", "TestON.examples.Topology.Topology-m", "TestON.tests.SCPFintentRerouteLat-m", "TestON.core.jsonparser.JsonParser-c", "TestON.core.testparser.TestParser-c", "TestON.drivers.common.apidriver-m", "TestON.drivers.common.clidriver-m", "TestON.core.ast.NodeTransformer-c", "TestON.core.iniparser.iniparser-c", "TestON.core.openspeak.OpenSpeak-c", "TestON.core.xmlparser.xmlparser-c", "TestON.drivers.common.cli.tool-m", "TestON.examples.ExperimentTest-m", "TestON.tests.HAminorityRestart-m", "TestON.tests.HAsanity.HAsanity-m", "TestON.tests.SAMPstartTemplate-m", "TestON.tests.SCPFintentEventTp-m", "TestON.examples.Assert.Assert-m", "TestON.tests.HAclusterRestart-m", "TestON.tests.CHOtest.CHOtest-m", "TestON.core.ast.NodeVisitor-c", "TestON.examples.CaseParams-m", "TestON.examples.StepParams-m", "TestON.tests.SAMPscaleTopo-m", "TestON.tests.SCPFswitchLat-m", "TestON.bin.generatedriver-m", "TestON.drivers.common.api-m", "TestON.drivers.common.cli-m", "TestON.tests.SCPFflowTp1g-m", "TestON.bin.cli.TestThread-c", "TestON.core.Thread.Thread-c", "TestON.core.logger.Logger-c", "TestON.core.teston.TestON-c", "TestON.core.dicttoobject-m", "TestON.examples.Topology-m", "TestON.tests.SCPFportLat-m", "TestON.bin.vyatta.Vyatta-c", "TestON.bin.updatedriver-m", "TestON.tests.FUNCintent-m", "TestON.tests.SCPFcbench-m", "TestON.core.jsonparser-m", "TestON.core.testparser-m", "TestON.examples.Assert-m", "TestON.core.iniparser-m", "TestON.core.openspeak-m", "TestON.core.xmlparser-m", "TestON.drivers.common-m", "TestON.tests.HAsanity-m", "TestON.tests.CHOtest-m", "TestON.core.xmldict-m", "TestON.core.Thread-m", "TestON.core.logger-m", "TestON.core.teston-m", "TestON.bin.cli.CLI-c", "TestON.bin.nec.NEC-c", "TestON.bin.vyatta-m", "TestON.core.ast-m", "TestON.examples-m", "TestON.bin.cli-m", "TestON.bin.nec-m", "TestON.drivers-m", "TestON.tests-m", "TestON.core-m", "TestON.bin-m", "TestON.lib-m", "TestON-m"];
-var dottedName = get_anchor();
-if (dottedName) {
- var target = redirect_url(dottedName);
- if (target) window.location.replace(target);
-}
-// -->
-</script>
-
-<h3>Epydoc Auto-redirect page</h3>
-
-<p>When javascript is enabled, this page will redirect URLs of
-the form <tt>redirect.html#<i>dotted.name</i></tt> to the
-documentation for the object with the given fully-qualified
-dotted name.</p>
-<p><a id="message"> </a></p>
-
-<script type="text/javascript">
-<!--
-if (dottedName) {
- var msg = document.getElementById("message");
- msg.innerHTML = "No documentation found for <tt>"+
- dottedName+"</tt>";
-}
-// -->
-</script>
-
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON-module.html b/TestON/Documentation/TestON_Document/toc-TestON-module.html
deleted file mode 100644
index ca55d4d..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>TestON</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module TestON</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.bin-module.html b/TestON/Documentation/TestON_Document/toc-TestON.bin-module.html
deleted file mode 100644
index a67847e..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.bin-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>bin</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module bin</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.bin-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.bin.cli-module.html b/TestON/Documentation/TestON_Document/toc-TestON.bin.cli-module.html
deleted file mode 100644
index a9e3eee..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.bin.cli-module.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>cli</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module cli</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.bin.cli.CLI-class.html"
- >CLI</a><br /> <a target="mainFrame" href="TestON.bin.cli.TestThread-class.html"
- >TestThread</a><br /> <h2 class="toc">Functions</h2>
- <a target="mainFrame" href="TestON.bin.cli-module.html#dictToObj"
- >dictToObj</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#error"
- >error</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#output"
- >output</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.bin.cli-module.html#__package__"
- >__package__</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#config_path"
- >config_path</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#core_path"
- >core_path</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#drivers_path"
- >drivers_path</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#dump"
- >dump</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#introduction"
- >introduction</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#location"
- >location</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#logs_path"
- >logs_path</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#path"
- >path</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#tests_path"
- >tests_path</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.bin.generatedriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.bin.generatedriver-module.html
deleted file mode 100644
index 6f3f4e8..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.bin.generatedriver-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>generatedriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module generatedriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.bin.generatedriver.GenerateDriver-class.html"
- >GenerateDriver</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.bin.generatedriver-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.bin.nec-module.html b/TestON/Documentation/TestON_Document/toc-TestON.bin.nec-module.html
deleted file mode 100644
index 0009607..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.bin.nec-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>nec</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module nec</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.bin.nec.NEC-class.html"
- >NEC</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.bin.nec-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.bin.updatedriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.bin.updatedriver-module.html
deleted file mode 100644
index d4d7803..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.bin.updatedriver-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>updatedriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module updatedriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.bin.updatedriver.UpdateDriver-class.html"
- >UpdateDriver</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.bin.updatedriver-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.bin.vyatta-module.html b/TestON/Documentation/TestON_Document/toc-TestON.bin.vyatta-module.html
deleted file mode 100644
index 9b599b5..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.bin.vyatta-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>vyatta</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module vyatta</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.bin.vyatta.Vyatta-class.html"
- >Vyatta</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.bin.vyatta-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.core-module.html b/TestON/Documentation/TestON_Document/toc-TestON.core-module.html
deleted file mode 100644
index cebd443..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.core-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>core</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module core</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.core-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.core.Thread-module.html b/TestON/Documentation/TestON_Document/toc-TestON.core.Thread-module.html
deleted file mode 100644
index a4fdaef..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.core.Thread-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Thread</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module Thread</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.core.Thread.Thread-class.html"
- >Thread</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.core.Thread-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.core.ast-module.html b/TestON/Documentation/TestON_Document/toc-TestON.core.ast-module.html
deleted file mode 100644
index d5e44d2..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.core.ast-module.html
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>ast</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module ast</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.core.ast.NodeTransformer-class.html"
- >NodeTransformer</a><br /> <a target="mainFrame" href="TestON.core.ast.NodeVisitor-class.html"
- >NodeVisitor</a><br /> <h2 class="toc">Functions</h2>
- <a target="mainFrame" href="TestON.core.ast-module.html#copy_location"
- >copy_location</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#dump"
- >dump</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#fix_missing_locations"
- >fix_missing_locations</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#get_docstring"
- >get_docstring</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#increment_lineno"
- >increment_lineno</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#iter_child_nodes"
- >iter_child_nodes</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#iter_fields"
- >iter_fields</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#literal_eval"
- >literal_eval</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#parse"
- >parse</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#walk"
- >walk</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.core.ast-module.html#PyCF_ONLY_AST"
- >PyCF_ONLY_AST</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.core.dicttoobject-module.html b/TestON/Documentation/TestON_Document/toc-TestON.core.dicttoobject-module.html
deleted file mode 100644
index e9528c7..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.core.dicttoobject-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>dicttoobject</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module dicttoobject</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.core.dicttoobject.DictToObject-class.html"
- >DictToObject</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.core.dicttoobject-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.core.iniparser-module.html b/TestON/Documentation/TestON_Document/toc-TestON.core.iniparser-module.html
deleted file mode 100644
index 88bdced..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.core.iniparser-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>iniparser</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module iniparser</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.core.iniparser.iniparser-class.html"
- >iniparser</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.core.iniparser-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.core.jsonparser-module.html b/TestON/Documentation/TestON_Document/toc-TestON.core.jsonparser-module.html
deleted file mode 100644
index 6627aed..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.core.jsonparser-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>jsonparser</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module jsonparser</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.core.jsonparser.JsonParser-class.html"
- >JsonParser</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.core.jsonparser-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.core.logger-module.html b/TestON/Documentation/TestON_Document/toc-TestON.core.logger-module.html
deleted file mode 100644
index fd80415..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.core.logger-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>logger</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module logger</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.core.logger.Logger-class.html"
- >Logger</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.core.logger-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.core.openspeak-module.html b/TestON/Documentation/TestON_Document/toc-TestON.core.openspeak-module.html
deleted file mode 100644
index 1cc3a1f..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.core.openspeak-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>openspeak</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module openspeak</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.core.openspeak.OpenSpeak-class.html"
- >OpenSpeak</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.core.openspeak-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.core.teston-module.html b/TestON/Documentation/TestON_Document/toc-TestON.core.teston-module.html
deleted file mode 100644
index c59bf57..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.core.teston-module.html
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>teston</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module teston</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.core.teston.TestON-class.html"
- >TestON</a><br /> <h2 class="toc">Functions</h2>
- <div class="private">
- <a target="mainFrame" href="TestON.core.teston-module.html#_echo"
- >_echo</a><br /> </div>
- <a target="mainFrame" href="TestON.core.teston-module.html#load_defaultParser"
- >load_defaultParser</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#load_defaultlogger"
- >load_defaultlogger</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#load_logger"
- >load_logger</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#load_parser"
- >load_parser</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyExample"
- >verifyExample</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyLogdir"
- >verifyLogdir</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyMail"
- >verifyMail</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyOnosCell"
- >verifyOnosCell</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyOptions"
- >verifyOptions</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyParams"
- >verifyParams</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyTest"
- >verifyTest</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyTestCases"
- >verifyTestCases</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyTestScript"
- >verifyTestScript</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.core.teston-module.html#__package__"
- >__package__</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#config_path"
- >config_path</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#core_path"
- >core_path</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#drivers_path"
- >drivers_path</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#location"
- >location</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#logs_path"
- >logs_path</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#path"
- >path</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#tests_path"
- >tests_path</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.core.testparser-module.html b/TestON/Documentation/TestON_Document/toc-TestON.core.testparser-module.html
deleted file mode 100644
index 386adf6..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.core.testparser-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>testparser</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module testparser</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.core.testparser.TestParser-class.html"
- >TestParser</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.core.testparser-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.core.xmldict-module.html b/TestON/Documentation/TestON_Document/toc-TestON.core.xmldict-module.html
deleted file mode 100644
index af29a59..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.core.xmldict-module.html
+++ /dev/null
@@ -1,67 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>xmldict</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module xmldict</h1>
-<hr />
- <h2 class="toc">Functions</h2>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_dict_from_xml"
- >_dict_from_xml</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_dict_to_xml"
- >_dict_to_xml</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_extract_attrs"
- >_extract_attrs</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_from_xml"
- >_from_xml</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_is_xml_el_dict"
- >_is_xml_el_dict</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_is_xml_el_list"
- >_is_xml_el_list</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_list_from_xml"
- >_list_from_xml</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_str_to_boolean"
- >_str_to_boolean</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_str_to_datetime"
- >_str_to_datetime</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_to_xml"
- >_to_xml</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_val_and_maybe_convert"
- >_val_and_maybe_convert</a><br /> </div>
- <a target="mainFrame" href="TestON.core.xmldict-module.html#dict_to_xml"
- >dict_to_xml</a><br /> <a target="mainFrame" href="TestON.core.xmldict-module.html#xml_to_dict"
- >xml_to_dict</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.core.xmldict-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.core.xmlparser-module.html b/TestON/Documentation/TestON_Document/toc-TestON.core.xmlparser-module.html
deleted file mode 100644
index 829621a..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.core.xmlparser-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>xmlparser</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module xmlparser</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.core.xmlparser.xmlparser-class.html"
- >xmlparser</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.core.xmlparser-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers-module.html
deleted file mode 100644
index 0f622e7..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>drivers</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module drivers</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.drivers-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common-module.html
deleted file mode 100644
index 1dc9ae9..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>common</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module common</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.drivers.common-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.api-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.api-module.html
deleted file mode 100644
index a2ec467..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.api-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>api</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module api</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.drivers.common.api-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.api.controller-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.api.controller-module.html
deleted file mode 100644
index ab0c4a6..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.api.controller-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>controller</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module controller</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.drivers.common.api.controller-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.api.controller.onosrestdriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.api.controller.onosrestdriver-module.html
deleted file mode 100644
index b11d341..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.api.controller.onosrestdriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>onosrestdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module onosrestdriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html"
- >OnosRestDriver</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.api.controllerdriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.api.controllerdriver-module.html
deleted file mode 100644
index 1f9d687..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.api.controllerdriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>controllerdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module controllerdriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.api.controllerdriver.Controller-class.html"
- >Controller</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.api.fvtapidriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.api.fvtapidriver-module.html
deleted file mode 100644
index b330a98..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.api.fvtapidriver-module.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>fvtapidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module fvtapidriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html"
- >FvtApiDriver</a><br /> <h2 class="toc">Functions</h2>
- <a target="mainFrame" href="TestON.drivers.common.api.fvtapidriver-module.html#test_set_init"
- >test_set_init</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.drivers.common.api.fvtapidriver-module.html#config_default"
- >config_default</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.apidriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.apidriver-module.html
deleted file mode 100644
index 52413f0..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.apidriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>apidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module apidriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.apidriver.API-class.html"
- >API</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli-module.html
deleted file mode 100644
index 6ef0218..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>cli</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module cli</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.dpclidriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.dpclidriver-module.html
deleted file mode 100644
index 668bfad..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.dpclidriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>dpclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module dpclidriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html"
- >DPCliDriver</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator-module.html
deleted file mode 100644
index 726087a..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>emulator</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module emulator</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.emulator-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator.flowvisordriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator.flowvisordriver-module.html
deleted file mode 100644
index 24ac8eb..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator.flowvisordriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>flowvisordriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module flowvisordriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html"
- >FlowVisorDriver</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator.lincoedriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator.lincoedriver-module.html
deleted file mode 100644
index 3b72a9a..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator.lincoedriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>lincoedriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module lincoedriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html"
- >LincOEDriver</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator.mininetclidriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator.mininetclidriver-module.html
deleted file mode 100644
index 8dd2b77..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator.mininetclidriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>mininetclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module mininetclidriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html"
- >MininetCliDriver</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator.poxclidriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator.poxclidriver-module.html
deleted file mode 100644
index 4f38ddf..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator.poxclidriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>poxclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module poxclidriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html"
- >PoxCliDriver</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator.remotemininetdriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator.remotemininetdriver-module.html
deleted file mode 100644
index 0581459..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulator.remotemininetdriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>remotemininetdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module remotemininetdriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html"
- >RemoteMininetDriver</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulatordriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulatordriver-module.html
deleted file mode 100644
index 946a0be..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.emulatordriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>emulatordriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module emulatordriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html"
- >Emulator</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.onosclidriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.onosclidriver-module.html
deleted file mode 100644
index 50a181c..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.onosclidriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>onosclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module onosclidriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html"
- >OnosCliDriver</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.onosdriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.onosdriver-module.html
deleted file mode 100644
index 1905476..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.onosdriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>onosdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module onosdriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html"
- >OnosDriver</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.quaggaclidriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.quaggaclidriver-module.html
deleted file mode 100644
index 9550ed1..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.quaggaclidriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>quaggaclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module quaggaclidriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html"
- >QuaggaCliDriver</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotesys-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotesys-module.html
deleted file mode 100644
index 77d9590..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotesys-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>remotesys</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module remotesys</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.remotesys-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotesysdriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotesysdriver-module.html
deleted file mode 100644
index f7d4419..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotesysdriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>remotesysdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module remotesysdriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html"
- >RemoteSysDriver</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbed-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbed-module.html
deleted file mode 100644
index 05d2171..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbed-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>remotetestbed</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module remotetestbed</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.remotetestbed-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html
deleted file mode 100644
index d2c213e..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>floodlightclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module floodlightclidriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html"
- >FloodLightCliDriver</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html
deleted file mode 100644
index fbd85a3..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>necswitchdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module necswitchdriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html"
- >NEC</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html
deleted file mode 100644
index 2331cd0..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>remotepoxdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module remotepoxdriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html"
- >RemotePoxDriver</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html
deleted file mode 100644
index 9038b6e..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>remotevmdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module remotevmdriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html"
- >RemoteVMDriver</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbeddriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbeddriver-module.html
deleted file mode 100644
index 9c2f32b..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.remotetestbeddriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>remotetestbeddriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module remotetestbeddriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html"
- >RemoteTestBedDriver</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.tool-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.tool-module.html
deleted file mode 100644
index cabfce6..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.tool-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>tool</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module tool</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.tool-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.tool.dpctlclidriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.tool.dpctlclidriver-module.html
deleted file mode 100644
index ed0068a..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.tool.dpctlclidriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>dpctlclidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module dpctlclidriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html"
- >DpctlCliDriver</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.toolsdriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.toolsdriver-module.html
deleted file mode 100644
index b88bcca..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.cli.toolsdriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>toolsdriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module toolsdriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.cli.toolsdriver.Tools-class.html"
- >Tools</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.clidriver-module.html b/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.clidriver-module.html
deleted file mode 100644
index 8295cde..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.drivers.common.clidriver-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>clidriver</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module clidriver</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.drivers.common.clidriver.CLI-class.html"
- >CLI</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.examples-module.html b/TestON/Documentation/TestON_Document/toc-TestON.examples-module.html
deleted file mode 100644
index a812b31..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.examples-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>examples</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module examples</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.examples-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.examples.Assert-module.html b/TestON/Documentation/TestON_Document/toc-TestON.examples.Assert-module.html
deleted file mode 100644
index b6d616f..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.examples.Assert-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Assert</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module Assert</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.examples.Assert-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.examples.Assert.Assert-module.html b/TestON/Documentation/TestON_Document/toc-TestON.examples.Assert.Assert-module.html
deleted file mode 100644
index 439019e..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.examples.Assert.Assert-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Assert</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module Assert</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.examples.Assert.Assert.Assert-class.html"
- >Assert</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.examples.Assert.Assert-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.examples.CaseParams-module.html b/TestON/Documentation/TestON_Document/toc-TestON.examples.CaseParams-module.html
deleted file mode 100644
index 6ec36cb..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.examples.CaseParams-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>CaseParams</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module CaseParams</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.examples.CaseParams-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.examples.CaseParams.CaseParams-module.html b/TestON/Documentation/TestON_Document/toc-TestON.examples.CaseParams.CaseParams-module.html
deleted file mode 100644
index 0922876..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.examples.CaseParams.CaseParams-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>CaseParams</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module CaseParams</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.examples.CaseParams.CaseParams.CaseParams-class.html"
- >CaseParams</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.examples.CaseParams.CaseParams-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.examples.ExperimentTest-module.html b/TestON/Documentation/TestON_Document/toc-TestON.examples.ExperimentTest-module.html
deleted file mode 100644
index af20c36..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.examples.ExperimentTest-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>ExperimentTest</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module ExperimentTest</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.examples.ExperimentTest-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.examples.ExperimentTest.ExperimentTest-module.html b/TestON/Documentation/TestON_Document/toc-TestON.examples.ExperimentTest.ExperimentTest-module.html
deleted file mode 100644
index 52ae0d9..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.examples.ExperimentTest.ExperimentTest-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>ExperimentTest</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module ExperimentTest</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html"
- >ExperimentTest</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.examples.ExperimentTest.ExperimentTest-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.examples.StepParams-module.html b/TestON/Documentation/TestON_Document/toc-TestON.examples.StepParams-module.html
deleted file mode 100644
index af76676..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.examples.StepParams-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>StepParams</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module StepParams</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.examples.StepParams-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.examples.StepParams.StepParams-module.html b/TestON/Documentation/TestON_Document/toc-TestON.examples.StepParams.StepParams-module.html
deleted file mode 100644
index 9559b4d..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.examples.StepParams.StepParams-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>StepParams</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module StepParams</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.examples.StepParams.StepParams.StepParams-class.html"
- >StepParams</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.examples.StepParams.StepParams-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.examples.Topology-module.html b/TestON/Documentation/TestON_Document/toc-TestON.examples.Topology-module.html
deleted file mode 100644
index a64bf44..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.examples.Topology-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Topology</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module Topology</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.examples.Topology-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.examples.Topology.Topology-module.html b/TestON/Documentation/TestON_Document/toc-TestON.examples.Topology.Topology-module.html
deleted file mode 100644
index 7c1cf2e..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.examples.Topology.Topology-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Topology</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module Topology</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.examples.Topology.Topology.Topology-class.html"
- >Topology</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.examples.Topology.Topology-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.lib-module.html b/TestON/Documentation/TestON_Document/toc-TestON.lib-module.html
deleted file mode 100644
index aee63d3..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.lib-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>lib</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module lib</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.lib-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests-module.html
deleted file mode 100644
index 5b40044..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>tests</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module tests</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.CHOtest-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.CHOtest-module.html
deleted file mode 100644
index 5bede73..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.CHOtest-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>CHOtest</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module CHOtest</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.CHOtest-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.CHOtest.CHOtest-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.CHOtest.CHOtest-module.html
deleted file mode 100644
index 3f8bd41..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.CHOtest.CHOtest-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>CHOtest</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module CHOtest</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html"
- >CHOtest</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.CHOtest.CHOtest-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.FUNCintent-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.FUNCintent-module.html
deleted file mode 100644
index c7fb0c4..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.FUNCintent-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>FUNCintent</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module FUNCintent</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.FUNCintent-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.FUNCintent.FUNCintent-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.FUNCintent.FUNCintent-module.html
deleted file mode 100644
index 00fd295..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.FUNCintent.FUNCintent-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>FUNCintent</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module FUNCintent</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html"
- >FUNCintent</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.FUNCintent.FUNCintent-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAclusterRestart-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAclusterRestart-module.html
deleted file mode 100644
index 452f537..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAclusterRestart-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>HAclusterRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module HAclusterRestart</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAclusterRestart-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAclusterRestart.HAclusterRestart-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAclusterRestart.HAclusterRestart-module.html
deleted file mode 100644
index 1b1d060..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAclusterRestart.HAclusterRestart-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>HAclusterRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module HAclusterRestart</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html"
- >HAclusterRestart</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAclusterRestart.HAclusterRestart-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAclusterRestart.dependencies-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAclusterRestart.dependencies-module.html
deleted file mode 100644
index d3332b7..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAclusterRestart.dependencies-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>dependencies</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module dependencies</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAclusterRestart.dependencies-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAclusterRestart.dependencies.Counters-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAclusterRestart.dependencies.Counters-module.html
deleted file mode 100644
index b6e8d97..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAclusterRestart.dependencies.Counters-module.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Counters</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module Counters</h1>
-<hr />
- <h2 class="toc">Functions</h2>
- <a target="mainFrame" href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__"
- >__init__</a><br /> <a target="mainFrame" href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html#counterCheck"
- >counterCheck</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAclusterRestart.dependencies.obelisk-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAclusterRestart.dependencies.obelisk-module.html
deleted file mode 100644
index 803867a..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAclusterRestart.dependencies.obelisk-module.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>obelisk</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module obelisk</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html"
- >ObeliskTopo</a><br /> <h2 class="toc">Functions</h2>
- <a target="mainFrame" href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#run"
- >run</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#__package__"
- >__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#topos"
- >topos</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAminorityRestart-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAminorityRestart-module.html
deleted file mode 100644
index c89ac28..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAminorityRestart-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>HAminorityRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module HAminorityRestart</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAminorityRestart-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAminorityRestart.HAminorityRestart-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAminorityRestart.HAminorityRestart-module.html
deleted file mode 100644
index de0ff87..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAminorityRestart.HAminorityRestart-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>HAminorityRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module HAminorityRestart</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html"
- >HAminorityRestart</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAminorityRestart.HAminorityRestart-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAminorityRestart.dependencies-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAminorityRestart.dependencies-module.html
deleted file mode 100644
index 01ce5c6..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAminorityRestart.dependencies-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>dependencies</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module dependencies</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAminorityRestart.dependencies-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAminorityRestart.dependencies.Counters-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAminorityRestart.dependencies.Counters-module.html
deleted file mode 100644
index 4e3efc8..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAminorityRestart.dependencies.Counters-module.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Counters</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module Counters</h1>
-<hr />
- <h2 class="toc">Functions</h2>
- <a target="mainFrame" href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__"
- >__init__</a><br /> <a target="mainFrame" href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html#counterCheck"
- >counterCheck</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAminorityRestart.dependencies.obelisk-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAminorityRestart.dependencies.obelisk-module.html
deleted file mode 100644
index a533bf0..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAminorityRestart.dependencies.obelisk-module.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>obelisk</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module obelisk</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html"
- >ObeliskTopo</a><br /> <h2 class="toc">Functions</h2>
- <a target="mainFrame" href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#run"
- >run</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#__package__"
- >__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#topos"
- >topos</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsanity-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsanity-module.html
deleted file mode 100644
index fff5872..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsanity-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>HAsanity</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module HAsanity</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAsanity-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsanity.HAsanity-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsanity.HAsanity-module.html
deleted file mode 100644
index 6845520..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsanity.HAsanity-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>HAsanity</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module HAsanity</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html"
- >HAsanity</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAsanity.HAsanity-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsanity.dependencies-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsanity.dependencies-module.html
deleted file mode 100644
index f05bf4a..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsanity.dependencies-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>dependencies</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module dependencies</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAsanity.dependencies-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsanity.dependencies.Counters-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsanity.dependencies.Counters-module.html
deleted file mode 100644
index 8885be9..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsanity.dependencies.Counters-module.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Counters</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module Counters</h1>
-<hr />
- <h2 class="toc">Functions</h2>
- <a target="mainFrame" href="TestON.tests.HAsanity.dependencies.Counters-module.html#__init__"
- >__init__</a><br /> <a target="mainFrame" href="TestON.tests.HAsanity.dependencies.Counters-module.html#counterCheck"
- >counterCheck</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAsanity.dependencies.Counters-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsanity.dependencies.obelisk-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsanity.dependencies.obelisk-module.html
deleted file mode 100644
index f03fe94..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsanity.dependencies.obelisk-module.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>obelisk</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module obelisk</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html"
- >ObeliskTopo</a><br /> <h2 class="toc">Functions</h2>
- <a target="mainFrame" href="TestON.tests.HAsanity.dependencies.obelisk-module.html#run"
- >run</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAsanity.dependencies.obelisk-module.html#__package__"
- >__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAsanity.dependencies.obelisk-module.html#topos"
- >topos</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsingleInstanceRestart-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsingleInstanceRestart-module.html
deleted file mode 100644
index 41db1a2..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsingleInstanceRestart-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>HAsingleInstanceRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module HAsingleInstanceRestart</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html
deleted file mode 100644
index 1aa793b..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>HAsingleInstanceRestart</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module HAsingleInstanceRestart</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html"
- >HAsingleInstanceRestart</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsingleInstanceRestart.dependencies-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsingleInstanceRestart.dependencies-module.html
deleted file mode 100644
index 788dac1..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsingleInstanceRestart.dependencies-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>dependencies</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module dependencies</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html
deleted file mode 100644
index a13c880..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Counters</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module Counters</h1>
-<hr />
- <h2 class="toc">Functions</h2>
- <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__"
- >__init__</a><br /> <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#counterCheck"
- >counterCheck</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html
deleted file mode 100644
index b00fff2..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>obelisk</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module obelisk</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html"
- >ObeliskTopo</a><br /> <h2 class="toc">Functions</h2>
- <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#run"
- >run</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#__package__"
- >__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#topos"
- >topos</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SAMPscaleTopo-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SAMPscaleTopo-module.html
deleted file mode 100644
index 61f8a0d..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SAMPscaleTopo-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SAMPscaleTopo</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SAMPscaleTopo</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SAMPscaleTopo-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html
deleted file mode 100644
index 0103df4..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SAMPscaleTopo</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SAMPscaleTopo</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html"
- >SAMPscaleTopo</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SAMPstartTemplate-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SAMPstartTemplate-module.html
deleted file mode 100644
index 9ec9e97..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SAMPstartTemplate-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SAMPstartTemplate</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SAMPstartTemplate</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SAMPstartTemplate-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html
deleted file mode 100644
index 5b1070b..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SAMPstartTemplate</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SAMPstartTemplate</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html"
- >SAMPstartTemplate</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFcbench-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFcbench-module.html
deleted file mode 100644
index ae5ad96..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFcbench-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SCPFcbench</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SCPFcbench</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SCPFcbench-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFcbench.SCPFcbench-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFcbench.SCPFcbench-module.html
deleted file mode 100644
index 8db18dc..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFcbench.SCPFcbench-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SCPFcbench</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SCPFcbench</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html"
- >SCPFcbench</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SCPFcbench.SCPFcbench-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFflowTp1g-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFflowTp1g-module.html
deleted file mode 100644
index 464bb54..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFflowTp1g-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SCPFflowTp1g</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SCPFflowTp1g</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SCPFflowTp1g-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html
deleted file mode 100644
index 56f016f..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SCPFflowTp1g</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SCPFflowTp1g</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html"
- >SCPFflowTp1g</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentEventTp-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentEventTp-module.html
deleted file mode 100644
index 8f56638..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentEventTp-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SCPFintentEventTp</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SCPFintentEventTp</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SCPFintentEventTp-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html
deleted file mode 100644
index 12e4ba8..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SCPFintentEventTp</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SCPFintentEventTp</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html"
- >SCPFintentEventTp</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentInstallWithdrawLat-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentInstallWithdrawLat-module.html
deleted file mode 100644
index b9ece54..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentInstallWithdrawLat-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SCPFintentInstallWithdrawLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SCPFintentInstallWithdrawLat</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SCPFintentInstallWithdrawLat-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html
deleted file mode 100644
index 382b326..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SCPFintentInstallWithdrawLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SCPFintentInstallWithdrawLat</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html"
- >SCPFintentInstallWithdrawLat</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentRerouteLat-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentRerouteLat-module.html
deleted file mode 100644
index dbe1351..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentRerouteLat-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SCPFintentRerouteLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SCPFintentRerouteLat</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SCPFintentRerouteLat-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html
deleted file mode 100644
index ed47725..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SCPFintentRerouteLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SCPFintentRerouteLat</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html"
- >SCPFintentRerouteLat</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFportLat-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFportLat-module.html
deleted file mode 100644
index 0b2d83c..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFportLat-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SCPFportLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SCPFportLat</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SCPFportLat-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFportLat.SCPFportLat-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFportLat.SCPFportLat-module.html
deleted file mode 100644
index ef3c717..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFportLat.SCPFportLat-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SCPFportLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SCPFportLat</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html"
- >SCPFportLat</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SCPFportLat.SCPFportLat-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFswitchLat-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFswitchLat-module.html
deleted file mode 100644
index 7fd36a7..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFswitchLat-module.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SCPFswitchLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SCPFswitchLat</h1>
-<hr />
- <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SCPFswitchLat-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html b/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html
deleted file mode 100644
index fa595fb..0000000
--- a/TestON/Documentation/TestON_Document/toc-TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>SCPFswitchLat</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module SCPFswitchLat</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html"
- >SCPFswitchLat</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html#__package__"
- >__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc-everything.html b/TestON/Documentation/TestON_Document/toc-everything.html
deleted file mode 100644
index 01cd17f..0000000
--- a/TestON/Documentation/TestON_Document/toc-everything.html
+++ /dev/null
@@ -1,279 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Everything</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Everything</h1>
-<hr />
- <h2 class="toc">All Classes</h2>
- <a target="mainFrame" href="TestON.bin.cli.CLI-class.html"
- >TestON.bin.cli.CLI</a><br /> <a target="mainFrame" href="TestON.bin.cli.TestThread-class.html"
- >TestON.bin.cli.TestThread</a><br /> <a target="mainFrame" href="TestON.bin.generatedriver.GenerateDriver-class.html"
- >TestON.bin.generatedriver.GenerateDriver</a><br /> <a target="mainFrame" href="TestON.bin.nec.NEC-class.html"
- >TestON.bin.nec.NEC</a><br /> <a target="mainFrame" href="TestON.bin.updatedriver.UpdateDriver-class.html"
- >TestON.bin.updatedriver.UpdateDriver</a><br /> <a target="mainFrame" href="TestON.bin.vyatta.Vyatta-class.html"
- >TestON.bin.vyatta.Vyatta</a><br /> <a target="mainFrame" href="TestON.core.Thread.Thread-class.html"
- >TestON.core.Thread.Thread</a><br /> <a target="mainFrame" href="TestON.core.ast.NodeTransformer-class.html"
- >TestON.core.ast.NodeTransformer</a><br /> <a target="mainFrame" href="TestON.core.ast.NodeVisitor-class.html"
- >TestON.core.ast.NodeVisitor</a><br /> <a target="mainFrame" href="TestON.core.dicttoobject.DictToObject-class.html"
- >TestON.core.dicttoobject.DictToObject</a><br /> <a target="mainFrame" href="TestON.core.iniparser.iniparser-class.html"
- >TestON.core.iniparser.iniparser</a><br /> <a target="mainFrame" href="TestON.core.jsonparser.JsonParser-class.html"
- >TestON.core.jsonparser.JsonParser</a><br /> <a target="mainFrame" href="TestON.core.logger.Logger-class.html"
- >TestON.core.logger.Logger</a><br /> <a target="mainFrame" href="TestON.core.openspeak.OpenSpeak-class.html"
- >TestON.core.openspeak.OpenSpeak</a><br /> <a target="mainFrame" href="TestON.core.teston.TestON-class.html"
- >TestON.core.teston.TestON</a><br /> <a target="mainFrame" href="TestON.core.testparser.TestParser-class.html"
- >TestON.core.testparser.TestParser</a><br /> <a target="mainFrame" href="TestON.core.xmlparser.xmlparser-class.html"
- >TestON.core.xmlparser.xmlparser</a><br /> <a target="mainFrame" href="TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver-class.html"
- >TestON.drivers.common.api.controller.onosrestdriver.OnosRestDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.api.controllerdriver.Controller-class.html"
- >TestON.drivers.common.api.controllerdriver.Controller</a><br /> <a target="mainFrame" href="TestON.drivers.common.api.fvtapidriver.FvtApiDriver-class.html"
- >TestON.drivers.common.api.fvtapidriver.FvtApiDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.apidriver.API-class.html"
- >TestON.drivers.common.apidriver.API</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.dpclidriver.DPCliDriver-class.html"
- >TestON.drivers.common.cli.dpclidriver.DPCliDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver-class.html"
- >TestON.drivers.common.cli.emulator.flowvisordriver.FlowVisorDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver-class.html"
- >TestON.drivers.common.cli.emulator.lincoedriver.LincOEDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver-class.html"
- >TestON.drivers.common.cli.emulator.mininetclidriver.MininetCliDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver-class.html"
- >TestON.drivers.common.cli.emulator.poxclidriver.PoxCliDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver-class.html"
- >TestON.drivers.common.cli.emulator.remotemininetdriver.RemoteMininetDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.emulatordriver.Emulator-class.html"
- >TestON.drivers.common.cli.emulatordriver.Emulator</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.onosclidriver.OnosCliDriver-class.html"
- >TestON.drivers.common.cli.onosclidriver.OnosCliDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.onosdriver.OnosDriver-class.html"
- >TestON.drivers.common.cli.onosdriver.OnosDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver-class.html"
- >TestON.drivers.common.cli.quaggaclidriver.QuaggaCliDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver-class.html"
- >TestON.drivers.common.cli.remotesysdriver.RemoteSysDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver-class.html"
- >TestON.drivers.common.cli.remotetestbed.floodlightclidriver.FloodLightCliDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC-class.html"
- >TestON.drivers.common.cli.remotetestbed.necswitchdriver.NEC</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver-class.html"
- >TestON.drivers.common.cli.remotetestbed.remotepoxdriver.RemotePoxDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver-class.html"
- >TestON.drivers.common.cli.remotetestbed.remotevmdriver.RemoteVMDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver-class.html"
- >TestON.drivers.common.cli.remotetestbeddriver.RemoteTestBedDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver-class.html"
- >TestON.drivers.common.cli.tool.dpctlclidriver.DpctlCliDriver</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.toolsdriver.Tools-class.html"
- >TestON.drivers.common.cli.toolsdriver.Tools</a><br /> <a target="mainFrame" href="TestON.drivers.common.clidriver.CLI-class.html"
- >TestON.drivers.common.clidriver.CLI</a><br /> <a target="mainFrame" href="TestON.examples.Assert.Assert.Assert-class.html"
- >TestON.examples.Assert.Assert.Assert</a><br /> <a target="mainFrame" href="TestON.examples.CaseParams.CaseParams.CaseParams-class.html"
- >TestON.examples.CaseParams.CaseParams.CaseParams</a><br /> <a target="mainFrame" href="TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest-class.html"
- >TestON.examples.ExperimentTest.ExperimentTest.ExperimentTest</a><br /> <a target="mainFrame" href="TestON.examples.StepParams.StepParams.StepParams-class.html"
- >TestON.examples.StepParams.StepParams.StepParams</a><br /> <a target="mainFrame" href="TestON.examples.Topology.Topology.Topology-class.html"
- >TestON.examples.Topology.Topology.Topology</a><br /> <a target="mainFrame" href="TestON.tests.CHOtest.CHOtest.CHOtest-class.html"
- >TestON.tests.CHOtest.CHOtest.CHOtest</a><br /> <a target="mainFrame" href="TestON.tests.FUNCintent.FUNCintent.FUNCintent-class.html"
- >TestON.tests.FUNCintent.FUNCintent.FUNCintent</a><br /> <a target="mainFrame" href="TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart-class.html"
- >TestON.tests.HAclusterRestart.HAclusterRestart.HAclusterRestart</a><br /> <a target="mainFrame" href="TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo-class.html"
- >TestON.tests.HAclusterRestart.dependencies.obelisk.ObeliskTopo</a><br /> <a target="mainFrame" href="TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart-class.html"
- >TestON.tests.HAminorityRestart.HAminorityRestart.HAminorityRestart</a><br /> <a target="mainFrame" href="TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo-class.html"
- >TestON.tests.HAminorityRestart.dependencies.obelisk.ObeliskTopo</a><br /> <a target="mainFrame" href="TestON.tests.HAsanity.HAsanity.HAsanity-class.html"
- >TestON.tests.HAsanity.HAsanity.HAsanity</a><br /> <a target="mainFrame" href="TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo-class.html"
- >TestON.tests.HAsanity.dependencies.obelisk.ObeliskTopo</a><br /> <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart-class.html"
- >TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.HAsingleInstanceRestart</a><br /> <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo-class.html"
- >TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.ObeliskTopo</a><br /> <a target="mainFrame" href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo-class.html"
- >TestON.tests.SAMPscaleTopo.SAMPscaleTopo.SAMPscaleTopo</a><br /> <a target="mainFrame" href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate-class.html"
- >TestON.tests.SAMPstartTemplate.SAMPstartTemplate.SAMPstartTemplate</a><br /> <a target="mainFrame" href="TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench-class.html"
- >TestON.tests.SCPFcbench.SCPFcbench.SCPFcbench</a><br /> <a target="mainFrame" href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g-class.html"
- >TestON.tests.SCPFflowTp1g.SCPFflowTp1g.SCPFflowTp1g</a><br /> <a target="mainFrame" href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp-class.html"
- >TestON.tests.SCPFintentEventTp.SCPFintentEventTp.SCPFintentEventTp</a><br /> <a target="mainFrame" href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-class.html"
- >TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat</a><br /> <a target="mainFrame" href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat-class.html"
- >TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.SCPFintentRerouteLat</a><br /> <a target="mainFrame" href="TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat-class.html"
- >TestON.tests.SCPFportLat.SCPFportLat.SCPFportLat</a><br /> <a target="mainFrame" href="TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat-class.html"
- >TestON.tests.SCPFswitchLat.SCPFswitchLat.SCPFswitchLat</a><br /> <h2 class="toc">All Functions</h2>
- <a target="mainFrame" href="TestON.bin.cli-module.html#dictToObj"
- >TestON.bin.cli.dictToObj</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#error"
- >TestON.bin.cli.error</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#output"
- >TestON.bin.cli.output</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#copy_location"
- >TestON.core.ast.copy_location</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#dump"
- >TestON.core.ast.dump</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#fix_missing_locations"
- >TestON.core.ast.fix_missing_locations</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#get_docstring"
- >TestON.core.ast.get_docstring</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#increment_lineno"
- >TestON.core.ast.increment_lineno</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#iter_child_nodes"
- >TestON.core.ast.iter_child_nodes</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#iter_fields"
- >TestON.core.ast.iter_fields</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#literal_eval"
- >TestON.core.ast.literal_eval</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#parse"
- >TestON.core.ast.parse</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#walk"
- >TestON.core.ast.walk</a><br /> <div class="private">
- <a target="mainFrame" href="TestON.core.teston-module.html#_echo"
- >TestON.core.teston._echo</a><br /> </div>
- <a target="mainFrame" href="TestON.core.teston-module.html#load_defaultParser"
- >TestON.core.teston.load_defaultParser</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#load_defaultlogger"
- >TestON.core.teston.load_defaultlogger</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#load_logger"
- >TestON.core.teston.load_logger</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#load_parser"
- >TestON.core.teston.load_parser</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyExample"
- >TestON.core.teston.verifyExample</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyLogdir"
- >TestON.core.teston.verifyLogdir</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyMail"
- >TestON.core.teston.verifyMail</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyOnosCell"
- >TestON.core.teston.verifyOnosCell</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyOptions"
- >TestON.core.teston.verifyOptions</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyParams"
- >TestON.core.teston.verifyParams</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyTest"
- >TestON.core.teston.verifyTest</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyTestCases"
- >TestON.core.teston.verifyTestCases</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#verifyTestScript"
- >TestON.core.teston.verifyTestScript</a><br /> <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_dict_from_xml"
- >TestON.core.xmldict._dict_from_xml</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_dict_to_xml"
- >TestON.core.xmldict._dict_to_xml</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_extract_attrs"
- >TestON.core.xmldict._extract_attrs</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_from_xml"
- >TestON.core.xmldict._from_xml</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_is_xml_el_dict"
- >TestON.core.xmldict._is_xml_el_dict</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_is_xml_el_list"
- >TestON.core.xmldict._is_xml_el_list</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_list_from_xml"
- >TestON.core.xmldict._list_from_xml</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_str_to_boolean"
- >TestON.core.xmldict._str_to_boolean</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_str_to_datetime"
- >TestON.core.xmldict._str_to_datetime</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_to_xml"
- >TestON.core.xmldict._to_xml</a><br /> </div>
- <div class="private">
- <a target="mainFrame" href="TestON.core.xmldict-module.html#_val_and_maybe_convert"
- >TestON.core.xmldict._val_and_maybe_convert</a><br /> </div>
- <a target="mainFrame" href="TestON.core.xmldict-module.html#dict_to_xml"
- >TestON.core.xmldict.dict_to_xml</a><br /> <a target="mainFrame" href="TestON.core.xmldict-module.html#xml_to_dict"
- >TestON.core.xmldict.xml_to_dict</a><br /> <a target="mainFrame" href="TestON.drivers.common.api.fvtapidriver-module.html#test_set_init"
- >TestON.drivers.common.api.fvtapidriver.test_set_init</a><br /> <a target="mainFrame" href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__init__"
- >TestON.tests.HAclusterRestart.dependencies.Counters.__init__</a><br /> <a target="mainFrame" href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html#counterCheck"
- >TestON.tests.HAclusterRestart.dependencies.Counters.counterCheck</a><br /> <a target="mainFrame" href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#run"
- >TestON.tests.HAclusterRestart.dependencies.obelisk.run</a><br /> <a target="mainFrame" href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__init__"
- >TestON.tests.HAminorityRestart.dependencies.Counters.__init__</a><br /> <a target="mainFrame" href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html#counterCheck"
- >TestON.tests.HAminorityRestart.dependencies.Counters.counterCheck</a><br /> <a target="mainFrame" href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#run"
- >TestON.tests.HAminorityRestart.dependencies.obelisk.run</a><br /> <a target="mainFrame" href="TestON.tests.HAsanity.dependencies.Counters-module.html#__init__"
- >TestON.tests.HAsanity.dependencies.Counters.__init__</a><br /> <a target="mainFrame" href="TestON.tests.HAsanity.dependencies.Counters-module.html#counterCheck"
- >TestON.tests.HAsanity.dependencies.Counters.counterCheck</a><br /> <a target="mainFrame" href="TestON.tests.HAsanity.dependencies.obelisk-module.html#run"
- >TestON.tests.HAsanity.dependencies.obelisk.run</a><br /> <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__init__"
- >TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__init__</a><br /> <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#counterCheck"
- >TestON.tests.HAsingleInstanceRestart.dependencies.Counters.counterCheck</a><br /> <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#run"
- >TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.run</a><br /> <h2 class="toc">All Variables</h2>
- <a target="mainFrame" href="TestON-module.html#__package__"
- >TestON.__package__</a><br /> <a target="mainFrame" href="TestON.bin-module.html#__package__"
- >TestON.bin.__package__</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#__package__"
- >TestON.bin.cli.__package__</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#config_path"
- >TestON.bin.cli.config_path</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#core_path"
- >TestON.bin.cli.core_path</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#drivers_path"
- >TestON.bin.cli.drivers_path</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#dump"
- >TestON.bin.cli.dump</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#introduction"
- >TestON.bin.cli.introduction</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#location"
- >TestON.bin.cli.location</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#logs_path"
- >TestON.bin.cli.logs_path</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#path"
- >TestON.bin.cli.path</a><br /> <a target="mainFrame" href="TestON.bin.cli-module.html#tests_path"
- >TestON.bin.cli.tests_path</a><br /> <a target="mainFrame" href="TestON.bin.generatedriver-module.html#__package__"
- >TestON.bin.generatedriver.__package__</a><br /> <a target="mainFrame" href="TestON.bin.nec-module.html#__package__"
- >TestON.bin.nec.__package__</a><br /> <a target="mainFrame" href="TestON.bin.updatedriver-module.html#__package__"
- >TestON.bin.updatedriver.__package__</a><br /> <a target="mainFrame" href="TestON.bin.vyatta-module.html#__package__"
- >TestON.bin.vyatta.__package__</a><br /> <a target="mainFrame" href="TestON.core.Thread-module.html#__package__"
- >TestON.core.Thread.__package__</a><br /> <a target="mainFrame" href="TestON.core-module.html#__package__"
- >TestON.core.__package__</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#PyCF_ONLY_AST"
- >TestON.core.ast.PyCF_ONLY_AST</a><br /> <a target="mainFrame" href="TestON.core.ast-module.html#__package__"
- >TestON.core.ast.__package__</a><br /> <a target="mainFrame" href="TestON.core.dicttoobject-module.html#__package__"
- >TestON.core.dicttoobject.__package__</a><br /> <a target="mainFrame" href="TestON.core.iniparser-module.html#__package__"
- >TestON.core.iniparser.__package__</a><br /> <a target="mainFrame" href="TestON.core.jsonparser-module.html#__package__"
- >TestON.core.jsonparser.__package__</a><br /> <a target="mainFrame" href="TestON.core.logger-module.html#__package__"
- >TestON.core.logger.__package__</a><br /> <a target="mainFrame" href="TestON.core.openspeak-module.html#__package__"
- >TestON.core.openspeak.__package__</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#__package__"
- >TestON.core.teston.__package__</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#config_path"
- >TestON.core.teston.config_path</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#core_path"
- >TestON.core.teston.core_path</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#drivers_path"
- >TestON.core.teston.drivers_path</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#location"
- >TestON.core.teston.location</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#logs_path"
- >TestON.core.teston.logs_path</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#path"
- >TestON.core.teston.path</a><br /> <a target="mainFrame" href="TestON.core.teston-module.html#tests_path"
- >TestON.core.teston.tests_path</a><br /> <a target="mainFrame" href="TestON.core.testparser-module.html#__package__"
- >TestON.core.testparser.__package__</a><br /> <a target="mainFrame" href="TestON.core.xmldict-module.html#__package__"
- >TestON.core.xmldict.__package__</a><br /> <a target="mainFrame" href="TestON.core.xmlparser-module.html#__package__"
- >TestON.core.xmlparser.__package__</a><br /> <a target="mainFrame" href="TestON.drivers-module.html#__package__"
- >TestON.drivers.__package__</a><br /> <a target="mainFrame" href="TestON.drivers.common-module.html#__package__"
- >TestON.drivers.common.__package__</a><br /> <a target="mainFrame" href="TestON.drivers.common.api-module.html#__package__"
- >TestON.drivers.common.api.__package__</a><br /> <a target="mainFrame" href="TestON.drivers.common.api.controller-module.html#__package__"
- >TestON.drivers.common.api.controller.__package__</a><br /> <a target="mainFrame" href="TestON.drivers.common.api.fvtapidriver-module.html#config_default"
- >TestON.drivers.common.api.fvtapidriver.config_default</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli-module.html#__package__"
- >TestON.drivers.common.cli.__package__</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.emulator-module.html#__package__"
- >TestON.drivers.common.cli.emulator.__package__</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.remotesys-module.html#__package__"
- >TestON.drivers.common.cli.remotesys.__package__</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.remotetestbed-module.html#__package__"
- >TestON.drivers.common.cli.remotetestbed.__package__</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html#__package__"
- >TestON.drivers.common.cli.remotetestbed.necswitchdriver.__package__</a><br /> <a target="mainFrame" href="TestON.drivers.common.cli.tool-module.html#__package__"
- >TestON.drivers.common.cli.tool.__package__</a><br /> <a target="mainFrame" href="TestON.examples.Assert.Assert-module.html#__package__"
- >TestON.examples.Assert.Assert.__package__</a><br /> <a target="mainFrame" href="TestON.examples.Assert-module.html#__package__"
- >TestON.examples.Assert.__package__</a><br /> <a target="mainFrame" href="TestON.examples.CaseParams.CaseParams-module.html#__package__"
- >TestON.examples.CaseParams.CaseParams.__package__</a><br /> <a target="mainFrame" href="TestON.examples.CaseParams-module.html#__package__"
- >TestON.examples.CaseParams.__package__</a><br /> <a target="mainFrame" href="TestON.examples.ExperimentTest.ExperimentTest-module.html#__package__"
- >TestON.examples.ExperimentTest.ExperimentTest.__package__</a><br /> <a target="mainFrame" href="TestON.examples.ExperimentTest-module.html#__package__"
- >TestON.examples.ExperimentTest.__package__</a><br /> <a target="mainFrame" href="TestON.examples.StepParams.StepParams-module.html#__package__"
- >TestON.examples.StepParams.StepParams.__package__</a><br /> <a target="mainFrame" href="TestON.examples.StepParams-module.html#__package__"
- >TestON.examples.StepParams.__package__</a><br /> <a target="mainFrame" href="TestON.examples.Topology.Topology-module.html#__package__"
- >TestON.examples.Topology.Topology.__package__</a><br /> <a target="mainFrame" href="TestON.examples.Topology-module.html#__package__"
- >TestON.examples.Topology.__package__</a><br /> <a target="mainFrame" href="TestON.examples-module.html#__package__"
- >TestON.examples.__package__</a><br /> <a target="mainFrame" href="TestON.lib-module.html#__package__"
- >TestON.lib.__package__</a><br /> <a target="mainFrame" href="TestON.tests.CHOtest.CHOtest-module.html#__package__"
- >TestON.tests.CHOtest.CHOtest.__package__</a><br /> <a target="mainFrame" href="TestON.tests.CHOtest-module.html#__package__"
- >TestON.tests.CHOtest.__package__</a><br /> <a target="mainFrame" href="TestON.tests.FUNCintent.FUNCintent-module.html#__package__"
- >TestON.tests.FUNCintent.FUNCintent.__package__</a><br /> <a target="mainFrame" href="TestON.tests.FUNCintent-module.html#__package__"
- >TestON.tests.FUNCintent.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAclusterRestart.HAclusterRestart-module.html#__package__"
- >TestON.tests.HAclusterRestart.HAclusterRestart.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAclusterRestart-module.html#__package__"
- >TestON.tests.HAclusterRestart.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAclusterRestart.dependencies.Counters-module.html#__package__"
- >TestON.tests.HAclusterRestart.dependencies.Counters.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAclusterRestart.dependencies-module.html#__package__"
- >TestON.tests.HAclusterRestart.dependencies.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#__package__"
- >TestON.tests.HAclusterRestart.dependencies.obelisk.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAclusterRestart.dependencies.obelisk-module.html#topos"
- >TestON.tests.HAclusterRestart.dependencies.obelisk.topos</a><br /> <a target="mainFrame" href="TestON.tests.HAminorityRestart.HAminorityRestart-module.html#__package__"
- >TestON.tests.HAminorityRestart.HAminorityRestart.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAminorityRestart-module.html#__package__"
- >TestON.tests.HAminorityRestart.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAminorityRestart.dependencies.Counters-module.html#__package__"
- >TestON.tests.HAminorityRestart.dependencies.Counters.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAminorityRestart.dependencies-module.html#__package__"
- >TestON.tests.HAminorityRestart.dependencies.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#__package__"
- >TestON.tests.HAminorityRestart.dependencies.obelisk.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAminorityRestart.dependencies.obelisk-module.html#topos"
- >TestON.tests.HAminorityRestart.dependencies.obelisk.topos</a><br /> <a target="mainFrame" href="TestON.tests.HAsanity.HAsanity-module.html#__package__"
- >TestON.tests.HAsanity.HAsanity.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAsanity-module.html#__package__"
- >TestON.tests.HAsanity.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAsanity.dependencies.Counters-module.html#__package__"
- >TestON.tests.HAsanity.dependencies.Counters.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAsanity.dependencies-module.html#__package__"
- >TestON.tests.HAsanity.dependencies.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAsanity.dependencies.obelisk-module.html#__package__"
- >TestON.tests.HAsanity.dependencies.obelisk.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAsanity.dependencies.obelisk-module.html#topos"
- >TestON.tests.HAsanity.dependencies.obelisk.topos</a><br /> <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html#__package__"
- >TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart-module.html#__package__"
- >TestON.tests.HAsingleInstanceRestart.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html#__package__"
- >TestON.tests.HAsingleInstanceRestart.dependencies.Counters.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.dependencies-module.html#__package__"
- >TestON.tests.HAsingleInstanceRestart.dependencies.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#__package__"
- >TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.__package__</a><br /> <a target="mainFrame" href="TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html#topos"
- >TestON.tests.HAsingleInstanceRestart.dependencies.obelisk.topos</a><br /> <a target="mainFrame" href="TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html#__package__"
- >TestON.tests.SAMPscaleTopo.SAMPscaleTopo.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SAMPscaleTopo-module.html#__package__"
- >TestON.tests.SAMPscaleTopo.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html#__package__"
- >TestON.tests.SAMPstartTemplate.SAMPstartTemplate.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SAMPstartTemplate-module.html#__package__"
- >TestON.tests.SAMPstartTemplate.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SCPFcbench.SCPFcbench-module.html#__package__"
- >TestON.tests.SCPFcbench.SCPFcbench.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SCPFcbench-module.html#__package__"
- >TestON.tests.SCPFcbench.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html#__package__"
- >TestON.tests.SCPFflowTp1g.SCPFflowTp1g.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SCPFflowTp1g-module.html#__package__"
- >TestON.tests.SCPFflowTp1g.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html#__package__"
- >TestON.tests.SCPFintentEventTp.SCPFintentEventTp.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SCPFintentEventTp-module.html#__package__"
- >TestON.tests.SCPFintentEventTp.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html#__package__"
- >TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SCPFintentInstallWithdrawLat-module.html#__package__"
- >TestON.tests.SCPFintentInstallWithdrawLat.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html#__package__"
- >TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SCPFintentRerouteLat-module.html#__package__"
- >TestON.tests.SCPFintentRerouteLat.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SCPFportLat.SCPFportLat-module.html#__package__"
- >TestON.tests.SCPFportLat.SCPFportLat.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SCPFportLat-module.html#__package__"
- >TestON.tests.SCPFportLat.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html#__package__"
- >TestON.tests.SCPFswitchLat.SCPFswitchLat.__package__</a><br /> <a target="mainFrame" href="TestON.tests.SCPFswitchLat-module.html#__package__"
- >TestON.tests.SCPFswitchLat.__package__</a><br /> <a target="mainFrame" href="TestON.tests-module.html#__package__"
- >TestON.tests.__package__</a><br /><hr />
-<span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/Documentation/TestON_Document/toc.html b/TestON/Documentation/TestON_Document/toc.html
deleted file mode 100644
index 3f54aab..0000000
--- a/TestON/Documentation/TestON_Document/toc.html
+++ /dev/null
@@ -1,138 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Table of Contents</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Table of Contents</h1>
-<hr />
- <a target="moduleFrame" href="toc-everything.html">Everything</a>
- <br />
- <h2 class="toc">Modules</h2>
- <a target="moduleFrame" href="toc-TestON-module.html"
- onclick="setFrame('toc-TestON-module.html','TestON-module.html');" >TestON</a><br /> <a target="moduleFrame" href="toc-TestON.bin-module.html"
- onclick="setFrame('toc-TestON.bin-module.html','TestON.bin-module.html');" >TestON.bin</a><br /> <a target="moduleFrame" href="toc-TestON.bin.cli-module.html"
- onclick="setFrame('toc-TestON.bin.cli-module.html','TestON.bin.cli-module.html');" >TestON.bin.cli</a><br /> <a target="moduleFrame" href="toc-TestON.bin.generatedriver-module.html"
- onclick="setFrame('toc-TestON.bin.generatedriver-module.html','TestON.bin.generatedriver-module.html');" >TestON.bin.generatedriver</a><br /> <a target="moduleFrame" href="toc-TestON.bin.nec-module.html"
- onclick="setFrame('toc-TestON.bin.nec-module.html','TestON.bin.nec-module.html');" >TestON.bin.nec</a><br /> <a target="moduleFrame" href="toc-TestON.bin.updatedriver-module.html"
- onclick="setFrame('toc-TestON.bin.updatedriver-module.html','TestON.bin.updatedriver-module.html');" >TestON.bin.updatedriver</a><br /> <a target="moduleFrame" href="toc-TestON.bin.vyatta-module.html"
- onclick="setFrame('toc-TestON.bin.vyatta-module.html','TestON.bin.vyatta-module.html');" >TestON.bin.vyatta</a><br /> <a target="moduleFrame" href="toc-TestON.core-module.html"
- onclick="setFrame('toc-TestON.core-module.html','TestON.core-module.html');" >TestON.core</a><br /> <a target="moduleFrame" href="toc-TestON.core.Thread-module.html"
- onclick="setFrame('toc-TestON.core.Thread-module.html','TestON.core.Thread-module.html');" >TestON.core.Thread</a><br /> <a target="moduleFrame" href="toc-TestON.core.ast-module.html"
- onclick="setFrame('toc-TestON.core.ast-module.html','TestON.core.ast-module.html');" >TestON.core.ast</a><br /> <a target="moduleFrame" href="toc-TestON.core.dicttoobject-module.html"
- onclick="setFrame('toc-TestON.core.dicttoobject-module.html','TestON.core.dicttoobject-module.html');" >TestON.core.dicttoobject</a><br /> <a target="moduleFrame" href="toc-TestON.core.iniparser-module.html"
- onclick="setFrame('toc-TestON.core.iniparser-module.html','TestON.core.iniparser-module.html');" >TestON.core.iniparser</a><br /> <a target="moduleFrame" href="toc-TestON.core.jsonparser-module.html"
- onclick="setFrame('toc-TestON.core.jsonparser-module.html','TestON.core.jsonparser-module.html');" >TestON.core.jsonparser</a><br /> <a target="moduleFrame" href="toc-TestON.core.logger-module.html"
- onclick="setFrame('toc-TestON.core.logger-module.html','TestON.core.logger-module.html');" >TestON.core.logger</a><br /> <a target="moduleFrame" href="toc-TestON.core.openspeak-module.html"
- onclick="setFrame('toc-TestON.core.openspeak-module.html','TestON.core.openspeak-module.html');" >TestON.core.openspeak</a><br /> <a target="moduleFrame" href="toc-TestON.core.teston-module.html"
- onclick="setFrame('toc-TestON.core.teston-module.html','TestON.core.teston-module.html');" >TestON.core.teston</a><br /> <a target="moduleFrame" href="toc-TestON.core.testparser-module.html"
- onclick="setFrame('toc-TestON.core.testparser-module.html','TestON.core.testparser-module.html');" >TestON.core.testparser</a><br /> <a target="moduleFrame" href="toc-TestON.core.xmldict-module.html"
- onclick="setFrame('toc-TestON.core.xmldict-module.html','TestON.core.xmldict-module.html');" >TestON.core.xmldict</a><br /> <a target="moduleFrame" href="toc-TestON.core.xmlparser-module.html"
- onclick="setFrame('toc-TestON.core.xmlparser-module.html','TestON.core.xmlparser-module.html');" >TestON.core.xmlparser</a><br /> <a target="moduleFrame" href="toc-TestON.drivers-module.html"
- onclick="setFrame('toc-TestON.drivers-module.html','TestON.drivers-module.html');" >TestON.drivers</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common-module.html"
- onclick="setFrame('toc-TestON.drivers.common-module.html','TestON.drivers.common-module.html');" >TestON.drivers.common</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.api-module.html"
- onclick="setFrame('toc-TestON.drivers.common.api-module.html','TestON.drivers.common.api-module.html');" >TestON.drivers.common.api</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.api.controller-module.html"
- onclick="setFrame('toc-TestON.drivers.common.api.controller-module.html','TestON.drivers.common.api.controller-module.html');" >TestON.drivers.common.api.controller</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.api.controller.onosrestdriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.api.controller.onosrestdriver-module.html','TestON.drivers.common.api.controller.onosrestdriver-module.html');" >TestON.drivers.common.api.controller.onosrestdriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.api.controllerdriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.api.controllerdriver-module.html','TestON.drivers.common.api.controllerdriver-module.html');" >TestON.drivers.common.api.controllerdriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.api.fvtapidriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.api.fvtapidriver-module.html','TestON.drivers.common.api.fvtapidriver-module.html');" >TestON.drivers.common.api.fvtapidriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.apidriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.apidriver-module.html','TestON.drivers.common.apidriver-module.html');" >TestON.drivers.common.apidriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli-module.html','TestON.drivers.common.cli-module.html');" >TestON.drivers.common.cli</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.dpclidriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.dpclidriver-module.html','TestON.drivers.common.cli.dpclidriver-module.html');" >TestON.drivers.common.cli.dpclidriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.emulator-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.emulator-module.html','TestON.drivers.common.cli.emulator-module.html');" >TestON.drivers.common.cli.emulator</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.emulator.flowvisordriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.emulator.flowvisordriver-module.html','TestON.drivers.common.cli.emulator.flowvisordriver-module.html');" >TestON.drivers.common.cli.emulator.flowvisordriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.emulator.lincoedriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.emulator.lincoedriver-module.html','TestON.drivers.common.cli.emulator.lincoedriver-module.html');" >TestON.drivers.common.cli.emulator.lincoedriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.emulator.mininetclidriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.emulator.mininetclidriver-module.html','TestON.drivers.common.cli.emulator.mininetclidriver-module.html');" >TestON.drivers.common.cli.emulator.mininetclidriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.emulator.poxclidriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.emulator.poxclidriver-module.html','TestON.drivers.common.cli.emulator.poxclidriver-module.html');" >TestON.drivers.common.cli.emulator.poxclidriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.emulator.remotemininetdriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.emulator.remotemininetdriver-module.html','TestON.drivers.common.cli.emulator.remotemininetdriver-module.html');" >TestON.drivers.common.cli.emulator.remotemininetdriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.emulatordriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.emulatordriver-module.html','TestON.drivers.common.cli.emulatordriver-module.html');" >TestON.drivers.common.cli.emulatordriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.onosclidriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.onosclidriver-module.html','TestON.drivers.common.cli.onosclidriver-module.html');" >TestON.drivers.common.cli.onosclidriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.onosdriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.onosdriver-module.html','TestON.drivers.common.cli.onosdriver-module.html');" >TestON.drivers.common.cli.onosdriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.quaggaclidriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.quaggaclidriver-module.html','TestON.drivers.common.cli.quaggaclidriver-module.html');" >TestON.drivers.common.cli.quaggaclidriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.remotesys-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.remotesys-module.html','TestON.drivers.common.cli.remotesys-module.html');" >TestON.drivers.common.cli.remotesys</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.remotesysdriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.remotesysdriver-module.html','TestON.drivers.common.cli.remotesysdriver-module.html');" >TestON.drivers.common.cli.remotesysdriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.remotetestbed-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.remotetestbed-module.html','TestON.drivers.common.cli.remotetestbed-module.html');" >TestON.drivers.common.cli.remotetestbed</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html','TestON.drivers.common.cli.remotetestbed.floodlightclidriver-module.html');" >TestON.drivers.common.cli.remotetestbed.floodlightclidriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html','TestON.drivers.common.cli.remotetestbed.necswitchdriver-module.html');" >TestON.drivers.common.cli.remotetestbed.necswitchdriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html','TestON.drivers.common.cli.remotetestbed.remotepoxdriver-module.html');" >TestON.drivers.common.cli.remotetestbed.remotepoxdriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html','TestON.drivers.common.cli.remotetestbed.remotevmdriver-module.html');" >TestON.drivers.common.cli.remotetestbed.remotevmdriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.remotetestbeddriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.remotetestbeddriver-module.html','TestON.drivers.common.cli.remotetestbeddriver-module.html');" >TestON.drivers.common.cli.remotetestbeddriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.tool-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.tool-module.html','TestON.drivers.common.cli.tool-module.html');" >TestON.drivers.common.cli.tool</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.tool.dpctlclidriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.tool.dpctlclidriver-module.html','TestON.drivers.common.cli.tool.dpctlclidriver-module.html');" >TestON.drivers.common.cli.tool.dpctlclidriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.cli.toolsdriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.cli.toolsdriver-module.html','TestON.drivers.common.cli.toolsdriver-module.html');" >TestON.drivers.common.cli.toolsdriver</a><br /> <a target="moduleFrame" href="toc-TestON.drivers.common.clidriver-module.html"
- onclick="setFrame('toc-TestON.drivers.common.clidriver-module.html','TestON.drivers.common.clidriver-module.html');" >TestON.drivers.common.clidriver</a><br /> <a target="moduleFrame" href="toc-TestON.examples-module.html"
- onclick="setFrame('toc-TestON.examples-module.html','TestON.examples-module.html');" >TestON.examples</a><br /> <a target="moduleFrame" href="toc-TestON.examples.Assert-module.html"
- onclick="setFrame('toc-TestON.examples.Assert-module.html','TestON.examples.Assert-module.html');" >TestON.examples.Assert</a><br /> <a target="moduleFrame" href="toc-TestON.examples.Assert.Assert-module.html"
- onclick="setFrame('toc-TestON.examples.Assert.Assert-module.html','TestON.examples.Assert.Assert-module.html');" >TestON.examples.Assert.Assert</a><br /> <a target="moduleFrame" href="toc-TestON.examples.CaseParams-module.html"
- onclick="setFrame('toc-TestON.examples.CaseParams-module.html','TestON.examples.CaseParams-module.html');" >TestON.examples.CaseParams</a><br /> <a target="moduleFrame" href="toc-TestON.examples.CaseParams.CaseParams-module.html"
- onclick="setFrame('toc-TestON.examples.CaseParams.CaseParams-module.html','TestON.examples.CaseParams.CaseParams-module.html');" >TestON.examples.CaseParams.CaseParams</a><br /> <a target="moduleFrame" href="toc-TestON.examples.ExperimentTest-module.html"
- onclick="setFrame('toc-TestON.examples.ExperimentTest-module.html','TestON.examples.ExperimentTest-module.html');" >TestON.examples.ExperimentTest</a><br /> <a target="moduleFrame" href="toc-TestON.examples.ExperimentTest.ExperimentTest-module.html"
- onclick="setFrame('toc-TestON.examples.ExperimentTest.ExperimentTest-module.html','TestON.examples.ExperimentTest.ExperimentTest-module.html');" >TestON.examples.ExperimentTest.ExperimentTest</a><br /> <a target="moduleFrame" href="toc-TestON.examples.StepParams-module.html"
- onclick="setFrame('toc-TestON.examples.StepParams-module.html','TestON.examples.StepParams-module.html');" >TestON.examples.StepParams</a><br /> <a target="moduleFrame" href="toc-TestON.examples.StepParams.StepParams-module.html"
- onclick="setFrame('toc-TestON.examples.StepParams.StepParams-module.html','TestON.examples.StepParams.StepParams-module.html');" >TestON.examples.StepParams.StepParams</a><br /> <a target="moduleFrame" href="toc-TestON.examples.Topology-module.html"
- onclick="setFrame('toc-TestON.examples.Topology-module.html','TestON.examples.Topology-module.html');" >TestON.examples.Topology</a><br /> <a target="moduleFrame" href="toc-TestON.examples.Topology.Topology-module.html"
- onclick="setFrame('toc-TestON.examples.Topology.Topology-module.html','TestON.examples.Topology.Topology-module.html');" >TestON.examples.Topology.Topology</a><br /> <a target="moduleFrame" href="toc-TestON.lib-module.html"
- onclick="setFrame('toc-TestON.lib-module.html','TestON.lib-module.html');" >TestON.lib</a><br /> <a target="moduleFrame" href="toc-TestON.tests-module.html"
- onclick="setFrame('toc-TestON.tests-module.html','TestON.tests-module.html');" >TestON.tests</a><br /> <a target="moduleFrame" href="toc-TestON.tests.CHOtest-module.html"
- onclick="setFrame('toc-TestON.tests.CHOtest-module.html','TestON.tests.CHOtest-module.html');" >TestON.tests.CHOtest</a><br /> <a target="moduleFrame" href="toc-TestON.tests.CHOtest.CHOtest-module.html"
- onclick="setFrame('toc-TestON.tests.CHOtest.CHOtest-module.html','TestON.tests.CHOtest.CHOtest-module.html');" >TestON.tests.CHOtest.CHOtest</a><br /> <a target="moduleFrame" href="toc-TestON.tests.FUNCintent-module.html"
- onclick="setFrame('toc-TestON.tests.FUNCintent-module.html','TestON.tests.FUNCintent-module.html');" >TestON.tests.FUNCintent</a><br /> <a target="moduleFrame" href="toc-TestON.tests.FUNCintent.FUNCintent-module.html"
- onclick="setFrame('toc-TestON.tests.FUNCintent.FUNCintent-module.html','TestON.tests.FUNCintent.FUNCintent-module.html');" >TestON.tests.FUNCintent.FUNCintent</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAclusterRestart-module.html"
- onclick="setFrame('toc-TestON.tests.HAclusterRestart-module.html','TestON.tests.HAclusterRestart-module.html');" >TestON.tests.HAclusterRestart</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAclusterRestart.HAclusterRestart-module.html"
- onclick="setFrame('toc-TestON.tests.HAclusterRestart.HAclusterRestart-module.html','TestON.tests.HAclusterRestart.HAclusterRestart-module.html');" >TestON.tests.HAclusterRestart.HAclusterRestart</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAclusterRestart.dependencies-module.html"
- onclick="setFrame('toc-TestON.tests.HAclusterRestart.dependencies-module.html','TestON.tests.HAclusterRestart.dependencies-module.html');" >TestON.tests.HAclusterRestart.dependencies</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAclusterRestart.dependencies.Counters-module.html"
- onclick="setFrame('toc-TestON.tests.HAclusterRestart.dependencies.Counters-module.html','TestON.tests.HAclusterRestart.dependencies.Counters-module.html');" >TestON.tests.HAclusterRestart.dependencies.Counters</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAclusterRestart.dependencies.obelisk-module.html"
- onclick="setFrame('toc-TestON.tests.HAclusterRestart.dependencies.obelisk-module.html','TestON.tests.HAclusterRestart.dependencies.obelisk-module.html');" >TestON.tests.HAclusterRestart.dependencies.obelisk</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAminorityRestart-module.html"
- onclick="setFrame('toc-TestON.tests.HAminorityRestart-module.html','TestON.tests.HAminorityRestart-module.html');" >TestON.tests.HAminorityRestart</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAminorityRestart.HAminorityRestart-module.html"
- onclick="setFrame('toc-TestON.tests.HAminorityRestart.HAminorityRestart-module.html','TestON.tests.HAminorityRestart.HAminorityRestart-module.html');" >TestON.tests.HAminorityRestart.HAminorityRestart</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAminorityRestart.dependencies-module.html"
- onclick="setFrame('toc-TestON.tests.HAminorityRestart.dependencies-module.html','TestON.tests.HAminorityRestart.dependencies-module.html');" >TestON.tests.HAminorityRestart.dependencies</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAminorityRestart.dependencies.Counters-module.html"
- onclick="setFrame('toc-TestON.tests.HAminorityRestart.dependencies.Counters-module.html','TestON.tests.HAminorityRestart.dependencies.Counters-module.html');" >TestON.tests.HAminorityRestart.dependencies.Counters</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAminorityRestart.dependencies.obelisk-module.html"
- onclick="setFrame('toc-TestON.tests.HAminorityRestart.dependencies.obelisk-module.html','TestON.tests.HAminorityRestart.dependencies.obelisk-module.html');" >TestON.tests.HAminorityRestart.dependencies.obelisk</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAsanity-module.html"
- onclick="setFrame('toc-TestON.tests.HAsanity-module.html','TestON.tests.HAsanity-module.html');" >TestON.tests.HAsanity</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAsanity.HAsanity-module.html"
- onclick="setFrame('toc-TestON.tests.HAsanity.HAsanity-module.html','TestON.tests.HAsanity.HAsanity-module.html');" >TestON.tests.HAsanity.HAsanity</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAsanity.dependencies-module.html"
- onclick="setFrame('toc-TestON.tests.HAsanity.dependencies-module.html','TestON.tests.HAsanity.dependencies-module.html');" >TestON.tests.HAsanity.dependencies</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAsanity.dependencies.Counters-module.html"
- onclick="setFrame('toc-TestON.tests.HAsanity.dependencies.Counters-module.html','TestON.tests.HAsanity.dependencies.Counters-module.html');" >TestON.tests.HAsanity.dependencies.Counters</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAsanity.dependencies.obelisk-module.html"
- onclick="setFrame('toc-TestON.tests.HAsanity.dependencies.obelisk-module.html','TestON.tests.HAsanity.dependencies.obelisk-module.html');" >TestON.tests.HAsanity.dependencies.obelisk</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAsingleInstanceRestart-module.html"
- onclick="setFrame('toc-TestON.tests.HAsingleInstanceRestart-module.html','TestON.tests.HAsingleInstanceRestart-module.html');" >TestON.tests.HAsingleInstanceRestart</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html"
- onclick="setFrame('toc-TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html','TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart-module.html');" >TestON.tests.HAsingleInstanceRestart.HAsingleInstanceRestart</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAsingleInstanceRestart.dependencies-module.html"
- onclick="setFrame('toc-TestON.tests.HAsingleInstanceRestart.dependencies-module.html','TestON.tests.HAsingleInstanceRestart.dependencies-module.html');" >TestON.tests.HAsingleInstanceRestart.dependencies</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html"
- onclick="setFrame('toc-TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html','TestON.tests.HAsingleInstanceRestart.dependencies.Counters-module.html');" >TestON.tests.HAsingleInstanceRestart.dependencies.Counters</a><br /> <a target="moduleFrame" href="toc-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html"
- onclick="setFrame('toc-TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html','TestON.tests.HAsingleInstanceRestart.dependencies.obelisk-module.html');" >TestON.tests.HAsingleInstanceRestart.dependencies.obelisk</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SAMPscaleTopo-module.html"
- onclick="setFrame('toc-TestON.tests.SAMPscaleTopo-module.html','TestON.tests.SAMPscaleTopo-module.html');" >TestON.tests.SAMPscaleTopo</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html"
- onclick="setFrame('toc-TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html','TestON.tests.SAMPscaleTopo.SAMPscaleTopo-module.html');" >TestON.tests.SAMPscaleTopo.SAMPscaleTopo</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SAMPstartTemplate-module.html"
- onclick="setFrame('toc-TestON.tests.SAMPstartTemplate-module.html','TestON.tests.SAMPstartTemplate-module.html');" >TestON.tests.SAMPstartTemplate</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html"
- onclick="setFrame('toc-TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html','TestON.tests.SAMPstartTemplate.SAMPstartTemplate-module.html');" >TestON.tests.SAMPstartTemplate.SAMPstartTemplate</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SCPFcbench-module.html"
- onclick="setFrame('toc-TestON.tests.SCPFcbench-module.html','TestON.tests.SCPFcbench-module.html');" >TestON.tests.SCPFcbench</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SCPFcbench.SCPFcbench-module.html"
- onclick="setFrame('toc-TestON.tests.SCPFcbench.SCPFcbench-module.html','TestON.tests.SCPFcbench.SCPFcbench-module.html');" >TestON.tests.SCPFcbench.SCPFcbench</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SCPFflowTp1g-module.html"
- onclick="setFrame('toc-TestON.tests.SCPFflowTp1g-module.html','TestON.tests.SCPFflowTp1g-module.html');" >TestON.tests.SCPFflowTp1g</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html"
- onclick="setFrame('toc-TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html','TestON.tests.SCPFflowTp1g.SCPFflowTp1g-module.html');" >TestON.tests.SCPFflowTp1g.SCPFflowTp1g</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SCPFintentEventTp-module.html"
- onclick="setFrame('toc-TestON.tests.SCPFintentEventTp-module.html','TestON.tests.SCPFintentEventTp-module.html');" >TestON.tests.SCPFintentEventTp</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html"
- onclick="setFrame('toc-TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html','TestON.tests.SCPFintentEventTp.SCPFintentEventTp-module.html');" >TestON.tests.SCPFintentEventTp.SCPFintentEventTp</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SCPFintentInstallWithdrawLat-module.html"
- onclick="setFrame('toc-TestON.tests.SCPFintentInstallWithdrawLat-module.html','TestON.tests.SCPFintentInstallWithdrawLat-module.html');" >TestON.tests.SCPFintentInstallWithdrawLat</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html"
- onclick="setFrame('toc-TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html','TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat-module.html');" >TestON.tests.SCPFintentInstallWithdrawLat.SCPFintentInstallWithdrawLat</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SCPFintentRerouteLat-module.html"
- onclick="setFrame('toc-TestON.tests.SCPFintentRerouteLat-module.html','TestON.tests.SCPFintentRerouteLat-module.html');" >TestON.tests.SCPFintentRerouteLat</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html"
- onclick="setFrame('toc-TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html','TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat-module.html');" >TestON.tests.SCPFintentRerouteLat.SCPFintentRerouteLat</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SCPFportLat-module.html"
- onclick="setFrame('toc-TestON.tests.SCPFportLat-module.html','TestON.tests.SCPFportLat-module.html');" >TestON.tests.SCPFportLat</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SCPFportLat.SCPFportLat-module.html"
- onclick="setFrame('toc-TestON.tests.SCPFportLat.SCPFportLat-module.html','TestON.tests.SCPFportLat.SCPFportLat-module.html');" >TestON.tests.SCPFportLat.SCPFportLat</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SCPFswitchLat-module.html"
- onclick="setFrame('toc-TestON.tests.SCPFswitchLat-module.html','TestON.tests.SCPFswitchLat-module.html');" >TestON.tests.SCPFswitchLat</a><br /> <a target="moduleFrame" href="toc-TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html"
- onclick="setFrame('toc-TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html','TestON.tests.SCPFswitchLat.SCPFswitchLat-module.html');" >TestON.tests.SCPFswitchLat.SCPFswitchLat</a><br /><hr />
- <span class="options">[<a href="javascript:void(0);" class="privatelink"
- onclick="toggle_private();">hide private</a>]</span>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/TestON/README.md b/TestON/README.md
index 990a4a0..fdb9200 100644
--- a/TestON/README.md
+++ b/TestON/README.md
@@ -7,16 +7,16 @@
TestON is a solution that aims to interact with OpenFlow/SDN components and automate the functionality of the components.
TestON is an end to end automation solution for testing the Openflow/SDN components.
-run across various components in an OpenFlow topology. This solution
+run across various components in an OpenFlow topology. This solution
aims to provide an automation framework, that is not just exhaustive in
-coverage, but also makes it easy to debug and author scripts.
+coverage, but also makes it easy to debug and author scripts.
It allows for authoring scripts in OpenSpeak (plain English) format and can be run standalone from the command line.
Note:
-----
-Please change the params parser file path and Parser name in ~/config/ofa.cfg
+Please change the params parser file path and Parser name in ~/config/ofa.cfg
@@ -25,7 +25,7 @@
In order to run TestON, you must have:
-* A Linux 2.6.26 or greater kernel compiled with network namespace support
+* A Linux 2.6.26 or greater kernel compiled with network namespace support
enabled (see INSTALL for additional information.)
* python 2.6 or higher versions.
@@ -38,37 +38,37 @@
* Finally ,launching of test:
* TestON providing two options to launch the test.
-
+
1 .Console based :
* Launching of test must be from "bin" directory which
-
+
resides into "TestON-master" directory as following:
-
- paxterra@paxterra-desktop:~/TestON/bin$ ./cli.py
- teston>run MininetTest
+
+ paxterra@paxterra-desktop:~/TestON/bin$ ./cli.py
+ teston>run MininetTest
2. TAI (Test Authoring Interface) UI based :
-
+
* Will provide TAI stand-alone application soon, now user can get the raw code from the TAI directory.
-
+
User can launch the test from TAI-UI by clicking the Run Button in tool-bar.
[![RunTest](http://ubuntuone.com/0rPR4VLXF6WbExKeqeKLkN)](#RunTest)
-
+
Examples
--------
For more examples, refer 'examples' directory.
Please find the below link for examples:
https://github.com/Paxterra/TestON/tree/TestOn-1.0.0/examples
-
+
Documents
----------
-* Documentation/AutoGenerated/ directory provided with auto generated Document
- for the TestON framework.
+---------
+* Documentation can be auto generated by running the generate-docs.sh script in the TestON directory.
+* Auto generated Documentation can be found in the Documentation folder.
* index.html is the home page.
diff --git a/TestON/bin/GenerateDriver.log b/TestON/bin/GenerateDriver.log
deleted file mode 100644
index f2ecb26..0000000
--- a/TestON/bin/GenerateDriver.log
+++ /dev/null
@@ -1,270 +0,0 @@
-operator@10.128.0.11's password: operator
-
-show ?
-
-Copyright (c) 2011 NEC Corporation. All rights reserved.
-
-!NEC-PF5240> ?
-
access-filter Display the statistics information of access-filter
- accounting Display the accounting information
- acknowledgments Display acknowledgments
- auto-config Display the information of auto-config
- axrp Display the Ring Protocol information
- cfm Display the CFM information
- channel-group Display the information on a Link Aggregation Protocol
- clock Display clock of the system
- config-lock-status Display lock status of configurations
- cpu Target is cpu utilization information
- dhcp Display the information of DHCP
- dot1x Display the status of 802.1X
- dumpfile Display the information of dumpfile
- efmoam Display the IEEE802.3ah/OAM information
- environment Display the information of system environment
- file Show contents of file
- flash Display the information of flash memory
- gsrp Display the GSRP information
- history Display the list of commands that was entered
- igmp-snooping Display the igmp-snooping information
- interfaces Display the information of interfaces
- ip Display the information of IP routing program
- ip-dual Display the information of IP and IPv6 routing program
-
byte 1378
ipv6 Display the information of IPv6 routing program
-
byte 1448
ipv6-dhcp Display the information of IPv6 DHCP program
-
byte 1515
license Display licenses
-
byte 1554
lldp Display the LLDP information
-
byte 1605
logging Display the log information of router
-
byte 1665
loop-detection Display the information on an L2 Loop Detection
-
byte 1735
mac-address-table Display the mac-address-table information
-
byte 1799
mc Display the information of MC
-
byte 1851
memory Display the status of memory
-
byte 1902
mld-snooping Display the mld-snooping information
-
byte 1961
netconf Display the information of netconf
-
byte 2018
netstat Display the status of network
-
byte 2070
ntp Display the information of NTP
-
byte 2123
oadp Display the OADP information
-
byte 2174
openflow Display the OpenFlow information
-
byte 2229
port Display the information list of ports
-
byte 2289
power Display the information of power consumption
-
byte 2356
processes Display the status of process
-
byte 2408
qos Display the statistics information of QoS
-
byte 2472
qos-flow Display the statistics information of qos-flow
-
byte 2541
sessions Display the login user name
-
byte 2591
sflow Display the information of sFlow
-
byte 2646
spanning-tree Display the information on a spanning tree protocol
-
byte 2720
ssh Display the information of SSH Server
-
byte 2780
system Display the information of a system
-
byte 2838
tcpdump Dump traffic to/from this system
-
byte 2893
tech-support Display the general information about the switch
-
byte 2964
track Display the information of track
-
byte 3019
version Display the version of a system
-
byte 3073
vlan Display the VLAN information
-
byte 3124
vrrpstatus Display the status of VRRP
-
byte 3173
whoami Display the real user name
-
byte 3222
show
- ^
-% Incomplete command at '^' marker
-!NEC-PF5240> show access-filter ?
-
-?
-
<nif no.>/<port no.> Specify NIF number and Port number
- interface Target is interface
- <cr>
-
Date 2013/06/27 18:11:19 UTC
-No configuration.
-
!NEC-PF5240> show accounting ?
-
-?
-
<cr>
-
Connection failed to accounting program.
-
!NEC-PF5240> show acknowledgments ?
-
-?
-
<cr>
-
[OpenFlow]
-/* Copyright (c) 2008 The Board of Trustees of The Leland Stanford
- * Junior University
- *
- * We are making the OpenFlow specification and associated documentation
- * (Software) available for public use and benefit with the expectation
- * that others will use, modify and enhance the Software and contribute
- * those enhancements back to the community. However, since we would
- * like to make the Software available for broadest use, with as few
- * restrictions as possible permission is hereby granted, free of
- * charge, to any person obtaining a copy of this Software to deal in
- * the Software under the copyrights without restriction, including
- * without limitation the rights to use, copy, modify, merge, publish,
- * distribute, sublicense, and/or sell copies of the Software, and to
- * permit persons to whom the Software is furnished to do so, subject to
- * the following conditions:
- *
- * The above copyright notice and this permission notice shall be
- * included in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-
byte 1237
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
-
byte 1309
* BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-
byte 1379
* ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-
byte 1448
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-
byte 1516
* SOFTWARE.
-
byte 1529
*
-
byte 1532
* The name and trademarks of copyright holder(s) may NOT be used in
-
byte 1601
* advertising or publicity pertaining to the Software or any
-
byte 1663
* derivatives without specific, written prior permission.
-
byte 1722
*/
-
byte 1726
-
byte 1727
[CPU2 uboot]
-
byte 1740
This product includes software to be licensed under the GNU General
-
byte 1809
Public License Version 2(GPLv2).
-
byte 1842
For details about GPL, see http://www.gnu.org/licenses/licenses.html
-
byte 1911
-
byte 1912
#
-
byte 1914show acknowledgments interface ?
-
byte 1914
byte 1914
byte 1914
byte 1914
...skipping...
-[OpenFlow]
-/* Copyright (c) 2008 The Board of Trustees of The Leland Stanford
- * Junior University
- *
- * We are making the OpenFlow specification and associated documentation
- * (Software) available for public use and benefit with the expectation
- * that others will use, modify and enhance the Software and contribute
- * those enhancements back to the community. However, since we would
- * like to make the Software available for broadest use, with as few
- * restrictions as possible permission is hereby granted, free of
- * charge, to any person obtaining a copy of this Software to deal in
- * the Software under the copyrights without restriction, including
- * without limitation the rights to use, copy, modify, merge, publish,
- * distribute, sublicense, and/or sell copies of the Software, and to
- * permit persons to whom the Software is furnished to do so, subject to
- * the following conditions:
- *
- * The above copyright notice and this permission notice shall be
- * included in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-
byte 1237
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- * The name and trademarks of copyright holder(s) may NOT be used in
- * advertising or publicity pertaining to the Software or any
- * derivatives without specific, written prior permission.
- */
-
-[CPU2 uboot]
-This product includes software to be licensed under the GNU General
-Public License Version 2(GPLv2).
-For details about GPL, see http://www.gnu.org/licenses/licenses.html
-
-#
-# (C) Copyright 2000-2004
-# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
-#
-# See file CREDITS for list of people who contributed to this
-# project.
-#
-
byte 2073
# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation; either version 2 of
-# the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-# MA 02111-1307 USA
-#
-
-#
-# (C) Copyright 2000
-# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
-#
-# See file CREDITS for list of people who contributed to this
-# project.
-#
-
byte 2932
# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation; either version 2 of
-# the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-# MA 02111-1307 USA
-#
-
-#
-# (C) Copyright 2003
-# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
-#
-# See file CREDITS for list of people who contributed to this
-# project.
-#
-
byte 3791
byte 3791
byte 3791
...skipping...
-#
-# This program is free software; you can redistribute it and
show auto-config ?
-show axrp ?
-show cfm ?
-show channel-group ?
-show clock ?
-show config-lock-status ?
-show cpu ?
-
show dhcp ?
-show dot1x ?
-show dumpfile ?
-show efmoam ?
-show environment ?
-show file ?
-show flash ?
-show gsrp ?
-show history ?
-show igmp-snooping ?
-show interfaces ?
-show ip ?
-show ip-dual ?
-show ipv6-dhcp ?
-show license ?
-show lldp ?
-show logging ?
-show loop-detection ?
-show mac-address-table ?
-show mc ?
-show memory ?
-show mld-snooping ?
-
show netconf ?
-show netstat ?
-show ntp ?
-show oadp ?
-show openflow ?
-show port ?
-show power ?
-show processes ?
-show qos ?
-show qos-flow ?
-show sessions ?
-show sflow ?
-show spanning-tree ?
-show ssh ?
-show system ?
-show tcpdump ?
-show tech-support ?
-show track ?
-show version ?
-show vlan ?
-show vrrpstatus ?
-show whoami ?
-
\ No newline at end of file
diff --git a/TestON/bin/cli.py b/TestON/bin/cli.py
index b3a053b..a91052c 100755
--- a/TestON/bin/cli.py
+++ b/TestON/bin/cli.py
@@ -457,49 +457,6 @@
except IOError:
error( 'error reading file %s\n' % args[ 0 ] )
- def do_updatedriver(self,line):
- '''
- updatedriver will update the given driver name which exists into mentioned config file.
- It will receive two optional arguments :
-
- 1. Config File Path
- 2. Drivers List to be updated.
-
- Default : config file = "~/TestON/config/updatedriver" ,
- Driver List = all drivers specified in config file .
- '''
- args = line.split()
- config = ''
- drivers = ''
- try :
- for index, option in enumerate(args):
- if option == 'config':
- index = index + 1
- config = args[index]
- elif option == 'drivers' :
- index = index + 1
- drivers = args[index]
- except IndexError:
- pass
- import updatedriver
- converter = updatedriver.UpdateDriver()
-
- if config == '':
- location = os.path.abspath( os.path.dirname( __file__ ) )
- path = re.sub( "(bin)$", "", location )
- config = path + "/config/updatedriver.cfg"
- configDict = converter.configparser(config)
-
- else :
- converter.configparser(config)
- configDict = converter.configparser(config)
-
-
- converter.writeDriver(drivers)
-
-
-
-
def do_time( self, line ):
"Measure time taken for any command in TestON."
start = time.time()
@@ -518,8 +475,6 @@
error( '*** Unknown command: %s\n' % first )
-
-
class TestThread(threading.Thread):
'''
TestThread class will handle the test execution and will communicate with the thread in the do_run.
diff --git a/TestON/bin/file b/TestON/bin/file
deleted file mode 100644
index 855f68b..0000000
--- a/TestON/bin/file
+++ /dev/null
@@ -1,61 +0,0 @@
-!NEC-PF5240> configure
-configure: not found
-!NEC-PF5240> show ?
- access-filter Display the statistics information of access-filter
- accounting Display the accounting information
- acknowledgments Display acknowledgments
- auto-config Display the information of auto-config
- axrp Display the Ring Protocol information
- cfm Display the CFM information
- channel-group Display the information on a Link Aggregation Protocol
- clock Display clock of the system
- config-lock-status Display lock status of configurations
- cpu Target is cpu utilization information
- dhcp Display the information of DHCP
- dot1x Display the status of 802.1X
- dumpfile Display the information of dumpfile
- efmoam Display the IEEE802.3ah/OAM information
- environment Display the information of system environment
- file Show contents of file
- flash Display the information of flash memory
- gsrp Display the GSRP information
- history Display the list of commands that was entered
- igmp-snooping Display the igmp-snooping information
- interfaces Display the information of interfaces
- ip Display the information of IP routing program
- ip-dual Display the information of IP and IPv6 routing program
- ipv6-dhcp Display the information of IPv6 DHCP program
- license Display licenses
- lldp Display the LLDP information
- logging Display the log information of router
- loop-detection Display the information on an L2 Loop Detection
- mac-address-table Display the mac-address-table information
- mc Display the information of MC
- memory Display the status of memory
- mld-snooping Display the mld-snooping information
- netconf Display the information of netconf
- netstat Display the status of network
- ntp Display the information of NTP
- oadp Display the OADP information
- openflow Display the OpenFlow information
- port Display the information list of ports
- power Display the information of power consumption
- processes Display the status of process
- qos Display the statistics information of QoS
- qos-flow Display the statistics information of qos-flow
- sessions Display the login user name
- sflow Display the information of sFlow
- spanning-tree Display the information on a spanning tree protocol
- ssh Display the information of SSH Server
- system Display the information of a system
- tcpdump Dump traffic to/from this system
- tech-support Display the general information about the switch
- track Display the information of track
- version Display the version of a system
- vlan Display the VLAN information
- vrrpstatus Display the status of VRRP
- whoami Display the real user name
-!NEC-PF5240> show
-show
- ^
-
diff --git a/TestON/bin/generatedriver.cfg b/TestON/bin/generatedriver.cfg
deleted file mode 100644
index 9bdafcd..0000000
--- a/TestON/bin/generatedriver.cfg
+++ /dev/null
@@ -1,12 +0,0 @@
-<device>
- <NEC>
- <user_name> operator </user_name>
- <ip_address>10.128.0.11</ip_address>
- <password> operator </password>
- <help_keyword>?</help_keyword>
- <interrupt_key> C </interrupt_key>
- <command_search_regex> "" </command_search_regex>
- <command> 'show' </command>
- <end_pattern> byte </end_pattern>
- </NEC>
-</device>
diff --git a/TestON/bin/generatedriver.py b/TestON/bin/generatedriver.py
deleted file mode 100644
index 0bd3a0a..0000000
--- a/TestON/bin/generatedriver.py
+++ /dev/null
@@ -1,315 +0,0 @@
-#!/usr/bin/env python
-'''
-Created on 11-Oct-2012
-
-@authors: Anil Kumar (anilkumar.s@paxterrasolutions.com),
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-
-
-'''
-import pexpect
-import struct, fcntl, os, sys, signal
-import re
-from core import xmldict
-
-class GenerateDriver():
- '''
- This will
- '''
- def __init__(self):
- self.default = ''
- self.prompt = '>'
- self.LASTRSP =''
- self.command_dictionary = {}
- self.config_details = {}
- self.last_sub_command = None
- self.commnads_ordered_list = []
- filePath = "generatedriver.cfg"
- self.configFile = filePath
- try :
- xml = open(filePath).read()
- self.config_details = xmldict.xml_to_dict(xml)
- except :
- print "Error : Config file " + self.configFile + " not defined properly or file path error"
- sys.exit()
- print self.config_details
- self.device_name = ''
-
- def connect(self,**connectargs):
- '''
- Connection will establish to the remote host using ssh.
- It will take user_name ,ip_address and password as arguments<br>
- and will return the handle.
- '''
- for key in connectargs:
- vars(self)[key] = connectargs[key]
-
- ssh_newkey = 'Are you sure you want to continue connecting'
- refused = "ssh: connect to host "+self.ip_address+" port 22: Connection refused"
- if self.port:
- self.handle =pexpect.spawn('ssh -p '+self.port+' '+self.user_name+'@'+self.ip_address,maxread=50000)
- else :
- self.handle =pexpect.spawn('ssh '+self.user_name+'@'+self.ip_address,maxread=50000)
-
- self.logfile_handler = open(os.getcwd()+"/GenerateDriver.log","w+")
- self.handle.logfile = self.logfile_handler
- i=self.handle.expect([ssh_newkey,'password:',pexpect.EOF,pexpect.TIMEOUT,refused],10)
-
- if i==0:
- self.handle.sendline('yes')
- i=self.handle.expect([ssh_newkey,'password:',pexpect.EOF,pexpect.TIMEOUT])
- return self.handle
- if i==1:
- self.handle.sendline(self.pwd)
- self.handle.expect('>|#|$')
- return self.handle
- elif i==2:
- print "ssh: connect to host "+self.ip_address+": Error"
- return False
- elif i==3: #timeout
-
- print "ssh: connect to host "+self.ip_address+": Connection timed out"
- return False
- elif i==4:
- print "ssh: connect to host "+self.ip_address+": Connection refused"
- return False
-
- self.handle.sendline("\r")
- return self.handle
-
- def execute(self, **execparams):
- '''
- This method will execute the command and will check for the expected prompt.
- '''
- self.LASTRSP = ''
- defaultPrompt = '.*[\$>\#]'
- for key in execparams:
- vars(self)[key] = execparams[key]
-
- self.handle.sendline(self.cmd)
- timeoutVar = self.timeout if self.timeout else 10
-
- index = self.handle.expect([self.prompt, "byte\s\d+", 'Command not found.', pexpect.TIMEOUT,"\n:",pexpect.EOF], timeout = timeoutVar)
- if index == 0:
- self.LASTRSP = self.LASTRSP + self.handle.before
- #print "Expected Prompt Found"
- elif index == 1:
- self.LASTRSP = self.LASTRSP + self.handle.before
- self.handle.send("\r")
- print("Found More screen to go , Sending a key to proceed")
- indexMore = self.handle.expect(["byte\s\d+", self.prompt], timeout = timeoutVar)
- while indexMore == 0:
- print "Found another More screen to go , Sending a key to proceed"
- self.handle.send("\r")
- indexMore = self.handle.expect(["byte\s\d+", self.prompt,pexpect.EOF,pexpect.TIMEOUT], timeout = timeoutVar)
- self.LASTRSP = self.LASTRSP + self.handle.before
- #print self.LASTRSP
- elif index ==2:
- print "Command not found"
- self.LASTRSP = self.LASTRSP + self.handle.before
- elif index ==3:
- print "Expected Prompt not found , Time Out!!"
- return False
- elif index == 4:
-
- self.LASTRSP = self.LASTRSP + self.handle.before
- self.handle.sendcontrol("D")
- #print "AA"*89
- indexMore = self.handle.expect(["\n:", self.prompt,pexpect.EOF,pexpect.TIMEOUT], timeout = timeoutVar)
- while indexMore == 0:
- self.handle.sendcontrol("D")
-
- indexMore = self.handle.expect(["\n:", self.prompt,".*",pexpect.EOF,pexpect.TIMEOUT], timeout = timeoutVar)
- self.LASTRSP = self.LASTRSP + self.handle.before
-
- return self.LASTRSP
-
- def configure(self):
- '''
- Will start the Configure mode of the device.
- '''
- config_result = self.execute(cmd="configure",prompt='\#',timeout=10)
- return config_result
-
- def get_command_help(self,command):
- '''
- Will get the help of the Command
- '''
-
- self.handle.setecho(False)
- help_keyword = self.config_details['device'][self.device_name]['help_keyword']
- interrupt_key = self.config_details['device'][self.device_name]['interrupt_key']
- command_details = self.execute(cmd=command+" "+help_keyword,prompt='\#',timeout=2)
- #command_details = self.execute(cmd=command+" "+help_keyword,prompt='\#',timeout=2)
- self.handle.sendcontrol(interrupt_key)
- #print command_details
- return command_details
-
- def get_command_details(self,command):
- '''
- Will Update the command_dictionary with the available commands details
- '''
-
- temp_dictionary = {}
- command_resulut = self.get_command_help(command)
- try :
- words = command_resulut.split("\n")
- except AttributeError,e:
- print e
- return
- lines = command_resulut.split("\n")
- options_list = []
- for line in lines :
- value_match = re.search('[\s|\>|\+|\-|\<]{3}(\<(\w+))\s*',line)
- if value_match:
- print " Enter Value for "+value_match.group(2)
- #self.handle.interact()
- else:
- match = re.search(r"\s\s[\w|-]+\s\s",line)
- if match :
- match_command = match.group(0)
- print match_command
- options_list.append(match_command)
-
- temp_dictionary[command] = options_list
- self.command_dictionary[command] = options_list
- self.print_details(self.command_dictionary)
- print "temp dir: --------"
- print temp_dictionary
- print "-------------"
- return temp_dictionary
-
- def print_details(self,command_dictionary):
- '''
- Will print the details in Tree Format
- '''
- self.commnads_ordered_list = command_dictionary.keys()
- # Sorting the output based on the length of the command string
- length = len(self.commnads_ordered_list ) - 1
- sorted = False
-
- while not sorted:
- sorted = True
- for i in range(length):
- if len(self.commnads_ordered_list[i]) > len(self.commnads_ordered_list[i+1]):
- sorted = False
- self.commnads_ordered_list[i], self.commnads_ordered_list[i+1] = self.commnads_ordered_list[i+1], self.commnads_ordered_list[i]
-
- for key in self.commnads_ordered_list:
- print key +"\t "+str(command_dictionary[key])
- print "\n\n"
-
-
- def get_details_recursive(self,main_comand):
- try :
- self.last_sub_command = main_comand.split()[len(main_comand.split())-1]
- except :
- self.last_sub_command = ''
- main_result_dcitionary = self.get_command_details(main_comand)
- if main_result_dcitionary :
- for key in main_result_dcitionary.keys():
- for index, each_option in enumerate(main_result_dcitionary[key]) :
-
- if re.search(self.config_details['device'][self.device_name]['end_pattern']+"|^\.|^\d",str(main_result_dcitionary[key][index])):
- print "Reached the last argument for this "+main_comand+" "+str(each_option)+"\n"
- main_result_dcitionary[key].remove(each_option)
- return
- elif self.last_sub_command == str(main_result_dcitionary[key][index]):
- print "Same command repeating, So Exiting "+main_comand+" "+str(each_option)+"\n"
- main_result_dcitionary[key].remove(each_option)
- break
- result_dcitionary = self.get_details_recursive(main_comand+" "+str(each_option))
-
- return
- def create_driver(self):
- name = self.device_name
- driver_file_data = 'class '+name +":\n"
- driver_file_data = driver_file_data + " def __init__( self ):\n"
- driver_file_data = driver_file_data + " self.prompt = '(.*)'\n self.timeout = 60 \n\n"
-
- for index,command in enumerate(self.commnads_ordered_list) :
- api_data = ' def '
- command_as_api = re.sub(" ","_" , command, 0)
- command_as_api = re.sub("\.|\-|\\|\/|\/","" , command_as_api, 0)
- current_letter = 0
- underscore_count = 0
- command_temp = ""
- for c in command_as_api:
- current_letter = current_letter + 1
- if c == "_":
- underscore_count = underscore_count+1
- else:
- underscore_count = 0
- if underscore_count > 1:
- command_temp = command_temp + ""
- else:
- command_temp = command_temp + c
- if command_temp[len(command_temp)-1] == "_":
- command_temp = command_temp[0:len(command_temp)-1]
- command_as_api = command_temp
- #options = ''
- #for option in self.command_dictionary[command]:
- #options = options+',' + option
-
- #options = re.sub("^\s*,|,$","" , options, 0)
- api_data = api_data + command_as_api+"(self, *options, **def_args ):\n"
- api_data = api_data + " '''Possible Options :"+str(self.command_dictionary[command])+"'''\n"
- api_data = api_data + " arguments= ''\n"
- api_data = api_data + " for option in options:\n"
- api_data = api_data + " arguments = arguments + option +' ' \n"
- api_data = api_data + " prompt = def_args.setdefault('prompt',self.prompt)\n"
- api_data = api_data + " timeout = def_args.setdefault('timeout',self.timeout)\n"
-
- api_data = api_data + " self.execute( cmd= \""+ command + " \"+ arguments, prompt = prompt, timeout = timeout ) \n"
- api_data = api_data + " return main.TRUE\n"
-
- driver_file_data = driver_file_data + api_data +"\n"
- driver_file = open(os.getcwd()+"/"+name.lower()+".py", 'w')
- driver_file.write(driver_file_data)
- print driver_file_data
-
- def disconnect(self):
- result = True
- return result
-
- import pexpect
-
-if __name__ == "__main__":
-
- generate = GenerateDriver()
- import sys
- device_name = sys.argv[1]
- generate.device_name = device_name
- ip_address = generate.config_details['device'][device_name]['ip_address']
- user_name = generate.config_details['device'][device_name]['user_name']
- password = generate.config_details['device'][device_name]['password']
- command = generate.config_details['device'][device_name]['command']
- commandlist = re.sub("(\[|\])", "", command)
- commandlist = list(eval(command+','))
- connect_handle = generate.connect(user_name = user_name ,ip_address = ip_address, pwd = password , port = None)
- if connect_handle :
- # generate.configure()
-
- for root_command in commandlist :
- generate.get_details_recursive(root_command)
-
- generate.create_driver()
- generate.disconnect()
- #generate.get_command_details(main_command)
- else :
- print "Connection Failed to the host"
-
-
diff --git a/TestON/bin/nec.py b/TestON/bin/nec.py
deleted file mode 100644
index ac95238..0000000
--- a/TestON/bin/nec.py
+++ /dev/null
@@ -1,545 +0,0 @@
-class NEC:
- def __init__( self ):
- self.prompt = '(.*)'
- self.timeout = 60
-
- def show(self, *options, **def_args ):
- '''Possible Options :[' access-filter ', ' accounting ', ' acknowledgments ', ' auto-config ', ' axrp ', ' cfm ', ' channel-group ', ' clock ', ' config-lock-status ', ' cpu ', ' dhcp ', ' dot1x ', ' dumpfile ', ' efmoam ', ' environment ', ' file ', ' flash ', ' gsrp ', ' history ', ' igmp-snooping ', ' interfaces ', ' ip ', ' ip-dual ', ' ipv6-dhcp ', ' license ', ' lldp ', ' logging ', ' loop-detection ', ' mac-address-table ', ' mc ', ' memory ', ' mld-snooping ', ' netconf ', ' netstat ', ' ntp ', ' oadp ', ' openflow ', ' port ', ' power ', ' processes ', ' qos ', ' qos-flow ', ' sessions ', ' sflow ', ' spanning-tree ', ' ssh ', ' system ', ' tcpdump ', ' tech-support ', ' track ', ' version ', ' vlan ', ' vrrpstatus ', ' whoami ']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_ip(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show ip "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_mc(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show mc "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_cfm(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show cfm "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_ntp(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show ntp "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_ssh(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show ssh "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_qos(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show qos "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_cpu(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show cpu "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_vlan(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show vlan "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_lldp(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show lldp "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_dhcp(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show dhcp "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_axrp(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show axrp "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_oadp(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show oadp "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_gsrp(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show gsrp "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_port(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show port "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_file(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show file "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_power(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show power "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_clock(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show clock "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_dot1x(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show dot1x "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_sflow(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show sflow "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_track(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show track "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_flash(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show flash "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_system(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show system "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_whoami(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show whoami "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_efmoam(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show efmoam "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_memory(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show memory "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_tcpdump(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show tcpdump "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_history(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show history "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_logging(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show logging "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_license(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show license "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_netstat(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show netstat "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_version(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show version "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_netconf(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show netconf "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_ipdual(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show ip-dual "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_sessions(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show sessions "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_qosflow(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show qos-flow "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_openflow(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show openflow "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_dumpfile(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show dumpfile "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_ipv6dhcp(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show ipv6-dhcp "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_processes(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show processes "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_vrrpstatus(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show vrrpstatus "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_environment(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show environment "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_autoconfig(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show auto-config "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_techsupport(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show tech-support "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_mldsnooping(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show mld-snooping "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_igmpsnooping(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show igmp-snooping "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_channelgroup(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show channel-group "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_spanningtree(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show spanning-tree "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_loopdetection(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show loop-detection "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_acknowledgments(self, *options, **def_args ):
- '''Possible Options :[' interface ']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show acknowledgments "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_macaddresstable(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show mac-address-table "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_configlockstatus(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show config-lock-status "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_acknowledgments_interface(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show acknowledgments interface "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
diff --git a/TestON/bin/pronto.py b/TestON/bin/pronto.py
deleted file mode 100644
index 0d1b834..0000000
--- a/TestON/bin/pronto.py
+++ /dev/null
@@ -1,45 +0,0 @@
-class Pronto:
- def __init__( self ):
- self.prompt = '(.*)'
- self.timeout = 60
-
- def status(self, *options, **def_args ):
- '''Possible Options :['Pronto-CLI']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "status "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def port_show_*(self, *options, **def_args ):
- '''Possible Options :['Pronto-CLI']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "port show * "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def status_ProntoCLI(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "status Pronto-CLI "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def port_show_*_ProntoCLI(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "port show * Pronto-CLI "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
diff --git a/TestON/bin/respnse_file.temp b/TestON/bin/respnse_file.temp
deleted file mode 100644
index 75c9744..0000000
--- a/TestON/bin/respnse_file.temp
+++ /dev/null
@@ -1,2 +0,0 @@
-[PARAMS]
-'testcases' = '1'
diff --git a/TestON/bin/updatedriver.py b/TestON/bin/updatedriver.py
deleted file mode 100644
index ca5c0f2..0000000
--- a/TestON/bin/updatedriver.py
+++ /dev/null
@@ -1,370 +0,0 @@
-import inspect
-import sys
-import os
-import re
-from core import xmldict
-'''
-@author: Raghav Kashyap (raghavkashyap@paxterrasolutions.com)
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-
-'''
-
-
-class UpdateDriver:
- def __init__(self):
- self.default = ''
- self.configFile = "/home/openflow/TestON/config/ofadriver.cfg"
- self.methodDict = {}
- self.fileDict = {}
-
-
- def getmethods(self,modulePath,Class) :
- '''
- This will get the list of methods in given module or class.
- It accepts the module path and class name. If there is no
- class name then it has be mentioned as None.
- '''
- methodList = []
- moduleList = modulePath.split("/")
- newModule = ".".join([moduleList[len(moduleList) - 2],moduleList[len(moduleList) - 1]])
- print "Message : Method list is being obatined , Please wait ..."
- try :
- if Class :
- Module = __import__(moduleList[len(moduleList) - 1], globals(), locals(), [Class], -1)
- ClassList = [x.__name__ for x in Module.__dict__.values() if inspect.isclass(x)]
- self.ClassList = ClassList
- Class = vars(Module)[Class]
- methodList = [x.__name__ for x in Class.__dict__.values() if inspect.isfunction(x)]
- else :
- Module = __import__(moduleList[len(moduleList) - 1], globals(), locals(),[moduleList[len(moduleList) - 2]], -1)
- methodList = [x.__name__ for x in Module.__dict__.values() if inspect.isfunction(x)]
- ClassList = [x.__name__ for x in Module.__dict__.values() if inspect.isclass(x)]
- self.ClassList = ClassList
- except :
- print "Error : " +str(sys.exc_info()[1])
-
-
- self.method = methodList
- return self.method
-
- def echo(self) :
- print "Echoing !!!!!!"
-
- def getargs(self,moduleName,className,method) :
- '''
- This will return the list of arguments in a method of python module of class.
- It accepts method list as an argument.
- '''
- print "Message : Argument list is being obtained for each method"
- methodArgsDict = {}
- if className == None:
- moduleList = moduleName.split(".")
- for index,name in enumerate(method) :
- Module = __import__(moduleList[len(moduleList) -1], globals(), locals(), [moduleList[len(moduleList) -2]], -1)
- try :
- names = vars(Module)[name]
- except KeyError:
- print "Message : method '" + name + "'does not exists,Continued with including it. "
- return False
- argumentList = inspect.getargspec(names) #inspect.getargvalues(name)
- methodArgsDict[name] = argumentList[0]
- else :
- moduleList = moduleName.split(".")
- for index,name in enumerate(method) :
- Module = __import__(moduleList[len(moduleList) - 1], globals(), locals(), [className], -1)
- Class = getattr(Module, className)
- try :
- names = vars(Class)[name]
- except KeyError :
- print "Message : method '" + name + "'does not exists,Continued with include it."
- return False
-
- argumentList = inspect.getargspec(names) #inspect.getargvalues(name)
- methodArgsDict[name] = argumentList[0]
-
- return methodArgsDict
-
- def configparser(self,fileName):
- '''
- It will parse the config file (ofa.cfg) and return as dictionary
- '''
-
- matchFileName = re.match(r'(.*)\.cfg', fileName, re.M | re.I)
- if matchFileName:
- self.configFile = fileName
- try :
- xml = open(fileName).read()
- self.configDict = xmldict.xml_to_dict(xml)
- return self.configDict
- except :
- print "Error : Config file " + self.configFile + " not defined properly or file path error"
-
-
- def getList(self):
- '''
- This method will maintain the hash with module->class->methodList or
- module -> methodList .It will return the same Hash.
- '''
- classList = []
- try :
- moduleList = self.configDict['config-driver']['importTypes'][self.driver]['modules'].keys()
- except KeyError,e:
- print "Error : Module Does not Exists"
- print e
- return False
-
- for index,value in enumerate(moduleList):
- modulePath = self.configDict['config-driver']['importTypes'][self.driver]['modules'][value]['path']
- moduleName = self.configDict['config-driver']['importTypes'][self.driver]['modules'][value]['name']
-
- try :
- pathList = self.configDict['config-driver']['importTypes'][self.driver]['modules'][value]['set-path'].split(",")
- sys.path.extend(pathList)
- except KeyError :
- print "Error : No System Path is given "
- pass
- try :
- Class = self.configDict['config-driver']['importTypes'][self.driver]['modules'][value]['classes']
- except :
- Class = None
- if Class == None :
- methodList = self.getmethods(modulePath,None)
- self.methodDict[moduleName] = methodList
- self.method_ignoreList(value,None)
- self.getMethodArgsHash(moduleName,value,None)
- else :
- classList = self.configDict['config-driver']['importTypes'][self.driver]['modules'][value]['classes'].keys()
- for indx,className in enumerate(classList):
- if className == 'ignore-list' :
- pass
- else :
- methodList = self.getmethods(modulePath,className)
- self.methodDict[moduleName] = {className : methodList}
- self.method_ignoreList(value,className)
- self.class_ignoreList(value)
- self.getMethodArgsHash(moduleName,value,className)
-
- def class_ignoreList(self,module) :
- '''
- It removes the ignored classes for each module mention in ofadriver.cfg
- '''
- class_ignoreList = []
- if self.configDict['config-driver']['importTypes'][self.driver]['modules'][module]['classes'] == None :
- pass
- else :
- try :
- class_ignoreList = str(self.configDict['config-driver']['importTypes'][self.driver]['modules'][module]['classes']['ignore-list']).split(",")
- except KeyError :
- print "Message : No Class Ignore List present"
- return True
- moduleName = self.configDict['config-driver']['importTypes'][self.driver]['modules'][module]['name']
- try :
- for index,className in enumerate(class_ignoreList):
- if className in self.methodDict[moduleName].keys():
- del self.methodDict[moduleName][className]
- except AttributeError:
- pass
- return self.methodDict
-
- def method_ignoreList(self,module,className):
- '''
- It removes the ignored methods of each module or class mentioned in ofadriver.cfg.
- '''
- method_ignoreList = []
-
- try :
- if className == None :
- try :
- method_ignoreList = str(self.configDict['config-driver']['importTypes'][self.driver]['modules'][module]['methods']['ignore-list']).split(",")
- except TypeError :
- pass
- else :
- try :
- method_ignoreList = str(self.configDict['config-driver']['importTypes'][self.driver]['modules'][module]['classes'][className]['methods']['ignore-list']).split(",")
- except TypeError :
- pass
- except KeyError :
- print "Message : No Ignore-List Exists , proceeding for looking add method"
- self.add_method(module,className)
- return True
-
- moduleName = self.configDict['config-driver']['importTypes'][self.driver]['modules'][module]['name']
- #import pprint
- #pprint.pprint(self.methodDict[moduleName])
- for index, method in enumerate(method_ignoreList) :
- if className == None :
- try :
- self.methodDict[moduleName].remove(method)
- #pprint.pprint(self.methodDict)
- except ValueError:
- print "Message : Method " + method + "Does not exist in module " + moduleName + ", Continue to rest execution"
- pass
-
- else :
- if method in self.methodDict[moduleName][className] :
- self.methodDict[moduleName][className].remove(method)
- self.add_method(module,className)
- return self.methodDict
-
- def add_method(self,module,className) :
- '''
- This will add the methods(mentioned in ofadriver.cfg file) into method list if it doesnot exists in list.
- '''
- method_List = []
- try :
- if className == None :
- try :
- method_List = str(self.configDict['config-driver']['importTypes'][self.driver]['modules'][module]['methods']['add-list']).split(",")
- except TypeError :
- pass
- else :
- try :
- method_List = str(self.configDict['config-driver']['importTypes'][self.driver]['modules'][module]['classes'][className]['methods']['add-list']).split(",")
- except TypeError :
- pass
-
- except KeyError :
- print "Message : No Add-List Exists , Proceeding with all available methods"
- return True
- moduleName = self.configDict['config-driver']['importTypes'][self.driver]['modules'][module]['name']
- for index, method in enumerate(method_List) :
- if className == None :
- self.methodDict[moduleName] = []
- self.methodDict[moduleName].append(method)
- else :
- self.methodDict[moduleName][className] = []
- self.methodDict[moduleName][className].append(method)
-
- def getMethodArgsHash(self,moduleName,module,className):
- '''
- This will maintain a Hash of class->method->argumentsList
- '''
- modulePath = self.configDict['config-driver']['importTypes'][self.driver]['modules'][module]['path']
- moduleList = modulePath.split("/")
- newModule = ".".join([moduleList[len(moduleList) - 2],moduleList[len(moduleList) - 1]])
- if className == None :
- methodArgs = self.getargs(newModule,None,self.methodDict[moduleName])
- self.fileDict[moduleName] = methodArgs
- else :
- methodArgs = self.getargs(newModule,className,self.methodDict[moduleName][className])
- self.fileDict[className] = methodArgs
- return self.fileDict
-
- def appendDriver(self,fileName):
- '''
- This will append the given driver file with methods along with arguments.
- '''
- matchFileName = re.match(r'(.*)\.py', fileName, re.M | re.I)
-
- if matchFileName:
- fileHandle = None
- try :
- print "Message : Writing Driver file at " + fileName
- fileHandle = open(fileName,"a")
- content = ''
-
- for index, key in enumerate(self.fileDict.keys()):
- try :
- for ind, method in enumerate(self.fileDict[key].keys()):
- if not method == "__init__" :
- args = ''
- args = ",".join(self.fileDict[key][method])
- content = content + "\n" + " " * 4 + "def " + method + "(self," + args + ") :"
- content = content + "\n" + " " * 8 + "return " + key + "." + method + "(" + args + ")\n"
- except AttributeError :
- pass
- fileHandle.write(content)
- fileHandle.close()
- return content
-
- except :
- print "Error : Driver file " + fileName + "does not exists"
- else :
- print "Error : File name " + fileName + "is not python module"
- return False
-
-
- def writeDriver(self, driver) :
- '''
- This will accept the List of driver name and write those drivers if no driver name is specified
- then it will write all of the driver specified in the ofadriver.cfg.
- '''
- self.printHeader(driver)
- drivers = []
- commaMatch = re.search(",", driver, flags=0)
- if commaMatch:
- drivers = driver.split(",")
- else :
- drivers.append(driver)
- self.driverList = []
- if len(drivers) == 0:
- for index, driverName in enumerate(self.configDict['config-driver']['importTypes'].keys()):
- self.driver = driverName
- result = self.getList()
- if result :
- self.getDriverPath()
- self.appendDriver(self.driverPath + self.driver + ".py")
- self.driverList.append(self.driverPath + self.driver + ".py")
- else :
- return False
- else :
- for index, driverName in enumerate(drivers) :
-
- self.driver = driverName
- result = self.getList()
- if result :
- self.getDriverPath()
- self.appendDriver(self.driverPath + self.driver + ".py")
- self.driverList.append(self.driverPath + self.driver + ".py")
- else :
- return False
-
- print "=" * 90
- print " " * 30 + "Output Driver File :"
- print ",\n".join(self.driverList)
- print "=" * 90
- return True
-
-
-
- def getDriverPath(self):
- '''
- It will set the driver path and returns it.If driver path is not specified then it will take
- default path (/lib/updatedriver/).
- '''
- self.driverPath = ''
- try :
- self.driverPath = self.configDict['config-driver']['importTypes'][self.driver]['driver-path']
-
- except KeyError:
- location = os.path.abspath( os.path.dirname( __file__ ) )
- path = re.sub( "(bin)$", "", location )
- self.driverPath = path + "/lib/updatedriver/"
- return self.driverPath
-
-
- def printHeader(self,driver):
- content = ''
-
- print " " * 10 +"=" * 90 + "\n"
- content = content + " " * 30 + "*-- Welcome to Updated Driver --*\n"
- content = content + "\n" + " " * 10 + " " * 10 + "Config File : " + "/home/openflow/TestON/config/ofadriver.py"
- content = content + "\n" + " " * 10 + " " * 10 + "Drivers Name : " + driver
- print content
- print " " * 10 + "=" * 90
-
-
-
diff --git a/TestON/bin/vyatta.py b/TestON/bin/vyatta.py
deleted file mode 100644
index 225e578..0000000
--- a/TestON/bin/vyatta.py
+++ /dev/null
@@ -1,702 +0,0 @@
-'''
-
- TestON is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- TestON is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with TestON. If not, see <http://www.gnu.org/licenses/>.
-
-
-'''
-class Vyatta:
- def __init__( self ):
- self.prompt = '(.*)'
- self.timeout = 60
-
- def show_interfaces(self, *options, **def_args ):
- '''Possible Options :['ethernet', 'loopback']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet(self, *options, **def_args ):
- '''Possible Options :['eth0', 'eth1']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_loopback(self, *options, **def_args ):
- '''Possible Options :['lo']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces loopback "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet(self, *options, **def_args ):
- '''Possible Options :['eth0', 'eth1']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_loopback_lo(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces loopback lo "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0(self, *options, **def_args ):
- '''Possible Options :['address', 'bond-group', 'bridge-group', 'description', 'dhcpv6-options', 'DHCPv6', 'disable', 'disable-flow-control', 'Disable', 'disable-link-detect', 'Ignore', 'duplex', 'firewall', 'hw-id', 'ip', 'ipv6', 'mac', 'mirror', 'mtu', 'policy', 'pppoe']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth1(self, *options, **def_args ):
- '''Possible Options :['address', 'duplex', 'hw-id', 'smp_affinity', 'speed']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth1 "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth0(self, *options, **def_args ):
- '''Possible Options :['duplex', 'hw-id', 'smp_affinity', 'speed']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth0 "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_ip(self, *options, **def_args ):
- '''Possible Options :['enable-proxy-arp', 'Enable', 'ospf', 'rip']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 ip "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_hwid(self, *options, **def_args ):
- '''Possible Options :['Media']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 hw-id "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_DHCPv6(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 DHCPv6 "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_duplex(self, *options, **def_args ):
- '''Possible Options :['auto', 'half', 'full']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 duplex "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth1_hwid(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth1 hw-id "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth0_speed(self, *options, **def_args ):
- '''Possible Options :['auto']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth0 speed "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth1_speed(self, *options, **def_args ):
- '''Possible Options :['auto']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth1 speed "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth0_hwid(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth0 hw-id "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_Ignore(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 Ignore "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth1_duplex(self, *options, **def_args ):
- '''Possible Options :['auto']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth1 duplex "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth0_duplex(self, *options, **def_args ):
- '''Possible Options :['auto']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth0 duplex "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_ip_ospf(self, *options, **def_args ):
- '''Possible Options :['authentication', 'OSPF', 'bandwidth', 'cost', 'dead-interval', 'Interval', 'hello-interval', 'Interval', 'mtu-ignore', 'network', 'priority', 'retransmit-interval', 'Interval', 'transmit-delay', 'Link']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 ip ospf "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_Disable(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 Disable "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_disable(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 disable "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_address(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 address "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_firewall(self, *options, **def_args ):
- '''Possible Options :['in', 'local', 'out']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 firewall "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth1_address(self, *options, **def_args ):
- '''Possible Options :['192.168.56.81/24']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth1 address "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_ip_Enable(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 ip Enable "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_bondgroup(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 bond-group "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_duplex_half(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 duplex half "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_firewall_in(self, *options, **def_args ):
- '''Possible Options :['ipv6-name', 'name']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 firewall in "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth1_speed_auto(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth1 speed auto "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_description(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 description "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth0_speed_auto(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth0 speed auto "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_hwid_Media(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 hw-id Media "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_duplex_auto(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 duplex auto "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_duplex_full(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 duplex full "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth0_duplex_auto(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth0 duplex auto "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_ip_ospf_OSPF(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 ip ospf OSPF "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_firewall_out(self, *options, **def_args ):
- '''Possible Options :['ipv6-name', 'name']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 firewall out "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_bridgegroup(self, *options, **def_args ):
- '''Possible Options :['bridge', 'cost', 'priority']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 bridge-group "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth1_duplex_auto(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth1 duplex auto "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_ip_ospf_cost(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 ip ospf cost "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth0_smp_affinity(self, *options, **def_args ):
- '''Possible Options :['auto']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth0 smp_affinity "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth1_smp_affinity(self, *options, **def_args ):
- '''Possible Options :['auto']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth1 smp_affinity "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_firewall_local(self, *options, **def_args ):
- '''Possible Options :['ipv6-name', 'name']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 firewall local "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_dhcpv6options(self, *options, **def_args ):
- '''Possible Options :['parameters-only', 'Acquire', 'temporary']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 dhcpv6-options "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_firewall_in_name(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 firewall in name "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_bridgegroup_cost(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 bridge-group cost "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_firewall_out_name(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 firewall out name "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_ip_ospf_bandwidth(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 ip ospf bandwidth "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth0_smp_affinity_auto(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth0 smp_affinity auto "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def show_interfaces_ethernet_eth1_smp_affinity_auto(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "show interfaces ethernet eth1 smp_affinity auto "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_ip_enableproxyarp(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 ip enable-proxy-arp "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_disablelinkdetect(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 disable-link-detect "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_firewall_local_name(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 firewall local name "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_bridgegroup_bridge(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 bridge-group bridge "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_disableflowcontrol(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 disable-flow-control "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_bridgegroup_priority(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 bridge-group priority "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_firewall_in_ipv6name(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 firewall in ipv6-name "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_dhcpv6options_Acquire(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 dhcpv6-options Acquire "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_firewall_out_ipv6name(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 firewall out ipv6-name "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_ip_ospf_authentication(self, *options, **def_args ):
- '''Possible Options :['md5', 'plaintext-password', 'Plain']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 ip ospf authentication "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_firewall_local_ipv6name(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 firewall local ipv6-name "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_dhcpv6options_temporary(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 dhcpv6-options temporary "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_ip_ospf_authentication_md5(self, *options, **def_args ):
- '''Possible Options :['key-id']'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 ip ospf authentication md5 "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_ip_ospf_authentication_Plain(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 ip ospf authentication Plain "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_dhcpv6options_parametersonly(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 dhcpv6-options parameters-only "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_ip_ospf_authentication_md5_keyid(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 ip ospf authentication md5 key-id "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
- def set_interfaces_ethernet_eth0_ip_ospf_authentication_plaintextpassword(self, *options, **def_args ):
- '''Possible Options :[]'''
- arguments= ''
- for option in options:
- arguments = arguments + option +' '
- prompt = def_args.setdefault('prompt',self.prompt)
- timeout = def_args.setdefault('timeout',self.timeout)
- self.execute( cmd= "set interfaces ethernet eth0 ip ospf authentication plaintext-password "+ arguments, prompt = prompt, timeout = timeout )
- return main.TRUE
-
diff --git a/TestON/config/docs.cfg b/TestON/config/docs.cfg
new file mode 100644
index 0000000..590b009
--- /dev/null
+++ b/TestON/config/docs.cfg
@@ -0,0 +1,19 @@
+[epydoc] # Epydoc section marker (required by ConfigParser)
+
+# Information about the project.
+name: TestON
+url: https://github.com/opennetworkinglab/OnosSystemTest
+
+modules: core, bin, drivers
+
+# Write html output to the directory "apidocs"
+output: html
+target: Documentation/
+
+# Include all automatically generated graphs. These graphs are
+# generated using Graphviz dot.
+graph: all
+dotpath: /usr/bin/dot
+
+# Use included style to show inherited methods, variables, and properties
+inheritance: included
diff --git a/TestON/config/updatedriver.cfg b/TestON/config/updatedriver.cfg
deleted file mode 100644
index fb713a8..0000000
--- a/TestON/config/updatedriver.cfg
+++ /dev/null
@@ -1,52 +0,0 @@
-<config-driver>
- <importTypes>
- <fvtdriver>
- <modules>
- <module1>
- <name>testutils</name>
- <path> /home/paxterra/Desktop/AptanaWorkSpace/TestON/lib/flowvisor-test/tests/testutils</path>
- <set-path> /home/paxterra/Desktop/AptanaWorkSpace/TestON/lib/flowvisor-test/tests,/home/paxterra/Desktop/AptanaWorkSpace//TestON/lib/flowvisor-test/src/python/ </set-path>
- <methods>
- <ignore-list>tearDownFakeDevices,chkSwitchStats</ignore-list>
- </methods>
- </module1>
- <module2>
- <name>templatetest</name>
- <path>/home/paxterra/Desktop/AptanaWorkSpace/TestON/lib/flowvisor-test/tests/templatetest</path>
- <set-path>/home/paxterra/Desktop/AptanaWorkSpace/TestON/lib/flowvisor-test/tests,/home/paxterra/Desktop/AptanaWorkSpace/TestON/lib/flowvisor-test/src/python/ </set-path>
- <classes>
- <TemplateTest>
- <methods>
- </methods>
- </TemplateTest>
- </classes>
- </module2>
- </modules>
- </fvtdriver>
- <fvtadd>
- <driver-path>/home/paxterra/Desktop/AptanaWorkSpace/TestON/lib/updatedriver/</driver-path>
- <modules>
- <module1>
- <name>testutils</name>
- <path>/home/paxterra/Desktop/AptanaWorkSpace/TestON/lib/flowvisor-test/tests/testutils</path>
- <set-path>/home/paxterra/Desktop/AptanaWorkSpace/TestON/lib/flowvisor-test/tests,/home/paxterra/Desktop/AptanaWorkSpace/TestON/lib/flowvisor-test/src/python/ </set-path>
- <methods>
- <add-list>tearDownFakeDevices,chkSwitchStats,chkSetUpCondition</add-list>
- </methods>
- </module1>
- <module2>
- <name>templatetest</name>
- <path>/home/openflow/TestON/lib/flowvisor-test/tests/templatetest</path>
- <set-path>/home/openflow/TestON/lib/flowvisor-test/tests,/home/openflow/TestON/lib/flowvisor-test/src/python/ </set-path>
- <classes>
- <TemplateTest>
- <methods>
- </methods>
- </TemplateTest>
- </classes>
- </module2>
- </modules>
- </fvtadd>
- </importTypes>
-
-</config-driver>
diff --git a/TestON/drivers/common/api/controller/onosrestdriver.py b/TestON/drivers/common/api/controller/onosrestdriver.py
index 08f242d..ff3d2e4 100644
--- a/TestON/drivers/common/api/controller/onosrestdriver.py
+++ b/TestON/drivers/common/api/controller/onosrestdriver.py
@@ -1760,18 +1760,18 @@
def checkStatus(
self,
- topologyResult,
numoswitch,
numolink,
+ numoctrl = -1,
logLevel="info" ):
"""
Checks the number of switches & links that ONOS sees against the
supplied values. By default this will report to main.log, but the
log level can be specific.
- Params: topologyResult = the output of topology command
- numoswitch = expected number of switches
+ Params: numoswitch = expected number of switches
numolink = expected number of links
+ numoctrl = expected number of controllers
logLevel = level to log to.
Currently accepts 'info', 'warn' and 'report'
@@ -1780,19 +1780,21 @@
and main.ERROR otherwise
"""
try:
- topology = self.getTopology( topologyResult )
+ topology = self.getTopology( self.topology() )
if topology == {}:
return main.ERROR
output = ""
# Is the number of switches is what we expected
devices = topology.get( 'devices', False )
links = topology.get( 'links', False )
- if devices is False or links is False:
+ nodes = topology.get( 'nodes' , False )
+ if devices is False or links is False or nodes is False:
return main.ERROR
switchCheck = ( int( devices ) == int( numoswitch ) )
# Is the number of links is what we expected
linkCheck = ( int( links ) == int( numolink ) )
- if switchCheck and linkCheck:
+ nodeCheck = ( int(nodes) == int(numoctrl) )or int(numoctrl) == -1
+ if switchCheck and linkCheck and nodeCheck:
# We expected the correct numbers
output = output + "The number of links and switches match "\
+ "what was expected"
@@ -1806,6 +1808,9 @@
output = output + " (%i expected) " % int( numoswitch )
output = output + "and %i links " % int( links )
output = output + "(%i expected)" % int( numolink )
+ if int( numoctrl ) > 0:
+ output = output + "and %i controllers " % int( nodes )
+ output = output + "(%i expected)" % int( numoctrl )
if logLevel == "report":
main.log.report( output )
elif logLevel == "warn":
@@ -1821,4 +1826,4 @@
except Exception:
main.log.exception( self.name + ": Uncaught exception!" )
main.cleanup()
- main.exit()
\ No newline at end of file
+ main.exit()
diff --git a/TestON/drivers/common/cli/emulator/mininetclidriver.py b/TestON/drivers/common/cli/emulator/mininetclidriver.py
index b38e257..1632fee 100644
--- a/TestON/drivers/common/cli/emulator/mininetclidriver.py
+++ b/TestON/drivers/common/cli/emulator/mininetclidriver.py
@@ -38,6 +38,7 @@
import os
from math import pow
from drivers.common.cli.emulatordriver import Emulator
+from core.graph import Graph
class MininetCliDriver( Emulator ):
@@ -57,6 +58,7 @@
self.hostPrompt = "~#"
self.bashPrompt = "\$"
self.scapyPrompt = ">>>"
+ self.graph = Graph()
def connect( self, **connectargs ):
"""
@@ -126,7 +128,7 @@
Starts Mininet accepts a topology(.py) file and/or an optional
argument, to start the mininet, as a parameter.
Can also send regular mininet command to load up desired topology.
- Eg. Pass in a string 'sudo mn --topo=tree,3,3' to mnCmd
+ Eg. Pass in a string 'mn --topo=tree,3,3' to mnCmd
Options:
topoFile = file path for topology file (.py)
args = extra option added when starting the topology from the file
@@ -1827,6 +1829,72 @@
main.cleanup()
main.exit()
+ def getSwitchRandom( self, timeout=60, nonCut=True ):
+ """
+ Randomly get a switch from Mininet topology.
+ If nonCut is True, it gets a list of non-cut switches (the deletion
+ of a non-cut switch will not increase the number of connected
+ components of a graph) and randomly returns one of them, otherwise
+ it just randomly returns one switch from all current switches in
+ Mininet.
+ Returns the name of the chosen switch.
+ """
+ import random
+ candidateSwitches = []
+ try:
+ if not nonCut:
+ switches = self.getSwitches( timeout=timeout )
+ assert len( switches ) != 0
+ for switchName in switches.keys():
+ candidateSwitches.append( switchName )
+ else:
+ graphDict = self.getGraphDict( timeout=timeout, useId=False )
+ if graphDict == None:
+ return None
+ self.graph.update( graphDict )
+ candidateSwitches = self.graph.getNonCutVertices()
+ if candidateSwitches == None:
+ return None
+ elif len( candidateSwitches ) == 0:
+ main.log.info( self.name + ": No candidate switch for deletion" )
+ return None
+ else:
+ switch = random.sample( candidateSwitches, 1 )
+ return switch[ 0 ]
+ except KeyError:
+ main.log.exception( self.name + ": KeyError exception found" )
+ return None
+ except AssertionError:
+ main.log.exception( self.name + ": AssertionError exception found" )
+ return None
+ except Exception:
+ main.log.exception( self.name + ": Uncaught exception" )
+ return None
+
+ def delSwitchRandom( self, timeout=60, nonCut=True ):
+ """
+ Randomly delete a switch from Mininet topology.
+ If nonCut is True, it gets a list of non-cut switches (the deletion
+ of a non-cut switch will not increase the number of connected
+ components of a graph) and randomly chooses one for deletion,
+ otherwise it just randomly delete one switch from all current
+ switches in Mininet.
+ Returns the name of the deleted switch
+ """
+ try:
+ switch = self.getSwitchRandom( timeout, nonCut )
+ if switch == None:
+ return None
+ else:
+ deletionResult = self.delSwitch( switch )
+ if deletionResult:
+ return switch
+ else:
+ return None
+ except Exception:
+ main.log.exception( self.name + ": Uncaught exception" )
+ return None
+
def addLink( self, node1, node2 ):
"""
add a link to the mininet topology
@@ -1892,6 +1960,75 @@
main.cleanup()
main.exit()
+ def getLinkRandom( self, timeout=60, nonCut=True ):
+ """
+ Randomly get a link from Mininet topology.
+ If nonCut is True, it gets a list of non-cut links (the deletion
+ of a non-cut link will not increase the number of connected
+ component of a graph) and randomly returns one of them, otherwise
+ it just randomly returns one link from all current links in
+ Mininet.
+ Returns the link as a list, e.g. [ 's1', 's2' ]
+ """
+ import random
+ candidateLinks = []
+ try:
+ if not nonCut:
+ links = self.getLinks( timeout=timeout )
+ assert len( links ) != 0
+ for link in links:
+ # Exclude host-switch link
+ if link[ 'node1' ].startswith( 'h' ) or link[ 'node2' ].startswith( 'h' ):
+ continue
+ candidateLinks.append( [ link[ 'node1' ], link[ 'node2' ] ] )
+ else:
+ graphDict = self.getGraphDict( timeout=timeout, useId=False )
+ if graphDict == None:
+ return None
+ self.graph.update( graphDict )
+ candidateLinks = self.graph.getNonCutEdges()
+ if candidateLinks == None:
+ return None
+ elif len( candidateLinks ) == 0:
+ main.log.info( self.name + ": No candidate link for deletion" )
+ return None
+ else:
+ link = random.sample( candidateLinks, 1 )
+ return link[ 0 ]
+ except KeyError:
+ main.log.exception( self.name + ": KeyError exception found" )
+ return None
+ except AssertionError:
+ main.log.exception( self.name + ": AssertionError exception found" )
+ return None
+ except Exception:
+ main.log.exception( self.name + ": Uncaught exception" )
+ return None
+
+ def delLinkRandom( self, timeout=60, nonCut=True ):
+ """
+ Randomly delete a link from Mininet topology.
+ If nonCut is True, it gets a list of non-cut links (the deletion
+ of a non-cut link will not increase the number of connected
+ component of a graph) and randomly chooses one for deletion,
+ otherwise it just randomly delete one link from all current links
+ in Mininet.
+ Returns the deleted link as a list, e.g. [ 's1', 's2' ]
+ """
+ try:
+ link = self.getLinkRandom( timeout, nonCut )
+ if link == None:
+ return None
+ else:
+ deletionResult = self.delLink( link[ 0 ], link[ 1 ] )
+ if deletionResult:
+ return link
+ else:
+ return None
+ except Exception:
+ main.log.exception( self.name + ": Uncaught exception" )
+ return None
+
def addHost( self, hostname, **kwargs ):
"""
Add a host to the mininet topology
@@ -2476,6 +2613,48 @@
'enabled': isUp } )
return ports
+ def getOVSPorts( self, nodeName ):
+ """
+ Read ports from OVS by executing 'ovs-ofctl dump-ports-desc' command.
+
+ Returns a list of dictionaries containing information about each
+ port of the given switch.
+ """
+ command = "sh ovs-ofctl dump-ports-desc " + str( nodeName )
+ try:
+ response = self.execute(
+ cmd=command,
+ prompt="mininet>",
+ timeout=10 )
+ ports = []
+ if response:
+ for line in response.split( "\n" ):
+ # Regex patterns to parse 'ovs-ofctl dump-ports-desc' output
+ # Example port:
+ # 1(s1-eth1): addr:ae:60:72:77:55:51
+ pattern = "(?P<index>\d+)\((?P<name>[^-]+-eth(?P<port>\d+))\):\saddr:(?P<mac>([a-f0-9]{2}:){5}[a-f0-9]{2})"
+ result = re.search( pattern, line )
+ if result:
+ index = result.group( 'index' )
+ name = result.group( 'name' )
+ # This port number is extracted from port name
+ port = result.group( 'port' )
+ mac = result.group( 'mac' )
+ ports.append( { 'index': index,
+ 'name': name,
+ 'port': port,
+ 'mac': mac } )
+ return ports
+ except pexpect.EOF:
+ main.log.error( self.name + ": EOF exception found" )
+ main.log.error( self.name + ": " + self.handle.before )
+ main.cleanup()
+ main.exit()
+ except Exception:
+ main.log.exception( self.name + ": Uncaught exception!" )
+ main.cleanup()
+ main.exit()
+
def getSwitches( self, verbose=False ):
"""
Read switches from Mininet.
@@ -2963,6 +3142,100 @@
return switchList
+ def getGraphDict( self, timeout=60, useId=True, includeHost=False ):
+ """
+ Return a dictionary which describes the latest Mininet topology data as a
+ graph.
+ An example of the dictionary:
+ { vertex1: { 'edges': ..., 'name': ..., 'protocol': ... },
+ vertex2: { 'edges': ..., 'name': ..., 'protocol': ... } }
+ Each vertex should at least have an 'edges' attribute which describes the
+ adjacency information. The value of 'edges' attribute is also represented by
+ a dictionary, which maps each edge (identified by the neighbor vertex) to a
+ list of attributes.
+ An example of the edges dictionary:
+ 'edges': { vertex2: { 'port': ..., 'weight': ... },
+ vertex3: { 'port': ..., 'weight': ... } }
+ If useId == True, dpid/mac will be used instead of names to identify
+ vertices, which is helpful when e.g. comparing Mininet topology with ONOS
+ topology.
+ If includeHost == True, all hosts (and host-switch links) will be included
+ in topology data.
+ Note that link or switch that are brought down by 'link x x down' or 'switch
+ x down' commands still show in the output of Mininet CLI commands such as
+ 'links', 'dump', etc. Thus, to ensure the correctness of this function, it is
+ recommended to use delLink() or delSwitch functions to simulate link/switch
+ down, and addLink() or addSwitch to add them back.
+ """
+ graphDict = {}
+ try:
+ links = self.getLinks( timeout=timeout )
+ portDict = {}
+ if useId:
+ switches = self.getSwitches()
+ if includeHost:
+ hosts = self.getHosts()
+ for link in links:
+ # FIXME: support 'includeHost' argument
+ if link[ 'node1' ].startswith( 'h' ) or link[ 'node2' ].startswith( 'h' ):
+ continue
+ nodeName1 = link[ 'node1' ]
+ nodeName2 = link[ 'node2' ]
+ port1 = link[ 'port1' ]
+ port2 = link[ 'port2' ]
+ # Loop for two nodes
+ for i in range( 2 ):
+ # Get port index from OVS
+ # The index extracted from port name may be inconsistent with ONOS
+ portIndex = -1
+ if not nodeName1 in portDict.keys():
+ portList = self.getOVSPorts( nodeName1 )
+ if len( portList ) == 0:
+ main.log.warn( self.name + ": No port found on switch " + nodeName1 )
+ return None
+ portDict[ nodeName1 ] = portList
+ for port in portDict[ nodeName1 ]:
+ if port[ 'port' ] == port1:
+ portIndex = port[ 'index' ]
+ break
+ if portIndex == -1:
+ main.log.warn( self.name + ": Cannot find port index for interface {}-eth{}".format( nodeName1, port1 ) )
+ return None
+ if useId:
+ node1 = 'of:' + str( switches[ nodeName1 ][ 'dpid' ] )
+ node2 = 'of:' + str( switches[ nodeName2 ][ 'dpid' ] )
+ else:
+ node1 = nodeName1
+ node2 = nodeName2
+ if not node1 in graphDict.keys():
+ if useId:
+ graphDict[ node1 ] = { 'edges':{},
+ 'dpid':switches[ nodeName1 ][ 'dpid' ],
+ 'name':nodeName1,
+ 'ports':switches[ nodeName1 ][ 'ports' ],
+ 'swClass':switches[ nodeName1 ][ 'swClass' ],
+ 'pid':switches[ nodeName1 ][ 'pid' ],
+ 'options':switches[ nodeName1 ][ 'options' ] }
+ else:
+ graphDict[ node1 ] = { 'edges':{} }
+ else:
+ # Assert node2 is not connected to any current links of node1
+ assert node2 not in graphDict[ node1 ][ 'edges' ].keys()
+ graphDict[ node1 ][ 'edges' ][ node2 ] = { 'port':portIndex }
+ # Swap two nodes/ports
+ nodeName1, nodeName2 = nodeName2, nodeName1
+ port1, port2 = port2, port1
+ return graphDict
+ except KeyError:
+ main.log.exception( self.name + ": KeyError exception found" )
+ return None
+ except AssertionError:
+ main.log.exception( self.name + ": AssertionError exception found" )
+ return None
+ except Exception:
+ main.log.exception( self.name + ": Uncaught exception" )
+ return None
+
def update( self ):
"""
updates the port address and status information for
diff --git a/TestON/drivers/common/cli/onosclidriver.py b/TestON/drivers/common/cli/onosclidriver.py
old mode 100644
new mode 100755
index 832fe29..32a08e9
--- a/TestON/drivers/common/cli/onosclidriver.py
+++ b/TestON/drivers/common/cli/onosclidriver.py
@@ -23,6 +23,7 @@
import time
import os
from drivers.common.clidriver import CLI
+from core.graph import Graph
class OnosCliDriver( CLI ):
@@ -34,6 +35,7 @@
self.name = None
self.home = None
self.handle = None
+ self.graph = Graph()
super( CLI, self ).__init__()
def connect( self, **connectargs ):
@@ -811,8 +813,8 @@
Dependencies: checkMasters() and summary()
- Returns main.True if the devices are balanced
- Returns main.False if the devices are unbalanced
+ Returns main.TRUE if the devices are balanced
+ Returns main.FALSE if the devices are unbalanced
Exits on Exception
Returns None on TypeError
"""
@@ -849,7 +851,7 @@
main.cleanup()
main.exit()
- def links( self, jsonFormat=True ):
+ def links( self, jsonFormat=True, timeout=30 ):
"""
Lists all core links
Optional argument:
@@ -859,7 +861,7 @@
cmdStr = "links"
if jsonFormat:
cmdStr += " -j"
- handle = self.sendline( cmdStr )
+ handle = self.sendline( cmdStr, timeout=timeout )
assert "Command not found:" not in handle, handle
return handle
except AssertionError:
@@ -1402,7 +1404,8 @@
setEthSrc="",
setEthDst="",
vlanId="",
- setVlan="" ):
+ setVlan="",
+ partial=False ):
"""
Note:
This function assumes the format of all ingress devices
@@ -1470,6 +1473,8 @@
cmd += " -v " + str( vlanId )
if setVlan:
cmd += " --setVlan " + str( setVlan )
+ if partial:
+ cmd += " --partial"
# Check whether the user appended the port
# or provided it as an input
@@ -1554,7 +1559,8 @@
setEthSrc="",
setEthDst="",
vlanId="",
- setVlan="" ):
+ setVlan="",
+ partial=False ):
"""
Note:
This function assumes the format of all egress devices
@@ -1622,6 +1628,8 @@
cmd += " -v " + str( vlanId )
if setVlan:
cmd += " --setVlan " + str( setVlan )
+ if partial:
+ cmd += " --partial"
# Check whether the user appended the port
# or provided it as an input
@@ -1831,7 +1839,7 @@
-p or --purge: Purge the intent from the store after removal
Returns:
- main.False on error and
+ main.FALSE on error and
cli output otherwise
"""
try:
@@ -1866,7 +1874,7 @@
main.cleanup()
main.exit()
- def removeAllIntents( self, purge=False, sync=False, app='org.onosproject.cli' ):
+ def removeAllIntents( self, purge=False, sync=False, app='org.onosproject.cli', timeout=30 ):
"""
Description:
Remove all the intents
@@ -1885,7 +1893,7 @@
cmdStr += " -s"
cmdStr += " " + app
- handle = self.sendline( cmdStr )
+ handle = self.sendline( cmdStr, timeout=timeout )
assert "Command not found:" not in handle, handle
if re.search( "Error", handle ):
main.log.error( "Error in removing intent" )
@@ -2238,7 +2246,7 @@
# Check response if something wrong
response = self.sendline( cmd, timeout=timeout )
if response == None:
- return main.False
+ return main.FALSE
response = json.loads( response )
# get total and installed number, see if they are match
@@ -2351,7 +2359,7 @@
except ( TypeError, ValueError ):
main.log.exception( "{}: Object not as expected: {!r}".format( self.name, rawFlows ) )
return None
-
+
except AssertionError:
main.log.exception( "" )
return None
@@ -2370,7 +2378,7 @@
def pushTestIntents( self, ingress, egress, batchSize, offset="",
- options="", timeout=10, background = False, noExit=False ):
+ options="", timeout=10, background = False, noExit=False, getResponse=False ):
"""
Description:
Push a number of intents in a batch format to
@@ -2382,6 +2390,9 @@
Optional:
* offset: the keyOffset is where the next batch of intents
will be installed
+ * noExit: If set to True, TestON will not exit if any error when issus command
+ * getResponse: If set to True, function will return ONOS response.
+
Returns: If failed to push test intents, it will returen None,
if successful, return true.
Timeout expection will return None,
@@ -2405,6 +2416,9 @@
if response == None:
return None
+ if getResponse:
+ return response
+
# TODO: We should handle if there is failure in installation
return main.TRUE
@@ -2777,20 +2791,15 @@
main.cleanup()
main.exit()
- def checkStatus(
- self,
- topologyResult,
- numoswitch,
- numolink,
- logLevel="info" ):
+ def checkStatus(self, numoswitch, numolink, numoctrl = -1, logLevel="info"):
"""
Checks the number of switches & links that ONOS sees against the
supplied values. By default this will report to main.log, but the
log level can be specific.
- Params: topologyResult = the output of topology command
- numoswitch = expected number of switches
+ Params: numoswitch = expected number of switches
numolink = expected number of links
+ numoctrl = expected number of controllers
logLevel = level to log to.
Currently accepts 'info', 'warn' and 'report'
@@ -2798,20 +2807,25 @@
main.FALSE if the number of switches and links is incorrect,
and main.ERROR otherwise
"""
+ import json
try:
- topology = self.getTopology( topologyResult )
- if topology == {} or topology == None:
+ topology = self.getTopology( self.topology() )
+ summary = json.loads( self.summary() )
+
+ if topology == {} or topology == None or summary == {} or summary == None:
return main.ERROR
output = ""
# Is the number of switches is what we expected
devices = topology.get( 'devices', False )
links = topology.get( 'links', False )
- if devices is False or links is False:
+ nodes = summary.get( 'nodes', False )
+ if devices is False or links is False or nodes is False:
return main.ERROR
switchCheck = ( int( devices ) == int( numoswitch ) )
# Is the number of links is what we expected
linkCheck = ( int( links ) == int( numolink ) )
- if switchCheck and linkCheck:
+ nodeCheck = ( int( nodes ) == int( numoctrl ) ) or int( numoctrl ) == -1
+ if switchCheck and linkCheck and nodeCheck:
# We expected the correct numbers
output = output + "The number of links and switches match "\
+ "what was expected"
@@ -2825,6 +2839,9 @@
output = output + " (%i expected) " % int( numoswitch )
output = output + "and %i links " % int( links )
output = output + "(%i expected)" % int( numolink )
+ if int( numoctrl ) > 0:
+ output = output + "and %i controllers " % int( nodes )
+ output = output + "(%i expected)" % int( numoctrl )
if logLevel == "report":
main.log.report( output )
elif logLevel == "warn":
@@ -2948,16 +2965,10 @@
self.name )
return None
# error
- errorPattern = "Command\snot\sfound"
- if re.search( errorPattern, response ):
- main.log.error( "Election app is not loaded on " + self.name )
- # TODO: Should this be main.ERROR?
- return main.FALSE
- else:
- main.log.error( "Error in electionTestLeader on " + self.name +
- ": " + "unexpected response" )
- main.log.error( repr( response ) )
- return main.FALSE
+ main.log.error( "Error in electionTestLeader on " + self.name +
+ ": " + "unexpected response" )
+ main.log.error( repr( response ) )
+ return main.FALSE
except AssertionError:
main.log.exception( "" )
return None
@@ -2994,15 +3005,10 @@
"for the Election app." )
return main.TRUE
# error
- errorPattern = "Command\snot\sfound"
- if re.search( errorPattern, response ):
- main.log.error( "Election app is not loaded on " + self.name )
- return main.FALSE
- else:
- main.log.error( "Error in electionTestRun on " + self.name +
- ": " + "unexpected response" )
- main.log.error( repr( response ) )
- return main.FALSE
+ main.log.error( "Error in electionTestRun on " + self.name +
+ ": " + "unexpected response" )
+ main.log.error( repr( response ) )
+ return main.FALSE
except AssertionError:
main.log.exception( "" )
return None
@@ -3039,15 +3045,10 @@
"elections for the Election app." )
return main.TRUE
# error
- errorPattern = "Command\snot\sfound"
- if re.search( errorPattern, response ):
- main.log.error( "Election app is not loaded on " + self.name )
- return main.FALSE
- else:
- main.log.error( "Error in electionTestWithdraw on " +
- self.name + ": " + "unexpected response" )
- main.log.error( repr( response ) )
- return main.FALSE
+ main.log.error( "Error in electionTestWithdraw on " +
+ self.name + ": " + "unexpected response" )
+ main.log.error( repr( response ) )
+ return main.FALSE
except AssertionError:
main.log.exception( "" )
return None
@@ -4380,7 +4381,7 @@
main.cleanup()
main.exit()
- def summary( self, jsonFormat=True ):
+ def summary( self, jsonFormat=True, timeout=30 ):
"""
Description: Execute summary command in onos
Returns: json object ( summary -j ), returns main.FALSE if there is
@@ -4391,7 +4392,7 @@
cmdStr = "summary"
if jsonFormat:
cmdStr += " -j"
- handle = self.sendline( cmdStr )
+ handle = self.sendline( cmdStr, timeout=timeout )
assert handle is not None, "Error in sendline"
assert "Command not found:" not in handle, handle
assert "Error:" not in handle, handle
@@ -4752,7 +4753,7 @@
main.cleanup()
main.exit()
- def link( self, begin, end, state ):
+ def link( self, begin, end, state, timeout=30, showResponse=True ):
'''
Description:
Bring link down or up in the null-provider.
@@ -4765,6 +4766,44 @@
'''
try:
cmd = "null-link null:{} null:{} {}".format( begin, end, state )
+ response = self.sendline( cmd, showResponse=showResponse, timeout=timeout )
+ assert response is not None, "Error in sendline"
+ assert "Command not found:" not in response, response
+ if "Error" in response or "Failure" in response:
+ main.log.error( response )
+ return main.FALSE
+ return main.TRUE
+ except AssertionError:
+ main.log.exception( "" )
+ return None
+ except TypeError:
+ main.log.exception( self.name + ": Object not as expected" )
+ return main.FALSE
+ except pexpect.EOF:
+ main.log.error( self.name + ": EOF exception found" )
+ main.log.error( self.name + ": " + self.handle.before )
+ main.cleanup()
+ main.exit()
+ except Exception:
+ main.log.exception( self.name + ": Uncaught exception!" )
+ main.cleanup()
+ main.exit()
+
+ def portstate(self, dpid='of:0000000000000102', port='2', state='enable'):
+ '''
+ Description:
+ Changes the state of port in an OF switch by means of the
+ PORTSTATUS OF messages.
+ params:
+ dpid - (string) Datapath ID of the device
+ port - (string) target port in the device
+ state - (string) target state (enable or disabled)
+ returns:
+ main.TRUE if no exceptions were thrown and no Errors are
+ present in the resoponse. Otherwise, returns main.FALSE
+ '''
+ try:
+ cmd = "portstate {} {} {}".format( dpid, port, state )
response = self.sendline( cmd, showResponse=True )
assert response is not None, "Error in sendline"
assert "Command not found:" not in response, response
@@ -4788,3 +4827,102 @@
main.cleanup()
main.exit()
+ def logSet( self, level="INFO", app="org.onosproject" ):
+ """
+ Set the logging level to lvl for a specific app
+ returns main.TRUE on success
+ returns main.FALSE if Error occurred
+ if noExit is True, TestON will not exit, but clean up
+ Available level: DEBUG, TRACE, INFO, WARN, ERROR
+ Level defaults to INFO
+ """
+ try:
+ self.handle.sendline( "log:set %s %s" %( level, app ) )
+ self.handle.expect( "onos>" )
+
+ response = self.handle.before
+ if re.search( "Error", response ):
+ return main.FALSE
+ return main.TRUE
+ except pexpect.TIMEOUT:
+ main.log.exception( self.name + ": TIMEOUT exception found" )
+ main.cleanup()
+ main.exit()
+ except pexpect.EOF:
+ main.log.error( self.name + ": EOF exception found" )
+ main.log.error( self.name + ": " + self.handle.before )
+ main.cleanup()
+ main.exit()
+ except Exception:
+ main.log.exception( self.name + ": Uncaught exception!" )
+ main.cleanup()
+ main.exit()
+
+ def getGraphDict( self, timeout=60, includeHost=False ):
+ """
+ Return a dictionary which describes the latest network topology data as a
+ graph.
+ An example of the dictionary:
+ { vertex1: { 'edges': ..., 'name': ..., 'protocol': ... },
+ vertex2: { 'edges': ..., 'name': ..., 'protocol': ... } }
+ Each vertex should at least have an 'edges' attribute which describes the
+ adjacency information. The value of 'edges' attribute is also represented by
+ a dictionary, which maps each edge (identified by the neighbor vertex) to a
+ list of attributes.
+ An example of the edges dictionary:
+ 'edges': { vertex2: { 'port': ..., 'weight': ... },
+ vertex3: { 'port': ..., 'weight': ... } }
+ If includeHost == True, all hosts (and host-switch links) will be included
+ in topology data.
+ """
+ graphDict = {}
+ try:
+ links = self.links()
+ links = json.loads( links )
+ devices = self.devices()
+ devices = json.loads( devices )
+ idToDevice = {}
+ for device in devices:
+ idToDevice[ device[ 'id' ] ] = device
+ if includeHost:
+ hosts = self.hosts()
+ # FIXME: support 'includeHost' argument
+ for link in links:
+ nodeA = link[ 'src' ][ 'device' ]
+ nodeB = link[ 'dst' ][ 'device' ]
+ assert idToDevice[ nodeA ][ 'available' ] and idToDevice[ nodeB ][ 'available' ]
+ if not nodeA in graphDict.keys():
+ graphDict[ nodeA ] = { 'edges':{},
+ 'dpid':idToDevice[ nodeA ][ 'id' ][3:],
+ 'type':idToDevice[ nodeA ][ 'type' ],
+ 'available':idToDevice[ nodeA ][ 'available' ],
+ 'role':idToDevice[ nodeA ][ 'role' ],
+ 'mfr':idToDevice[ nodeA ][ 'mfr' ],
+ 'hw':idToDevice[ nodeA ][ 'hw' ],
+ 'sw':idToDevice[ nodeA ][ 'sw' ],
+ 'serial':idToDevice[ nodeA ][ 'serial' ],
+ 'chassisId':idToDevice[ nodeA ][ 'chassisId' ],
+ 'annotations':idToDevice[ nodeA ][ 'annotations' ]}
+ else:
+ # Assert nodeB is not connected to any current links of nodeA
+ assert nodeB not in graphDict[ nodeA ][ 'edges' ].keys()
+ graphDict[ nodeA ][ 'edges' ][ nodeB ] = { 'port':link[ 'src' ][ 'port' ],
+ 'type':link[ 'type' ],
+ 'state':link[ 'state' ] }
+ return graphDict
+ except ( TypeError, ValueError ):
+ main.log.exception( self.name + ": Object not as expected" )
+ return None
+ except KeyError:
+ main.log.exception( self.name + ": KeyError exception found" )
+ return None
+ except AssertionError:
+ main.log.exception( self.name + ": AssertionError exception found" )
+ return None
+ except pexpect.EOF:
+ main.log.error( self.name + ": EOF exception found" )
+ main.log.error( self.name + ": " + self.handle.before )
+ return None
+ except Exception:
+ main.log.exception( self.name + ": Uncaught exception!" )
+ return None
diff --git a/TestON/drivers/common/cli/onosdriver.py b/TestON/drivers/common/cli/onosdriver.py
index f3de98f..3c8d484 100755
--- a/TestON/drivers/common/cli/onosdriver.py
+++ b/TestON/drivers/common/cli/onosdriver.py
@@ -1561,7 +1561,7 @@
* fileName: Name of the file
"""
- localtime = time.strftime( '%x %X' )
+ localtime = time.strftime( '%H %M' )
localtime = localtime.replace( "/", "" )
localtime = localtime.replace( " ", "_" )
localtime = localtime.replace( ":", "" )
@@ -1595,7 +1595,7 @@
with multiple file copying
"""
try:
- localtime = time.strftime( '%x %X' )
+ localtime = time.strftime( '%H %M' )
localtime = localtime.replace( "/", "" )
localtime = localtime.replace( " ", "_" )
localtime = localtime.replace( ":", "" )
@@ -1664,6 +1664,8 @@
"stop/waiting",
"Not Running ...",
pexpect.TIMEOUT ], timeout=120 )
+ self.handle.sendline( "" )
+ self.handle.expect( "\$" )
if i == 0 or i == 1:
main.log.info( "ONOS is running" )
@@ -1845,7 +1847,7 @@
deviceCount - number of switches to be assigned
'''
- main.log.step("Creating link graph configuration file." )
+ main.log.info("Creating link graph configuration file." )
linkGraphPath = self.home + "/tools/package/etc/linkGraph.cfg"
tempFile = "/tmp/linkGraph.cfg"
@@ -1921,13 +1923,13 @@
numPorts = number of ports per device. Defaults to 10 both in this function and in ONOS. Optional arg
'''
- main.log.step("Configuring Null Device Provider" )
+ main.log.info("Configuring Null Device Provider" )
clusterCount = len(ONOSIpList)
try:
if type(deviceCount) is int or type(deviceCount) is str:
- main.log.step("Creating device distribution")
+ main.log.info("Creating device distribution")
deviceCount = int(deviceCount)
switchList = [0]*(clusterCount+1)
baselineSwitchCount = deviceCount/clusterCount
diff --git a/TestON/generate-docs.sh b/TestON/generate-docs.sh
new file mode 100755
index 0000000..463e95c
--- /dev/null
+++ b/TestON/generate-docs.sh
@@ -0,0 +1,2 @@
+#/bin/bash
+epydoc --config config/docs.cfg
diff --git a/TestON/install.sh b/TestON/install.sh
index fbbd5a5..dee85c9 100755
--- a/TestON/install.sh
+++ b/TestON/install.sh
@@ -63,10 +63,10 @@
echo "Installing TestON dependencies"
if [ "$DIST" = "Fedora" ]; then
# Fedora may have vlan enabled by default. Still need to confirm and update later
- $install python-pip build-essential python-dev pep8 arping
+ $install python-pip build-essential python-dev pep8 arping python3-requests
$pipinstall pexpect==3.2 configobj==4.7.2 numpy
else
- $install python-pip build-essential python-dev pep8 vlan arping
+ $install python-pip build-essential python-dev pep8 vlan arping python3-requests
$pipinstall pexpect==3.2 configobj==4.7.2 numpy
fi
diff --git a/TestON/tests/CHO/CHOtest/CHOtest.py b/TestON/tests/CHO/CHOtest/CHOtest.py
index 8c92c20..94990c3 100644
--- a/TestON/tests/CHO/CHOtest/CHOtest.py
+++ b/TestON/tests/CHO/CHOtest/CHOtest.py
@@ -146,7 +146,7 @@
main.step( "Start ONOS CLI on all nodes" )
cliResult = main.TRUE
- main.log.step(" Start ONOS cli using thread ")
+ main.step(" Start ONOS cli using thread ")
startCliResult = main.TRUE
pool = []
time1 = time.time()
@@ -499,7 +499,7 @@
import time
main.log.report( "Clean up ONOS" )
- main.log.case( "Stop topology and remove hosts and devices" )
+ main.case( "Stop topology and remove hosts and devices" )
main.step( "Stop Topology" )
stopStatus = main.Mininet1.stopNet()
@@ -2114,7 +2114,7 @@
main.log.report( "Bring some core links down and verify ping all (Host Intents-Spine Topo)" )
main.log.report( "___________________________________________________________________________" )
- main.log.case( "Bring some core links down and verify ping all (Host Intents-Spine Topo)" )
+ main.case( "Bring some core links down and verify ping all (Host Intents-Spine Topo)" )
main.step( "Bring some core links down" )
linkIndex = range(4)
diff --git a/TestON/tests/CHO/CHOtest/dependencies/CHOtestFunctions.py b/TestON/tests/CHO/CHOtest/dependencies/CHOtestFunctions.py
old mode 100644
new mode 100755
index c8d40ac..7a8a08b
--- a/TestON/tests/CHO/CHOtest/dependencies/CHOtestFunctions.py
+++ b/TestON/tests/CHO/CHOtest/dependencies/CHOtestFunctions.py
@@ -139,9 +139,7 @@
linkResult = main.TRUE
for e in range( int( main.numCtrls ) ):
main.log.info( "Checking link number on ONOS%s" % (e+1) )
- topology_output = main.CLIs[e].topology()
- linkResultIndividual = main.ONOScli1.checkStatus( topology_output,
- main.numMNswitches,
+ linkResultIndividual = main.CLIs[e].checkStatus( main.numMNswitches,
str( linkNum ) )
if not linkResultIndividual:
main.log.warn( "Link %s not discovered by ONOS%s" % ( linkEvent, (e+1) ) )
diff --git a/TestON/tests/CHOTestMonkey/dependencies/events/CheckEvent.py b/TestON/tests/CHOTestMonkey/dependencies/events/CheckEvent.py
old mode 100644
new mode 100755
index babdebb..fcbf23d
--- a/TestON/tests/CHOTestMonkey/dependencies/events/CheckEvent.py
+++ b/TestON/tests/CHOTestMonkey/dependencies/events/CheckEvent.py
@@ -104,8 +104,7 @@
for controller in main.controllers:
if controller.isUp():
with controller.CLILock:
- topologyOutput = controller.CLI.topology()
- topoState = controller.CLI.checkStatus( topologyOutput, upDeviceNum, upLinkNum )
+ topoState = controller.CLI.checkStatus( upDeviceNum, upLinkNum )
#if not topoState:
# main.log.warn( "Topo Check - link or device number discoverd by ONOS%s is incorrect" % ( controller.index ) )
# checkResult = EventStates().FAIL
diff --git a/TestON/tests/FUNC/FUNCbgpls/FUNCbgpls.params b/TestON/tests/FUNC/FUNCbgpls/FUNCbgpls.params
new file mode 100755
index 0000000..34dba48
--- /dev/null
+++ b/TestON/tests/FUNC/FUNCbgpls/FUNCbgpls.params
@@ -0,0 +1,43 @@
+<PARAMS>
+#**** Scripted by Antony Silvester - antony.silvester@huawei.com ******
+#This Test check the bgp_ls functionality
+#List of test cases:
+#CASE1: Compile ONOS and push it to the test machines
+#CASE2: Discovery the topology using BGPLS
+#CASE3: Addition of new Node to existing topology
+#CASE4: Deletion of Node
+#Case5: Uninstalling the app
+
+
+ <testcases>1,2,3,4,5</testcases>
+
+ <DEPENDENCY>
+ <path>/tests/FUNCbgpls/Dependencies/</path>
+ </DEPENDENCY>
+
+ <ENV>
+ <cellName>bgp_ls</cellName>
+ <cellApps>drivers,openflow,proxyarp,mobility</cellApps>
+ </ENV>
+
+ <CTRL>
+ <ip1>OC1</ip1>
+ <port1>6653</port1>
+ </CTRL>
+
+ <HTTP>
+ <port>8181</port>
+ <path>/onos/</path>
+ </HTTP>
+
+ <GIT>
+ <pull>False</pull>
+ <branch>master</branch>
+ </GIT>
+
+ <SCAPY>
+ <HOSTNAMES>OCN</HOSTNAMES>
+ </SCAPY>
+
+
+</PARAMS>
diff --git a/TestON/tests/FUNC/FUNCbgpls/FUNCbgpls.py b/TestON/tests/FUNC/FUNCbgpls/FUNCbgpls.py
new file mode 100755
index 0000000..a56c5c4
--- /dev/null
+++ b/TestON/tests/FUNC/FUNCbgpls/FUNCbgpls.py
@@ -0,0 +1,578 @@
+"""
+**** Scripted by Antony Silvester - antony.silvester@huawei.com ******
+
+
+This Test check the bgp_ls functionality
+
+List of test cases:
+CASE1: Compile ONOS and push it to the test machines
+CASE2: Discovery the topology using BGPLS
+CASE3: Addition of new Node to existing topology
+CASE4: Deletion of Node
+Case5: Uninstalling the app
+
+
+"""
+
+
+class FUNCbgpls:
+
+ def __init__( self ):
+ self.default = ''
+
+ def CASE1( self, main ):
+ """
+ CASE1 is to compile ONOS and push it to the test machines
+
+ Startup sequence:
+ cell <name>
+ onos-verify-cell
+ NOTE: temporary - onos-remove-raft-logs
+ onos-uninstall
+ git pull
+ mvn clean install
+ onos-package
+ onos-install -f
+ onos-wait-for-start
+ start cli sessions
+ start BGPLS apps
+
+ """
+
+ import os
+ main.log.info( "ONOS Single node start " +
+ "Scapy Tool - initialization" )
+ main.case( "Setting up test environment" )
+ main.caseExplanation = "Setup the test environment including " +\
+ "installing ONOS, start ONOS."
+
+
+ PULLCODE = False
+ if main.params[ 'GIT' ][ 'pull' ] == 'True':
+ PULLCODE = True
+ gitBranch = main.params[ 'GIT' ][ 'branch' ]
+ cellName = main.params[ 'ENV' ][ 'cellName' ]
+ ipList = os.getenv( main.params[ 'CTRL' ][ 'ip1' ] )
+ scapy_ip = os.getenv(main.params ['SCAPY'] ['HOSTNAMES'] )
+
+ main.log.info( "Removing raft logs" )
+ main.ONOSbench.onosRemoveRaftLogs()
+
+ main.CLIs = []
+ main.nodes = []
+ main.numCtrls= 1
+
+ for i in range( 1, main.numCtrls + 1 ):
+ try:
+ main.CLIs.append( getattr( main, 'ONOScli' + str( i ) ) )
+ main.nodes.append( getattr( main, 'ONOS' + str( i ) ) )
+ ipList.append( main.nodes[ -1 ].ip_address )
+ except AttributeError:
+ break
+
+ main.log.info( "Uninstalling ONOS" )
+ for node in main.nodes:
+ main.ONOSbench.onosUninstall( node.ip_address )
+
+ main.step( "Create cell file" )
+ cellAppString = main.params[ 'ENV' ][ 'cellApps' ]
+
+ main.ONOSbench.createCellFile( main.ONOSbench.ip_address, cellName,
+ scapy_ip,
+ cellAppString, ipList )
+
+ main.step( "Applying cell variable to environment" )
+ cellResult = main.ONOSbench.setCell( cellName )
+
+ verifyResult = main.ONOSbench.verifyCell()
+
+ # Make sure ONOS process is not running
+ main.log.info( "Killing any ONOS processes" )
+ killResults = main.TRUE
+ for node in main.nodes:
+ killed = main.ONOSbench.onosKill( node.ip_address )
+ killResults = killResults and killed
+
+ cleanInstallResult = main.TRUE
+ gitPullResult = main.FALSE
+ main.step( "Git checkout and pull" + gitBranch )
+ if PULLCODE:
+ main.ONOSbench.gitCheckout( gitBranch )
+ gitPullResult = main.ONOSbench.gitPull()
+ # values of 1 or 3 are good
+ utilities.assert_lesser( expect=0, actual=gitPullResult,
+ onpass="Git pull successful",
+ onfail="Git pull failed" )
+
+ #main.ONOSbench.getVersion( report=True )
+
+ main.step( "Using mvn clean install" )
+ cleanInstallResult = main.TRUE
+ if PULLCODE and gitPullResult == main.TRUE:
+ cleanInstallResult = main.ONOSbench.cleanInstall()
+ else:
+ main.log.warn( "Did not pull new code so skipping mvn" +
+ "clean install" )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=cleanInstallResult,
+ onpass="MCI successful",
+ onfail="MCI failed" )
+
+ main.step( "Creating ONOS package" )
+ packageResult = main.ONOSbench.onosPackage()
+ utilities.assert_equals( expect=main.TRUE,
+ actual=packageResult,
+ onpass="Successfully created ONOS package",
+ onfail="Failed to create ONOS package" )
+
+ main.step( "Installing ONOS package" )
+ onosInstallResult = main.ONOSbench.onosInstall(
+ options="-f", node=main.nodes[0].ip_address )
+ utilities.assert_equals( expect=main.TRUE, actual=onosInstallResult,
+ onpass="ONOS install successful",
+ onfail="ONOS install failed" )
+
+ main.step( "Checking if ONOS is up yet" )
+ print main.nodes[0].ip_address
+ for i in range( 2 ):
+ onos1Isup = main.ONOSbench.isup( main.nodes[0].ip_address )
+ if onos1Isup:
+ break
+ utilities.assert_equals( expect=main.TRUE, actual=onos1Isup,
+ onpass="ONOS startup successful",
+ onfail="ONOS startup failed" )
+ main.step( "Starting ONOS CLI sessions" )
+ print main.nodes[0].ip_address
+ cliResults = main.ONOScli1.startOnosCli( main.nodes[0].ip_address )
+ utilities.assert_equals( expect=main.TRUE, actual=cliResults,
+ onpass="ONOS cli startup successful",
+ onfail="ONOS cli startup failed" )
+
+ main.step( "App Ids check" )
+ appCheck = main.ONOScli1.appToIDCheck()
+
+ if appCheck !=main.TRUE:
+ main.log.warn( main.CLIs[0].apps() )
+ main.log.warn( main.CLIs[0].appIDs() )
+ utilities.assert_equals( expect=main.TRUE, actual=appCheck,
+ onpass="App Ids seem to be correct",
+ onfail="Something is wrong with app Ids" )
+ if cliResults == main.FALSE:
+ main.log.error( "Failed to start ONOS,stopping test" )
+ main.cleanup()
+ main.exit()
+
+
+
+
+
+ def CASE2( self, main ):
+ """
+ Discovery the topology using BGPLS
+ """
+ import os , sys
+ import re
+ import time
+
+ main.case( "Testcase 2 : Discovery the Network Topology using BGPLS" )
+
+ try:
+ from tests.FUNC.FUNCbgpls.dependencies.Nbdata import BgpLs
+ except ImportError:
+ main.log.exception( "Something wrong with import file or code error." )
+ main.log.info( "Import Error, please check!" )
+ main.cleanup()
+ main.exit()
+
+ bgplsConfig = BgpLs()
+ Ne_id = bgplsConfig.Constants()
+ app = bgplsConfig.apps()
+ main.CLIs = []
+ main.nodes = []
+ main.numCtrls= 1
+
+
+ ipList = os.getenv( main.params[ 'CTRL' ][ 'ip1' ] )
+ scapy_ip = os.getenv(main.params ['SCAPY'] ['HOSTNAMES'] )
+ httpport = main.params['HTTP']['port']
+ path = main.params['HTTP']['path']
+ bgplsConfig.ipValue(ipList,scapy_ip)
+
+ for i in range( 1, main.numCtrls + 1 ):
+ try:
+ main.CLIs.append( getattr( main, 'ONOScli' + str( i ) ) )
+ main.nodes.append( getattr( main, 'ONOS' + str( i ) ) )
+ ipList.append( main.nodes[ -1 ].ip_address )
+ except AttributeError:
+ break
+
+ main.step( "Apply cell to environment" )
+ bgplsConfig.Comments()
+
+ bgplsConfig.Comments()
+ main.log.info( "Sending BGPLS information " )
+ bgplsConfig.Comments()
+
+
+ main.Scapy1.handle.sendline( "sudo python OnosSystemTest/TestON/tests/FUNC/FUNCbgpls/\
+ dependencies/Scapyfiles/Topo_discovery.py" )
+ bgplsConfig.Comments()
+ main.log.info( "Enable BGPlS plugin in ONOS" )
+ bgplsConfig.Comments()
+
+
+ cliResults = main.ONOScli1.startOnosCli( main.nodes[0].ip_address)
+
+ main.step( "Getting connected to ONOS" )
+ utilities.assert_equals( expect=main.TRUE, actual=cliResults,
+ onpass="ONOS cli startup successful",
+ onfail="ONOS cli startup failed" )
+ installResults = main.ONOScli1.activateApp( app[0])
+
+ main.step( "Install onos-app-bgp" )
+ utilities.assert_equals( expect=main.TRUE, actual=installResults,
+ onpass="Install onos-app-bgp successful",
+ onfail="Install onos-app-bgp failed" )
+
+ bgpls_post = bgplsConfig.DictoJson()
+
+ bgplsConfig.Comments()
+ main.log.info( "BGPLS RestConf input" )
+ bgplsConfig.Comments()
+
+ print (bgpls_post)
+ main.ONOSrest.user_name = "karaf"
+ main.ONOSrest.pwd = "karaf"
+ Poststatus, result = main.ONOSrest.send( '/network/configuration/', method="POST", data=bgpls_post)
+ main.step( "Configure BGP through RESTCONF" )
+
+ utilities.assert_equals(
+ expect='200',
+ actual=Poststatus,
+ onpass="Post Port Success",
+ onfail="Post Port Failed " + str( Poststatus ) + "," + str( result ) )
+
+
+ bgplsConfig.Comments()
+ main.log.info( "Check Network devices are Updated in ONOS " )
+ bgplsConfig.Comments()
+ time.sleep(15)
+
+ response = main.ONOScli1.devices()
+ main.step( "Check the nodes are discovered" )
+ if response.find( Ne_id[1][0]) and response.find(Ne_id[1][1]) and response.find(Ne_id[1][2]) != -1:
+ stepResult = main.TRUE
+ else:
+ stepResult = main.FALSE
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Node " + str( Ne_id[1][0]) + ( Ne_id[1][1]) + ( Ne_id[1][2]) + " sucess",
+ onfail="Node " + str( Ne_id[1][0]) + ( Ne_id[1][1]) + ( Ne_id[1][2]) + " failed" )
+
+
+ bgplsConfig.Comments()
+ main.log.info( "Kill Scapy process" )
+ bgplsConfig.Comments()
+
+ main.Scapy1.handle.sendline( "\x03" )
+ time.sleep(90) #This Sleep time gives time for the socket to close.
+
+
+
+
+ def CASE3( self, main ):
+ """
+ Addition of new Node to existing topology
+ """
+ import os , sys
+ import re
+ import time
+
+ main.case( "Testcase 3: Addition of New Node to existing topology" )
+ try:
+ from tests.FUNC.FUNCbgpls.dependencies.Nbdata import BgpLs
+ except ImportError:
+ main.log.exception( "Something wrong with import file or code error." )
+ main.log.info( "Import Error, please check!" )
+ main.cleanup()
+ main.exit()
+
+ bgplsConfig = BgpLs()
+ Ne_id = bgplsConfig.Constants()
+ app = bgplsConfig.apps()
+ main.CLIs = []
+ main.nodes = []
+ main.numCtrls= 1
+
+
+ ipList = os.getenv( main.params[ 'CTRL' ][ 'ip1' ] )
+ scapy_ip = os.getenv( main.params ['SCAPY'] ['HOSTNAMES'] )
+ cellName = main.params[ 'ENV' ][ 'cellName' ]
+ cellAppString= main.params[ 'ENV' ][ 'cellApps' ]
+ httpport = main.params['HTTP']['port']
+ path = main.params['HTTP']['path']
+
+ bgplsConfig.ipValue(ipList,scapy_ip)
+
+ for i in range( 1, main.numCtrls + 1 ):
+ try:
+ main.CLIs.append( getattr( main, 'ONOScli' + str( i ) ) )
+ main.nodes.append( getattr( main, 'ONOS' + str( i ) ) )
+ ipList.append( main.nodes[ -1 ].ip_address )
+ except AttributeError:
+ break
+
+ bgplsConfig.Comments()
+ main.log.info( "Sending BGPLS Packet " )
+ bgplsConfig.Comments()
+
+ main.Scapy1.handle.sendline( "sudo python OnosSystemTest/TestON/tests/FUNC/FUNCbgpls/\
+ dependencies/Scapyfiles/Update_Node.py" )
+ bgplsConfig.Comments()
+ main.log.info( "Enable BGPlS plugin in ONOS" )
+ bgplsConfig.Comments()
+
+ main.step( "UnInstall onos-app-bgp" )
+ installResults = main.ONOScli1.deactivateApp( app[0] )
+ utilities.assert_equals( expect=main.TRUE, actual=installResults,
+ onpass="Uninstall onos-app-bgp successful",
+ onfail="Uninstall onos-app-bgp failed" )
+
+ installResults = main.ONOScli1.activateApp( app[0])
+ main.step( "Install onos-app-bgp" )
+ utilities.assert_equals( expect=main.TRUE, actual=installResults,
+ onpass="Install onos-app-bgp successful",
+ onfail="Install onos-app-bgp failed" )
+
+
+ bgpls_post = bgplsConfig.DictoJson()
+
+ bgplsConfig.Comments()
+ main.log.info( "BGPLS RestConf input" )
+ bgplsConfig.Comments()
+
+ bgplsConfig.Comments()
+ main.log.info( "Check Network devices are Updated in ONOS " )
+ bgplsConfig.Comments()
+ time.sleep(120)
+
+ response = main.ONOScli1.devices()
+ main.step( "Check Newly added Node is getting updated" )
+
+ if response.find( Ne_id[1][3]) != -1:
+ stepResult = main.TRUE
+ else:
+ stepResult = main.FALSE
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Node " + str( Ne_id[1][3] ) + " update sucess",
+ onfail="Node " + str( Ne_id[1][3]) + " update failed" )
+ bgplsConfig.Comments()
+ main.log.info( "Kill Scapy process" )
+ bgplsConfig.Comments()
+ main.Scapy1.handle.sendline( "\x03" )
+
+
+
+ def CASE4( self, main ):
+ """
+ Deletion of Node
+ """
+ import os , sys
+ import re
+ import time
+ main.case( "TestCase 4: Deletion of Node from existing Topology" )
+
+ try:
+ from tests.FUNC.FUNCbgpls.dependencies.Nbdata import BgpLs
+ except ImportError:
+ main.log.exception( "Something wrong with import file or code error." )
+ main.log.info( "Import Error, please check!" )
+ main.cleanup()
+ main.exit()
+
+ bgplsConfig = BgpLs()
+ Ne_id = bgplsConfig.Constants()
+ app = bgplsConfig.apps()
+ main.CLIs = []
+ main.nodes = []
+ main.numCtrls= 1
+
+ bgplsConfig.Comments()
+ main.log.info( "Blocked due to this defect : ONOS-3920 " )
+ bgplsConfig.Comments()
+
+ '''
+ ipList = os.getenv( main.params[ 'CTRL' ][ 'ip1' ] )
+ scapy_ip = os.getenv(main.params ['SCAPY'] ['HOSTNAMES'] )
+ cellName = main.params[ 'ENV' ][ 'cellName' ]
+ cellAppString= main.params[ 'ENV' ][ 'cellApps' ]
+ httpport = main.params['HTTP']['port']
+ path = main.params['HTTP']['path']
+ bgplsConfig = BgpLs()
+ bgplsConfig.ipValue(ipList,scapy_ip)
+
+ main.ONOSbench.createCellFile( main.ONOSbench.ip_address, cellName,
+ scapy_ip,
+ cellAppString, ipList , onosUser="karaf" )
+
+ for i in range( 1, main.numCtrls + 1 ):
+ try:
+ main.CLIs.append( getattr( main, 'ONOScli' + str( i ) ) )
+ main.nodes.append( getattr( main, 'ONOS' + str( i ) ) )
+ ipList.append( main.nodes[ -1 ].ip_address )
+ except AttributeError:
+ break
+
+ main.step( "Apply cell to environment" )
+ bgplsConfig.Comments()
+ cellResult = main.ONOSbench.setCell( cellName )
+
+ bgplsConfig.Comments()
+ main.log.info( "Sending BGPLS information " )
+ bgplsConfig.Comments()
+
+
+ main.Scapy1.handle.sendline( "sudo python OnosSystemTest/TestON/tests/FUNC/FUNCbgpls/dependencies/Scapyfiles/Deletion_Node.py" )
+ #main.Scapy1.handle.expect( "sdn:" )
+ #main.Scapy1.handle.sendline( "rocks" )
+
+
+ bgplsConfig.Comments()
+ main.log.info( "Enable BGPlS plugin in ONOS" )
+ bgplsConfig.Comments()
+
+
+ cliResults = main.ONOScli1.startOnosCli( main.nodes[0].ip_address)
+
+ main.step( "Getting connected to ONOS" )
+ utilities.assert_equals( expect=main.TRUE, actual=cliResults,
+ onpass="ONOS cli startup successful",
+ onfail="ONOS cli startup failed" )
+ installResults = main.ONOScli1.activateApp( app[0])
+
+ main.step( "Install onos-app-bgp" )
+ utilities.assert_equals( expect=main.TRUE, actual=installResults,
+ onpass="Install onos-app-bgp successful",
+ onfail="Install onos-app-bgp failed" )
+
+ main.step( "Install onos-app-bgpflow" )
+ installResults = main.ONOScli1.activateApp( app[1] )
+ utilities.assert_equals( expect=main.TRUE, actual=installResults,
+ onpass="Install onos-app-bgpflow successful",
+ onfail="Install onos-app-bgpflow failed" )
+
+
+ bgpls_post = bgplsConfig.DictoJson()
+
+ bgplsConfig.Comments()
+ main.log.info( "BGPLS RestConf input" )
+ bgplsConfig.Comments()
+
+ print (bgpls_post)
+ main.ONOSrest.user_name = "karaf"
+ main.ONOSrest.pwd = "karaf"
+ Poststatus, result = main.ONOSrest.send( ipList,httpport,'', path + 'v1/network/configuration/',
+ 'POST', None, bgpls_post, debug=True )
+
+ main.step( "Configure BGP through RESTCONF" )
+ utilities.assert_equals(
+ expect='200',
+ actual=Poststatus,
+ onpass="Post Port Success",
+ onfail="Post Port Failed " + str( Poststatus ) + "," + str( result ) )
+
+
+ bgplsConfig.Comments()
+ main.log.info( "Check Network devices is deleted from ONOS " )
+ bgplsConfig.Comments()
+ time.sleep(15)
+
+ response = main.ONOScli1.devices()
+
+ main.step( "Check whehther Node is deleted successfully" )
+
+ if response.find(Ne_id[3]) != -1:
+ stepResult = main.TRUE
+ else:
+ stepResult = main.FALSE
+ utilities.assert_equals( expect=main.FALSE,
+ actual=stepResult,
+ onpass="Node " + str( Ne_id[3] ) + " Deletion sucess",
+ onfail="Node " + str( Ne_id[3] ) + " Deletion failed" )
+
+ bgplsConfig.Comments()
+ main.log.info( "Kill Scapy process" )
+ bgplsConfig.Comments()
+
+ main.Scapy1.handle.sendline( "\x03" )
+ '''
+
+
+ def CASE5( self, main ):
+ """
+ Uninstalling the app
+ """
+ import os,sys
+ import re
+ import time
+
+ main.case( "TestCase 5: UnInstalling of app" )
+ try:
+ from tests.FUNC.FUNCbgpls.dependencies.Nbdata import BgpLs
+ except ImportError:
+ main.log.exception( "Something wrong with import file or code error." )
+ main.log.info( "Import Error, please check!" )
+ main.cleanup()
+ main.exit()
+
+ bgplsConfig = BgpLs()
+ app = bgplsConfig.apps()
+ main.CLIs = []
+ main.nodes = []
+ main.numCtrls= 1
+
+
+ ipList = os.getenv( main.params[ 'CTRL' ][ 'ip1' ] )
+ scapy_ip = os.getenv(main.params ['SCAPY'] ['HOSTNAMES'] )
+ cellName = main.params[ 'ENV' ][ 'cellName' ]
+ cellAppString= main.params[ 'ENV' ][ 'cellApps' ]
+
+ bgplsConfig = BgpLs()
+ bgplsConfig.ipValue(ipList,scapy_ip)
+ main.ONOSbench.createCellFile( main.ONOSbench.ip_address, cellName,
+ scapy_ip,
+ cellAppString, ipList , onosUser="karaf" )
+
+ for i in range( 1, main.numCtrls + 1 ):
+ try:
+ main.CLIs.append( getattr( main, 'ONOScli' + str( i ) ) )
+ main.nodes.append( getattr( main, 'ONOS' + str( i ) ) )
+ ipList.append( main.nodes[ -1 ].ip_address )
+ except AttributeError:
+ break
+
+ main.step( "Apply cell to environment" )
+ bgplsConfig.Comments()
+ cellResult = main.ONOSbench.setCell( cellName )
+
+ bgplsConfig.Comments()
+ main.log.info( "Logging into ONOS CLI " )
+ bgplsConfig.Comments()
+
+ cliResults = main.ONOScli1.startOnosCli( main.nodes[0].ip_address )
+ utilities.assert_equals( expect=main.TRUE, actual=cliResults,
+ onpass="ONOS cli startup successful",
+ onfail="ONOS cli startup failed" )
+
+ bgplsConfig.Comments()
+ main.log.info( "Uninstall onos-app-bgp" )
+ bgplsConfig.Comments()
+ main.step( "UnInstall onos-app-bgp" )
+ installResults = main.ONOScli1.deactivateApp( app[0] )
+ utilities.assert_equals( expect=main.TRUE, actual=installResults,
+ onpass="Uninstall onos-app-bgp successful",
+ onfail="Uninstall onos-app-bgp failed" )
+
+
+
diff --git a/TestON/tests/FUNC/FUNCbgpls/FUNCbgpls.topo b/TestON/tests/FUNC/FUNCbgpls/FUNCbgpls.topo
new file mode 100755
index 0000000..fc1bf21
--- /dev/null
+++ b/TestON/tests/FUNC/FUNCbgpls/FUNCbgpls.topo
@@ -0,0 +1,52 @@
+<TOPOLOGY>
+ <COMPONENT>
+
+ <ONOSbench>
+ <host>OCN</host>
+ <user>sdn</user>
+ <password>rocks</password>
+ <type>OnosDriver</type>
+ <connect_order>1</connect_order>
+ <COMPONENTS>
+ </COMPONENTS>
+ </ONOSbench>
+
+ <ONOScli1>
+ <host>OCN</host>
+ <user>sdn</user>
+ <password>rocks</password>
+ <type>OnosCliDriver</type>
+ <connect_order>2</connect_order>
+ <COMPONENTS> </COMPONENTS>
+ </ONOScli1>
+
+ <ONOS1>
+ <host>OC1</host>
+ <user>sdn</user>
+ <password>rocks</password>
+ <type>OnosDriver</type>
+ <connect_order>3</connect_order>
+ <COMPONENTS> </COMPONENTS>
+ </ONOS1>
+
+ <ONOSrest>
+ <host>OC1</host>
+ <user>sdn</user>
+ <port>8181</port>
+ <user>onos</user>
+ <password>rocks</password>
+ <type>OnosRestDriver</type>
+ <connect_order>4</connect_order>
+ <COMPONENTS> </COMPONENTS>
+ </ONOSrest>
+
+ <Scapy1>
+ <host>OCN</host>
+ <user>sdn</user>
+ <password>rocks</password>
+ <type>ScapyCliDriver</type>
+ <connect_order>5</connect_order>
+ </Scapy1>
+
+ </COMPONENT>
+</TOPOLOGY>
diff --git a/TestON/tests/FUNC/FUNCbgpls/README b/TestON/tests/FUNC/FUNCbgpls/README
new file mode 100755
index 0000000..2ecb554
--- /dev/null
+++ b/TestON/tests/FUNC/FUNCbgpls/README
@@ -0,0 +1,42 @@
+
+ONOS BGPLS Feature Scripts
+***************************
+
+Brief :
+*******
+ BGPLS as a southbound plug-in in ONOS controller to collect the
+ topology information of the network. This network topology can be
+ used by some applications like PCE would benefit from visibility
+ outside one area or Autonomous System (AS) in order to make better
+ decisions for path computation.
+
+
+Prerequisites:
+**************
+
+1] Scapy should be installed and running in OCN.
+2] The Scapy version should be 2.3.1 and above.
+3] Then git clone https://github.com/secdev/scapy.git
+4] cd to scapy folder and run --- > sudo python setup.py install
+5] Test TOPO : OCN --- OCI
+6] OnosSystemTest folder should be under ~/
+
+
+Things to know :
+****************
+
+1] We use Scapy tool, to send the BGPLS packet to ONOS.
+2] The packets are already pre-captured.
+3] ONOS reads those packet and displays the topology.
+4] We query the devices information in ONOS to check the devices/links are learn
+
+
+Steps :
+*******
+
+ 1] run FUNCbgpls
+
+
+***************************************************************END************************************************************************
+
+
diff --git a/TestON/tests/SAMP/SAMPstartTemplate2_1node/__init__.py b/TestON/tests/FUNC/FUNCbgpls/__init__.py
old mode 100644
new mode 100755
similarity index 100%
copy from TestON/tests/SAMP/SAMPstartTemplate2_1node/__init__.py
copy to TestON/tests/FUNC/FUNCbgpls/__init__.py
diff --git a/TestON/tests/FUNC/FUNCbgpls/dependencies/Bgpls_packets/Topo_pkts.pcap b/TestON/tests/FUNC/FUNCbgpls/dependencies/Bgpls_packets/Topo_pkts.pcap
new file mode 100755
index 0000000..2021f22
--- /dev/null
+++ b/TestON/tests/FUNC/FUNCbgpls/dependencies/Bgpls_packets/Topo_pkts.pcap
Binary files differ
diff --git a/TestON/tests/FUNC/FUNCbgpls/dependencies/Bgpls_packets/bgpls_all.pcap b/TestON/tests/FUNC/FUNCbgpls/dependencies/Bgpls_packets/bgpls_all.pcap
new file mode 100755
index 0000000..e831d22
--- /dev/null
+++ b/TestON/tests/FUNC/FUNCbgpls/dependencies/Bgpls_packets/bgpls_all.pcap
Binary files differ
diff --git a/TestON/tests/FUNC/FUNCbgpls/dependencies/Nbdata.py b/TestON/tests/FUNC/FUNCbgpls/dependencies/Nbdata.py
new file mode 100755
index 0000000..8a83748
--- /dev/null
+++ b/TestON/tests/FUNC/FUNCbgpls/dependencies/Nbdata.py
@@ -0,0 +1,80 @@
+"""**** Scripted by Antony Silvester ****** """
+import json
+from urllib import addbase
+import os
+
+
+import requests
+from requests.auth import HTTPBasicAuth
+
+
+class BgpLs:
+
+ def __init__(self):
+ self.localAs = 100
+ self.maxSession = 20
+ self.lsCapability = True
+ self.holdTime = 180
+ self.largeAsCapability = False
+ self.flowSpecCapability = 'IPV4'
+ self.flowSpecRpdCapability = False
+ self.remoteAs = 100
+ self.peerHoldTime = 120
+ self.connectMode = 'active'
+ self.bgpPeer = []
+ self.routerId = ''
+ self.peerIp = ''
+ #self.org_bgp = []
+
+ def ipValue(self,localip,remoteip):
+ self.routerId = localip
+ self.peerIp = remoteip
+ return self.routerId , self.peerIp
+
+ def DictoJson(self):
+ Dicdata = {}
+ org_bgp =[]
+ org_bgp.append({'peerIp': self.peerIp , 'remoteAs':self.remoteAs,
+ 'peerHoldTime':self.peerHoldTime , 'connectMode':self.connectMode })
+ if self.routerId != '':
+ Dicdata['routerId'] = self.routerId
+ if self.localAs != '':
+ Dicdata['localAs'] = self.localAs
+ if self.maxSession != '':
+ Dicdata['maxSession'] = self.maxSession
+ if self.lsCapability != '':
+ Dicdata['lsCapability'] = self.lsCapability
+ if self.holdTime != '':
+ Dicdata['holdTime'] = self.holdTime
+ if self.largeAsCapability != '':
+ Dicdata['largeAsCapability'] = self.largeAsCapability
+ if self.flowSpecCapability != '':
+ Dicdata['flowSpecCapability'] = self.flowSpecCapability
+ if self.flowSpecRpdCapability != '':
+ Dicdata['flowSpecRpdCapability'] = self.flowSpecRpdCapability
+ if self.bgpPeer != '':
+ Dicdata['bgpPeer'] = org_bgp
+
+ Dicdata = {'bgpapp':Dicdata}
+ Dicdata = {'org.onosproject.provider.bgp.cfg':Dicdata}
+ Dicdata = {'apps':Dicdata}
+ return json.dumps(Dicdata,indent=4)
+
+
+ def Comments(self):
+ print("**********************************************************************************\n")
+
+ def Constants(self):
+ self.Ne_id_1 = '1111.1111.0011'
+ self.Ne_id_2 = '2222.2222.0022'
+ self.Ne_id_3 = '3333.3333.0033'
+ self.Ne_id_4 = '4444.4444.0044'
+ listnum = [self.Ne_id_1,self.Ne_id_2,self.Ne_id_3,self.Ne_id_4,]
+ var = [self.peerIp]
+ return var,listnum
+
+ def apps(self):
+ self.app_bgp = 'org.onosproject.bgp'
+ self.app_bgpflow = 'org.onosproject.bgpflow'
+ self.list1 = [self.app_bgp,self.app_bgpflow]
+ return self.list1
diff --git a/TestON/tests/FUNC/FUNCbgpls/dependencies/Scapyfiles/Deletion_Node.py b/TestON/tests/FUNC/FUNCbgpls/dependencies/Scapyfiles/Deletion_Node.py
new file mode 100755
index 0000000..abd1cfc
--- /dev/null
+++ b/TestON/tests/FUNC/FUNCbgpls/dependencies/Scapyfiles/Deletion_Node.py
@@ -0,0 +1,53 @@
+#!/usr/bin/python # This is server.py file
+from scapy.all import *
+import socket # Import socket module
+import time # Import Time module
+import sys
+import os
+
+path = os.getcwd()
+sys.path.append('OnosSystemTest/TestON/tests/FUNC/FUNCbgpls/dependencies') #Setting the path for BgpLS
+from Nbdata import BgpLs
+
+obj = BgpLs()
+returnlist = obj.Constants()
+peerIp = returnlist[0][0]
+
+load_contrib('bgp')
+s = socket.socket() # Create a socket object
+host = peerIp # Get local machine name
+port = 179 # Reserve a port for your service.
+s.bind((host, port)) # Bind to the port
+pkts = rdpcap(path + "/OnosSystemTest/TestON/tests/FUNC/FUNCbgpls/dependencies/Bgpls_packets/bgpls_all.pcap")
+pkts[69][BGPOpen].bgp_id = peerIp
+
+s.listen(5) # Now wait for client connection.
+
+print("starting Connecting to ONOS peer")
+c, addr = s.accept() # Establish connection with client.
+print 'Got connection from ONOS :', addr
+c.send(str(pkts[69][BGPHeader])) # OPEN MESSAGE
+c.recv(4096)
+c.send(str(pkts[71][BGPHeader]))# KEEPALIVE MESSAGE
+c.recv(4096)
+c.send(str(pkts[72][BGPHeader])) # UPDATE MESSAGES
+c.send(str(pkts[74][BGPHeader]))
+c.send(str(pkts[71][BGPHeader]))
+
+time.sleep(10) # Waiting for 120 seconds for update message.
+
+c.send(str(pkts[298][BGPHeader]))
+c.send(str(pkts[860][BGPHeader])) # UPDATE MESSAGES with new node
+c.send(str(pkts[865][BGPHeader]))
+print ("New Node update msg sent")
+
+time.sleep(5)
+c.send(str(pkts[890][BGPHeader]))
+print ("Node Delete msg sent")
+
+
+while True:
+ c.recv(4096)
+ c.send(str(pkts[71][BGPHeader]))
+
+ # c.close() # Close the connection
diff --git a/TestON/tests/FUNC/FUNCbgpls/dependencies/Scapyfiles/Topo_discovery.py b/TestON/tests/FUNC/FUNCbgpls/dependencies/Scapyfiles/Topo_discovery.py
new file mode 100755
index 0000000..a7daf91
--- /dev/null
+++ b/TestON/tests/FUNC/FUNCbgpls/dependencies/Scapyfiles/Topo_discovery.py
@@ -0,0 +1,41 @@
+#!/usr/bin/python # This is server.py file
+from scapy.all import *
+import socket # Import socket module
+import time # Import Time module
+import sys
+import os
+
+path = os.getcwd()
+sys.path.append('OnosSystemTest/TestON/tests/FUNC/FUNCbgpls/dependencies') #Setting the path for BgpLS
+from Nbdata import BgpLs
+
+obj = BgpLs()
+returnlist = obj.Constants()
+peerIp = returnlist[0][0]
+
+load_contrib('bgp')
+s = socket.socket() # Create a socket object
+host = peerIp # Get local machine name
+port = 179 # Reserve a port for your service.
+s.bind((host, port)) # Bind to the port
+pkts = rdpcap(path + "/OnosSystemTest/TestON/tests/FUNC/FUNCbgpls/dependencies/Bgpls_packets/bgpls_all.pcap")
+pkts[69][BGPOpen].bgp_id = peerIp
+
+s.listen(5) # Now wait for client connection.
+
+print("starting Connecting to ONOS peer")
+c, addr = s.accept() # Establish connection with client.
+print 'Got connection from ONOS :', addr
+c.send(str(pkts[69][BGPHeader])) # OPEN MESSAGE
+c.recv(4096)
+c.send(str(pkts[71][BGPHeader]))# KEEPALIVE MESSAGE
+c.recv(4096)
+c.send(str(pkts[72][BGPHeader])) # UPDATE MESSAGES
+c.send(str(pkts[74][BGPHeader]))
+c.send(str(pkts[71][BGPHeader]))
+
+while True:
+ c.recv(4096)
+ c.send(str(pkts[71][BGPHeader]))
+
+ # c.close() # Close the connection
diff --git a/TestON/tests/FUNC/FUNCbgpls/dependencies/Scapyfiles/Update_Node.py b/TestON/tests/FUNC/FUNCbgpls/dependencies/Scapyfiles/Update_Node.py
new file mode 100755
index 0000000..3a40d6c
--- /dev/null
+++ b/TestON/tests/FUNC/FUNCbgpls/dependencies/Scapyfiles/Update_Node.py
@@ -0,0 +1,48 @@
+#!/usr/bin/python # This is server.py file
+from scapy.all import *
+import socket # Import socket module
+import time # Import Time module
+import sys
+import os
+
+path = os.getcwd()
+sys.path.append('OnosSystemTest/TestON/tests/FUNC/FUNCbgpls/dependencies') #Setting the path for BgpLS
+from Nbdata import BgpLs
+
+obj = BgpLs()
+returnlist = obj.Constants()
+peerIp = returnlist[0][0]
+
+load_contrib('bgp')
+s = socket.socket() # Create a socket object
+host = peerIp # Get local machine name
+port = 179 # Reserve a port for your service.
+s.bind((host, port)) # Bind to the port
+pkts = rdpcap(path + "/OnosSystemTest/TestON/tests/FUNC/FUNCbgpls/dependencies/Bgpls_packets/bgpls_all.pcap")
+pkts[69][BGPOpen].bgp_id = peerIp
+
+s.listen(5) # Now wait for client connection.
+
+print("starting Connecting to ONOS peer")
+c, addr = s.accept() # Establish connection with client.
+print 'Got connection from ONOS :', addr
+c.send(str(pkts[69][BGPHeader])) # OPEN MESSAGE
+c.recv(4096)
+c.send(str(pkts[71][BGPHeader]))# KEEPALIVE MESSAGE
+c.recv(4096)
+c.send(str(pkts[72][BGPHeader])) # UPDATE MESSAGES
+c.send(str(pkts[74][BGPHeader]))
+c.send(str(pkts[71][BGPHeader]))
+
+time.sleep(10) # Waiting for 120 seconds for update message.
+
+c.send(str(pkts[298][BGPHeader]))
+c.send(str(pkts[860][BGPHeader])) # UPDATE MESSAGES with new node
+c.send(str(pkts[865][BGPHeader]))
+print ("New Node update msg sent")
+
+while True:
+ c.recv(4096)
+ c.send(str(pkts[71][BGPHeader]))
+
+ # c.close() # Close the connection
diff --git a/TestON/tests/SAMP/SAMPstartTemplate2_1node/__init__.py b/TestON/tests/FUNC/FUNCbgpls/dependencies/Scapyfiles/__init__.py
old mode 100644
new mode 100755
similarity index 100%
copy from TestON/tests/SAMP/SAMPstartTemplate2_1node/__init__.py
copy to TestON/tests/FUNC/FUNCbgpls/dependencies/Scapyfiles/__init__.py
diff --git a/TestON/tests/SAMP/SAMPstartTemplate2_1node/__init__.py b/TestON/tests/FUNC/FUNCbgpls/dependencies/__init__.py
old mode 100644
new mode 100755
similarity index 100%
copy from TestON/tests/SAMP/SAMPstartTemplate2_1node/__init__.py
copy to TestON/tests/FUNC/FUNCbgpls/dependencies/__init__.py
diff --git a/TestON/tests/FUNC/FUNCintent/FUNCintent.py b/TestON/tests/FUNC/FUNCintent/FUNCintent.py
index 7dc6fb3..ba0f2a9 100644
--- a/TestON/tests/FUNC/FUNCintent/FUNCintent.py
+++ b/TestON/tests/FUNC/FUNCintent/FUNCintent.py
@@ -667,18 +667,29 @@
main.caseExplanation = "Copying the karaf logs to preserve them through" +\
"reinstalling ONOS"
main.step( "Copying karaf logs" )
+ stepResult = main.TRUE
+ scpResult = main.TRUE
+ copyResult = main.TRUE
i = 0
for cli in main.CLIs:
main.node = cli
ip = main.ONOSip[ i ]
main.node.ip_address = ip
- main.ONOSbench.scp( main.node ,
- "/opt/onos/log/karaf.log",
- "/tmp/karaf.log",
- direction="from" )
- main.ONOSbench.cpLogsToDir( "/tmp/karaf.log", main.logdir,
- copyFileName=( "karaf.log.node{0}.cycle{1}".format( str( i + 1 ), str( main.cycle ) ) ) )
+ scpResult = scpResult and main.ONOSbench.scp( main.node ,
+ "/opt/onos/log/karaf.log",
+ "/tmp/karaf.log",
+ direction="from" )
+ copyResult = copyResult and main.ONOSbench.cpLogsToDir( "/tmp/karaf.log", main.logdir,
+ copyFileName=( "karaf.log.node{0}.cycle{1}".format( str( i + 1 ), str( main.cycle ) ) ) )
+ if scpResult and copyResult:
+ stepResult = main.TRUE and stepResult
+ else:
+ stepResult = main.FALSE and stepResult
i += 1
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully copied remote ONOS logs",
+ onfail="Failed to copy remote ONOS logs" )
def CASE1000( self, main ):
"""
@@ -1931,6 +1942,9 @@
"""
Tests Multi to Single Point Intent and Single to Multi Point Intent End Point Failure
"""
+ # At some later point discussion on this behavior in MPSP and SPMP intents
+ # will be reoppened and this test case may need to be updated to reflect
+ # the outcomes of that discussion
if main.initialized == main.FALSE:
main.log.error( "Test components did not start correctly, skipping further tests" )
main.skipCase()
@@ -1955,10 +1969,9 @@
main.initialized = main.FALSE
main.skipCase()
main.case( "Test Multi to Single End Point Failure" )
- main.step( "Installing Multi to Single Point intents" )
-
- main.assertReturnString = "Assertion results for IPV4 multi to single \
- point intent end point failure with no options set\n"
+ main.step( "Installing Multi to Single Point intents with no options set" )
+ main.assertReturnString = "Assertion results for IPV4 multi to single " +\
+ "point intent end point failure with no options set\n"
senders = [
{ "name":"h16", "device":"of:0000000000000006/8" },
{ "name":"h24", "device":"of:0000000000000007/8" }
@@ -2004,8 +2017,60 @@
onpass=main.assertReturnString,
onfail=main.assertReturnString )
+ main.step( "Installing Multi to Single Point intents with partial failure allowed" )
+
+ main.assertReturnString = "Assertion results for IPV4 multi to single " +\
+ "with partial failures allowed\n"
+ senders = [
+ { "name":"h16", "device":"of:0000000000000006/8" },
+ { "name":"h24", "device":"of:0000000000000007/8" }
+ ]
+ recipients = [
+ { "name":"h8", "device":"of:0000000000000005/8" }
+ ]
+ isolatedSenders = [
+ { "name":"h24"}
+ ]
+ isolatedRecipients = []
+ testResult = main.FALSE
+ installResult = main.FALSE
+ installResult = main.intentFunction.installMultiToSingleIntent(
+ main,
+ name="NOOPTION",
+ senders=senders,
+ recipients=recipients,
+ sw1="s5",
+ sw2="s2",
+ partial=True )
+
+ if installResult:
+ testResult = main.intentFunction.testEndPointFail(
+ main,
+ intentId=installResult,
+ name="NOOPTION",
+ senders=senders,
+ recipients=recipients,
+ isolatedSenders=isolatedSenders,
+ isolatedRecipients=isolatedRecipients,
+ sw1="s6",
+ sw2="s2",
+ sw3="s4",
+ sw4="s1",
+ sw5="s3",
+ expectedLink1=16,
+ expectedLink2=14,
+ partial=True )
+ else:
+ main.CLIs[ 0 ].removeAllIntents( purge=True )
+
+ utilities.assert_equals( expect=main.TRUE,
+ actual=testResult,
+ onpass=main.assertReturnString,
+ onfail=main.assertReturnString )
+
main.step( "NOOPTION: Install and test single point to multi point intents" )
- main.assertReturnString = "Assertion results for IPV4 single to multi point intent with no options set\n"
+ main.assertReturnString = "Assertion results for IPV4 single to multi " +\
+ "point intent with no options set\n"
senders = [
{ "name":"h8", "device":"of:0000000000000005/8" }
]
@@ -2013,7 +2078,8 @@
{ "name":"h16", "device":"of:0000000000000006/8" },
{ "name":"h24", "device":"of:0000000000000007/8" }
]
- isolatedSenders = [
+ isolatedSenders = []
+ isolatedRecipients = [
{ "name":"h24"}
]
testResult = main.FALSE
@@ -2049,5 +2115,56 @@
actual=testResult,
onpass=main.assertReturnString,
onfail=main.assertReturnString )
+ # Right now this functionality doesn't work properly in SPMP intents
+ main.step( "NOOPTION: Install and test single point to multi point " +\
+ "intents with partial failures allowed" )
+ main.assertReturnString = "Assertion results for IPV4 single to multi " +\
+ "point intent with partial failures allowed\n"
+ senders = [
+ { "name":"h8", "device":"of:0000000000000005/8" }
+ ]
+ recipients = [
+ { "name":"h16", "device":"of:0000000000000006/8" },
+ { "name":"h24", "device":"of:0000000000000007/8" }
+ ]
+ isolatedSenders = []
+ isolatedRecipients = [
+ { "name":"h24"}
+ ]
+ testResult = main.FALSE
+ installResult = main.FALSE
+ installResult = main.intentFunction.installSingleToMultiIntent(
+ main,
+ name="NOOPTION",
+ senders=senders,
+ recipients=recipients,
+ sw1="s5",
+ sw2="s2",
+ partial=True)
+
+ if installResult:
+ testResult = main.intentFunction.testEndPointFail(
+ main,
+ intentId=installResult,
+ name="NOOPTION",
+ senders=senders,
+ recipients=recipients,
+ isolatedSenders=isolatedSenders,
+ isolatedRecipients=isolatedRecipients,
+ sw1="s6",
+ sw2="s2",
+ sw3="s4",
+ sw4="s1",
+ sw5="s3",
+ expectedLink1=16,
+ expectedLink2=14,
+ partial=True )
+ else:
+ main.CLIs[ 0 ].removeAllIntents( purge=True )
+
+ utilities.assert_equals( expect=main.TRUE,
+ actual=testResult,
+ onpass=main.assertReturnString,
+ onfail=main.assertReturnString )
main.intentFunction.report( main )
\ No newline at end of file
diff --git a/TestON/tests/FUNC/FUNCintent/dependencies/FuncIntentFunction.py b/TestON/tests/FUNC/FUNCintent/dependencies/FuncIntentFunction.py
old mode 100644
new mode 100755
index c3104a5..5b4bee1
--- a/TestON/tests/FUNC/FUNCintent/dependencies/FuncIntentFunction.py
+++ b/TestON/tests/FUNC/FUNCintent/dependencies/FuncIntentFunction.py
@@ -699,7 +699,8 @@
tcp="",
sw1="",
sw2="",
- setVlan=""):
+ setVlan="",
+ partial=False ):
"""
Installs a Single to Multi Point Intent
@@ -787,7 +788,8 @@
tcpSrc="",
tcpDst="",
vlanId=vlanId,
- setVlan=setVlan )
+ setVlan=setVlan,
+ partial=partial )
except (KeyError, TypeError):
errorMsg = "There was a problem loading the hosts data."
if intentId:
@@ -815,7 +817,8 @@
tcp="",
sw1="",
sw2="",
- setVlan=""):
+ setVlan="",
+ partial=False ):
"""
Installs a Multi to Single Point Intent
@@ -902,7 +905,8 @@
tcpSrc="",
tcpDst="",
vlanId=vlanId,
- setVlan=setVlan )
+ setVlan=setVlan,
+ partial=partial )
except (KeyError, TypeError):
errorMsg = "There was a problem loading the hosts data."
if intentId:
@@ -1162,7 +1166,8 @@
sw4="",
sw5="",
expectedLink1=0,
- expectedLink2=0 ):
+ expectedLink2=0,
+ partial=False ):
"""
Test Single to Multipoint Topology for Endpoint failures
"""
@@ -1215,9 +1220,9 @@
# Check flows count in each node
if utilities.retry( f=checkFlowsCount, retValue=main.FALSE,
- args=[ main ] ) and utilities.retry( f=checkFlowsState,
- retValue=main.FALSE,
- args=[ main ] ):
+ args=[ main ], attempts=5 ) and utilities.retry( f=checkFlowsState,
+ retValue=main.FALSE,
+ args=[ main ], attempts=5 ):
main.assertReturnString += 'Initial Flow State Passed\n'
else:
main.assertReturnString += 'Intial Flow State Failed\n'
@@ -1285,55 +1290,107 @@
main.assertReturnString += 'Isolation link Down Failed\n'
testResult = main.FALSE
- # Check intent state
- if utilities.retry( f=checkIntentState, retValue=main.FALSE,
- args=( main, [ intentId ] ), sleep=main.checkIntentSleep ):
- main.assertReturnString += 'Isolation link Down Intent State Passed\n'
- else:
- main.assertReturnString += 'Isolation link Down Intent State Failed\n'
- testResult = main.FALSE
+ if partial:
+ # Check intent state
+ if utilities.retry( f=checkIntentState, retValue=main.FALSE,
+ args=( main, [ intentId ] ), sleep=main.checkIntentSleep ):
+ main.assertReturnString += 'Partial failure isolation link Down Intent State Passed\n'
+ else:
+ main.assertReturnString += 'Partial failure isolation link Down Intent State Failed\n'
+ testResult = main.FALSE
- # Check flows count in each node
- if utilities.retry( f=checkFlowsCount, retValue=main.FALSE,
- args=[ main ] ) and utilities.retry( f=checkFlowsState,
- retValue=main.FALSE, args=[ main ] ):
- main.assertReturnString += 'Isolation link Down Flow State Passed\n'
- else:
- main.assertReturnString += 'Isolation link Down Flow State Failed\n'
- testResult = main.FALSE
+ # Check flows count in each node
+ if utilities.retry( f=checkFlowsCount, retValue=main.FALSE,
+ args=[ main ], attempts=5 ) and utilities.retry( f=checkFlowsState,
+ retValue=main.FALSE,
+ args=[ main ], attempts=5 ):
+ main.assertReturnString += 'Partial failure isolation link Down Flow State Passed\n'
+ else:
+ main.assertReturnString += 'Partial failure isolation link Down Flow State Failed\n'
+ testResult = main.FALSE
- # Check OnosTopology
- if utilities.retry( f=checkTopology, retValue=main.FALSE, args=( main, expectedLink2 ) ):
- main.assertReturnString += 'Isolation link Down Topology State Passed\n'
- else:
- main.assertReturnString += 'Isolation link Down Topology State Failed\n'
- testResult = main.FALSE
+ # Check OnosTopology
+ if utilities.retry( f=checkTopology, retValue=main.FALSE, args=( main, expectedLink2 ) ):
+ main.assertReturnString += 'Partial failure isolation link Down Topology State Passed\n'
+ else:
+ main.assertReturnString += 'Partial failure isolation link Down Topology State Failed\n'
+ testResult = main.FALSE
- # Check Connectivity
- # First check connectivity of any isolated senders to recipients
- if isolatedSenderNames:
- if scapyCheckConnection( main, isolatedSenderNames, recipientNames, None, None, None, None, main.TRUE ):
+ # Check Connectivity
+ # First check connectivity of any isolated senders to recipients
+ if isolatedSenderNames:
+ if scapyCheckConnection( main, isolatedSenderNames, recipientNames, None, None, None, None, main.TRUE ):
+ main.assertReturnString += 'Partial failure isolation link Down Connectivity Check Passed\n'
+ else:
+ main.assertReturnString += 'Partial failure isolation link Down Connectivity Check Failed\n'
+ testResult = main.FALSE
+
+ # Next check connectivity of senders to any isolated recipients
+ if isolatedRecipientNames:
+ if scapyCheckConnection( main, senderNames, isolatedRecipientNames, None, None, None, None, main.TRUE ):
+ main.assertReturnString += 'Partial failure isolation link Down Connectivity Check Passed\n'
+ else:
+ main.assertReturnString += 'Partial failure isolation link Down Connectivity Check Failed\n'
+ testResult = main.FALSE
+
+ # Next check connectivity of connected senders and recipients
+ if utilities.retry( f=scapyCheckConnection, retValue=main.FALSE,
+ args=( main, connectedSenderNames , connectedRecipientNames ) ):
+ main.assertReturnString += 'Partial failure isolation link Down Connectivity Check Passed\n'
+ else:
+ main.assertReturnString += 'Partial failure isolation link Down Connectivity Check Failed\n'
+ testResult = main.FALSE
+ else:
+ # Check intent state
+ if not utilities.retry( f=checkIntentState, retValue=main.TRUE,
+ args=( main, [ intentId ] ), sleep=main.checkIntentSleep ):
+ main.assertReturnString += 'Isolation link Down Intent State Passed\n'
+ else:
+ main.assertReturnString += 'Isolation link Down Intent State Failed\n'
+ testResult = main.FALSE
+
+ # Check flows count in each node
+ if utilities.retry( f=checkFlowsCount, retValue=main.FALSE,
+ args=[ main ], attempts=5 ) and utilities.retry( f=checkFlowsState,
+ retValue=main.FALSE,
+ args=[ main ], attempts=5 ):
+ main.assertReturnString += 'Isolation link Down Flow State Passed\n'
+ else:
+ main.assertReturnString += 'Isolation link Down Flow State Failed\n'
+ testResult = main.FALSE
+
+ # Check OnosTopology
+ if utilities.retry( f=checkTopology, retValue=main.FALSE, args=( main, expectedLink2 ) ):
+ main.assertReturnString += 'Isolation link Down Topology State Passed\n'
+ else:
+ main.assertReturnString += 'Isolation link Down Topology State Failed\n'
+ testResult = main.FALSE
+
+ # Check Connectivity
+ # First check connectivity of any isolated senders to recipients
+ if isolatedSenderNames:
+ if scapyCheckConnection( main, isolatedSenderNames, recipientNames, None, None, None, None, main.TRUE ):
+ main.assertReturnString += 'Isolation link Down Connectivity Check Passed\n'
+ else:
+ main.assertReturnString += 'Isolation link Down Connectivity Check Failed\n'
+ testResult = main.FALSE
+
+ # Next check connectivity of senders to any isolated recipients
+ if isolatedRecipientNames:
+ if scapyCheckConnection( main, senderNames, isolatedRecipientNames, None, None, None, None, main.TRUE ):
+ main.assertReturnString += 'Isolation link Down Connectivity Check Passed\n'
+ else:
+ main.assertReturnString += 'Isolation link Down Connectivity Check Failed\n'
+ testResult = main.FALSE
+
+ # Next check connectivity of connected senders and recipients
+ if utilities.retry( f=scapyCheckConnection, retValue=main.TRUE,
+ args=( main, connectedSenderNames , connectedRecipientNames, None, None, None, None, main.TRUE ) ):
main.assertReturnString += 'Isolation link Down Connectivity Check Passed\n'
else:
main.assertReturnString += 'Isolation link Down Connectivity Check Failed\n'
testResult = main.FALSE
- # Next check connectivity of senders to any isolated recipients
- if isolatedRecipientNames:
- if scapyCheckConnection( main, senderNames, isolatedRecipientNames, None, None, None, None, main.TRUE ):
- main.assertReturnString += 'Isolation link Down Connectivity Check Passed\n'
- else:
- main.assertReturnString += 'Isolation link Down Connectivity Check Failed\n'
- testResult = main.FALSE
-
- # Next check connectivity of connected senders and recipients
- if utilities.retry( f=scapyCheckConnection, retValue=main.FALSE,
- args=( main, connectedSenderNames , connectedRecipientNames ) ):
- main.assertReturnString += 'Isolation link Down Connectivity Check Passed\n'
- else:
- main.assertReturnString += 'Isolation link Down Connectivity Check Failed\n'
- testResult = main.FALSE
-
# Bring the links back up
# Bring first link up
if utilities.retry( f=link, retValue=main.FALSE, args=( main, sw1, sw2, "up" ) ):
@@ -1369,8 +1426,9 @@
# Check flows count in each node
if utilities.retry( f=checkFlowsCount, retValue=main.FALSE,
- args=[ main ] ) and utilities.retry( f=checkFlowsState,
- retValue=main.FALSE, args=[ main ] ):
+ args=[ main ], sleep=5, attempts=5 ) and utilities.retry( f=checkFlowsState,
+ retValue=main.FALSE,
+ args=[ main ], sleep=5, attempts=5 ):
main.assertReturnString += 'Link Up Flow State Passed\n'
else:
main.assertReturnString += 'Link Up Flow State Failed\n'
@@ -1549,9 +1607,7 @@
main.log.info( itemName + ": Checking ONOS topology " )
for i in range( main.numCtrls ):
- topologyResult = main.CLIs[ i ].topology()
- statusResult = main.CLIs[ i ].checkStatus( topologyResult,
- main.numSwitch,
+ statusResult = main.CLIs[ i ].checkStatus( main.numSwitch,
expectedLink )\
and statusResult
if not statusResult:
diff --git a/TestON/tests/FUNC/FUNCintentRest/FUNCintentRest.py b/TestON/tests/FUNC/FUNCintentRest/FUNCintentRest.py
index ec39ceb..51ad5b1 100644
--- a/TestON/tests/FUNC/FUNCintentRest/FUNCintentRest.py
+++ b/TestON/tests/FUNC/FUNCintentRest/FUNCintentRest.py
@@ -782,18 +782,29 @@
main.caseExplanation = "Copying the karaf logs to preserve them through" +\
"reinstalling ONOS"
main.step( "Copying karaf logs" )
+ stepResult = main.TRUE
+ scpResult = main.TRUE
+ copyResult = main.TRUE
i = 0
- for cli in main.CLIs:
+ for cli in main.CLIs2:
main.node = cli
ip = main.ONOSip[ i ]
main.node.ip_address = ip
- main.ONOSbench.scp( main.node ,
- "/opt/onos/log/karaf.log",
- "/tmp/karaf.log",
- direction="from" )
- main.ONOSbench.cpLogsToDir( "/tmp/karaf.log", main.logdir,
- copyFileName=( "karaf.log.node{0}.cycle{1}".format( str( i + 1 ), str( main.cycle ) ) ) )
+ scpResult = scpResult and main.ONOSbench.scp( main.node ,
+ "/opt/onos/log/karaf.log",
+ "/tmp/karaf.log",
+ direction="from" )
+ copyResult = copyResult and main.ONOSbench.cpLogsToDir( "/tmp/karaf.log", main.logdir,
+ copyFileName=( "karaf.log.node{0}.cycle{1}".format( str( i + 1 ), str( main.cycle ) ) ) )
+ if scpResult and copyResult:
+ stepResult = main.TRUE and stepResult
+ else:
+ stepResult = main.FALSE and stepResult
i += 1
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully copied remote ONOS logs",
+ onfail="Failed to copy remote ONOS logs" )
def CASE1000( self, main ):
"""
diff --git a/TestON/tests/FUNC/FUNCintentRest/dependencies/FuncIntentFunction.py b/TestON/tests/FUNC/FUNCintentRest/dependencies/FuncIntentFunction.py
old mode 100644
new mode 100755
index cefb077..5d526de
--- a/TestON/tests/FUNC/FUNCintentRest/dependencies/FuncIntentFunction.py
+++ b/TestON/tests/FUNC/FUNCintentRest/dependencies/FuncIntentFunction.py
@@ -1419,9 +1419,7 @@
main.log.info( itemName + ": Checking ONOS topology " )
for i in range( main.numCtrls ):
- topologyResult = main.CLIs[ i ].topology()
- statusResult = main.CLIs[ i ].checkStatus( topologyResult,
- main.numSwitch,
+ statusResult = main.CLIs[ i ].checkStatus( main.numSwitch,
expectedLink )\
and statusResult
if not statusResult:
diff --git a/TestON/tests/FUNC/FUNCipv6Intent/dependencies/FUNCIpv6IntentFunction.py b/TestON/tests/FUNC/FUNCipv6Intent/dependencies/FUNCIpv6IntentFunction.py
old mode 100644
new mode 100755
index 40a125b..0d71604
--- a/TestON/tests/FUNC/FUNCipv6Intent/dependencies/FUNCIpv6IntentFunction.py
+++ b/TestON/tests/FUNC/FUNCipv6Intent/dependencies/FUNCIpv6IntentFunction.py
@@ -1844,9 +1844,7 @@
main.log.info( itemName + ": Checking ONOS topology " )
for i in range( main.numCtrls ):
- topologyResult = main.CLIs[ i ].topology()
- statusResult = main.CLIs[ i ].checkStatus( topologyResult,
- main.numSwitch,
+ statusResult = main.CLIs[ i ].checkStatus( main.numSwitch,
expectedLink )\
and statusResult
if not statusResult:
diff --git a/TestON/tests/FUNC/FUNCnetCfg/FUNCnetCfg.params b/TestON/tests/FUNC/FUNCnetCfg/FUNCnetCfg.params
index bf5fbac..373f007 100644
--- a/TestON/tests/FUNC/FUNCnetCfg/FUNCnetCfg.params
+++ b/TestON/tests/FUNC/FUNCnetCfg/FUNCnetCfg.params
@@ -12,8 +12,10 @@
# 22 - Add NetCfgs for discovered devices
# 23 - Check NetCfgs after all devices are connected and NetCfgs are set
# 24 - Remove NetCfgs
+ # 25 - Move network-cfg.json to onos directory for prebuild configurations
+ # 26 - Check that prebuild configurations are correct
- <testcases>1,2,20,11,21,22,23,24</testcases>
+ <testcases>1,25,2,20,11,26,21,22,23,24</testcases>
<DEPENDENCY>
<path>/tests/FUNC/FUNCnetCfg/dependencies/</path>
@@ -36,7 +38,7 @@
</SLEEP>
<MININET>
- <switch>4</switch>
+ <switch>6</switch>
</MININET>
</PARAMS>
diff --git a/TestON/tests/FUNC/FUNCnetCfg/FUNCnetCfg.py b/TestON/tests/FUNC/FUNCnetCfg/FUNCnetCfg.py
index 2c3622b..0f8812a 100644
--- a/TestON/tests/FUNC/FUNCnetCfg/FUNCnetCfg.py
+++ b/TestON/tests/FUNC/FUNCnetCfg/FUNCnetCfg.py
@@ -87,7 +87,7 @@
main.log.error( "Did not properly created list of ONOS handle" )
stepResult = main.FALSE
except Exception as e:
- main.log.exception(e)
+ main.log.exception( e )
main.cleanup()
main.exit()
@@ -333,7 +333,7 @@
main.step( "Starting Mininet topology with OF 1.3 switches" )
args = "--controller none --switch ovs,protocols=OpenFlow13"
- switches = int( main.params['MININET']['switch'] )
+ switches = int( main.params[ 'MININET' ][ 'switch' ] )
cmd = "mn --topo linear,{} {}".format( switches, args )
topoResult = main.Mininet1.startNet( mnCmd = cmd )
stepResult = topoResult
@@ -485,13 +485,13 @@
devices = main.ONOSrest1.devices()
main.log.debug( main.ONOSrest1.pprint( devices ) )
allowedDevices = [ "of:{}".format( str( i ).zfill( 16 ) ) for i in [ 1, 2, 4 ] ]
- print allowedDevices
+ main.log.debug( allowedDevices )
onosDevices = []
try:
for sw in json.loads( devices ):
onosDevices.append( str( sw['id'] ) )
onosDevices.sort()
- print onosDevices
+ main.log.debug( onosDevices )
except( TypeError, ValueError ):
main.log.error( "Problem loading devices" )
utilities.assert_equals( expect=allowedDevices,
@@ -771,3 +771,59 @@
actual=get,
onpass="Successfully removed device config",
onfail="Failed to remove device config" )
+
+ def CASE25( self, main ):
+ """
+ Use network-cfg.json to configure devices during ONOS startup
+ """
+ main.case( "Preparing network-cfg.json to load configurations" )
+ main.step( "Moving network-cfg.json to $ONOS_ROOT/tools/package/config/" )
+ prestartResult = main.TRUE
+ srcPath = "~/OnosSystemTest/TestON/tests/FUNC/FUNCnetCfg/dependencies/network-cfg.json"
+ dstPath = "~/onos/tools/package/config/network-cfg.json"
+ prestartResult = main.ONOSbench.scp( main.ONOSbench, srcPath, dstPath, direction="to" )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=prestartResult,
+ onpass="Successfully copied network-cfg.json to target directory",
+ onfail="Failed to copy network-cfg.json to target directory" )
+
+ def CASE26( self, main ):
+ """
+ Check to see that pre-startup configurations were set correctly
+ """
+ import json
+ main.case( "Check to see if the pre-startup configurations were set, then remove their allowed status" )
+ main.step( "Checking configurations for Switches 5 and 6" )
+ main.step( "ONOS should only show devices S1, S2, S4, S5, and S6" )
+ devices = main.ONOSrest1.devices()
+ main.log.debug( main.ONOSrest1.pprint( devices ) )
+ allowedDevices = [ "of:{}".format( str( i ).zfill( 16 ) ) for i in [ 1, 2, 4, 5, 6 ] ]
+ main.log.debug( allowedDevices )
+ onosDevices = []
+ try:
+ for sw in json.loads( devices ):
+ onosDevices.append( str( sw['id'] ) )
+ onosDevices.sort()
+ main.log.debug( onosDevices )
+ except( TypeError, ValueError ):
+ main.log.error( "Problem loading devices" )
+ utilities.assert_equals( expect=allowedDevices,
+ actual=onosDevices,
+ onpass="Only allowed devices are in ONOS",
+ onfail="ONOS devices doesn't match the list" +
+ " of allowed devices" )
+
+ main.step( "Removing allowed status from Switches 5 and 6" )
+ main.s5Json = { "allowed": False }
+ main.s6Json = { "allowed": False }
+ s5Json = main.s5Json
+ setS1 = main.ONOSrest1.setNetCfg( s5Json,
+ subjectClass="devices",
+ subjectKey="of:0000000000000005",
+ configKey="basic" )
+
+ s6Json = main.s6Json
+ setS1 = main.ONOSrest1.setNetCfg( s6Json,
+ subjectClass="devices",
+ subjectKey="of:0000000000000006",
+ configKey="basic" )
\ No newline at end of file
diff --git a/TestON/tests/FUNC/FUNCnetCfg/dependencies/network-cfg.json b/TestON/tests/FUNC/FUNCnetCfg/dependencies/network-cfg.json
new file mode 100644
index 0000000..92f647a
--- /dev/null
+++ b/TestON/tests/FUNC/FUNCnetCfg/dependencies/network-cfg.json
@@ -0,0 +1,10 @@
+{
+ "devices": {
+ "of:0000000000000005": {
+ "allowed": true
+ },
+ "of:0000000000000006": {
+ "allowed": true
+ }
+ }
+ }
\ No newline at end of file
diff --git a/TestON/tests/FUNC/FUNCnetconf/FUNCnetconf.py b/TestON/tests/FUNC/FUNCnetconf/FUNCnetconf.py
index 6e4ae5a..94fd0ef 100644
--- a/TestON/tests/FUNC/FUNCnetconf/FUNCnetconf.py
+++ b/TestON/tests/FUNC/FUNCnetconf/FUNCnetconf.py
@@ -266,18 +266,31 @@
main.caseExplanation = "Copying the karaf logs to preserve them through" +\
"reinstalling ONOS"
main.step( "Copying karaf logs" )
+ stepResult = main.TRUE
+ scpResult = main.TRUE
+ copyResult = main.TRUE
i = 0
- for cli in main.CLIs:
+ for cli in main.CLIs2:
main.node = cli
ip = main.ONOSip[ i ]
main.node.ip_address = ip
- main.ONOSbench.scp( main.node ,
- "/opt/onos/log/karaf.log",
- "/tmp/karaf.log",
- direction="from" )
- main.ONOSbench.cpLogsToDir( "/tmp/karaf.log", main.logdir,
- copyFileName=( "karaf.log.node{0}.cycle{1}".format( str( i + 1 ), str( main.cycle ) ) ) )
+ scpResult = scpResult and main.ONOSbench.scp( main.node ,
+ "/opt/onos/log/karaf.log",
+ "/tmp/karaf.log",
+ direction="from" )
+ copyResult = copyResult and main.ONOSbench.cpLogsToDir( "/tmp/karaf.log", main.logdir,
+ copyFileName=( "karaf.log.node{0}.cycle{1}".format( str( i + 1 ), str( main.cycle ) ) ) )
+ if scpResult and copyResult:
+ stepResult = main.TRUE and stepResult
+ else:
+ stepResult = main.FALSE and stepResult
i += 1
+ if main.numCtrls == 1:
+ break
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully copied remote ONOS logs",
+ onfail="Failed to copy remote ONOS logs" )
def CASE100( self, main ):
"""
diff --git a/TestON/tests/FUNC/FUNCoptical/FUNCoptical.py b/TestON/tests/FUNC/FUNCoptical/FUNCoptical.py
index f4ac6ce..65c731b 100644
--- a/TestON/tests/FUNC/FUNCoptical/FUNCoptical.py
+++ b/TestON/tests/FUNC/FUNCoptical/FUNCoptical.py
@@ -314,18 +314,29 @@
main.caseExplanation = "Copying the karaf logs to preserve them through" +\
"reinstalling ONOS"
main.step( "Copying karaf logs" )
+ stepResult = main.TRUE
+ scpResult = main.TRUE
+ copyResult = main.TRUE
i = 0
for cli in main.CLIs:
main.node = cli
ip = main.ONOSip[ i ]
main.node.ip_address = ip
- main.ONOSbench.scp( main.node ,
- "/opt/onos/log/karaf.log",
- "/tmp/karaf.log",
- direction="from" )
- main.ONOSbench.cpLogsToDir( "/tmp/karaf.log", main.logdir,
- copyFileName=( "karaf.log.node{0}.cycle{1}".format( str( i + 1 ), str( main.cycle ) ) ) )
+ scpResult = scpResult and main.ONOSbench.scp( main.node ,
+ "/opt/onos/log/karaf.log",
+ "/tmp/karaf.log",
+ direction="from" )
+ copyResult = copyResult and main.ONOSbench.cpLogsToDir( "/tmp/karaf.log", main.logdir,
+ copyFileName=( "karaf.log.node{0}.cycle{1}".format( str( i + 1 ), str( main.cycle ) ) ) )
+ if scpResult and copyResult:
+ stepResult = main.TRUE and stepResult
+ else:
+ stepResult = main.FALSE and stepResult
i += 1
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully copied remote ONOS logs",
+ onfail="Failed to copy remote ONOS logs" )
def CASE21( self,main ):
"""
diff --git a/TestON/tests/FUNC/FUNCoptical/dependencies/FuncIntentFunction.py b/TestON/tests/FUNC/FUNCoptical/dependencies/FuncIntentFunction.py
old mode 100644
new mode 100755
index 1d45f62..616e71e
--- a/TestON/tests/FUNC/FUNCoptical/dependencies/FuncIntentFunction.py
+++ b/TestON/tests/FUNC/FUNCoptical/dependencies/FuncIntentFunction.py
@@ -1436,9 +1436,7 @@
main.log.info( itemName + ": Checking ONOS topology " )
for i in range( main.numCtrls ):
- topologyResult = main.CLIs[ i ].topology()
- statusResult = main.CLIs[ i ].checkStatus( topologyResult,
- main.numSwitch,
+ statusResult = main.CLIs[ i ].checkStatus( main.numSwitch,
expectedLink )\
and statusResult
if not statusResult:
diff --git a/TestON/tests/FUNC/FUNCovsdbtest/FUNCovsdbtest.py b/TestON/tests/FUNC/FUNCovsdbtest/FUNCovsdbtest.py
index 45e15f4..8d3047e 100644
--- a/TestON/tests/FUNC/FUNCovsdbtest/FUNCovsdbtest.py
+++ b/TestON/tests/FUNC/FUNCovsdbtest/FUNCovsdbtest.py
@@ -139,7 +139,7 @@
utilities.assert_equals( expect=main.TRUE, actual=onos1Isup,
onpass="ONOS startup successful",
onfail="ONOS startup failed" )
- main.log.step( "Starting ONOS CLI sessions" )
+ main.step( "Starting ONOS CLI sessions" )
print main.nodes[0].ip_address
cliResults = main.ONOScli1.startOnosCli( main.nodes[0].ip_address )
utilities.assert_equals( expect=main.TRUE, actual=cliResults,
diff --git a/TestON/tests/FUNC/FUNCvirNetNB/FUNCvirNetNB.py b/TestON/tests/FUNC/FUNCvirNetNB/FUNCvirNetNB.py
index adf85a2..cf6cdc1 100644
--- a/TestON/tests/FUNC/FUNCvirNetNB/FUNCvirNetNB.py
+++ b/TestON/tests/FUNC/FUNCvirNetNB/FUNCvirNetNB.py
@@ -155,7 +155,7 @@
onfail="ONOS startup failed" )
time.sleep( main.startUpSleep )
- main.log.step( "Starting ONOS CLI sessions" )
+ main.step( "Starting ONOS CLI sessions" )
print main.nodes[0].ip_address
cliResults = main.ONOScli1.startOnosCli(main.nodes[0].ip_address)
diff --git a/TestON/tests/HA/HAclusterRestart/HAclusterRestart.py b/TestON/tests/HA/HAclusterRestart/HAclusterRestart.py
index 69f094d..6ff14ce 100644
--- a/TestON/tests/HA/HAclusterRestart/HAclusterRestart.py
+++ b/TestON/tests/HA/HAclusterRestart/HAclusterRestart.py
@@ -222,7 +222,7 @@
onpass="ONOS startup successful",
onfail="ONOS startup failed" )
- main.log.step( "Starting ONOS CLI sessions" )
+ main.step( "Starting ONOS CLI sessions" )
cliResults = main.TRUE
threads = []
for i in range( main.numCtrls ):
@@ -1834,7 +1834,7 @@
onpass="ONOS restarted",
onfail="ONOS restart NOT successful" )
- main.log.step( "Starting ONOS CLI sessions" )
+ main.step( "Starting ONOS CLI sessions" )
cliResults = main.TRUE
threads = []
for i in range( main.numCtrls ):
diff --git a/TestON/tests/HA/HAfullNetPartition/HAfullNetPartition.py b/TestON/tests/HA/HAfullNetPartition/HAfullNetPartition.py
index a48a460..1b83edf 100644
--- a/TestON/tests/HA/HAfullNetPartition/HAfullNetPartition.py
+++ b/TestON/tests/HA/HAfullNetPartition/HAfullNetPartition.py
@@ -247,7 +247,7 @@
onpass="ONOS startup successful",
onfail="ONOS startup failed" )
- main.log.step( "Starting ONOS CLI sessions" )
+ main.step( "Starting ONOS CLI sessions" )
cliResults = main.TRUE
threads = []
for i in range( main.numCtrls ):
@@ -1832,7 +1832,7 @@
onpass="Firewall rules set successfully",
onfail="Error setting firewall rules" )
- main.log.step( "Sleeping 60 seconds" )
+ main.step( "Sleeping 60 seconds" )
time.sleep( 60 )
def CASE62( self, main ):
diff --git a/TestON/tests/HA/HAkillNodes/HAkillNodes.py b/TestON/tests/HA/HAkillNodes/HAkillNodes.py
index 6fb4d6c..c6aa669 100644
--- a/TestON/tests/HA/HAkillNodes/HAkillNodes.py
+++ b/TestON/tests/HA/HAkillNodes/HAkillNodes.py
@@ -254,7 +254,7 @@
onpass="ONOS startup successful",
onfail="ONOS startup failed" )
- main.log.step( "Starting ONOS CLI sessions" )
+ main.step( "Starting ONOS CLI sessions" )
cliResults = main.TRUE
threads = []
for i in range( main.numCtrls ):
diff --git a/TestON/tests/HA/HAsanity/HAsanity.py b/TestON/tests/HA/HAsanity/HAsanity.py
index aa66574..b18cce8 100644
--- a/TestON/tests/HA/HAsanity/HAsanity.py
+++ b/TestON/tests/HA/HAsanity/HAsanity.py
@@ -223,7 +223,7 @@
onpass="ONOS startup successful",
onfail="ONOS startup failed" )
- main.log.step( "Starting ONOS CLI sessions" )
+ main.step( "Starting ONOS CLI sessions" )
cliResults = main.TRUE
threads = []
for i in range( main.numCtrls ):
diff --git a/TestON/tests/HA/HAscaling/HAscaling.py b/TestON/tests/HA/HAscaling/HAscaling.py
index 2064f1e..04000ba 100644
--- a/TestON/tests/HA/HAscaling/HAscaling.py
+++ b/TestON/tests/HA/HAscaling/HAscaling.py
@@ -282,7 +282,7 @@
onpass="ONOS startup successful",
onfail="ONOS startup failed" )
- main.log.step( "Starting ONOS CLI sessions" )
+ main.step( "Starting ONOS CLI sessions" )
cliResults = main.TRUE
threads = []
for i in range( main.numCtrls ):
@@ -1894,7 +1894,7 @@
onpass="ONOS started",
onfail="ONOS start NOT successful" )
- main.log.step( "Starting ONOS CLI sessions" )
+ main.step( "Starting ONOS CLI sessions" )
cliResults = main.TRUE
threads = []
for i in main.activeNodes:
diff --git a/TestON/tests/HA/HAscaling/dependencies/onos-gen-partitions b/TestON/tests/HA/HAscaling/dependencies/onos-gen-partitions
index 2e49db0..303427a 100755
--- a/TestON/tests/HA/HAscaling/dependencies/onos-gen-partitions
+++ b/TestON/tests/HA/HAscaling/dependencies/onos-gen-partitions
@@ -27,12 +27,6 @@
node = lambda k: { 'id': k, 'ip': k, 'port': port }
return [ node(environ[v]) for v in vars ]
-def generate_base_partition(nodes):
- return {
- 'id': 0,
- 'members': nodes
- }
-
def generate_extended_partitions_scaling(nodes, k, partitions=3, equal=False):
l = deque(nodes)
perms = []
@@ -64,11 +58,9 @@
if num:
nodes = nodes[:num]
- base_partition = generate_base_partition([v.get('id') for v in nodes])
extended_partitions = generate_extended_partitions_scaling([v.get('id') for v in nodes],
3, equal=equal)
partitions = []
- partitions.append(base_partition)
partitions.extend(extended_partitions)
name = hash("HAScaling")
data = {
diff --git a/TestON/tests/HA/HAsingleInstanceRestart/HAsingleInstanceRestart.py b/TestON/tests/HA/HAsingleInstanceRestart/HAsingleInstanceRestart.py
index 1d4db86..c13b910 100644
--- a/TestON/tests/HA/HAsingleInstanceRestart/HAsingleInstanceRestart.py
+++ b/TestON/tests/HA/HAsingleInstanceRestart/HAsingleInstanceRestart.py
@@ -212,7 +212,7 @@
onpass="ONOS startup successful",
onfail="ONOS startup failed" )
- main.log.step( "Starting ONOS CLI sessions" )
+ main.step( "Starting ONOS CLI sessions" )
cliResults = main.TRUE
threads = []
for i in range( main.numCtrls ):
@@ -1401,7 +1401,7 @@
onpass="ONOS is back up",
onfail="ONOS failed to start" )
- main.log.step( "Starting ONOS CLI sessions" )
+ main.step( "Starting ONOS CLI sessions" )
cliResults = main.ONOScli1.startOnosCli( main.nodes[0].ip_address )
utilities.assert_equals( expect=main.TRUE, actual=cliResults,
onpass="ONOS cli startup successful",
diff --git a/TestON/tests/HA/HAstopNodes/HAstopNodes.py b/TestON/tests/HA/HAstopNodes/HAstopNodes.py
index 0f33ec0..7617a7a 100644
--- a/TestON/tests/HA/HAstopNodes/HAstopNodes.py
+++ b/TestON/tests/HA/HAstopNodes/HAstopNodes.py
@@ -247,7 +247,7 @@
onpass="ONOS startup successful",
onfail="ONOS startup failed" )
- main.log.step( "Starting ONOS CLI sessions" )
+ main.step( "Starting ONOS CLI sessions" )
cliResults = main.TRUE
threads = []
for i in range( main.numCtrls ):
diff --git a/TestON/tests/HA/HAswapNodes/HAswapNodes.py b/TestON/tests/HA/HAswapNodes/HAswapNodes.py
index 8ea1490..1ced5a2 100644
--- a/TestON/tests/HA/HAswapNodes/HAswapNodes.py
+++ b/TestON/tests/HA/HAswapNodes/HAswapNodes.py
@@ -276,7 +276,7 @@
onpass="ONOS startup successful",
onfail="ONOS startup failed" )
- main.log.step( "Starting ONOS CLI sessions" )
+ main.step( "Starting ONOS CLI sessions" )
cliResults = main.TRUE
threads = []
for i in range( main.numCtrls ):
@@ -1882,7 +1882,7 @@
onpass="ONOS started",
onfail="ONOS start NOT successful" )
- main.log.step( "Starting ONOS CLI sessions" )
+ main.step( "Starting ONOS CLI sessions" )
cliResults = main.TRUE
threads = []
for i in main.activeNodes:
diff --git a/TestON/tests/HA/HAswapNodes/dependencies/onos-gen-partitions b/TestON/tests/HA/HAswapNodes/dependencies/onos-gen-partitions
index ae7da6c..90231e3 100755
--- a/TestON/tests/HA/HAswapNodes/dependencies/onos-gen-partitions
+++ b/TestON/tests/HA/HAswapNodes/dependencies/onos-gen-partitions
@@ -27,12 +27,6 @@
node = lambda k: { 'id': k, 'ip': k, 'port': port }
return [ node(environ[v]) for v in vars ]
-def generate_base_partition(nodes):
- return {
- 'id': 0,
- 'members': nodes
- }
-
def generate_extended_partitions_scaling(nodes, k, partitions=3, equal=False):
l = deque(nodes)
perms = []
@@ -65,11 +59,9 @@
if num:
nodes = nodes[:num]
- base_partition = generate_base_partition([v.get('id') for v in nodes])
extended_partitions = generate_extended_partitions_scaling([v.get('id') for v in nodes],
3, equal=equal)
partitions = []
- partitions.append(base_partition)
partitions.extend(extended_partitions)
name = hash("HAScaling")
data = {
diff --git a/TestON/tests/HA/dependencies/onos-gen-partitions b/TestON/tests/HA/dependencies/onos-gen-partitions
index 06c5ec9..4275524 100755
--- a/TestON/tests/HA/dependencies/onos-gen-partitions
+++ b/TestON/tests/HA/dependencies/onos-gen-partitions
@@ -2,7 +2,7 @@
"""
Generate the partitions json file from the $OC* environment variables
- Usage: onos-gen-partitions [output file]
+ Usage: onos-gen-partitions [output file] [node_ip ...]
If output file is not provided, the json is written to stdout.
"""
@@ -23,17 +23,13 @@
vars.append(var)
return sorted(vars, key=alphanum_key)
-def get_nodes(vars, port=9876):
+def get_nodes(ips=None, port=9876):
node = lambda k: { 'id': k, 'ip': k, 'port': port }
- return [ node(environ[v]) for v in vars ]
+ if not ips:
+ ips = [ environ[v] for v in get_OC_vars() ]
+ return [ node(v) for v in ips ]
-def generate_base_partition(nodes):
- return {
- 'id': 0,
- 'members': nodes
- }
-
-def generate_extended_partitions(nodes, k):
+def generate_partitions(nodes, k):
l = deque(nodes)
perms = []
for i in range(1, len(nodes)+1):
@@ -45,7 +41,7 @@
l.rotate(-1)
return perms
-def generate_extended_partitions_HA(nodes, k):
+def generate_partitions_HA(nodes, k):
l = deque(nodes)
perms = []
for i in range(1, (len(nodes) + 1) / 2 + 1):
@@ -58,16 +54,12 @@
return perms
if __name__ == '__main__':
- vars = get_OC_vars()
- nodes = get_nodes(vars)
- base_partition = generate_base_partition([v.get('id') for v in nodes])
- extended_partitions = generate_extended_partitions_HA([v.get('id') for v in nodes], 3)
- partitions = []
- partitions.append(base_partition)
- partitions.extend(extended_partitions)
- name = 0
+ nodes = get_nodes(sys.argv[2:])
+ partitions = generate_partitions_HA([v.get('id') for v in nodes], 3)
+ m = hashlib.sha256()
for node in nodes:
- name = name ^ hash(node['ip'])
+ m.update(node['ip'])
+ name = int(m.hexdigest()[:8], base=16) # 32-bit int based on SHA256 digest
data = {
'name': name,
'nodes': nodes,
diff --git a/TestON/tests/MISC/SCPFbatchFlowResp/SCPFbatchFlowResp.params b/TestON/tests/MISC/SCPFbatchFlowResp/SCPFbatchFlowResp.params
index a413601..146faf4 100755
--- a/TestON/tests/MISC/SCPFbatchFlowResp/SCPFbatchFlowResp.params
+++ b/TestON/tests/MISC/SCPFbatchFlowResp/SCPFbatchFlowResp.params
@@ -20,7 +20,7 @@
<maxNodes>1</maxNodes> # currently only runs in single node onos
<numSw>63</numSw> # Number of devices used in topology
<numThreads>4</numThreads> #Number of Threads to use for POST and DELETE
- <cluster>BM</cluster>
+ <cluster>baremetal1</cluster>
<SLEEP>
<startup>15</startup>
<startMN>15</startMN>
diff --git a/TestON/tests/MISC/SCPFbatchFlowResp/SCPFbatchFlowResp.py b/TestON/tests/MISC/SCPFbatchFlowResp/SCPFbatchFlowResp.py
index b767835..4aff74d 100755
--- a/TestON/tests/MISC/SCPFbatchFlowResp/SCPFbatchFlowResp.py
+++ b/TestON/tests/MISC/SCPFbatchFlowResp/SCPFbatchFlowResp.py
@@ -44,8 +44,11 @@
main.cellData = {} # for creating cell file
main.CLIs = []
main.ONOSip = []
+
main.ONOSip = main.ONOSbench.getOnosIps()
main.commit = main.ONOSbench.getVersion()
+ main.commit = main.commit.split(" ")[1]
+
main.cluster = main.params['GLOBAL']['cluster']
# Assigning ONOS cli handles to a list
@@ -482,12 +485,16 @@
dbFileName="/tmp/SCPFbatchFlowRespData"
dbfile = open(dbFileName, "w+")
temp = "'" + main.commit + "',"
+ temp += "'1gig',"
temp += "'" + str( main.scale ) + "',"
temp += "'" + main.cluster + "',"
temp += "'" + str( main.elapsePOST ) + "',"
temp += "'" + str( main.POSTtoCONFRM ) + "',"
+ temp += "'" + str( main.numFlows / main.POSTtoCONFRM ) + "',"
temp += "'" + str ( main.elapseDELETE ) + "',"
- temp += "'" + str ( main.DELtoCONFRM ) + "'\n"
+ temp += "'" + str ( main.DELtoCONFRM ) + "',"
+ temp += "'" + str( main.numFlows / main.DELtoCONFRM ) + "',"
+ temp += "'" + str( main.numSw ) + "'\n"
dbfile.write( temp )
dbfile.close()
stepResult = main.TRUE
diff --git a/TestON/tests/SAMP/SAMPstartTemplate2_1node/SAMPstartTemplate2_1node.params b/TestON/tests/SAMP/SAMPstartTemplate2_1node/SAMPstartTemplate2_1node.params
deleted file mode 100755
index 1bed38d..0000000
--- a/TestON/tests/SAMP/SAMPstartTemplate2_1node/SAMPstartTemplate2_1node.params
+++ /dev/null
@@ -1,64 +0,0 @@
-<PARAMS>
- <!--
- CASE0: pull onos code - this case should be skipped on Jenkins-driven prod test
- -->
- <!--
- CASE1: setup and clean test env
- -->
- <!--
- CASE2: get onos warnings, errors from log
- -->
- <!--
- CASE10: start a 1-node ONOS
- -->
- <!--
- CASE11: Start Mininet and assign controllers
- -->
- <!--
- CASE12: Sample case of using onos cli
- -->
- <!--
- CASE22: Sample case of using onos rest
- -->
-
- <testcases>0,1,10,11,12,22,2</testcases>
-
- <CASE0>
- <gitPull>False</gitPull> # False or True
- <gitBranch>master</gitBranch>
- </CASE0>
-
- <CASE1>
- <NodeList>OC1,OC2,OC3</NodeList>
- <SleepTimers>
- <onosStartup>60</onosStartup>
- <onosCfg>5</onosCfg>
- <mnStartup>15</mnStartup>
- <mnCfg>10</mnCfg>
- </SleepTimers>
- </CASE1>
-
- <CASE10>
- <numNodes>1</numNodes>
- <Apps>
- org.onosproject.openflow,org.onosproject.fwd
- </Apps>
- <ONOS_Configuration>
- <org.onosproject.net.intent.impl.compiler.IntentConfigurableRegistrator>
- <useFlowObjectives>true</useFlowObjectives>
- </org.onosproject.net.intent.impl.compiler.IntentConfigurableRegistrator>
- </ONOS_Configuration>
- </CASE10>
-
- <CASE11>
- <path>~/OnosSystemTest/TestON/tests/SAMP/SAMPstartTemplate2_1node/Dependency/</path>
- <topo>newFuncTopo.py</topo>
- </CASE11>
-
- <CASE12>
- </CASE12>
-
- <CASE22>
- </CASE22>
-
-</PARAMS>
diff --git a/TestON/tests/SAMP/SAMPstartTemplate2_1node/SAMPstartTemplate2_1node.py b/TestON/tests/SAMP/SAMPstartTemplate2_1node/SAMPstartTemplate2_1node.py
deleted file mode 100644
index befa623..0000000
--- a/TestON/tests/SAMP/SAMPstartTemplate2_1node/SAMPstartTemplate2_1node.py
+++ /dev/null
@@ -1,228 +0,0 @@
-
-# This is a sample template that starts up ONOS cluster, this template
-# can be use as a base script for ONOS System Testing.
-
-class SAMPstartTemplate2_1node:
-
- def __init__( self ):
- self.default = ''
-
-
- def CASE0(self, main):
- '''
- Pull specific ONOS branch, then Build ONOS ono ONOS Bench.
- This step is usually skipped. Because in a Jenkins driven automated
- test env. We want Jenkins jobs to pull&build for flexibility to handle
- different versions of ONOS.
- '''
- gitPull = main.params['CASE0']['gitPull']
- gitBranch = main.params['CASE0']['gitBranch']
-
- main.case("Pull onos branch and build onos on Teststation.")
-
- if gitPull == 'True':
- main.step( "Git Checkout ONOS branch: " + gitBranch)
- stepResult = main.ONOSbench.gitCheckout( branch = gitBranch )
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully checkout onos branch.",
- onfail="Failed to checkout onos branch. Exiting test..." )
- if not stepResult: main.exit()
-
- main.step( "Git Pull on ONOS branch:" + gitBranch)
- stepResult = main.ONOSbench.gitPull( )
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully pull onos. ",
- onfail="Failed to pull onos. Exiting test ..." )
- if not stepResult: main.exit()
-
- main.step( "Building ONOS branch: " + gitBranch )
- stepResult = main.ONOSbench.cleanInstall( skipTest = True )
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully build onos.",
- onfail="Failed to build onos. Exiting test..." )
- if not stepResult: main.exit()
-
- else:
- main.log.warn( "Skipped pulling onos and Skipped building ONOS" )
-
-
- def CASE1( self, main ):
- '''
- Set up global test variables;
- Uninstall all running cells in test env defined in .topo file
-
- '''
-
- main.case( "Constructing global test variables and clean cluster env." )
-
- main.step( "Constructing test variables" )
- main.branch = main.ONOSbench.getBranchName()
- main.log.info( "Running onos branch: " + main.branch )
- main.commitNum = main.ONOSbench.getVersion().split(' ')[1]
- main.log.info( "Running onos commit Number: " + main.commitNum)
- main.nodeList = main.params['CASE1']['NodeList'].split(",")
- main.onosStartupSleep = float( main.params['CASE1']['SleepTimers']['onosStartup'] )
- main.onosCfgSleep = float( main.params['CASE1']['SleepTimers']['onosCfg'] )
- main.mnStartupSleep = float( main.params['CASE1']['SleepTimers']['mnStartup'] )
- main.mnCfgSleep = float( main.params['CASE1']['SleepTimers']['mnCfg'] )
- utilities.assert_equals( expect=main.TRUE,
- actual=main.TRUE,
- onpass="Successfully construct " +
- "test variables ",
- onfail="Failed to construct test variables" )
-
-
-
- main.step( "Uninstall all onos nodes in the env.")
- stepResult = main.TRUE
- for node in main.nodeList:
- nodeResult = main.ONOSbench.onosUninstall( nodeIp = "$" + node )
- stepResult = stepResult & nodeResult
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully uninstall onos on all nodes in env.",
- onfail="Failed to uninstall onos on all nodes in env!" )
- if not stepResult:
- main.log.error( "Failure to clean test env. Exiting test..." )
- main.exit()
-
- def CASE2( self, main ):
- '''
- Report errors/warnings/exceptions
- '''
- main.log.info("Error report: \n" )
- main.ONOSbench.logReport( main.ONOScli1.ip_address,
- [ "INFO",
- "FOLLOWER",
- "WARN",
- "flow",
- "ERROR",
- "Except" ],
- "s" )
-
- def CASE10( self, main ):
- """
- Start ONOS cluster (3 nodes in this example) in three steps:
- 1) start a basic cluster with drivers app via ONOSDriver;
- 2) activate apps via ONOSCliDriver;
- 3) configure onos via ONOSCliDriver;
- """
-
- import time
-
- numNodes = int( main.params['CASE10']['numNodes'] )
- main.case( "Start up " + str( numNodes ) + "-node onos cluster.")
-
- main.step( "Start ONOS cluster with basic (drivers) app.")
- onosClusterIPs = []
- for n in range( 1, numNodes + 1 ):
- handle = "main.ONOScli" + str( n )
- onosClusterIPs.append( eval( handle ).ip_address )
-
- stepResult = main.ONOSbench.startBasicONOS(nodeList = onosClusterIPs, opSleep = 200 )
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully started basic ONOS cluster ",
- onfail="Failed to start basic ONOS Cluster " )
-
- main.step( "Establishing Handles on ONOS CLIs.")
- cliResult = main.TRUE
- for n in range( 1, numNodes + 1 ):
- handle = "main.ONOScli" + str( n )
- cliResult = cliResult & ( eval( handle ).startCellCli() )
- utilities.assert_equals( expect=main.TRUE,
- actual=cliResult,
- onpass="Successfully started onos cli's ",
- onfail="Failed to start onos cli's " )
-
- main.step( "Activate onos apps.")
- apps = main.params['CASE10'].get( 'Apps' )
- if apps:
- main.log.info( "Apps to activate: " + apps )
- activateResult = main.TRUE
- for a in apps.split(","):
- activateResult = activateResult & main.ONOScli1.activateApp(a)
- # TODO: check this worked
- time.sleep( main.onosCfgSleep ) # wait for apps to activate
- else:
- main.log.warn( "No configurations were specified to be changed after startup" )
- utilities.assert_equals( expect=main.TRUE,
- actual=activateResult,
- onpass="Successfully set config",
- onfail="Failed to set config" )
-
- main.step( "Set ONOS configurations" )
- config = main.params['CASE10'].get( 'ONOS_Configuration' )
- if config:
- main.log.debug( config )
- checkResult = main.TRUE
- for component in config:
- for setting in config[component]:
- value = config[component][setting]
- check = main.ONOScli1.setCfg( component, setting, value )
- main.log.info( "Value was changed? {}".format( main.TRUE == check ) )
- checkResult = check and checkResult
- utilities.assert_equals( expect=main.TRUE,
- actual=checkResult,
- onpass="Successfully set config",
- onfail="Failed to set config" )
- else:
- main.log.warn( "No configurations were specified to be changed after startup" )
-
- def CASE11( self, main ):
- """
- Start mininet and assign controllers
- """
- import time
-
- dependencyPath = main.params['CASE11']['path']
- topology = main.params['CASE11']['topo']
- main.log.report( "Start Mininet topology" )
- main.log.case( "Start Mininet topology" )
-
- main.step( "Starting Mininet Topology" )
- topoResult = main.Mininet1.startNet( topoFile=dependencyPath + topology )
- stepResult = topoResult
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully loaded topology",
- onfail="Failed to load topology" )
- # Exit if topology did not load properly
- if not topoResult:
- main.cleanup()
- main.exit()
-
- main.step( "Assign switches to controllers.")
- assignResult = main.TRUE
- onosNodes = [ main.ONOScli1.ip_address ]
- for i in range(1, 8):
- assignResult = assignResult & main.Mininet1.assignSwController( sw="s" + str( i ),
- ip=onosNodes,
- port='6653' )
- time.sleep(main.mnCfgSleep)
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully assign switches to controllers",
- onfail="Failed to assign switches to controllers" )
-
-
- def CASE12( self, main ):
- """
- Tests using through ONOS CLI handles
- """
-
- main.log.case( "Test some onos commands through CLI. ")
- main.log.debug( main.ONOScli1.sendline("summary") )
- main.log.debug( main.ONOScli1.sendline("devices") )
-
- def CASE22( self, main ):
- """
- Tests using ONOS REST API handles
- """
-
- main.case( " Sample tests using ONOS REST API handles. ")
- main.log.debug( main.ONOSrest1.send("/devices") )
- main.log.debug( main.ONOSrest1.apps() )
\ No newline at end of file
diff --git a/TestON/tests/SAMP/SAMPstartTemplate2_3node/SAMPstartTemplate2_3node.params b/TestON/tests/SAMP/SAMPstartTemplate2_3node/SAMPstartTemplate2_3node.params
deleted file mode 100755
index 41fedd0..0000000
--- a/TestON/tests/SAMP/SAMPstartTemplate2_3node/SAMPstartTemplate2_3node.params
+++ /dev/null
@@ -1,64 +0,0 @@
-<PARAMS>
- <!--
- CASE0: pull onos code - this case should be skipped on Jenkins-driven prod test
- -->
- <!--
- CASE1: setup and clean test env
- -->
- <!--
- CASE2: get onos warnings, errors from log
- -->
- <!--
- CASE10: start a 3-node ONOS Cluster
- -->
- <!--
- CASE11: Start Mininet and assign controllers
- -->
- <!--
- CASE12: Sample case of using onos cli
- -->
- <!--
- CASE22: Sample case of using onos rest
- -->
-
- <testcases>0,1,10,11,12,22,2</testcases>
-
- <CASE0>
- <gitPull>False</gitPull> # False or True
- <gitBranch>master</gitBranch>
- </CASE0>
-
- <CASE1>
- <NodeList>OC1,OC2,OC3</NodeList>
- <SleepTimers>
- <onosStartup>60</onosStartup>
- <onosCfg>5</onosCfg>
- <mnStartup>15</mnStartup>
- <mnCfg>10</mnCfg>
- </SleepTimers>
- </CASE1>
-
- <CASE10>
- <numNodes>3</numNodes>
- <Apps>
- org.onosproject.openflow,org.onosproject.fwd
- </Apps>
- <ONOS_Configuration>
- <org.onosproject.net.intent.impl.compiler.IntentConfigurableRegistrator>
- <useFlowObjectives>true</useFlowObjectives>
- </org.onosproject.net.intent.impl.compiler.IntentConfigurableRegistrator>
- </ONOS_Configuration>
- </CASE10>
-
- <CASE11>
- <path>~/OnosSystemTest/TestON/tests/SAMP/SAMPstartTemplate2_3node/Dependency/</path>
- <topo>newFuncTopo.py</topo>
- </CASE11>
-
- <CASE12>
- </CASE12>
-
- <CASE22>
- </CASE22>
-
-</PARAMS>
diff --git a/TestON/tests/SAMP/SAMPstartTemplate2_3node/SAMPstartTemplate2_3node.py b/TestON/tests/SAMP/SAMPstartTemplate2_3node/SAMPstartTemplate2_3node.py
deleted file mode 100644
index 49b72b5..0000000
--- a/TestON/tests/SAMP/SAMPstartTemplate2_3node/SAMPstartTemplate2_3node.py
+++ /dev/null
@@ -1,228 +0,0 @@
-
-# This is a sample template that starts up ONOS cluster, this template
-# can be use as a base script for ONOS System Testing.
-
-class SAMPstartTemplate2_3node:
-
- def __init__( self ):
- self.default = ''
-
-
- def CASE0(self, main):
- '''
- Pull specific ONOS branch, then Build ONOS ono ONOS Bench.
- This step is usually skipped. Because in a Jenkins driven automated
- test env. We want Jenkins jobs to pull&build for flexibility to handle
- different versions of ONOS.
- '''
- gitPull = main.params['CASE0']['gitPull']
- gitBranch = main.params['CASE0']['gitBranch']
-
- main.case("Pull onos branch and build onos on Teststation.")
-
- if gitPull == 'True':
- main.step( "Git Checkout ONOS branch: " + gitBranch)
- stepResult = main.ONOSbench.gitCheckout( branch = gitBranch )
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully checkout onos branch.",
- onfail="Failed to checkout onos branch. Exiting test..." )
- if not stepResult: main.exit()
-
- main.step( "Git Pull on ONOS branch:" + gitBranch)
- stepResult = main.ONOSbench.gitPull( )
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully pull onos. ",
- onfail="Failed to pull onos. Exiting test ..." )
- if not stepResult: main.exit()
-
- main.step( "Building ONOS branch: " + gitBranch )
- stepResult = main.ONOSbench.cleanInstall( skipTest = True )
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully build onos.",
- onfail="Failed to build onos. Exiting test..." )
- if not stepResult: main.exit()
-
- else:
- main.log.warn( "Skipped pulling onos and Skipped building ONOS" )
-
-
- def CASE1( self, main ):
- '''
- Set up global test variables;
- Uninstall all running cells in test env defined in .topo file
-
- '''
-
- main.case( "Constructing global test variables and clean cluster env." )
-
- main.step( "Constructing test variables" )
- main.branch = main.ONOSbench.getBranchName()
- main.log.info( "Running onos branch: " + main.branch )
- main.commitNum = main.ONOSbench.getVersion().split(' ')[1]
- main.log.info( "Running onos commit Number: " + main.commitNum)
- main.nodeList = main.params['CASE1']['NodeList'].split(",")
- main.onosStartupSleep = float( main.params['CASE1']['SleepTimers']['onosStartup'] )
- main.onosCfgSleep = float( main.params['CASE1']['SleepTimers']['onosCfg'] )
- main.mnStartupSleep = float( main.params['CASE1']['SleepTimers']['mnStartup'] )
- main.mnCfgSleep = float( main.params['CASE1']['SleepTimers']['mnCfg'] )
- utilities.assert_equals( expect=main.TRUE,
- actual=main.TRUE,
- onpass="Successfully construct " +
- "test variables ",
- onfail="Failed to construct test variables" )
-
-
-
- main.step( "Uninstall all onos nodes in the env.")
- stepResult = main.TRUE
- for node in main.nodeList:
- nodeResult = main.ONOSbench.onosUninstall( nodeIp = "$" + node )
- stepResult = stepResult & nodeResult
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully uninstall onos on all nodes in env.",
- onfail="Failed to uninstall onos on all nodes in env!" )
- if not stepResult:
- main.log.error( "Failure to clean test env. Exiting test..." )
- main.exit()
-
- def CASE2( self, main ):
- '''
- Report errors/warnings/exceptions
- '''
- main.log.info("Error report: \n" )
- main.ONOSbench.logReport( main.ONOScli1.ip_address,
- [ "INFO",
- "FOLLOWER",
- "WARN",
- "flow",
- "ERROR",
- "Except" ],
- "s" )
-
- def CASE10( self, main ):
- """
- Start ONOS cluster (3 nodes in this example) in three steps:
- 1) start a basic cluster with drivers app via ONOSDriver;
- 2) activate apps via ONOSCliDriver;
- 3) configure onos via ONOSCliDriver;
- """
-
- import time
-
- numNodes = int( main.params['CASE10']['numNodes'] )
- main.case( "Start up " + str( numNodes ) + "-node onos cluster.")
-
- main.step( "Start ONOS cluster with basic (drivers) app.")
- onosClusterIPs = []
- for n in range( 1, numNodes + 1 ):
- handle = "main.ONOScli" + str( n )
- onosClusterIPs.append( eval( handle ).ip_address )
-
- stepResult = main.ONOSbench.startBasicONOS(nodeList = onosClusterIPs, opSleep = 200 )
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully started basic ONOS cluster ",
- onfail="Failed to start basic ONOS Cluster " )
-
- main.step( "Establishing Handles on ONOS CLIs.")
- cliResult = main.TRUE
- for n in range( 1, numNodes + 1 ):
- handle = "main.ONOScli" + str( n )
- cliResult = cliResult & ( eval( handle ).startCellCli() )
- utilities.assert_equals( expect=main.TRUE,
- actual=cliResult,
- onpass="Successfully started onos cli's ",
- onfail="Failed to start onos cli's " )
-
- main.step( "Activate onos apps.")
- apps = main.params['CASE10'].get( 'Apps' )
- if apps:
- main.log.info( "Apps to activate: " + apps )
- activateResult = main.TRUE
- for a in apps.split(","):
- activateResult = activateResult & main.ONOScli1.activateApp(a)
- # TODO: check this worked
- time.sleep( main.onosCfgSleep ) # wait for apps to activate
- else:
- main.log.warn( "No configurations were specified to be changed after startup" )
- utilities.assert_equals( expect=main.TRUE,
- actual=activateResult,
- onpass="Successfully set config",
- onfail="Failed to set config" )
-
- main.step( "Set ONOS configurations" )
- config = main.params['CASE10'].get( 'ONOS_Configuration' )
- if config:
- main.log.debug( config )
- checkResult = main.TRUE
- for component in config:
- for setting in config[component]:
- value = config[component][setting]
- check = main.ONOScli1.setCfg( component, setting, value )
- main.log.info( "Value was changed? {}".format( main.TRUE == check ) )
- checkResult = check and checkResult
- utilities.assert_equals( expect=main.TRUE,
- actual=checkResult,
- onpass="Successfully set config",
- onfail="Failed to set config" )
- else:
- main.log.warn( "No configurations were specified to be changed after startup" )
-
- def CASE11( self, main ):
- """
- Start mininet and assign controllers
- """
- import time
-
- dependencyPath = main.params['CASE11']['path']
- topology = main.params['CASE11']['topo']
- main.log.report( "Start Mininet topology" )
- main.log.case( "Start Mininet topology" )
-
- main.step( "Starting Mininet Topology" )
- topoResult = main.Mininet1.startNet( topoFile=dependencyPath + topology )
- stepResult = topoResult
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully loaded topology",
- onfail="Failed to load topology" )
- # Exit if topology did not load properly
- if not topoResult:
- main.cleanup()
- main.exit()
-
- main.step( "Assign switches to controllers.")
- assignResult = main.TRUE
- onosNodes = [ main.ONOScli1.ip_address, main.ONOScli2.ip_address, main.ONOScli3.ip_address ]
- for i in range(1, 8):
- assignResult = assignResult & main.Mininet1.assignSwController( sw="s" + str( i ),
- ip=onosNodes,
- port='6653' )
- time.sleep(main.mnCfgSleep)
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully assign switches to controllers",
- onfail="Failed to assign switches to controllers" )
-
-
- def CASE12( self, main ):
- """
- Tests using through ONOS CLI handles
- """
-
- main.log.case( "Test some onos commands through CLI. ")
- main.log.debug( main.ONOScli1.sendline("summary") )
- main.log.debug( main.ONOScli3.sendline("devices") )
-
- def CASE22( self, main ):
- """
- Tests using ONOS REST API handles
- """
-
- main.case( " Sample tests using ONOS REST API handles. ")
- main.log.debug( main.ONOSrest1.send("/devices") )
- main.log.debug( main.ONOSrest2.apps() )
diff --git a/TestON/tests/SAMP/SAMPstartTemplate2_1node/Dependency/newFuncTopo.py b/TestON/tests/SAMP/SAMPstartTemplate_1node/Dependency/newFuncTopo.py
similarity index 100%
rename from TestON/tests/SAMP/SAMPstartTemplate2_1node/Dependency/newFuncTopo.py
rename to TestON/tests/SAMP/SAMPstartTemplate_1node/Dependency/newFuncTopo.py
diff --git a/TestON/tests/SAMP/SAMPstartTemplate2_1node/README b/TestON/tests/SAMP/SAMPstartTemplate_1node/README
similarity index 100%
rename from TestON/tests/SAMP/SAMPstartTemplate2_1node/README
rename to TestON/tests/SAMP/SAMPstartTemplate_1node/README
diff --git a/TestON/tests/SAMP/SAMPstartTemplate_1node/SAMPstartTemplate_1node.params b/TestON/tests/SAMP/SAMPstartTemplate_1node/SAMPstartTemplate_1node.params
new file mode 100755
index 0000000..ef2a46a
--- /dev/null
+++ b/TestON/tests/SAMP/SAMPstartTemplate_1node/SAMPstartTemplate_1node.params
@@ -0,0 +1,65 @@
+<PARAMS>
+ <!--
+ CASE0: pull onos code - this case should be skipped on Jenkins-driven prod test
+ -->
+ <!--
+ CASE1: setup and clean test env
+ -->
+ <!--
+ CASE2: get onos warnings, errors from log
+ -->
+ <!--
+ CASE10: start a 1-node ONOS
+ -->
+ <!--
+ CASE11: Start Mininet and assign controllers
+ -->
+ <!--
+ CASE12: Sample case of using onos cli
+ -->
+ <!--
+ CASE22: Sample case of using onos rest
+ -->
+ <!--
+ CASE32: Configure fwd app
+ -->
+
+ <testcases>0,1,10,11,12,22,2,32</testcases>
+
+ <CASE0>
+ <gitPull>False</gitPull> # False or True
+ <gitBranch>master</gitBranch>
+ </CASE0>
+
+ <CASE1>
+ <NodeList>OC1,OC2,OC3</NodeList>
+ <SleepTimers>
+ <onosStartup>60</onosStartup>
+ <onosCfg>5</onosCfg>
+ <mnStartup>15</mnStartup>
+ <mnCfg>10</mnCfg>
+ </SleepTimers>
+ </CASE1>
+
+ <CASE10>
+ <numNodes>1</numNodes>
+ <Apps>
+ org.onosproject.openflow,org.onosproject.fwd
+ </Apps>
+ <ONOS_Configuration>
+ <org.onosproject.net.intent.impl.compiler.IntentConfigurableRegistrator>
+ <useFlowObjectives>true</useFlowObjectives>
+ </org.onosproject.net.intent.impl.compiler.IntentConfigurableRegistrator>
+ </ONOS_Configuration>
+ </CASE10>
+
+ <CASE11>
+ <topo> mn --topo tree,3,3 </topo>
+ </CASE11>
+ <CASE12>
+ </CASE12>
+ <CASE22>
+ </CASE22>
+ <CASE32>
+ </CASE32>
+</PARAMS>
diff --git a/TestON/tests/SAMP/SAMPstartTemplate_1node/SAMPstartTemplate_1node.py b/TestON/tests/SAMP/SAMPstartTemplate_1node/SAMPstartTemplate_1node.py
new file mode 100644
index 0000000..3ad2f30
--- /dev/null
+++ b/TestON/tests/SAMP/SAMPstartTemplate_1node/SAMPstartTemplate_1node.py
@@ -0,0 +1,249 @@
+
+# This is a sample template that starts up ONOS cluster, this template
+# can be use as a base script for ONOS System Testing.
+
+class SAMPstartTemplate_1node:
+
+ def __init__( self ):
+ self.default = ''
+
+
+ def CASE0(self, main):
+ '''
+ Pull specific ONOS branch, then Build ONOS on ONOS Bench.
+ This step is usually skipped. Because in a Jenkins driven automated
+ test env. We want Jenkins jobs to pull&build for flexibility to handle
+ different versions of ONOS.
+ '''
+ gitPull = main.params['CASE0']['gitPull']
+ gitBranch = main.params['CASE0']['gitBranch']
+
+ main.case("Pull onos branch and build onos on Teststation.")
+
+ if gitPull == 'True':
+ main.step( "Git Checkout ONOS branch: " + gitBranch)
+ stepResult = main.ONOSbench.gitCheckout( branch = gitBranch )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully checkout onos branch.",
+ onfail="Failed to checkout onos branch. Exiting test..." )
+ if not stepResult: main.exit()
+
+ main.step( "Git Pull on ONOS branch:" + gitBranch)
+ stepResult = main.ONOSbench.gitPull( )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully pull onos. ",
+ onfail="Failed to pull onos. Exiting test ..." )
+ if not stepResult: main.exit()
+
+ main.step( "Building ONOS branch: " + gitBranch )
+ stepResult = main.ONOSbench.cleanInstall( skipTest = True )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully build onos.",
+ onfail="Failed to build onos. Exiting test..." )
+ if not stepResult: main.exit()
+
+ else:
+ main.log.warn( "Skipped pulling onos and Skipped building ONOS" )
+
+
+ def CASE1( self, main ):
+ '''
+ Set up global test variables;
+ Uninstall all running cells in test env defined in .topo file
+
+ '''
+
+ main.case( "Constructing global test variables and clean cluster env." )
+
+ main.step( "Constructing test variables" )
+ main.branch = main.ONOSbench.getBranchName()
+ main.log.info( "Running onos branch: " + main.branch )
+ main.commitNum = main.ONOSbench.getVersion().split(' ')[1]
+ main.log.info( "Running onos commit Number: " + main.commitNum)
+ main.nodeList = main.params['CASE1']['NodeList'].split(",")
+ main.onosStartupSleep = float( main.params['CASE1']['SleepTimers']['onosStartup'] )
+ main.onosCfgSleep = float( main.params['CASE1']['SleepTimers']['onosCfg'] )
+ main.mnStartupSleep = float( main.params['CASE1']['SleepTimers']['mnStartup'] )
+ main.mnCfgSleep = float( main.params['CASE1']['SleepTimers']['mnCfg'] )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=main.TRUE,
+ onpass="Successfully construct " +
+ "test variables ",
+ onfail="Failed to construct test variables" )
+
+
+
+ main.step( "Uninstall all onos nodes in the env.")
+ stepResult = main.TRUE
+ for node in main.nodeList:
+ nodeResult = main.ONOSbench.onosUninstall( nodeIp = "$" + node )
+ stepResult = stepResult & nodeResult
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully uninstall onos on all nodes in env.",
+ onfail="Failed to uninstall onos on all nodes in env!" )
+ if not stepResult:
+ main.log.error( "Failure to clean test env. Exiting test..." )
+ main.exit()
+
+ def CASE2( self, main ):
+ '''
+ Report errors/warnings/exceptions
+ '''
+ main.log.info("Error report: \n" )
+ main.ONOSbench.logReport( main.ONOScli1.ip_address,
+ [ "INFO",
+ "FOLLOWER",
+ "WARN",
+ "flow",
+ "ERROR",
+ "Except" ],
+ "s" )
+
+ def CASE10( self, main ):
+ """
+ Start ONOS cluster (1 node in this example) in three steps:
+ 1) start a basic cluster with drivers app via ONOSDriver;
+ 2) activate apps via ONOSCliDriver;
+ 3) configure onos via ONOSCliDriver;
+ """
+
+ import time
+
+ numNodes = int( main.params['CASE10']['numNodes'] )
+ main.case( "Start up " + str( numNodes ) + "-node onos cluster.")
+
+ main.step( "Start ONOS cluster with basic (drivers) app.")
+ onosClusterIPs = []
+ for n in range( 1, numNodes + 1 ):
+ handle = "main.ONOScli" + str( n )
+ onosClusterIPs.append( eval( handle ).ip_address )
+
+ stepResult = main.ONOSbench.startBasicONOS(nodeList = onosClusterIPs, opSleep = 200 )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully started basic ONOS cluster ",
+ onfail="Failed to start basic ONOS Cluster " )
+
+ main.step( "Establishing Handles on ONOS CLIs.")
+ cliResult = main.TRUE
+ for n in range( 1, numNodes + 1 ):
+ handle = "main.ONOScli" + str( n )
+ cliResult = cliResult & ( eval( handle ).startCellCli() )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=cliResult,
+ onpass="Successfully started onos cli's ",
+ onfail="Failed to start onos cli's " )
+
+ main.step( "Activate onos apps.")
+ apps = main.params['CASE10'].get( 'Apps' )
+ if apps:
+ main.log.info( "Apps to activate: " + apps )
+ activateResult = main.TRUE
+ for a in apps.split(","):
+ activateResult = activateResult & main.ONOScli1.activateApp(a)
+ # TODO: check this worked
+ time.sleep( main.onosCfgSleep ) # wait for apps to activate
+ else:
+ main.log.warn( "No configurations were specified to be changed after startup" )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=activateResult,
+ onpass="Successfully set config",
+ onfail="Failed to set config" )
+
+ main.step( "Set ONOS configurations" )
+ config = main.params['CASE10'].get( 'ONOS_Configuration' )
+ if config:
+ main.log.debug( config )
+ checkResult = main.TRUE
+ for component in config:
+ for setting in config[component]:
+ value = config[component][setting]
+ check = main.ONOScli1.setCfg( component, setting, value )
+ main.log.info( "Value was changed? {}".format( main.TRUE == check ) )
+ checkResult = check and checkResult
+ utilities.assert_equals( expect=main.TRUE,
+ actual=checkResult,
+ onpass="Successfully set config",
+ onfail="Failed to set config" )
+ else:
+ main.log.warn( "No configurations were specified to be changed after startup" )
+
+ def CASE11( self, main ):
+ """
+ Start mininet and assign controllers
+ """
+ import time
+
+ topology = main.params['CASE11']['topo']
+ main.log.report( "Start Mininet topology" )
+ main.case( "Start Mininet topology" )
+
+ main.step( "Starting Mininet Topology" )
+ topoResult = main.Mininet1.startNet( mnCmd=topology )
+ stepResult = topoResult
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully loaded topology",
+ onfail="Failed to load topology" )
+ # Exit if topology did not load properly
+ if not topoResult:
+ main.cleanup()
+ main.exit()
+
+ main.step( "Assign switches to controllers.")
+ assignResult = main.TRUE
+ onosNodes = [ main.ONOScli1.ip_address ]
+ for i in range(1, 8):
+ assignResult = assignResult & main.Mininet1.assignSwController( sw="s" + str( i ),
+ ip=onosNodes,
+ port='6653' )
+ time.sleep(main.mnCfgSleep)
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully assign switches to controllers",
+ onfail="Failed to assign switches to controllers" )
+
+
+ def CASE12( self, main ):
+ """
+ Tests using through ONOS CLI handles
+ """
+
+ main.case( "Test some onos commands through CLI. ")
+ main.log.debug( main.ONOScli1.sendline("summary") )
+ main.log.debug( main.ONOScli1.sendline("devices") )
+
+ def CASE22( self, main ):
+ """
+ Tests using ONOS REST API handles
+ """
+
+ main.case( " Sample tests using ONOS REST API handles. ")
+ main.log.debug( main.ONOSrest1.send("/devices") )
+ main.log.debug( main.ONOSrest1.apps() )
+
+ def CASE32( self, main ):
+ """
+ Configure fwd app from .param json string with parameter configured.
+ Check if configuration successful
+ Run pingall to check connectivity
+ Check ONOS log for warning/error/exceptions
+ """
+ main.case( "Configure onos-app-fwd and check if configuration successful. " )
+ main.step( "Install reactive forwarding app." )
+ installResults = main.ONOScli1.activateApp( "org.onosproject.fwd" )
+ utilities.assert_equals( expect=main.TRUE, actual=installResults,
+ onpass = "Configure fwd successful", onfail="Configure fwd failed" )
+ main.step( "Run pingall to check connectivity. " )
+ pingResult = main.FALSE
+ passMsg = "Reactive Pingall test passed"
+ pingResult = main.Mininet1.pingall()
+ if not pingResult:
+ main.log.warn( "First pingall failed. Trying again..." )
+ pingResult = main.Mininet1.pingall()
+ passMsg += "on the second try"
+ utilities.assert_equals( expect=main.TRUE, actual=pingResult, onpass=passMsg, onfail= "Reactive Pingall failed, " + "one or more ping pairs failed." )
diff --git a/TestON/tests/SAMP/SAMPstartTemplate2_1node/SAMPstartTemplate2_1node.topo b/TestON/tests/SAMP/SAMPstartTemplate_1node/SAMPstartTemplate_1node.topo
similarity index 100%
rename from TestON/tests/SAMP/SAMPstartTemplate2_1node/SAMPstartTemplate2_1node.topo
rename to TestON/tests/SAMP/SAMPstartTemplate_1node/SAMPstartTemplate_1node.topo
diff --git a/TestON/tests/SAMP/SAMPstartTemplate2_1node/__init__.py b/TestON/tests/SAMP/SAMPstartTemplate_1node/__init__.py
similarity index 100%
rename from TestON/tests/SAMP/SAMPstartTemplate2_1node/__init__.py
rename to TestON/tests/SAMP/SAMPstartTemplate_1node/__init__.py
diff --git a/TestON/tests/SAMP/SAMPstartTemplate2_3node/Dependency/newFuncTopo.py b/TestON/tests/SAMP/SAMPstartTemplate_3node/Dependency/newFuncTopo.py
similarity index 100%
rename from TestON/tests/SAMP/SAMPstartTemplate2_3node/Dependency/newFuncTopo.py
rename to TestON/tests/SAMP/SAMPstartTemplate_3node/Dependency/newFuncTopo.py
diff --git a/TestON/tests/SAMP/SAMPstartTemplate2_3node/README b/TestON/tests/SAMP/SAMPstartTemplate_3node/README
similarity index 100%
rename from TestON/tests/SAMP/SAMPstartTemplate2_3node/README
rename to TestON/tests/SAMP/SAMPstartTemplate_3node/README
diff --git a/TestON/tests/SAMP/SAMPstartTemplate_3node/SAMPstartTemplate_3node.params b/TestON/tests/SAMP/SAMPstartTemplate_3node/SAMPstartTemplate_3node.params
new file mode 100755
index 0000000..1b3ef33
--- /dev/null
+++ b/TestON/tests/SAMP/SAMPstartTemplate_3node/SAMPstartTemplate_3node.params
@@ -0,0 +1,66 @@
+<PARAMS>
+ <!--
+ CASE0: pull onos code - this case should be skipped on Jenkins-driven prod test
+ -->
+ <!--
+ CASE1: setup and clean test env
+ -->
+ <!--
+ CASE2: get onos warnings, errors from log
+ -->
+ <!--
+ CASE10: start a 3-node ONOS Cluster
+ -->
+ <!--
+ CASE11: Start Mininet and assign controllers
+ -->
+ <!--
+ CASE12: Sample case of using onos cli
+ -->
+ <!--
+ CASE22: Sample case of using onos rest
+ -->
+ <!--
+ CASE32: Configure fwd apps
+ -->
+
+ <testcases>0,1,10,11,12,22,2,32</testcases>
+
+ <CASE0>
+ <gitPull>False</gitPull> # False or True
+ <gitBranch>master</gitBranch>
+ </CASE0>
+
+ <CASE1>
+ <NodeList>OC1,OC2,OC3</NodeList>
+ <SleepTimers>
+ <onosStartup>60</onosStartup>
+ <onosCfg>5</onosCfg>
+ <mnStartup>15</mnStartup>
+ <mnCfg>10</mnCfg>
+ </SleepTimers>
+ </CASE1>
+
+ <CASE10>
+ <numNodes>3</numNodes>
+ <Apps>
+ org.onosproject.openflow,org.onosproject.fwd
+ </Apps>
+ <ONOS_Configuration>
+ <org.onosproject.net.intent.impl.compiler.IntentConfigurableRegistrator>
+ <useFlowObjectives>true</useFlowObjectives>
+ </org.onosproject.net.intent.impl.compiler.IntentConfigurableRegistrator>
+ </ONOS_Configuration>
+ </CASE10>
+
+ <CASE11>
+ <topo> mn --topo tree,3,3</topo>
+ </CASE11>
+
+ <CASE12>
+ </CASE12>
+ <CASE22>
+ </CASE22>
+ <CASE32>
+ </CASE32>
+</PARAMS>
diff --git a/TestON/tests/SAMP/SAMPstartTemplate_3node/SAMPstartTemplate_3node.py b/TestON/tests/SAMP/SAMPstartTemplate_3node/SAMPstartTemplate_3node.py
new file mode 100644
index 0000000..90bfb14
--- /dev/null
+++ b/TestON/tests/SAMP/SAMPstartTemplate_3node/SAMPstartTemplate_3node.py
@@ -0,0 +1,249 @@
+
+# This is a sample template that starts up ONOS cluster, this template
+# can be use as a base script for ONOS System Testing.
+
+class SAMPstartTemplate_3node:
+
+ def __init__( self ):
+ self.default = ''
+
+
+ def CASE0(self, main):
+ '''
+ Pull specific ONOS branch, then Build ONOS on ONOS Bench.
+ This step is usually skipped. Because in a Jenkins driven automated
+ test env. We want Jenkins jobs to pull&build for flexibility to handle
+ different versions of ONOS.
+ '''
+ gitPull = main.params['CASE0']['gitPull']
+ gitBranch = main.params['CASE0']['gitBranch']
+
+ main.case("Pull onos branch and build onos on Teststation.")
+
+ if gitPull == 'True':
+ main.step( "Git Checkout ONOS branch: " + gitBranch)
+ stepResult = main.ONOSbench.gitCheckout( branch = gitBranch )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully checkout onos branch.",
+ onfail="Failed to checkout onos branch. Exiting test..." )
+ if not stepResult: main.exit()
+
+ main.step( "Git Pull on ONOS branch:" + gitBranch)
+ stepResult = main.ONOSbench.gitPull( )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully pull onos. ",
+ onfail="Failed to pull onos. Exiting test ..." )
+ if not stepResult: main.exit()
+
+ main.step( "Building ONOS branch: " + gitBranch )
+ stepResult = main.ONOSbench.cleanInstall( skipTest = True )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully build onos.",
+ onfail="Failed to build onos. Exiting test..." )
+ if not stepResult: main.exit()
+
+ else:
+ main.log.warn( "Skipped pulling onos and Skipped building ONOS" )
+
+
+ def CASE1( self, main ):
+ '''
+ Set up global test variables;
+ Uninstall all running cells in test env defined in .topo file
+
+ '''
+
+ main.case( "Constructing global test variables and clean cluster env." )
+
+ main.step( "Constructing test variables" )
+ main.branch = main.ONOSbench.getBranchName()
+ main.log.info( "Running onos branch: " + main.branch )
+ main.commitNum = main.ONOSbench.getVersion().split(' ')[1]
+ main.log.info( "Running onos commit Number: " + main.commitNum)
+ main.nodeList = main.params['CASE1']['NodeList'].split(",")
+ main.onosStartupSleep = float( main.params['CASE1']['SleepTimers']['onosStartup'] )
+ main.onosCfgSleep = float( main.params['CASE1']['SleepTimers']['onosCfg'] )
+ main.mnStartupSleep = float( main.params['CASE1']['SleepTimers']['mnStartup'] )
+ main.mnCfgSleep = float( main.params['CASE1']['SleepTimers']['mnCfg'] )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=main.TRUE,
+ onpass="Successfully construct " +
+ "test variables ",
+ onfail="Failed to construct test variables" )
+
+
+
+ main.step( "Uninstall all onos nodes in the env.")
+ stepResult = main.TRUE
+ for node in main.nodeList:
+ nodeResult = main.ONOSbench.onosUninstall( nodeIp = "$" + node )
+ stepResult = stepResult & nodeResult
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully uninstall onos on all nodes in env.",
+ onfail="Failed to uninstall onos on all nodes in env!" )
+ if not stepResult:
+ main.log.error( "Failure to clean test env. Exiting test..." )
+ main.exit()
+
+ def CASE2( self, main ):
+ '''
+ Report errors/warnings/exceptions
+ '''
+ main.log.info("Error report: \n" )
+ main.ONOSbench.logReport( main.ONOScli1.ip_address,
+ [ "INFO",
+ "FOLLOWER",
+ "WARN",
+ "flow",
+ "ERROR",
+ "Except" ],
+ "s" )
+
+ def CASE10( self, main ):
+ """
+ Start ONOS cluster (3 nodes in this example) in three steps:
+ 1) start a basic cluster with drivers app via ONOSDriver;
+ 2) activate apps via ONOSCliDriver;
+ 3) configure onos via ONOSCliDriver;
+ """
+
+ import time
+
+ numNodes = int( main.params['CASE10']['numNodes'] )
+ main.case( "Start up " + str( numNodes ) + "-node onos cluster.")
+
+ main.step( "Start ONOS cluster with basic (drivers) app.")
+ onosClusterIPs = []
+ for n in range( 1, numNodes + 1 ):
+ handle = "main.ONOScli" + str( n )
+ onosClusterIPs.append( eval( handle ).ip_address )
+
+ stepResult = main.ONOSbench.startBasicONOS(nodeList = onosClusterIPs, opSleep = 200 )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully started basic ONOS cluster ",
+ onfail="Failed to start basic ONOS Cluster " )
+
+ main.step( "Establishing Handles on ONOS CLIs.")
+ cliResult = main.TRUE
+ for n in range( 1, numNodes + 1 ):
+ handle = "main.ONOScli" + str( n )
+ cliResult = cliResult & ( eval( handle ).startCellCli() )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=cliResult,
+ onpass="Successfully started onos cli's ",
+ onfail="Failed to start onos cli's " )
+
+ main.step( "Activate onos apps.")
+ apps = main.params['CASE10'].get( 'Apps' )
+ if apps:
+ main.log.info( "Apps to activate: " + apps )
+ activateResult = main.TRUE
+ for a in apps.split(","):
+ activateResult = activateResult & main.ONOScli1.activateApp(a)
+ # TODO: check this worked
+ time.sleep( main.onosCfgSleep ) # wait for apps to activate
+ else:
+ main.log.warn( "No configurations were specified to be changed after startup" )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=activateResult,
+ onpass="Successfully set config",
+ onfail="Failed to set config" )
+
+ main.step( "Set ONOS configurations" )
+ config = main.params['CASE10'].get( 'ONOS_Configuration' )
+ if config:
+ main.log.debug( config )
+ checkResult = main.TRUE
+ for component in config:
+ for setting in config[component]:
+ value = config[component][setting]
+ check = main.ONOScli1.setCfg( component, setting, value )
+ main.log.info( "Value was changed? {}".format( main.TRUE == check ) )
+ checkResult = check and checkResult
+ utilities.assert_equals( expect=main.TRUE,
+ actual=checkResult,
+ onpass="Successfully set config",
+ onfail="Failed to set config" )
+ else:
+ main.log.warn( "No configurations were specified to be changed after startup" )
+
+ def CASE11( self, main ):
+ """
+ Start mininet and assign controllers
+ """
+ import time
+
+ topology = main.params['CASE11']['topo']
+ main.log.report( "Start Mininet topology" )
+ main.case( "Start Mininet topology" )
+
+ main.step( "Starting Mininet Topology" )
+ topoResult = main.Mininet1.startNet(mnCmd=topology )
+ stepResult = topoResult
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully loaded topology",
+ onfail="Failed to load topology" )
+ # Exit if topology did not load properly
+ if not topoResult:
+ main.cleanup()
+ main.exit()
+
+ main.step( "Assign switches to controllers.")
+ assignResult = main.TRUE
+ onosNodes = [ main.ONOScli1.ip_address, main.ONOScli2.ip_address, main.ONOScli3.ip_address ]
+ for i in range(1, 8):
+ assignResult = assignResult & main.Mininet1.assignSwController( sw="s" + str( i ),
+ ip=onosNodes,
+ port='6653' )
+ time.sleep(main.mnCfgSleep)
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully assign switches to controllers",
+ onfail="Failed to assign switches to controllers" )
+
+
+ def CASE12( self, main ):
+ """
+ Tests using through ONOS CLI handles
+ """
+
+ main.case( "Test some onos commands through CLI. ")
+ main.log.debug( main.ONOScli1.sendline("summary") )
+ main.log.debug( main.ONOScli3.sendline("devices") )
+
+ def CASE22( self, main ):
+ """
+ Tests using ONOS REST API handles
+ """
+
+ main.case( " Sample tests using ONOS REST API handles. ")
+ main.log.debug( main.ONOSrest1.send("/devices") )
+ main.log.debug( main.ONOSrest2.apps() )
+
+ def CASE32( self, main ):
+ """
+ Configure fwd app from .params json string with parameter configured
+ Check if configuration successful
+ Run pingall to check connectivity
+ Check ONOS log for warning/error/exceptions
+ """
+ main.case( "Configure onos-app-fwd and check if configuration successful. " )
+ main.step( "Install reactive forwarding app." )
+ installResults = main.ONOScli1.activateApp( "org.onosproject.fwd" )
+ utilities.assert_equals( expect=main.TRUE, actual=installResults,
+ onpass= "Configure fwd successful", onfail= "Configure fwd failed" )
+ main.step( "Run pingall to check connectivity. " )
+ pingResult = main.FALSE
+ passMsg = "Reactive Pingall test passed"
+ pingResult = main.Mininet1.pingall()
+ if not pingResult:
+ main.log.warn("First pingall failed. Trying again...")
+ pingResult = main.Mininet1.pingall()
+ passMsg += "on the second try"
+ utilities.assert_equals( expect=main.TRUE, actual=pingResult, onpass=passMsg, onfail= "Reactive Pingall failed, " + "one or more ping pairs failed" )
diff --git a/TestON/tests/SAMP/SAMPstartTemplate2_3node/SAMPstartTemplate2_3node.topo b/TestON/tests/SAMP/SAMPstartTemplate_3node/SAMPstartTemplate_3node.topo
similarity index 100%
rename from TestON/tests/SAMP/SAMPstartTemplate2_3node/SAMPstartTemplate2_3node.topo
rename to TestON/tests/SAMP/SAMPstartTemplate_3node/SAMPstartTemplate_3node.topo
diff --git a/TestON/tests/SAMP/SAMPstartTemplate2_3node/__init__.py b/TestON/tests/SAMP/SAMPstartTemplate_3node/__init__.py
similarity index 100%
rename from TestON/tests/SAMP/SAMPstartTemplate2_3node/__init__.py
rename to TestON/tests/SAMP/SAMPstartTemplate_3node/__init__.py
diff --git a/TestON/tests/SCPF/SCPFcbench/SCPFcbench.py b/TestON/tests/SCPF/SCPFcbench/SCPFcbench.py
index 403e0fe..1da2d12 100644
--- a/TestON/tests/SCPF/SCPFcbench/SCPFcbench.py
+++ b/TestON/tests/SCPF/SCPFcbench/SCPFcbench.py
@@ -77,13 +77,13 @@
scale.remove(scale[0])
#kill off all onos processes
- main.log.step("Safety check, killing all ONOS processes")
- main.log.step("before initiating environment setup")
+ main.step("Safety check, killing all ONOS processes")
+ main.step("before initiating environment setup")
for node in range(1, maxNodes + 1):
main.ONOSbench.onosDie(ONOSIp[node])
#Uninstall everywhere
- main.log.step( "Cleaning Enviornment..." )
+ main.step( "Cleaning Enviornment..." )
for i in range(1, maxNodes + 1):
main.log.info(" Uninstalling ONOS " + str(i) )
main.ONOSbench.onosUninstall( ONOSIp[i] )
diff --git a/TestON/tests/SCPF/SCPFflowTp1g/SCPFflowTp1g.py b/TestON/tests/SCPF/SCPFflowTp1g/SCPFflowTp1g.py
index ddb9d7c..a9abacb 100644
--- a/TestON/tests/SCPF/SCPFflowTp1g/SCPFflowTp1g.py
+++ b/TestON/tests/SCPF/SCPFflowTp1g/SCPFflowTp1g.py
@@ -85,13 +85,13 @@
main.log.info("CLUSTER COUNT: " + str(clusterCount))
#kill off all onos processes
- main.log.step("Safety check, killing all ONOS processes")
- main.log.step("before initiating environment setup")
+ main.step("Safety check, killing all ONOS processes")
+ main.step("before initiating environment setup")
for node in range(1, main.maxNodes + 1):
main.ONOSbench.onosDie(ONOSIp[node])
#Uninstall everywhere
- main.log.step( "Cleaning Enviornment..." )
+ main.step( "Cleaning Enviornment..." )
for i in range(1, main.maxNodes + 1):
main.log.info(" Uninstalling ONOS " + str(i) )
main.ONOSbench.onosUninstall( ONOSIp[i] )
@@ -191,9 +191,9 @@
st = datetime.datetime.fromtimestamp(ts).strftime('%Y-%m-%d %H:%M:%S')
for n in neighborList:
- main.log.step("\tSTARTING TEST")
- main.log.step("\tLOADING FROM SERVERS: \t" + str(clusterCount) )
- main.log.step("\tNEIGHBORS:\t" + n )
+ main.step("\tSTARTING TEST")
+ main.step("\tLOADING FROM SERVERS: \t" + str(clusterCount) )
+ main.step("\tNEIGHBORS:\t" + n )
main.log.info("=============================================================")
main.log.info("=============================================================")
#write file to configure nil link
@@ -261,7 +261,7 @@
if "failed" in rawResult:
main.log.report("FLOW_TESTER.PY FAILURE")
main.log.report( " \n" + rawResult + " \n")
- for i in range(clusterCount):
+ for i in range(1, clusterCount+1):
main.log.report("=======================================================")
main.log.report(" ONOS " + str(i) + "LOG REPORT")
main.ONOSbench.logReport(ONOSIp[i], ["ERROR", "WARNING", "EXCEPT"], outputMode="d")
diff --git a/TestON/tests/SCPF/SCPFhostLat/SCPFhostLat.py b/TestON/tests/SCPF/SCPFhostLat/SCPFhostLat.py
index c24b6a7..989ccea 100644
--- a/TestON/tests/SCPF/SCPFhostLat/SCPFhostLat.py
+++ b/TestON/tests/SCPF/SCPFhostLat/SCPFhostLat.py
@@ -180,7 +180,7 @@
main.step( "Start ONOS CLI on all nodes" )
cliResult = main.TRUE
- main.log.step(" Start ONOS cli using thread ")
+ main.step(" Start ONOS cli using thread ")
time.sleep( main.startUpSleep )
startCliResult = main.TRUE
pool = []
diff --git a/TestON/tests/SCPF/SCPFintentEventTp/SCPFintentEventTp.py b/TestON/tests/SCPF/SCPFintentEventTp/SCPFintentEventTp.py
index ac2b3c6..2caa008 100644
--- a/TestON/tests/SCPF/SCPFintentEventTp/SCPFintentEventTp.py
+++ b/TestON/tests/SCPF/SCPFintentEventTp/SCPFintentEventTp.py
@@ -81,17 +81,17 @@
pullResult = main.TRUE
main.log.info( "Skipped git checkout and pull" )
- main.log.step("Grabbing commit number")
+ main.step("Grabbing commit number")
commit = main.ONOSbench.getVersion()
commit = (commit.split(" "))[1]
- main.log.step("Creating results file")
+ main.step("Creating results file")
resultsDB = open("/tmp/IntentEventTPDB", "w+")
resultsDB.close()
# -- END OF INIT SECTION --#
- main.log.step("Adjusting scale")
+ main.step("Adjusting scale")
print str(scale)
print str(ONOSIp)
clusterCount = int(scale[0])
@@ -101,8 +101,8 @@
BENCHIp = ONOSIp[len(ONOSIp) -2]
#kill off all onos processes
- main.log.step("Safety check, killing all ONOS processes")
- main.log.step("before initiating environment setup")
+ main.step("Safety check, killing all ONOS processes")
+ main.step("before initiating environment setup")
for node in range(maxNodes):
main.ONOSbench.onosDie(ONOSIp[node])
@@ -110,7 +110,7 @@
BENCHIp = ONOSIp[len(ONOSIp) -2]
#Uninstall everywhere
- main.log.step( "Cleaning Enviornment..." )
+ main.step( "Cleaning Enviornment..." )
for i in range(maxNodes):
main.log.info(" Uninstalling ONOS " + str(i) )
main.ONOSbench.onosUninstall( ONOSIp[i] )
@@ -161,7 +161,7 @@
main.ONOSbench.onosCfgSet( ONOSIp[0], "org.onosproject.net.intent.impl.IntentManager", "skipReleaseResourcesOnWithdrawal " + skipRelRsrc)
devices = int(clusterCount)*10
- main.log.step("Setting up null provider")
+ main.step("Setting up null provider")
for i in range(3):
main.ONOSbench.onosCfgSet( ONOSIp[0], "org.onosproject.provider.nil.NullProviders", "deviceCount " + str(devices))
main.ONOSbench.onosCfgSet( ONOSIp[0], "org.onosproject.provider.nil.NullProviders", "topoShape linear")
@@ -178,6 +178,7 @@
main.ONOSbench.handle.sendline("""onos $OC1 "balance-masters" """)
main.ONOSbench.handle.expect(":~")
print main.ONOSbench.handle.before
+ time.sleep(5)
for i in range(3):
passed = main.ONOSbench.verifySummary( ONOSIp[0] )
diff --git a/TestON/tests/SCPF/SCPFintentEventTpWithFlowObj/SCPFintentEventTpWithFlowObj.py b/TestON/tests/SCPF/SCPFintentEventTpWithFlowObj/SCPFintentEventTpWithFlowObj.py
index 059552b..1a6e3ab 100644
--- a/TestON/tests/SCPF/SCPFintentEventTpWithFlowObj/SCPFintentEventTpWithFlowObj.py
+++ b/TestON/tests/SCPF/SCPFintentEventTpWithFlowObj/SCPFintentEventTpWithFlowObj.py
@@ -81,18 +81,18 @@
pullResult = main.TRUE
main.log.info( "Skipped git checkout and pull" )
- main.log.step("Grabbing commit number")
+ main.step("Grabbing commit number")
commit = main.ONOSbench.getVersion()
commit = (commit.split(" "))[1]
- main.log.step("Creating results file")
+ main.step("Creating results file")
# Create results file with flow object
flowObjResultsDB = open("/tmp/IntentEventTPflowObjDB", "w+")
flowObjResultsDB.close()
# -- END OF INIT SECTION --#
- main.log.step("Adjusting scale")
+ main.step("Adjusting scale")
print str(scale)
print str(ONOSIp)
clusterCount = int(scale[0])
@@ -102,8 +102,8 @@
BENCHIp = ONOSIp[len(ONOSIp) -2]
#kill off all onos processes
- main.log.step("Safety check, killing all ONOS processes")
- main.log.step("before initiating environment setup")
+ main.step("Safety check, killing all ONOS processes")
+ main.step("before initiating environment setup")
for node in range(maxNodes):
main.ONOSbench.onosDie(ONOSIp[node])
@@ -111,7 +111,7 @@
BENCHIp = ONOSIp[len(ONOSIp) -2]
#Uninstall everywhere
- main.log.step( "Cleaning Enviornment..." )
+ main.step( "Cleaning Enviornment..." )
for i in range(maxNodes):
main.log.info(" Uninstalling ONOS " + str(i) )
main.ONOSbench.onosUninstall( ONOSIp[i] )
@@ -162,7 +162,7 @@
main.ONOSbench.onosCfgSet( ONOSIp[0], "org.onosproject.net.intent.impl.IntentManager", "skipReleaseResourcesOnWithdrawal " + skipRelRsrc)
devices = int(clusterCount)*10
- main.log.step("Setting up null provider")
+ main.step("Setting up null provider")
for i in range(3):
main.ONOSbench.onosCfgSet( ONOSIp[0], "org.onosproject.provider.nil.NullProviders", "deviceCount " + str(devices))
main.ONOSbench.onosCfgSet( ONOSIp[0], "org.onosproject.provider.nil.NullProviders", "topoShape linear")
diff --git a/TestON/tests/SCPF/SCPFintentInstallWithdrawLat/SCPFintentInstallWithdrawLat.params b/TestON/tests/SCPF/SCPFintentInstallWithdrawLat/SCPFintentInstallWithdrawLat.params
index 71f48fe..7c3e10a 100644
--- a/TestON/tests/SCPF/SCPFintentInstallWithdrawLat/SCPFintentInstallWithdrawLat.params
+++ b/TestON/tests/SCPF/SCPFintentInstallWithdrawLat/SCPFintentInstallWithdrawLat.params
@@ -1,6 +1,6 @@
<PARAMS>
- <testcases>1,2,1,2,1,2,1,2</testcases>
+ <testcases>0,1,2,1,2,1,2,1,2</testcases>
<SCALE>1,3,5,7</SCALE>
<max>7</max>
@@ -12,19 +12,35 @@
<TEST>
<skipCleanInstall>yes</skipCleanInstall>
- <switchCount>7</switchCount>
<warmUp>5</warmUp>
<sampleSize>20</sampleSize>
- <wait></wait>
<intents>1,100,1000</intents> #list format, will be split on ','
- <debug>True</debug> #"True" for true
+ <ingress>null:0000000000000001/6</ingress>
+ <egress>null:0000000000000007/5</egress>
+ <debug>False</debug>
</TEST>
<GIT>
- <autopull>off</autopull>
- <checkout>master</checkout>
+ <gitPull>off</gitPull>
+ <gitBranch>master</gitBranch>
</GIT>
+ <DATABASE>
+ <file>/tmp/IntentInstallWithdrawLatDB</file>
+ </DATABASE>
+ <ATTEMPTS>
+ <verify>3</verify>
+ </ATTEMPTS>
+
+ <SLEEP>
+ <startup>10</startup>
+ <install>10</install>
+ <verify>3</verify>
+ <reroute>3</reroute>
+ # timeout for pexpect
+ <timeout>300</timeout>
+ </SLEEP>
+
<CTRL>
<USER>sdn</USER>
diff --git a/TestON/tests/SCPF/SCPFintentInstallWithdrawLat/SCPFintentInstallWithdrawLat.py b/TestON/tests/SCPF/SCPFintentInstallWithdrawLat/SCPFintentInstallWithdrawLat.py
index 325cdbf..ef50ab3 100644
--- a/TestON/tests/SCPF/SCPFintentInstallWithdrawLat/SCPFintentInstallWithdrawLat.py
+++ b/TestON/tests/SCPF/SCPFintentInstallWithdrawLat/SCPFintentInstallWithdrawLat.py
@@ -1,273 +1,315 @@
-# ScaleOutTemplate
-#
-# CASE1 starts number of nodes specified in param file
-#
-# cameron@onlab.us
+"""
+SCPFintentInstallWithdrawLat:
+ - Test the latency of intent installed and withdrawn
+ - Use Push-test-intents command to push intents
+ - Use Null provider with 7 devices and linear topology
+ - Always push intents between 1/6 and 7/5
+ - The batch size is defined in parm file. (default 1,100,1000)
-import sys
-import os.path
-
-
+ yunpeng@onlab.us
+"""
class SCPFintentInstallWithdrawLat:
-
def __init__( self ):
self.default = ''
+ def CASE0( self, main ):
+ '''
+ - GIT
+ - BUILDING ONOS
+ Pull specific ONOS branch, then Build ONOS ono ONOS Bench.
+ This step is usually skipped. Because in a Jenkins driven automated
+ test env. We want Jenkins jobs to pull&build for flexibility to handle
+ different versions of ONOS.
+ - Construct tests variables
+ '''
+ gitPull = main.params['GIT']['gitPull']
+ gitBranch = main.params['GIT']['gitBranch']
+
+ main.case("Pull onos branch and build onos on Teststation.")
+
+ if gitPull == 'True':
+ main.step("Git Checkout ONOS branch: " + gitBranch)
+ stepResult = main.ONOSbench.gitCheckout(branch=gitBranch)
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully checkout onos branch.",
+ onfail="Failed to checkout onos branch. Exiting test...")
+ if not stepResult: main.exit()
+
+ main.step("Git Pull on ONOS branch:" + gitBranch)
+ stepResult = main.ONOSbench.gitPull()
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully pull onos. ",
+ onfail="Failed to pull onos. Exiting test ...")
+ if not stepResult: main.exit()
+
+ main.step("Building ONOS branch: " + gitBranch)
+ stepResult = main.ONOSbench.cleanInstall(skipTest=True)
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully build onos.",
+ onfail="Failed to build onos. Exiting test...")
+ if not stepResult: main.exit()
+
+ else:
+ main.log.warn("Skipped pulling onos and Skipped building ONOS")
+
+ main.apps = main.params['ENV']['cellApps']
+ main.BENCHUser = main.params['BENCH']['user']
+ main.BENCHIp = main.params['BENCH']['ip1']
+ main.MN1Ip = main.params['MN']['ip1']
+ main.maxNodes = int(main.params['max'])
+ main.cellName = main.params['ENV']['cellName']
+ main.scale = (main.params['SCALE']).split(",")
+ main.dbFileName = main.params['DATABASE']['file']
+ main.timeout = int(main.params['SLEEP']['timeout'])
+ main.startUpSleep = int(main.params['SLEEP']['startup'])
+ main.installSleep = int(main.params['SLEEP']['install'])
+ main.verifySleep = int(main.params['SLEEP']['verify'])
+ main.verifyAttempts = int(main.params['ATTEMPTS']['verify'])
+ main.sampleSize = int(main.params['TEST']['sampleSize'])
+ main.warmUp = int(main.params['TEST']['warmUp'])
+ main.intentsList = (main.params['TEST']['intents']).split(",")
+ main.ingress = main.params['TEST']['ingress']
+ main.egress = main.params['TEST']['egress']
+ main.debug = main.params['TEST']['debug']
+ for i in range(0, len(main.intentsList)):
+ main.intentsList[i] = int(main.intentsList[i])
+ # Create DataBase file
+ main.log.info("Create Database file " + main.dbFileName)
+ resultsDB = open(main.dbFileName, "w+")
+ resultsDB.close()
+
def CASE1( self, main ):
-
+ # Clean up test environment and set up
import time
- global init
- try:
- if type(init) is not bool:
- init = False
- except NameError:
- init = False
+ main.log.info("Get ONOS cluster IP")
+ print(main.scale)
+ main.numCtrls = int(main.scale[0])
+ main.ONOSip = []
+ main.maxNumBatch = 0
+ main.AllONOSip = main.ONOSbench.getOnosIps()
+ for i in range(main.numCtrls):
+ main.ONOSip.append(main.AllONOSip[i])
+ main.log.info(main.ONOSip)
+ main.CLIs = []
+ main.log.info("Creating list of ONOS cli handles")
+ for i in range(main.numCtrls):
+ main.CLIs.append(getattr(main, 'ONOS%scli' % (i + 1)))
- #Load values from params file
- checkoutBranch = main.params[ 'GIT' ][ 'checkout' ]
- gitPull = main.params[ 'GIT' ][ 'autopull' ]
- cellName = main.params[ 'ENV' ][ 'cellName' ]
- Apps = main.params[ 'ENV' ][ 'cellApps' ]
- BENCHIp = main.params[ 'BENCH' ][ 'ip1' ]
- BENCHUser = main.params[ 'BENCH' ][ 'user' ]
- MN1Ip = main.params[ 'MN' ][ 'ip1' ]
- main.maxNodes = int(main.params[ 'max' ])
- skipMvn = main.params[ 'TEST' ][ 'skipCleanInstall' ]
- cellName = main.params[ 'ENV' ][ 'cellName' ]
- switchCount = main.params[ 'TEST' ][ 'switchCount' ]
+ if not main.CLIs:
+ main.log.error("Failed to create the list of ONOS cli handles")
+ main.cleanup()
+ main.exit()
- # -- INIT SECTION, ONLY RUNS ONCE -- #
- if init == False:
- init = True
- global clusterCount #number of nodes running
- global ONOSIp #list of ONOS IP addresses
- global scale
- global commit
+ main.commit = main.ONOSbench.getVersion(report=True)
+ main.commit = main.commit.split(" ")[1]
+ main.log.info("Starting up %s node(s) ONOS cluster" % main.numCtrls)
+ main.log.info("Safety check, killing all ONOS processes" +
+ " before initiating environment setup")
- clusterCount = 0
- ONOSIp = [ 0 ]
- scale = (main.params[ 'SCALE' ]).split(",")
- clusterCount = int(scale[0])
+ for i in range(main.numCtrls):
+ main.ONOSbench.onosDie(main.ONOSip[i])
- #Populate ONOSIp with ips from params
- ONOSIp = [0]
- ONOSIp.extend(main.ONOSbench.getOnosIps())
+ main.log.info("NODE COUNT = %s" % main.numCtrls)
+ main.ONOSbench.createCellFile(main.ONOSbench.ip_address,
+ main.cellName,
+ main.MN1Ip,
+ main.apps,
+ main.ONOSip)
+ main.step("Apply cell to environment")
+ cellResult = main.ONOSbench.setCell(main.cellName)
+ verifyResult = main.ONOSbench.verifyCell()
+ stepResult = cellResult and verifyResult
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully applied cell to " + \
+ "environment",
+ onfail="Failed to apply cell to environment ")
- #mvn clean install, for debugging set param 'skipCleanInstall' to yes to speed up test
- if skipMvn != "yes":
- mvnResult = main.ONOSbench.cleanInstall()
-
- #git
- main.step( "Git checkout and pull " + checkoutBranch )
- if gitPull == 'on':
- checkoutResult = main.ONOSbench.gitCheckout( checkoutBranch )
- pullResult = main.ONOSbench.gitPull()
-
- else:
- checkoutResult = main.TRUE
- pullResult = main.TRUE
- main.log.info( "Skipped git checkout and pull" )
-
- commit = main.ONOSbench.getVersion()
- commit = (commit.split(" "))[1]
-
- resultsDB = open("/tmp/IntentInstallWithdrawLatDB", "w+")
- resultsDB.close()
-
- # -- END OF INIT SECTION --#
-
- clusterCount = int(scale[0])
- scale.remove(scale[0])
-
- #kill off all onos processes
- main.log.step("Safety check, killing all ONOS processes")
- main.log.step("before initiating environment setup")
- for node in range(1, main.maxNodes + 1):
- main.ONOSbench.onosDie(ONOSIp[node])
-
- #Uninstall everywhere
- main.log.step( "Cleaning Enviornment..." )
- for i in range(1, main.maxNodes + 1):
- main.log.info(" Uninstalling ONOS " + str(i) )
- main.ONOSbench.onosUninstall( ONOSIp[i] )
-
- #construct the cell file
- main.log.info("Creating cell file")
- cellIp = []
- for node in range (1, clusterCount + 1):
- cellIp.append(ONOSIp[node])
-
- main.ONOSbench.createCellFile(BENCHIp,cellName,MN1Ip,str(Apps), cellIp)
-
- main.step( "Set Cell" )
- main.ONOSbench.setCell(cellName)
-
- main.step( "Creating ONOS package" )
+ main.step("Creating ONOS package")
packageResult = main.ONOSbench.onosPackage()
+ stepResult = packageResult
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully created ONOS package",
+ onfail="Failed to create ONOS package")
- main.step( "verify cells" )
- verifyCellResult = main.ONOSbench.verifyCell()
+ main.step("Uninstall ONOS package on all Nodes")
+ uninstallResult = main.TRUE
+ for i in range(int(main.numCtrls)):
+ main.log.info("Uninstalling package on ONOS Node IP: " + main.ONOSip[i])
+ u_result = main.ONOSbench.onosUninstall(main.ONOSip[i])
+ utilities.assert_equals(expect=main.TRUE, actual=u_result,
+ onpass="Test step PASS",
+ onfail="Test step FAIL")
+ uninstallResult = (uninstallResult and u_result)
- main.log.report( "Initializeing " + str( clusterCount ) + " node cluster." )
- for node in range(1, clusterCount + 1):
- main.log.info("Starting ONOS " + str(node) + " at IP: " + ONOSIp[node])
- main.ONOSbench.onosInstall( ONOSIp[node])
+ main.step("Install ONOS package on all Nodes")
+ installResult = main.TRUE
+ for i in range(int(main.numCtrls)):
+ main.log.info("Installing package on ONOS Node IP: " + main.ONOSip[i])
+ i_result = main.ONOSbench.onosInstall(node=main.ONOSip[i])
+ utilities.assert_equals(expect=main.TRUE, actual=i_result,
+ onpass="Test step PASS",
+ onfail="Test step FAIL")
+ installResult = installResult and i_result
- for node in range(1, clusterCount + 1):
- for i in range( 2 ):
- isup = main.ONOSbench.isup( ONOSIp[node] )
- if isup:
- main.log.info("ONOS " + str(node) + " is up\n")
- break
- if not isup:
- main.log.report( "ONOS " + str(node) + " didn't start!" )
+ main.step("Verify ONOS nodes UP status")
+ statusResult = main.TRUE
+ for i in range(int(main.numCtrls)):
+ main.log.info("ONOS Node " + main.ONOSip[i] + " status:")
+ onos_status = main.ONOSbench.onosStatus(node=main.ONOSip[i])
+ utilities.assert_equals(expect=main.TRUE, actual=onos_status,
+ onpass="Test step PASS",
+ onfail="Test step FAIL")
+ statusResult = (statusResult and onos_status)
+ time.sleep(2)
+ main.step("Start ONOS CLI on all nodes")
+ cliResult = main.TRUE
+ main.step(" Start ONOS cli using thread ")
+ startCliResult = main.TRUE
+ pool = []
+ main.threadID = 0
+ for i in range(int(main.numCtrls)):
+ t = main.Thread(target=main.CLIs[i].startOnosCli,
+ threadID=main.threadID,
+ name="startOnosCli",
+ args=[main.ONOSip[i]],
+ kwargs={"onosStartTimeout": main.timeout})
+ pool.append(t)
+ t.start()
+ main.threadID = main.threadID + 1
+ for t in pool:
+ t.join()
+ startCliResult = startCliResult and t.result
+ time.sleep(main.startUpSleep)
- main.ONOS1cli.startOnosCli( ONOSIp[1] )
- main.log.info("Startup sequence complete")
+ # configure apps
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=7)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "topoShape", value="linear")
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="true")
+ main.CLIs[0].setCfg("org.onosproject.net.intent.impl.IntentManager", "skipReleaseResourcesOnWithdrawal", value="true")
+ time.sleep(main.startUpSleep)
- time.sleep(30)
-
- for i in range(3):
- main.ONOSbench.onosCfgSet( ONOSIp[1], "org.onosproject.provider.nil.NullProviders", ("deviceCount " + str(switchCount)) )
- main.ONOSbench.onosCfgSet( ONOSIp[1], "org.onosproject.provider.nil.NullProviders", "topoShape linear")
- main.ONOSbench.onosCfgSet( ONOSIp[1], "org.onosproject.provider.nil.NullProviders", "enabled true")
- if main.ONOSbench.verifySummary(ONOSIp[1], switchCount):
- break
- else:
- print "Failed- looping"
-
- main.ONOSbench.handle.sendline("""onos $OC1 "balance-masters" """)
- main.ONOSbench.handle.expect(":~")
- main.ONOSbench.logReport(ONOSIp[1], ["ERROR", "WARNING", "EXCEPT"])
+ # balanceMasters
+ main.CLIs[0].balanceMasters()
+ time.sleep(main.startUpSleep)
def CASE2( self, main ):
-
import time
import numpy
+ import json
+ print(main.intentsList)
+ for batchSize in main.intentsList:
+ main.log.report("Intent Batch size: {}".format(batchSize))
+ main.installLatList = []
+ main.withdrawLatList = []
+ validrun = 0
+ invalidrun = 0
+ # we use two variables to control the iteration
+ while validrun <= main.warmUp + main.sampleSize and invalidrun < 20:
+ if validrun >= main.warmUp:
+ main.log.info("================================================")
+ main.log.info("Starting test iteration " + str(validrun - main.warmUp))
+ main.log.info("Total test iteration: " + str(invalidrun + validrun))
+ main.log.info("================================================")
+ else:
+ main.log.info("====================Warm Up=====================")
- testStatus = "pass"
- sampleSize = int(main.params[ 'TEST' ][ 'sampleSize' ])
- warmUp = int(main.params[ 'TEST' ][ 'warmUp' ])
- intentsList = (main.params[ 'TEST' ][ 'intents' ]).split(",")
- switchCount = int(main.params[ 'TEST' ][ 'switchCount' ])
- debug = main.params[ 'TEST' ][ 'switchCount' ]
- for i in range(0,len(intentsList)):
- intentsList[i] = int(intentsList[i])
+ # push intents
+ installResult = main.CLIs[0].pushTestIntents(main.ingress, main.egress, batchSize,
+ offset=1, options="-i", timeout=main.timeout,
+ getResponse=True)
+ if type(installResult) is str:
+ if "Failure" in installResult:
+ main.log.error("Install Intents failure, ignore this iteration.")
+ if validrun < main.warmUp:
+ validrun += 1
+ continue
+ else:
+ invalidrun += 1
+ continue
- ######################
- debug = True
- ######################
+ try:
+ latency = int(installResult.split()[5])
+ main.log.info(installResult)
+ except:
+ main.log.error("Failed to get latency, ignore this iteration.")
+ main.log.error("Response from ONOS:")
+ print(installResult)
+ if validrun < main.warmUp:
+ validrun += 1
+ continue
+ else:
+ invalidrun += 1
+ continue
- linkCount = 0
- for i in range(0,10):
- main.ONOSbench.handle.sendline("onos $OC1 links|wc -l")
- main.ONOSbench.handle.expect(":~")
- linkCount = main.ONOSbench.handle.before
- if debug: main.log.info("Link Count check: " + linkCount)
- if str((switchCount*2)-2) in linkCount:
- break
- time.sleep(2)
+ if validrun >= main.warmUp:
+ main.installLatList.append(latency)
+ else:
+ invalidrun += 1
+ continue
+ time.sleep(2)
+ # Withdraw Intents
+ withdrawResult = main.CLIs[0].pushTestIntents(main.ingress, main.egress, batchSize,
+ offset=1, options="-w", timeout=main.timeout,
+ getResponse=True)
- links = "--"
- for i in range(8):
- if debug: main.log.info("top of loop")
- main.ONOSbench.handle.sendline("onos $OC1 links")
- main.ONOSbench.handle.expect(":~")
- links = main.ONOSbench.handle.before
- if "=null:" in links:
- break
- if debug: main.log.info(str(links))
- if i > 3:
- main.ONOSbench.logReport(ONOSIp[1], ["ERROR", "WARNING", "EXCEPT"], "d")
- if i == 7:
- main.log.error("link data missing")
- time.sleep(3)
+ if type(withdrawResult) is str:
+ if "Failure" in withdrawResult:
+ main.log.error("withdraw Intents failure, ignore this iteration.")
+ if validrun < main.warmUp:
+ validrun += 1
+ continue
+ else:
+ invalidrun += 1
+ continue
- links = links.splitlines()
- templinks = links
+ try:
+ latency = int(withdrawResult.split()[5])
+ main.log.info(withdrawResult)
+ except:
+ main.log.error("Failed to get latency, ignore this iteration.")
+ main.log.error("Response from ONOS:")
+ print(withdrawResult)
+ if validrun < main.warmUp:
+ validrun += 1
+ continue
+ else:
+ invalidrun += 1
+ continue
- tempDevices = []
- for line in links:
- temp = line.split(" ")
- temp[0].replace("src=","")
- temp[0] = (temp[0].split("/"))[0]
- tempDevices.append(temp[0])
-
- tempDevices.sort()
- devices = []
- for i in tempDevices:
- if "src=null" in i:
- devices.append(i.replace("src=", ""))
- if debug: main.log.info(str(devices))
-
- ingress = devices[0]
- egress = devices.pop()
- if debug: main.log.info(ingress)
- if debug: main.log.info(egress)
-
- for intentSize in intentsList:
- cmd = "onos $OC1 push-test-intents "
- cmd += ingress + "/6 "
- cmd += egress + "/5 "
- cmd += str(intentSize) + " 1"
- installed = []
- withdrawn = []
- testStatus = ""
-
- for run in range(0, (warmUp + sampleSize)):
- if run > warmUp:
- time.sleep(5)
-
- myRawResult = "--"
-
- main.ONOSbench.handle.sendline(cmd)
- main.ONOSbench.handle.expect(":~")
- myRawResult = main.ONOSbench.handle.before
-
- if debug: main.log.info(myRawResult)
-
- if run >= warmUp:
- myRawResult = myRawResult.splitlines()
- for line in myRawResult:
- if "Failure:" in line:
- main.log.error("INTENT TEST FAILURE, ABORTING TESTCASE")
- testStatus = "fail"
- break
-
- if "install" in line:
- installed.append(int(line.split(" ")[5]))
-
- if "withdraw" in line:
- withdrawn.append(int(line.split(" ")[5]))
-
- if testStatus == "fail":
- main.log.info("Installed: " + str(installed))
- main.log.info("Withdrawn: " + str(withdrawn))
- main.log.info("Scale: " + str(clusterCount))
- main.log.info("Warmup: " + str(warmUp) + " SampleSize: " + str(sampleSize))
- main.log.info("Run: " + str(run))
- main.log.error("Skipping test case")
- main.skipCase()
-
+ if validrun >= main.warmUp:
+ main.withdrawLatList.append(latency)
+ else:
+ invalidrun += 1
+ continue
+ time.sleep(2)
+ main.CLIs[0].purgeWithdrawnIntents()
+ validrun += 1
+ installave = numpy.average(main.installLatList)
+ installstd = numpy.std(main.installLatList)
+ withdrawave = numpy.average(main.withdrawLatList)
+ withdrawstd = numpy.std(main.withdrawLatList)
+ # log report
main.log.report("----------------------------------------------------")
- main.log.report("Scale: " + str(clusterCount) + "\tIntent batch size: " + str(intentSize))
- main.log.report("Data samples: " + str(sampleSize) + "\tWarm up tests: " + str(warmUp))
- main.log.report("Installed average: " + str(numpy.mean(installed)))
- main.log.report("Installed standard deviation: " + str(numpy.std(installed)))
- main.log.report("Withdraw average: " + str(numpy.mean(withdrawn)))
- main.log.report("Withdraw standard deviation: " + str(numpy.std(withdrawn)))
- main.log.report(" ")
-
- resultString = "'" + commit + "',"
- resultString += str(clusterCount) + ","
- resultString += str(intentSize) + ","
- resultString += str(numpy.mean(installed)) + ","
- resultString += str(numpy.std(installed)) + ","
- resultString += str(numpy.mean(withdrawn)) + ","
- resultString += str(numpy.std(withdrawn)) + "\n"
- resultsDB = open("/tmp/IntentInstallWithdrawLatDB", "a")
- resultsDB.write(resultString)
- resultsDB.close()
-
- main.ONOSbench.logReport(ONOSIp[1], ["ERROR", "WARNING", "EXCEPT"])
- time.sleep(20)
+ main.log.report("Scale: " + str(main.numCtrls))
+ main.log.report("Intent batch: " + str(batchSize))
+ main.log.report("Install average: {} std: {}".format(installave, installstd))
+ main.log.report("Withdraw average: {} std: {}".format(withdrawave, withdrawstd))
+ # write result to database file
+ if not (numpy.isnan(installave) or numpy.isnan(installstd) or\
+ numpy.isnan(withdrawstd) or numpy.isnan(withdrawave)):
+ databaseString = "'" + main.commit + "',"
+ databaseString += str(main.numCtrls) + ","
+ databaseString += str(batchSize) + ","
+ databaseString += str(installave) + ","
+ databaseString += str(installstd) + ","
+ databaseString += str(withdrawave) + ","
+ databaseString += str(withdrawstd) + "\n"
+ resultsDB = open(main.dbFileName, "a")
+ resultsDB.write(databaseString)
+ resultsDB.close()
+ del main.scale[0]
diff --git a/TestON/tests/SCPF/SCPFintentInstallWithdrawLatWithFlowObj/SCPFintentInstallWithdrawLatWithFlowObj.params b/TestON/tests/SCPF/SCPFintentInstallWithdrawLatWithFlowObj/SCPFintentInstallWithdrawLatWithFlowObj.params
index 71f48fe..e1b799a 100644
--- a/TestON/tests/SCPF/SCPFintentInstallWithdrawLatWithFlowObj/SCPFintentInstallWithdrawLatWithFlowObj.params
+++ b/TestON/tests/SCPF/SCPFintentInstallWithdrawLatWithFlowObj/SCPFintentInstallWithdrawLatWithFlowObj.params
@@ -1,6 +1,6 @@
<PARAMS>
- <testcases>1,2,1,2,1,2,1,2</testcases>
+ <testcases>0,1,2,1,2,1,2,1,2</testcases>
<SCALE>1,3,5,7</SCALE>
<max>7</max>
@@ -12,19 +12,35 @@
<TEST>
<skipCleanInstall>yes</skipCleanInstall>
- <switchCount>7</switchCount>
<warmUp>5</warmUp>
<sampleSize>20</sampleSize>
- <wait></wait>
- <intents>1,100,1000</intents> #list format, will be split on ','
- <debug>True</debug> #"True" for true
+ <intents>1,100</intents> #list format, will be split on ','
+ <ingress>null:0000000000000001/6</ingress>
+ <egress>null:0000000000000007/5</egress>
+ <debug>False</debug>
</TEST>
<GIT>
- <autopull>off</autopull>
- <checkout>master</checkout>
+ <gitPull>off</gitPull>
+ <gitBranch>master</gitBranch>
</GIT>
+ <DATABASE>
+ <file>/tmp/IntentInstallWithdrawLatDBWFO</file>
+ </DATABASE>
+ <ATTEMPTS>
+ <verify>3</verify>
+ </ATTEMPTS>
+
+ <SLEEP>
+ <startup>10</startup>
+ <install>10</install>
+ <verify>3</verify>
+ <reroute>3</reroute>
+ # timeout for pexpect
+ <timeout>300</timeout>
+ </SLEEP>
+
<CTRL>
<USER>sdn</USER>
diff --git a/TestON/tests/SCPF/SCPFintentInstallWithdrawLatWithFlowObj/SCPFintentInstallWithdrawLatWithFlowObj.py b/TestON/tests/SCPF/SCPFintentInstallWithdrawLatWithFlowObj/SCPFintentInstallWithdrawLatWithFlowObj.py
index ec47721..37da138 100644
--- a/TestON/tests/SCPF/SCPFintentInstallWithdrawLatWithFlowObj/SCPFintentInstallWithdrawLatWithFlowObj.py
+++ b/TestON/tests/SCPF/SCPFintentInstallWithdrawLatWithFlowObj/SCPFintentInstallWithdrawLatWithFlowObj.py
@@ -1,274 +1,324 @@
-# ScaleOutTemplate
-#
-# CASE1 starts number of nodes specified in param file
-#
-# cameron@onlab.us
+"""
+SCPFintentInstallWithdrawLatWithFlowObj:
+ - Test the latency of intent installed and withdrawn
+ - Use Push-test-intents command to push intents
+ - Use Null provider with 7 devices and linear topology
+ - Always push intents between 1/6 and 7/5
+ - The batch size is defined in parm file. (default 1,100)
+ - org.onosproject.net.intent.impl.compiler.IntentConfigurableRegistrator useFlowObjectives set
+ to true
+ yunpeng@onlab.us
+"""
import sys
import os.path
class SCPFintentInstallWithdrawLatWithFlowObj:
-
def __init__( self ):
self.default = ''
-
+
+ def CASE0( self, main ):
+ '''
+ - GIT
+ - BUILDING ONOS
+ Pull specific ONOS branch, then Build ONOS ono ONOS Bench.
+ This step is usually skipped. Because in a Jenkins driven automated
+ test env. We want Jenkins jobs to pull&build for flexibility to handle
+ different versions of ONOS.
+ - Construct tests variables
+ '''
+ gitPull = main.params['GIT']['gitPull']
+ gitBranch = main.params['GIT']['gitBranch']
+
+ main.case("Pull onos branch and build onos on Teststation.")
+
+ if gitPull == 'True':
+ main.step("Git Checkout ONOS branch: " + gitBranch)
+ stepResult = main.ONOSbench.gitCheckout(branch=gitBranch)
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully checkout onos branch.",
+ onfail="Failed to checkout onos branch. Exiting test...")
+ if not stepResult: main.exit()
+
+ main.step("Git Pull on ONOS branch:" + gitBranch)
+ stepResult = main.ONOSbench.gitPull()
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully pull onos. ",
+ onfail="Failed to pull onos. Exiting test ...")
+ if not stepResult: main.exit()
+
+ main.step("Building ONOS branch: " + gitBranch)
+ stepResult = main.ONOSbench.cleanInstall(skipTest=True)
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully build onos.",
+ onfail="Failed to build onos. Exiting test...")
+ if not stepResult: main.exit()
+
+ else:
+ main.log.warn("Skipped pulling onos and Skipped building ONOS")
+
+ main.apps = main.params['ENV']['cellApps']
+ main.BENCHUser = main.params['BENCH']['user']
+ main.BENCHIp = main.params['BENCH']['ip1']
+ main.MN1Ip = main.params['MN']['ip1']
+ main.maxNodes = int(main.params['max'])
+ main.cellName = main.params['ENV']['cellName']
+ main.scale = (main.params['SCALE']).split(",")
+ main.dbFileName = main.params['DATABASE']['file']
+ main.timeout = int(main.params['SLEEP']['timeout'])
+ main.startUpSleep = int(main.params['SLEEP']['startup'])
+ main.installSleep = int(main.params['SLEEP']['install'])
+ main.verifySleep = int(main.params['SLEEP']['verify'])
+ main.verifyAttempts = int(main.params['ATTEMPTS']['verify'])
+ main.sampleSize = int(main.params['TEST']['sampleSize'])
+ main.warmUp = int(main.params['TEST']['warmUp'])
+ main.intentsList = (main.params['TEST']['intents']).split(",")
+ main.ingress = main.params['TEST']['ingress']
+ main.egress = main.params['TEST']['egress']
+ main.debug = main.params['TEST']['debug']
+ for i in range(0, len(main.intentsList)):
+ main.intentsList[i] = int(main.intentsList[i])
+ # Create DataBase file
+ main.log.info("Create Database file " + main.dbFileName)
+ resultsDB = open(main.dbFileName, "w+")
+ resultsDB.close()
+
def CASE1( self, main ):
-
+ # Clean up test environment and set up
import time
- global init
- try:
- if type(init) is not bool:
- init = False
- except NameError:
- init = False
+ main.log.info("Get ONOS cluster IP")
+ print(main.scale)
+ main.numCtrls = int(main.scale[0])
+ main.ONOSip = []
+ main.maxNumBatch = 0
+ main.AllONOSip = main.ONOSbench.getOnosIps()
+ for i in range(main.numCtrls):
+ main.ONOSip.append(main.AllONOSip[i])
+ main.log.info(main.ONOSip)
+ main.CLIs = []
+ main.log.info("Creating list of ONOS cli handles")
+ for i in range(main.numCtrls):
+ main.CLIs.append(getattr(main, 'ONOS%scli' % (i + 1)))
- #Load values from params file
- checkoutBranch = main.params[ 'GIT' ][ 'checkout' ]
- gitPull = main.params[ 'GIT' ][ 'autopull' ]
- cellName = main.params[ 'ENV' ][ 'cellName' ]
- Apps = main.params[ 'ENV' ][ 'cellApps' ]
- BENCHIp = main.params[ 'BENCH' ][ 'ip1' ]
- BENCHUser = main.params[ 'BENCH' ][ 'user' ]
- MN1Ip = main.params[ 'MN' ][ 'ip1' ]
- main.maxNodes = int(main.params[ 'max' ])
- skipMvn = main.params[ 'TEST' ][ 'skipCleanInstall' ]
- cellName = main.params[ 'ENV' ][ 'cellName' ]
- switchCount = main.params[ 'TEST' ][ 'switchCount' ]
+ if not main.CLIs:
+ main.log.error("Failed to create the list of ONOS cli handles")
+ main.cleanup()
+ main.exit()
- # -- INIT SECTION, ONLY RUNS ONCE -- #
- if init == False:
- init = True
- global clusterCount #number of nodes running
- global ONOSIp #list of ONOS IP addresses
- global scale
- global commit
+ main.commit = main.ONOSbench.getVersion(report=True)
+ main.commit = main.commit.split(" ")[1]
+ main.log.info("Starting up %s node(s) ONOS cluster" % main.numCtrls)
+ main.log.info("Safety check, killing all ONOS processes" +
+ " before initiating environment setup")
- clusterCount = 0
- ONOSIp = [ 0 ]
- scale = (main.params[ 'SCALE' ]).split(",")
- clusterCount = int(scale[0])
+ for i in range(main.numCtrls):
+ main.ONOSbench.onosDie(main.ONOSip[i])
- #Populate ONOSIp with ips from params
- ONOSIp = [0]
- ONOSIp.extend(main.ONOSbench.getOnosIps())
+ main.log.info("NODE COUNT = %s" % main.numCtrls)
+ main.ONOSbench.createCellFile(main.ONOSbench.ip_address,
+ main.cellName,
+ main.MN1Ip,
+ main.apps,
+ main.ONOSip)
+ main.step("Apply cell to environment")
+ cellResult = main.ONOSbench.setCell(main.cellName)
+ verifyResult = main.ONOSbench.verifyCell()
+ stepResult = cellResult and verifyResult
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully applied cell to " + \
+ "environment",
+ onfail="Failed to apply cell to environment ")
- #mvn clean install, for debugging set param 'skipCleanInstall' to yes to speed up test
- if skipMvn != "yes":
- mvnResult = main.ONOSbench.cleanInstall()
-
- #git
- main.step( "Git checkout and pull " + checkoutBranch )
- if gitPull == 'on':
- checkoutResult = main.ONOSbench.gitCheckout( checkoutBranch )
- pullResult = main.ONOSbench.gitPull()
-
- else:
- checkoutResult = main.TRUE
- pullResult = main.TRUE
- main.log.info( "Skipped git checkout and pull" )
-
- commit = main.ONOSbench.getVersion()
- commit = (commit.split(" "))[1]
-
- resultsDB = open("/tmp/IntentInstallWithdrawLatDBWFO", "w+")
- resultsDB.close()
-
- # -- END OF INIT SECTION --#
-
- clusterCount = int(scale[0])
- scale.remove(scale[0])
-
- #kill off all onos processes
- main.log.step("Safety check, killing all ONOS processes")
- main.log.step("before initiating environment setup")
- for node in range(1, main.maxNodes + 1):
- main.ONOSbench.onosDie(ONOSIp[node])
-
- #Uninstall everywhere
- main.log.step( "Cleaning Enviornment..." )
- for i in range(1, main.maxNodes + 1):
- main.log.info(" Uninstalling ONOS " + str(i) )
- main.ONOSbench.onosUninstall( ONOSIp[i] )
-
- #construct the cell file
- main.log.info("Creating cell file")
- cellIp = []
- for node in range (1, clusterCount + 1):
- cellIp.append(ONOSIp[node])
-
- main.ONOSbench.createCellFile(BENCHIp,cellName,MN1Ip,str(Apps), cellIp)
-
- main.step( "Set Cell" )
- main.ONOSbench.setCell(cellName)
-
- main.step( "Creating ONOS package" )
+ main.step("Creating ONOS package")
packageResult = main.ONOSbench.onosPackage()
+ stepResult = packageResult
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully created ONOS package",
+ onfail="Failed to create ONOS package")
- main.step( "verify cells" )
- verifyCellResult = main.ONOSbench.verifyCell()
+ main.step("Uninstall ONOS package on all Nodes")
+ uninstallResult = main.TRUE
+ for i in range(int(main.numCtrls)):
+ main.log.info("Uninstalling package on ONOS Node IP: " + main.ONOSip[i])
+ u_result = main.ONOSbench.onosUninstall(main.ONOSip[i])
+ utilities.assert_equals(expect=main.TRUE, actual=u_result,
+ onpass="Test step PASS",
+ onfail="Test step FAIL")
+ uninstallResult = (uninstallResult and u_result)
- main.log.report( "Initializeing " + str( clusterCount ) + " node cluster." )
- for node in range(1, clusterCount + 1):
- main.log.info("Starting ONOS " + str(node) + " at IP: " + ONOSIp[node])
- main.ONOSbench.onosInstall( ONOSIp[node])
+ main.step("Install ONOS package on all Nodes")
+ installResult = main.TRUE
+ for i in range(int(main.numCtrls)):
+ main.log.info("Installing package on ONOS Node IP: " + main.ONOSip[i])
+ i_result = main.ONOSbench.onosInstall(node=main.ONOSip[i])
+ utilities.assert_equals(expect=main.TRUE, actual=i_result,
+ onpass="Test step PASS",
+ onfail="Test step FAIL")
+ installResult = installResult and i_result
- for node in range(1, clusterCount + 1):
- for i in range( 2 ):
- isup = main.ONOSbench.isup( ONOSIp[node] )
- if isup:
- main.log.info("ONOS " + str(node) + " is up\n")
- break
- if not isup:
- main.log.report( "ONOS " + str(node) + " didn't start!" )
+ main.step("Verify ONOS nodes UP status")
+ statusResult = main.TRUE
+ for i in range(int(main.numCtrls)):
+ main.log.info("ONOS Node " + main.ONOSip[i] + " status:")
+ onos_status = main.ONOSbench.onosStatus(node=main.ONOSip[i])
+ utilities.assert_equals(expect=main.TRUE, actual=onos_status,
+ onpass="Test step PASS",
+ onfail="Test step FAIL")
+ statusResult = (statusResult and onos_status)
+ time.sleep(2)
+ main.step("Start ONOS CLI on all nodes")
+ cliResult = main.TRUE
+ main.step(" Start ONOS cli using thread ")
+ startCliResult = main.TRUE
+ pool = []
+ main.threadID = 0
+ for i in range(int(main.numCtrls)):
+ t = main.Thread(target=main.CLIs[i].startOnosCli,
+ threadID=main.threadID,
+ name="startOnosCli",
+ args=[main.ONOSip[i]],
+ kwargs={"onosStartTimeout": main.timeout})
+ pool.append(t)
+ t.start()
+ main.threadID = main.threadID + 1
+ for t in pool:
+ t.join()
+ startCliResult = startCliResult and t.result
+ time.sleep(main.startUpSleep)
- main.ONOS1cli.startOnosCli( ONOSIp[1] )
- main.log.info("Startup sequence complete")
+ # configure apps
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=7)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "topoShape", value="linear")
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="true")
+ main.CLIs[0].setCfg("org.onosproject.net.intent.impl.IntentManager",
+ "skipReleaseResourcesOnWithdrawal", value="true")
+ main.CLIs[0].setCfg("org.onosproject.net.intent.impl.compiler.IntentConfigurableRegistrator",
+ "useFlowObjectives", value="true")
+ time.sleep(main.startUpSleep)
- time.sleep(30)
-
- for i in range(3):
- main.ONOSbench.onosCfgSet( ONOSIp[1], "org.onosproject.provider.nil.NullProviders", ("deviceCount " + str(switchCount)) )
- main.ONOSbench.onosCfgSet( ONOSIp[1], "org.onosproject.provider.nil.NullProviders", "topoShape linear")
- main.ONOSbench.onosCfgSet( ONOSIp[1], "org.onosproject.provider.nil.NullProviders", "enabled true")
- main.ONOS1cli.setCfg( "org.onosproject.net.intent.impl.compiler.IntentConfigurableRegistrator"," useFlowObjectives","true" )
- if main.ONOSbench.verifySummary(ONOSIp[1], switchCount):
- break
- else:
- print "Failed- looping"
-
- main.ONOSbench.handle.sendline("""onos $OC1 "balance-masters" """)
- main.ONOSbench.handle.expect(":~")
- main.ONOSbench.logReport(ONOSIp[1], ["ERROR", "WARNING", "EXCEPT"])
+ # balanceMasters
+ main.CLIs[0].balanceMasters()
+ time.sleep(main.startUpSleep)
def CASE2( self, main ):
-
import time
import numpy
+ import json
+ print(main.intentsList)
+ for batchSize in main.intentsList:
+ main.log.report("Intent Batch size: {}".format(batchSize))
+ main.installLatList = []
+ main.withdrawLatList = []
+ validrun = 0
+ invalidrun = 0
+ # we use two variables to control the iteration
+ while validrun <= main.warmUp + main.sampleSize and invalidrun < 20:
+ if validrun >= main.warmUp:
+ main.log.info("================================================")
+ main.log.info("Starting test iteration " + str(validrun - main.warmUp))
+ main.log.info("Total test iteration: " + str(invalidrun + validrun))
+ main.log.info("================================================")
+ else:
+ main.log.info("====================Warm Up=====================")
- testStatus = "pass"
- sampleSize = int(main.params[ 'TEST' ][ 'sampleSize' ])
- warmUp = int(main.params[ 'TEST' ][ 'warmUp' ])
- intentsList = (main.params[ 'TEST' ][ 'intents' ]).split(",")
- switchCount = int(main.params[ 'TEST' ][ 'switchCount' ])
- debug = main.params[ 'TEST' ][ 'switchCount' ]
- for i in range(0,len(intentsList)):
- intentsList[i] = int(intentsList[i])
+ # push intents
+ installResult = main.CLIs[0].pushTestIntents(main.ingress, main.egress, batchSize,
+ offset=1, options="-i", timeout=main.timeout,
+ getResponse=True)
+ if type(installResult) is str:
+ if "Failure" in installResult:
+ main.log.error("Install Intents failure, ignore this iteration.")
+ if validrun < main.warmUp:
+ validrun += 1
+ continue
+ else:
+ invalidrun += 1
+ continue
- ######################
- debug = True
- ######################
+ try:
+ latency = int(installResult.split()[5])
+ main.log.info(installResult)
+ except:
+ main.log.error("Failed to get latency, ignore this iteration.")
+ main.log.error("Response from ONOS:")
+ print(installResult)
+ if validrun < main.warmUp:
+ validrun += 1
+ continue
+ else:
+ invalidrun += 1
+ continue
- linkCount = 0
- for i in range(0,10):
- main.ONOSbench.handle.sendline("onos $OC1 links|wc -l")
- main.ONOSbench.handle.expect(":~")
- linkCount = main.ONOSbench.handle.before
- if debug: main.log.info("Link Count check: " + linkCount)
- if str((switchCount*2)-2) in linkCount:
- break
- time.sleep(2)
+ if validrun >= main.warmUp:
+ main.installLatList.append(latency)
+ else:
+ invalidrun += 1
+ continue
+ time.sleep(2)
+ # Withdraw Intents
+ withdrawResult = main.CLIs[0].pushTestIntents(main.ingress, main.egress, batchSize,
+ offset=1, options="-w", timeout=main.timeout,
+ getResponse=True)
- links = "--"
- for i in range(8):
- if debug: main.log.info("top of loop")
- main.ONOSbench.handle.sendline("onos $OC1 links")
- main.ONOSbench.handle.expect(":~")
- links = main.ONOSbench.handle.before
- if "=null:" in links:
- break
- if debug: main.log.info(str(links))
- if i > 3:
- main.ONOSbench.logReport(ONOSIp[1], ["ERROR", "WARNING", "EXCEPT"], "d")
- if i == 7:
- main.log.error("link data missing")
- time.sleep(3)
+ if type(withdrawResult) is str:
+ if "Failure" in withdrawResult:
+ main.log.error("withdraw Intents failure, ignore this iteration.")
+ if validrun < main.warmUp:
+ validrun += 1
+ continue
+ else:
+ invalidrun += 1
+ continue
- links = links.splitlines()
- templinks = links
+ try:
+ latency = int(withdrawResult.split()[5])
+ main.log.info(withdrawResult)
+ except:
+ main.log.error("Failed to get latency, ignore this iteration.")
+ main.log.error("Response from ONOS:")
+ print(withdrawResult)
+ if validrun < main.warmUp:
+ validrun += 1
+ continue
+ else:
+ invalidrun += 1
+ continue
- tempDevices = []
- for line in links:
- temp = line.split(" ")
- temp[0].replace("src=","")
- temp[0] = (temp[0].split("/"))[0]
- tempDevices.append(temp[0])
-
- tempDevices.sort()
- devices = []
- for i in tempDevices:
- if "src=null" in i:
- devices.append(i.replace("src=", ""))
- if debug: main.log.info(str(devices))
-
- ingress = devices[0]
- egress = devices.pop()
- if debug: main.log.info(ingress)
- if debug: main.log.info(egress)
-
- for intentSize in intentsList:
- cmd = "onos $OC1 push-test-intents "
- cmd += ingress + "/6 "
- cmd += egress + "/5 "
- cmd += str(intentSize) + " 1"
- installed = []
- withdrawn = []
- testStatus = ""
-
- for run in range(0, (warmUp + sampleSize)):
- if run > warmUp:
- time.sleep(5)
-
- myRawResult = "--"
-
- main.ONOSbench.handle.sendline(cmd)
- main.ONOSbench.handle.expect(":~")
- myRawResult = main.ONOSbench.handle.before
-
- if debug: main.log.info(myRawResult)
-
- if run >= warmUp:
- myRawResult = myRawResult.splitlines()
- for line in myRawResult:
- if "Failure:" in line:
- main.log.error("INTENT TEST FAILURE, ABORTING TESTCASE")
- testStatus = "fail"
- break
-
- if "install" in line:
- installed.append(int(line.split(" ")[5]))
-
- if "withdraw" in line:
- withdrawn.append(int(line.split(" ")[5]))
-
- if testStatus == "fail":
- main.log.info("Installed: " + str(installed))
- main.log.info("Withdrawn: " + str(withdrawn))
- main.log.info("Scale: " + str(clusterCount))
- main.log.info("Warmup: " + str(warmUp) + " SampleSize: " + str(sampleSize))
- main.log.info("Run: " + str(run))
- main.log.error("Skipping test case")
- main.skipCase()
-
+ if validrun >= main.warmUp:
+ main.withdrawLatList.append(latency)
+ else:
+ invalidrun += 1
+ continue
+ time.sleep(2)
+ main.CLIs[0].purgeWithdrawnIntents()
+ validrun += 1
+ installave = numpy.average(main.installLatList)
+ installstd = numpy.std(main.installLatList)
+ withdrawave = numpy.average(main.withdrawLatList)
+ withdrawstd = numpy.std(main.withdrawLatList)
+ # log report
main.log.report("----------------------------------------------------")
- main.log.report("Scale: " + str(clusterCount) + "\tIntent batch size: " + str(intentSize))
- main.log.report("Data samples: " + str(sampleSize) + "\tWarm up tests: " + str(warmUp))
- main.log.report("Installed average: " + str(numpy.mean(installed)))
- main.log.report("Installed standard deviation: " + str(numpy.std(installed)))
- main.log.report("Withdraw average: " + str(numpy.mean(withdrawn)))
- main.log.report("Withdraw standard deviation: " + str(numpy.std(withdrawn)))
- main.log.report(" ")
-
- resultString = "'" + commit + "',"
- resultString += str(clusterCount) + ","
- resultString += str(intentSize) + ","
- resultString += str(numpy.mean(installed)) + ","
- resultString += str(numpy.std(installed)) + ","
- resultString += str(numpy.mean(withdrawn)) + ","
- resultString += str(numpy.std(withdrawn)) + "\n"
- resultsDB = open("/tmp/IntentInstallWithdrawLatDBWFO", "a")
- resultsDB.write(resultString)
- resultsDB.close()
-
- main.ONOSbench.logReport(ONOSIp[1], ["ERROR", "WARNING", "EXCEPT"])
- time.sleep(20)
+ main.log.report("Scale: " + str(main.numCtrls))
+ main.log.report("Intent batch: " + str(batchSize))
+ main.log.report("Install average: {} std: {}".format(installave, installstd))
+ main.log.report("Withdraw average: {} std: {}".format(withdrawave, withdrawstd))
+ # write result to database file
+ if not (numpy.isnan(installave) or numpy.isnan(installstd) or \
+ numpy.isnan(withdrawstd) or numpy.isnan(withdrawave)):
+ databaseString = "'" + main.commit + "',"
+ databaseString += str(main.numCtrls) + ","
+ databaseString += str(batchSize) + ","
+ databaseString += str(installave) + ","
+ databaseString += str(installstd) + ","
+ databaseString += str(withdrawave) + ","
+ databaseString += str(withdrawstd) + "\n"
+ resultsDB = open(main.dbFileName, "a")
+ resultsDB.write(databaseString)
+ resultsDB.close()
+ del main.scale[0]
diff --git a/TestON/tests/SCPF/SCPFintentRerouteLat/SCPFintentRerouteLat.params b/TestON/tests/SCPF/SCPFintentRerouteLat/SCPFintentRerouteLat.params
index 3799982..246a177 100644
--- a/TestON/tests/SCPF/SCPFintentRerouteLat/SCPFintentRerouteLat.params
+++ b/TestON/tests/SCPF/SCPFintentRerouteLat/SCPFintentRerouteLat.params
@@ -1,6 +1,6 @@
<PARAMS>
- <testcases>1,2,1,2,1,2,1,2</testcases>
+ <testcases>0,1,2,1,2,1,2,1,2</testcases>
<SCALE>1,3,5,7</SCALE>
<max>7</max>
@@ -14,30 +14,34 @@
<skipCleanInstall>yes</skipCleanInstall>
<warmUp>5</warmUp>
<sampleSize>20</sampleSize>
- <wait></wait>
<intents>1,100,1000</intents> #list format, will be split on ','
- <debug>True</debug>
-
- <s1>1,1,1,1,1,1,1,1</s1>
- <s3>2,2,1,1,3,3,3,1</s3>
- <s5>2,2,1,1,3,4,5,3</s5>
- <s7>2,3,1,1,5,6,7,4</s7>
-
+ <ingress>null:0000000000000001/0</ingress>
+ <egress>null:0000000000000007/0</egress>
+ <debug>False</debug>
</TEST>
-
- <METRICS>
- <Submitted>0</Submitted>
- <Installed>1</Installed>
- <Failed>0</Failed>
- <Withdraw>0</Withdraw>
- <Withdrawn>0</Withdrawn>
- </METRICS>
+ <DATABASE>
+ <file>/tmp/IntentRerouteLatDB</file>
+ </DATABASE>
<GIT>
- <autopull>off</autopull>
- <checkout>master</checkout>
+ <gitPull>False</gitPull>
+ <gitBranch>master</gitBranch>
</GIT>
+ <ATTEMPTS>
+ <verify>3</verify>
+ </ATTEMPTS>
+
+ <SLEEP>
+ <startup>10</startup>
+ <setmaster>5</setmaster>
+ <install>10</install>
+ <verify>3</verify>
+ <reroute>3</reroute>
+ # timeout for pexpect
+ <timeout>300</timeout>
+ </SLEEP>
+
<CTRL>
<USER>sdn</USER>
diff --git a/TestON/tests/SCPF/SCPFintentRerouteLat/SCPFintentRerouteLat.py b/TestON/tests/SCPF/SCPFintentRerouteLat/SCPFintentRerouteLat.py
index 0c4d950..4a63f18 100644
--- a/TestON/tests/SCPF/SCPFintentRerouteLat/SCPFintentRerouteLat.py
+++ b/TestON/tests/SCPF/SCPFintentRerouteLat/SCPFintentRerouteLat.py
@@ -1,419 +1,418 @@
-# ScaleOutTemplate
-#
-# CASE1 starts number of nodes specified in param file
-#
-# cameron@onlab.us
-
-import sys
-import os.path
-
+# SCPFintentRerouteLat
+"""
+SCPFintentRerouteLat
+ - Test Intent Reroute Latency
+ - Test Algorithm:
+ 1. Start Null Provider reroute Topology
+ 2. Using Push-test-intents to push batch size intents from switch 1 to switch 7
+ 3. Cut the link between switch 3 and switch 4 (the path will reroute to switch 8)
+ 4. Get the topology time stamp
+ 5. Get Intent reroute(Installed) time stamp from each nodes
+ 6. Use the latest intent time stamp subtract topology time stamp
+ - This test will run 5 warm up by default, warm up iteration can be setup in Param file
+ - The intent batch size will default set to 1, 100, and 1000, also can be set in Param file
+ - The unit of the latency result is milliseconds
+"""
class SCPFintentRerouteLat:
-
- def __init__( self ):
+ def __init__(self):
self.default = ''
- def CASE1( self, main ):
+ def CASE0( self, main ):
+ '''
+ - GIT
+ - BUILDING ONOS
+ Pull specific ONOS branch, then Build ONOS ono ONOS Bench.
+ This step is usually skipped. Because in a Jenkins driven automated
+ test env. We want Jenkins jobs to pull&build for flexibility to handle
+ different versions of ONOS.
+ - Construct tests variables
+ '''
+ gitPull = main.params['GIT']['gitPull']
+ gitBranch = main.params['GIT']['gitBranch']
+ main.case("Pull onos branch and build onos on Teststation.")
+
+ if gitPull == 'True':
+ main.step("Git Checkout ONOS branch: " + gitBranch)
+ stepResult = main.ONOSbench.gitCheckout(branch=gitBranch)
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully checkout onos branch.",
+ onfail="Failed to checkout onos branch. Exiting test...")
+ if not stepResult: main.exit()
+
+ main.step("Git Pull on ONOS branch:" + gitBranch)
+ stepResult = main.ONOSbench.gitPull()
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully pull onos. ",
+ onfail="Failed to pull onos. Exiting test ...")
+ if not stepResult: main.exit()
+
+ main.step("Building ONOS branch: " + gitBranch)
+ stepResult = main.ONOSbench.cleanInstall(skipTest=True)
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully build onos.",
+ onfail="Failed to build onos. Exiting test...")
+ if not stepResult: main.exit()
+
+ else:
+ main.log.warn("Skipped pulling onos and Skipped building ONOS")
+
+ main.apps = main.params['ENV']['cellApps']
+ main.BENCHUser = main.params['BENCH']['user']
+ main.BENCHIp = main.params['BENCH']['ip1']
+ main.MN1Ip = main.params['MN']['ip1']
+ main.maxNodes = int(main.params['max'])
+ main.skipMvn = main.params['TEST']['skipCleanInstall']
+ main.cellName = main.params['ENV']['cellName']
+ main.scale = (main.params['SCALE']).split(",")
+ main.dbFileName = main.params['DATABASE']['file']
+ main.timeout = int(main.params['SLEEP']['timeout'])
+ main.startUpSleep = int(main.params['SLEEP']['startup'])
+ main.installSleep = int(main.params['SLEEP']['install'])
+ main.verifySleep = int(main.params['SLEEP']['verify'])
+ main.setMasterSleep = int(main.params['SLEEP']['setmaster'])
+ main.verifyAttempts = int(main.params['ATTEMPTS']['verify'])
+ main.sampleSize = int(main.params['TEST']['sampleSize'])
+ main.warmUp = int(main.params['TEST']['warmUp'])
+ main.intentsList = (main.params['TEST']['intents']).split(",")
+ main.ingress = main.params['TEST']['ingress']
+ main.egress = main.params['TEST']['egress']
+ main.debug = main.params['TEST']['debug']
+ for i in range(0, len(main.intentsList)):
+ main.intentsList[i] = int(main.intentsList[i])
+ # Create DataBase file
+ main.log.info("Create Database file " + main.dbFileName)
+ resultsDB = open(main.dbFileName, "w+")
+ resultsDB.close()
+
+ def CASE1( self, main ):
+ '''
+ clean up test environment and set up
+ '''
import time
- global init
- try:
- if type(init) is not bool:
- init = False
- except NameError:
- init = False
+ main.log.info("Get ONOS cluster IP")
+ print(main.scale)
+ main.numCtrls = int(main.scale[0])
+ main.ONOSip = []
+ main.maxNumBatch = 0
+ main.AllONOSip = main.ONOSbench.getOnosIps()
+ for i in range(main.numCtrls):
+ main.ONOSip.append(main.AllONOSip[i])
+ main.log.info(main.ONOSip)
+ main.CLIs = []
+ main.log.info("Creating list of ONOS cli handles")
+ for i in range(main.numCtrls):
+ main.CLIs.append(getattr(main, 'ONOS%scli' % (i + 1)))
- #Load values from params file
- checkoutBranch = main.params[ 'GIT' ][ 'checkout' ]
- gitPull = main.params[ 'GIT' ][ 'autopull' ]
- cellName = main.params[ 'ENV' ][ 'cellName' ]
- Apps = main.params[ 'ENV' ][ 'cellApps' ]
- BENCHUser = main.params[ 'BENCH' ][ 'user' ]
- BENCHIp = main.params[ 'BENCH' ][ 'ip1' ]
- MN1Ip = main.params[ 'MN' ][ 'ip1' ]
- main.maxNodes = int(main.params[ 'max' ])
- skipMvn = main.params[ 'TEST' ][ 'skipCleanInstall' ]
- cellName = main.params[ 'ENV' ][ 'cellName' ]
+ if not main.CLIs:
+ main.log.error("Failed to create the list of ONOS cli handles")
+ main.cleanup()
+ main.exit()
- # -- INIT SECTION, ONLY RUNS ONCE -- #
- if init == False:
- init = True
- global clusterCount #number of nodes running
- global ONOSIp #list of ONOS IP addresses
- global scale
- global commit
+ main.commit = main.ONOSbench.getVersion(report=True)
+ main.commit = main.commit.split(" ")[1]
+ main.log.info("Starting up %s node(s) ONOS cluster" % main.numCtrls)
+ main.log.info("Safety check, killing all ONOS processes" +
+ " before initiating environment setup")
- clusterCount = 0
- ONOSIp = [ 0 ]
- scale = (main.params[ 'SCALE' ]).split(",")
- clusterCount = int(scale[0])
+ for i in range(main.numCtrls):
+ main.ONOSbench.onosDie(main.ONOSip[i])
- #Populate ONOSIp with ips from params
- ONOSIp = [0]
- ONOSIp.extend(main.ONOSbench.getOnosIps())
+ main.log.info("NODE COUNT = %s" % main.numCtrls)
+ main.ONOSbench.createCellFile(main.ONOSbench.ip_address,
+ main.cellName,
+ main.MN1Ip,
+ main.apps,
+ main.ONOSip)
+ main.step("Apply cell to environment")
+ cellResult = main.ONOSbench.setCell(main.cellName)
+ verifyResult = main.ONOSbench.verifyCell()
+ stepResult = cellResult and verifyResult
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully applied cell to " + \
+ "environment",
+ onfail="Failed to apply cell to environment ")
- print("-----------------" + str(ONOSIp))
- #mvn clean install, for debugging set param 'skipCleanInstall' to yes to speed up test
- if skipMvn != "yes":
- mvnResult = main.ONOSbench.cleanInstall()
-
- #git
- main.step( "Git checkout and pull " + checkoutBranch )
- if gitPull == 'on':
- checkoutResult = main.ONOSbench.gitCheckout( checkoutBranch )
- pullResult = main.ONOSbench.gitPull()
-
- else:
- checkoutResult = main.TRUE
- pullResult = main.TRUE
- main.log.info( "Skipped git checkout and pull" )
-
- commit = main.ONOSbench.getVersion()
- commit = (commit.split(" "))[1]
-
- resultsDB = open("/tmp/IntentRerouteLatDB", "w+")
- resultsDB.close()
-
- # -- END OF INIT SECTION --#
-
- clusterCount = int(scale[0])
- scale.remove(scale[0])
-
- #kill off all onos processes
- main.log.step("Safety check, killing all ONOS processes")
- main.log.step("before initiating environment setup")
- for node in range(1, main.maxNodes + 1):
- main.ONOSbench.onosDie(ONOSIp[node])
-
- #Uninstall everywhere
- main.log.step( "Cleaning Enviornment..." )
- for i in range(1, main.maxNodes + 1):
- main.log.info(" Uninstalling ONOS " + str(i) )
- main.ONOSbench.onosUninstall( ONOSIp[i] )
-
- #construct the cell file
- main.log.info("Creating cell file")
- cellIp = []
- for node in range (1, clusterCount + 1):
- cellIp.append(ONOSIp[node])
-
- main.ONOSbench.createCellFile(BENCHIp,cellName,MN1Ip,str(Apps), cellIp)
-
- main.step( "Set Cell" )
- main.ONOSbench.setCell(cellName)
-
- main.step( "Creating ONOS package" )
+ main.step("Creating ONOS package")
packageResult = main.ONOSbench.onosPackage()
+ stepResult = packageResult
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully created ONOS package",
+ onfail="Failed to create ONOS package")
- main.step( "verify cells" )
- verifyCellResult = main.ONOSbench.verifyCell()
+ main.step("Uninstall ONOS package on all Nodes")
+ uninstallResult = main.TRUE
+ for i in range(int(main.numCtrls)):
+ main.log.info("Uninstalling package on ONOS Node IP: " + main.ONOSip[i])
+ u_result = main.ONOSbench.onosUninstall(main.ONOSip[i])
+ utilities.assert_equals(expect=main.TRUE, actual=u_result,
+ onpass="Test step PASS",
+ onfail="Test step FAIL")
+ uninstallResult = (uninstallResult and u_result)
- main.log.report( "Initializing " + str( clusterCount ) + " node cluster." )
- for node in range(1, clusterCount + 1):
- main.log.info("Starting ONOS " + str(node) + " at IP: " + ONOSIp[node])
- main.ONOSbench.onosInstall( ONOSIp[node])
+ main.step("Install ONOS package on all Nodes")
+ installResult = main.TRUE
+ for i in range(int(main.numCtrls)):
+ main.log.info("Installing package on ONOS Node IP: " + main.ONOSip[i])
+ i_result = main.ONOSbench.onosInstall(node=main.ONOSip[i])
+ utilities.assert_equals(expect=main.TRUE, actual=i_result,
+ onpass="Test step PASS",
+ onfail="Test step FAIL")
+ installResult = installResult and i_result
- for node in range(1, clusterCount + 1):
- for i in range( 2 ):
- isup = main.ONOSbench.isup( ONOSIp[node] )
- if isup:
- main.log.info("ONOS " + str(node) + " is up\n")
- break
- if not isup:
- main.log.report( "ONOS " + str(node) + " didn't start!" )
- main.log.info("Startup sequence complete")
+ main.step("Verify ONOS nodes UP status")
+ statusResult = main.TRUE
+ for i in range(int(main.numCtrls)):
+ main.log.info("ONOS Node " + main.ONOSip[i] + " status:")
+ onos_status = main.ONOSbench.onosStatus(node=main.ONOSip[i])
+ utilities.assert_equals(expect=main.TRUE, actual=onos_status,
+ onpass="Test step PASS",
+ onfail="Test step FAIL")
+ statusResult = (statusResult and onos_status)
+ time.sleep(2)
+ main.step("Start ONOS CLI on all nodes")
+ cliResult = main.TRUE
+ main.step(" Start ONOS cli using thread ")
+ startCliResult = main.TRUE
+ pool = []
+ main.threadID = 0
+ for i in range(int(main.numCtrls)):
+ t = main.Thread(target=main.CLIs[i].startOnosCli,
+ threadID=main.threadID,
+ name="startOnosCli",
+ args=[main.ONOSip[i]],
+ kwargs={"onosStartTimeout": main.timeout})
+ pool.append(t)
+ t.start()
+ main.threadID = main.threadID + 1
+ for t in pool:
+ t.join()
+ startCliResult = startCliResult and t.result
+ time.sleep(main.startUpSleep)
- deviceMastership = (main.params[ 'TEST' ][ "s" + str(clusterCount) ]).split(",")
- print("Device mastership list: " + str(deviceMastership))
+ # configure apps
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=8)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "topoShape", value="reroute")
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="true")
+ main.CLIs[0].setCfg("org.onosproject.store.flow.impl.DistributedFlowRuleStore", "backupEnabled", value="false")
- main.ONOSbench.onosCfgSet( ONOSIp[1], "org.onosproject.store.flow.impl.DistributedFlowRuleStore", "backupEnabled false")
+ time.sleep(main.startUpSleep)
- main.log.step("Setting up null provider")
- for i in range(3):
- main.ONOSbench.onosCfgSet( ONOSIp[1], "org.onosproject.provider.nil.NullProviders", "deviceCount 8")
- main.ONOSbench.onosCfgSet( ONOSIp[1], "org.onosproject.provider.nil.NullProviders", "topoShape reroute")
- main.ONOSbench.onosCfgSet( ONOSIp[1], "org.onosproject.provider.nil.NullProviders", "enabled true")
- time.sleep(5)
- main.ONOSbench.handle.sendline("onos $OC1 summary")
- main.ONOSbench.handle.expect(":~")
- x = main.ONOSbench.handle.before
- if "devices=8" in x and "links=16," in x:
- break
-
- index = 1
- for node in deviceMastership:
- for attempt in range(0,10):
- cmd = ( "onos $OC" + node + """ "device-role null:000000000000000""" + str(index) + " " + ONOSIp[int(node)] + """ master" """)
- main.log.info("assigning mastership of device " + str(index) + " to node " + node + ": \n " + cmd + "\n")
- main.ONOSbench.handle.sendline(cmd)
- main.ONOSbench.handle.expect(":~")
- time.sleep(4)
-
- cmd = ( "onos $OC" + node + " roles|grep 00000" + str(index))
- main.log.info(cmd)
- main.ONOSbench.handle.sendline(cmd)
- main.ONOSbench.handle.expect(":~")
- check = main.ONOSbench.handle.before
- main.log.info("CHECK:\n" + check)
- if ("master=" + ONOSIp[int(node)]) in check:
- break
- index += 1
-
- main.ONOSbench.logReport(ONOSIp[1], ["ERROR", "WARNING", "EXCEPT"])
+ # Balance Master
+ main.CLIs[0].balanceMasters()
+ if len(main.ONOSip) > 1:
+ main.CLIs[0].deviceRole("null:0000000000000003", main.ONOSip[0])
+ main.CLIs[0].deviceRole("null:0000000000000004", main.ONOSip[0])
+ time.sleep( main.setMasterSleep )
def CASE2( self, main ):
-
import time
import numpy
import datetime
- #from scipy import stats
+ import json
+ # from scipy import stats
ts = time.time()
-
- sampleSize = int(main.params[ 'TEST' ][ 'sampleSize' ])
- warmUp = int(main.params[ 'TEST' ][ 'warmUp' ])
- intentsList = (main.params[ 'TEST' ][ 'intents' ]).split(",")
- debug = main.params[ 'TEST' ][ 'debug' ]
- for i in range(0,len(intentsList)):
- intentsList[i] = int(intentsList[i])
-
- timestampMetrics = []
- if main.params['METRICS']['Submitted'] == "1":
- timestampMetrics.append("Submitted")
- if main.params['METRICS']['Installed'] == "1":
- timestampMetrics.append("Installed")
- if main.params['METRICS']['Failed'] == "1":
- timestampMetrics.append("Failed")
- if main.params['METRICS']['Withdraw'] == "1":
- timestampMetrics.append("Withdraw")
- if main.params['METRICS']['Withdrawn'] == "1":
- timestampMetrics.append("Withdrawn")
- if debug: main.log.info(timestampMetrics)
-
- if debug == "True":
- debug = True
- else:
- debug = False
-
- ingress = "null:0000000000000001"
- egress = "null:0000000000000007"
-
- for intents in intentsList:
- main.log.report("Intent Batch size: " + str(intents) + "\n ")
- myResult = [["latency", "lastNode"] for x in range(sampleSize)]
-
- for run in range(0, (warmUp + sampleSize)):
- if run > warmUp:
- main.log.info("Starting test iteration " + str(run-warmUp))
-
- cmd = """onos $OC1 "push-test-intents -i """
- cmd += ingress + "/0 "
- cmd += egress + "/0 "
- cmd += str(intents) +""" 1" """
- if debug: main.log.info(cmd)
-
- withdrawCmd = cmd.replace("intents -i", "intents -w ")
-
- #push-test-intents
- main.ONOSbench.handle.sendline(cmd)
- main.ONOSbench.handle.expect(":~")
- myRawResult = main.ONOSbench.handle.before
-
- for i in range(0, 40):
- main.ONOSbench.handle.sendline("onos $OC1 summary")
- main.ONOSbench.handle.expect(":~")
- linkCheck = main.ONOSbench.handle.before
- if ("links=16,") in linkCheck and ("flows=" + str(intents*7) + ","):
- break
- if i == 39:
- main.log.error("Flow/link count incorrect, data invalid."+ linkCheck)
- main.ONOSbench.logReport(ONOSIp[1], ["ERROR", "WARNING", "EXCEPT"], "d")
- #main.ONOSbench.logReport(ONOSIp[(clusterCount-1)], ["ERROR", "WARNING", "EXCEPT"], "d")
- main.ONOSbench.sendline("onos $OC1 summary")
- main.ONOSbench.sendline("onos $OC1 devices")
- main.ONOSbench.sendline("onos $OC1 links")
- main.ONOSbench.expect(":~")
- main.log.info(main.ONOSbench.before)
-
- #collect timestamp from link cut
- cmd = """onos $OC1 null-link "null:0000000000000004/1 null:0000000000000003/2 down" """
- if debug: main.log.info("COMMAND: " + str(cmd))
- main.ONOSbench.handle.sendline(cmd)
- main.ONOSbench.handle.expect(":~")
-
- cmd = "onos-ssh $OC1 cat /opt/onos/log/karaf.log | grep TopologyManager| tail -1"
- for i in range(0,10):
- main.ONOSbench.handle.sendline(cmd)
- time.sleep(2)
- main.ONOSbench.handle.expect(":~")
- raw = main.ONOSbench.handle.before
- #if "NullLinkProvider" in raw and "links=14" in raw:
- if "links=14" in raw:
- break
- if i >= 9:
- main.log.error("Expected output not being recieved... continuing")
- main.log.info(raw)
- break
- time.sleep(2)
-
- if debug: main.log.debug("raw: " + raw)
-
- temp = raw.splitlines()
-
- if debug: main.log.debug("temp (after splitlines): " + str(temp))
-
- # Since the string is deterministic the date is always the 3rd element.
- # However, if the data were grepping for in the onos log changes then this will
- # not work. This is why we print out the raw and temp string so we can visually
- # check if everything is in the correct order. temp should like this:
- # temp = ['/onos$ onos-ssh $OC1 cat /opt/onos/log/karaf.log | grep Top ',
- # 'ologyManager| tail -1', '2015-10-15 12:03:33,736 ... ]
- temp = temp[2]
-
- if debug: main.log.debug("temp (checking for date): " + str(temp))
-
- cutTimestamp = (temp.split(" "))[0] + " " + (temp.split(" "))[1]
-
- if debug: main.log.info("Cut timestamp: " + cutTimestamp)
-
- #validate link count and flow count
- for i in range(0, 40):
- main.ONOSbench.handle.sendline("onos $OC1 summary")
- main.ONOSbench.handle.expect(":~")
- linkCheck = main.ONOSbench.handle.before
- #if "links=" + str(7*intents)+ "," in linkCheck and ("flows=" + str(7*intents) + ",") in linkCheck:
- if "links=14," in linkCheck and ("flows=" + str(8*intents) + ",") in linkCheck:
- break
- if i == 39:
- main.log.error("Link or flow count incorrect, data invalid." + linkCheck)
- main.ONOSbench.logReport(ONOSIp[1], ["ERROR", "WARNING", "EXCEPT"], "d")
-
- time.sleep(5) #trying to avoid negative values
-
- #intents events metrics installed timestamp
- IEMtimestamps = [0]*(clusterCount + 1)
- installedTemp = [0]*(clusterCount + 1)
- for node in range(1, clusterCount +1):
- cmd = "onos $OC" + str(node) + """ "intents-events-metrics"|grep Timestamp """
- raw = ""
- while "epoch)" not in raw:
- main.ONOSbench.handle.sendline(cmd)
- main.ONOSbench.handle.expect(":~")
- raw = main.ONOSbench.handle.before
-
- print(raw)
-
- intentsTimestamps = {}
- rawTimestamps = raw.splitlines()
- for line in rawTimestamps:
- if "Timestamp" in line and "grep" not in line:
- metricKey = (line.split(" "))[1]
- metricTimestamp = (line.split(" ")[len(line.split(" ")) -1]).replace("epoch)=","")
- metricTimestamp = float(metricTimestamp)
- metricTimestamp = numpy.divide(metricTimestamp, 1000)
- if debug: main.log.info(repr(metricTimestamp))
- intentsTimestamps[metricKey] = metricTimestamp
- if metricKey == "Installed":
- installedTemp[node] = metricTimestamp
-
- main.log.info("Node: " + str(node) + " Timestamps: " + str(intentsTimestamps))
- IEMtimestamps[node] = intentsTimestamps
-
- myMax = max(installedTemp)
- indexOfMax = installedTemp.index(myMax)
-
- #number crunch
- for metric in timestampMetrics: #this is where we sould add support for computing other timestamp metrics
- if metric == "Installed":
- if run >= warmUp:
- main.log.report("link cut timestamp: " + cutTimestamp)
- #readableInstalledTimestamp = str(intentsTimestamps["Installed"])
- readableInstalledTimestamp = str(myMax)
-
- #main.log.report("Intent Installed timestamp: " + str(intentsTimestamps["Installed"]))
- main.log.report("Intent Installed timestamp: " + str(myMax))
-
- cutEpoch = time.mktime(time.strptime(cutTimestamp, "%Y-%m-%d %H:%M:%S,%f"))
- if debug: main.log.info("cutEpoch=" + str(cutEpoch))
- #rerouteLatency = float(intentsTimestamps["Installed"] - cutEpoch)
- rerouteLatency = float(myMax - cutEpoch)
-
- rerouteLatency = numpy.divide(rerouteLatency, 1000)
- main.log.report("Reroute latency:" + str(rerouteLatency) + " (seconds)\n ")
- myResult[run-warmUp][0] = rerouteLatency
- myResult[run-warmUp][1] = indexOfMax
- if debug: main.log.info("Latency: " + str(myResult[run-warmUp][0]))
- if debug: main.log.info("last node: " + str(myResult[run-warmUp][1]))
-
- cmd = """ onos $OC1 null-link "null:0000000000000004/1 null:0000000000000003/2 up" """
- if debug: main.log.info(cmd)
- main.ONOSbench.handle.sendline(cmd)
- main.ONOSbench.handle.expect(":~")
-
- #wait for intent withdraw
- main.ONOSbench.handle.sendline(withdrawCmd)
- main.log.info(withdrawCmd)
- main.ONOSbench.handle.expect(":~")
- if debug: main.log.info(main.ONOSbench.handle.before)
- main.ONOSbench.handle.sendline("onos $OC1 intents|grep WITHDRAWN|wc -l")
- main.ONOSbench.handle.expect(":~")
- intentWithdrawCheck = main.ONOSbench.handle.before
- if (str(intents)) in intentWithdrawCheck:
- main.log.info("intents withdrawn")
- if debug: main.log.info(intentWithdrawCheck)
-
- # wait for links to be reestablished
- for i in range(0, 10):
- main.ONOSbench.handle.sendline("onos $OC1 summary")
- main.ONOSbench.handle.expect(":~")
- linkCheck = main.ONOSbench.handle.before
- if "links=16," in linkCheck:
- break
- time.sleep(1)
- if i == 9:
- main.log.info("Links Failed to reconnect, next iteration of data invalid." + linkCheck)
-
- if run < warmUp:
- main.log.info("Warm up run " + str(run+1) + " completed")
-
- if debug: main.log.info(myResult)
- latTemp = []
- nodeTemp = []
- for i in myResult:
- latTemp.append(i[0])
- nodeTemp.append(i[1])
-
- mode = {}
- for i in nodeTemp:
- if i in mode:
- mode[i] += 1
+ print(main.intentsList)
+ for batchSize in main.intentsList:
+ main.log.report("Intent Batch size: " + str(batchSize) + "\n ")
+ main.LatencyList = []
+ validRun = 0
+ invalidRun = 0
+ while validRun <= main.warmUp + main.sampleSize and invalidRun <= 20:
+ if validRun >= main.warmUp:
+ main.log.info("================================================")
+ main.log.info("Starting test iteration: {} ".format(validRun - main.warmUp))
+ main.log.info("Total iteration: {}".format(validRun + invalidRun))
+ main.log.info("================================================")
else:
- mode[i] = 1
+ main.log.info("====================Warm Up=====================")
- for i in mode.keys():
- if mode[i] == max(mode.values()):
- nodeMode = i
+ # push intents
+ main.CLIs[0].pushTestIntents(main.ingress, main.egress, batchSize,
+ offset=1, options="-i", timeout=main.timeout)
- average = numpy.average(latTemp)
- stdDev = numpy.std(latTemp)
+ # check links and flows
+ k = 0
+ verify = main.FALSE
+ linkCheck = 0
+ flowsCheck = 0
+ while k <= main.verifyAttempts:
+ time.sleep(main.verifySleep)
+ summary = json.loads(main.CLIs[0].summary(timeout=main.timeout))
+ linkCheck = summary.get("links")
+ flowsCheck = summary.get("flows")
+ if linkCheck == 16 and flowsCheck == batchSize * 7:
+ main.log.info("links: {}, flows: {} ".format(linkCheck, flowsCheck))
+ verify = main.TRUE
+ break
+ k += 1
+ if not verify:
+ main.log.warn("Links or flows number are not match!")
+ main.log.warn("links: {}, flows: {} ".format(linkCheck, flowsCheck))
+ # bring back topology
+ main.CLIs[0].removeAllIntents(purge=True, sync=True, timeout=main.timeout)
+ time.sleep(1)
+ main.CLIs[0].purgeWithdrawnIntents()
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=0)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="false")
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=8)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="true")
+ if validRun >= main.warmUp:
+ invalidRun += 1
+ continue
+ else:
+ validRun += 1
+ continue
- average = numpy.multiply(average, 1000)
- stdDev = numpy.multiply(stdDev, 1000)
+ # Bring link down
+ main.CLIs[0].link("0000000000000004/1", "0000000000000003/2", "down",
+ timeout=main.timeout, showResponse=False)
+ verify = main.FALSE
+ k = 0
+ topoManagerLog = ""
+ while k <= main.verifyAttempts:
+ time.sleep(main.verifySleep)
+ summary = json.loads(main.CLIs[0].summary(timeout=main.timeout))
+ linkCheck = summary.get("links")
+ flowsCheck = summary.get("flows")
+ if linkCheck == 14:
+ main.log.info("links: {}, flows: {} ".format(linkCheck, flowsCheck))
+ verify = main.TRUE
+ break
+ k += 1
+ if not verify:
+ main.log.warn("Links number are not match in TopologyManager log!")
+ main.log.warn(topoManagerLog)
+ # bring back topology
+ main.CLIs[0].removeAllIntents(purge=True, sync=True, timeout=main.timeout)
+ time.sleep(1)
+ main.CLIs[0].purgeWithdrawnIntents()
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=0)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="false")
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=8)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="true")
+ if validRun >= main.warmUp:
+ invalidRun += 1
+ continue
+ else:
+ validRun += 1
+ continue
- main.log.report("Scale: " + str(clusterCount) + " \tIntent batch: " + str(intents))
- main.log.report("Latency average:................" + str(average))
- main.log.report("Latency standard deviation:....." + str(stdDev))
- main.log.report("Mode of last node to respond:..." + str(nodeMode))
+ try:
+ # expect twice to clean the pexpect buffer
+ main.ONOSbench.handle.sendline("")
+ main.ONOSbench.handle.expect("\$")
+ main.ONOSbench.handle.expect("\$")
+ # send line by using bench, can't use driver because pexpect buffer problem
+ cmd = "onos-ssh $OC1 cat /opt/onos/log/karaf.log | grep TopologyManager| tail -1"
+ main.ONOSbench.handle.sendline(cmd)
+ time.sleep(1)
+ main.ONOSbench.handle.expect(":~")
+ topoManagerLog = main.ONOSbench.handle.before
+ topoManagerLogTemp = topoManagerLog.splitlines()
+ # To make sure we get correct topology log
+ for lines in topoManagerLogTemp:
+ if "creationTime" in lines:
+ topoManagerLog = lines
+ main.log.info("Topology Manager log:")
+ print(topoManagerLog)
+ cutTimestamp = float(topoManagerLog.split("creationTime=")[1].split(",")[0])
+ except:
+ main.log.error("Topology Log is not correct!")
+ print(topoManagerLog)
+ # bring back topology
+ verify = main.FALSE
+ main.CLIs[0].removeAllIntents(purge=True, sync=True, timeout=main.timeout)
+ time.sleep(1)
+ main.CLIs[0].purgeWithdrawnIntents()
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=0)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="false")
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=8)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="true")
+ if validRun >= main.warmUp:
+ invalidRun += 1
+ else:
+ validRun += 1
+ # If we got wrong Topology log, we should skip this iteration, and continue for next one
+ continue
+
+ installedTemp = []
+ time.sleep(1)
+ for cli in main.CLIs:
+ tempJson = json.loads(cli.intentsEventsMetrics())
+ Installedtime = tempJson.get('intentInstalledTimestamp').get('value')
+ installedTemp.append(float(Installedtime))
+ for i in range(0, len(installedTemp)):
+ main.log.info("ONOS Node {} Installed Time stemp: {}".format((i + 1), installedTemp[i]))
+ maxInstallTime = float(max(installedTemp))
+ if validRun >= main.warmUp and verify:
+ main.log.info("Installed time stemp: {0:f}".format(maxInstallTime))
+ main.log.info("CutTimestamp: {0:f}".format(cutTimestamp))
+ # Both timeStemps are milliseconds
+ main.log.info("Latency: {0:f}".format(float(maxInstallTime - cutTimestamp)))
+ main.LatencyList.append(float(maxInstallTime - cutTimestamp))
+ # We get valid latency, validRun + 1
+ validRun += 1
+
+ # Verify Summary after we bring up link, and withdrawn intents
+ main.CLIs[0].link("0000000000000004/1", "0000000000000003/2", "up",
+ timeout=main.timeout)
+ k = 0
+ verify = main.FALSE
+ linkCheck = 0
+ flowsCheck = 0
+ while k <= main.verifyAttempts:
+ time.sleep(main.verifySleep)
+ main.CLIs[0].removeAllIntents(purge=True, sync=True, timeout=main.timeout)
+ time.sleep(1)
+ main.CLIs[0].purgeWithdrawnIntents()
+ summary = json.loads(main.CLIs[0].summary())
+ linkCheck = summary.get("links")
+ flowsCheck = summary.get("flows")
+ intentCheck = summary.get("intents")
+ if linkCheck == 16 and flowsCheck == 0 and intentCheck == 0:
+ main.log.info("links: {}, flows: {}, intents: {} ".format(linkCheck, flowsCheck, intentCheck))
+ verify = main.TRUE
+ break
+ k += 1
+ if not verify:
+ main.log.error("links, flows, or intents are not correct!")
+ main.log.info("links: {}, flows: {}, intents: {} ".format(linkCheck, flowsCheck, intentCheck))
+ # bring back topology
+ main.log.info("Bring back topology...")
+ main.CLIs[0].removeAllIntents(purge=True, sync=True, timeout=main.timeout)
+ time.sleep(1)
+ main.CLIs[0].purgeWithdrawnIntents()
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=0)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="false")
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=8)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="true")
+ continue
+
+ aveLatency = 0
+ stdLatency = 0
+ aveLatency = numpy.average(main.LatencyList)
+ stdLatency = numpy.std(main.LatencyList)
+ main.log.report("Scale: " + str(main.numCtrls) + " \tIntent batch: " + str(batchSize))
+ main.log.report("Latency average:................" + str(aveLatency))
+ main.log.report("Latency standard deviation:....." + str(stdLatency))
main.log.report("________________________________________________________")
- resultsDB = open("/tmp/IntentRerouteLatDB", "a")
- resultsDB.write("'" + commit + "',")
- resultsDB.write(str(clusterCount) + ",")
- resultsDB.write(str(intents) + ",")
- resultsDB.write(str(average) + ",")
- resultsDB.write(str(stdDev) + "\n")
- resultsDB.close()
-
- main.ONOSbench.logReport(ONOSIp[1], ["ERROR", "WARNING", "EXCEPT"])
-
+ if not (numpy.isnan(aveLatency) or numpy.isnan(stdLatency)):
+ # check if got NaN for result
+ resultsDB = open(main.dbFileName, "a")
+ resultsDB.write("'" + main.commit + "',")
+ resultsDB.write(str(main.numCtrls) + ",")
+ resultsDB.write(str(batchSize) + ",")
+ resultsDB.write(str(aveLatency) + ",")
+ resultsDB.write(str(stdLatency) + "\n")
+ resultsDB.close()
+ del main.scale[0]
diff --git a/TestON/tests/SCPF/SCPFintentRerouteLatWithFlowObj/SCPFintentRerouteLatWithFlowObj.params b/TestON/tests/SCPF/SCPFintentRerouteLatWithFlowObj/SCPFintentRerouteLatWithFlowObj.params
index 3799982..32735bc 100644
--- a/TestON/tests/SCPF/SCPFintentRerouteLatWithFlowObj/SCPFintentRerouteLatWithFlowObj.params
+++ b/TestON/tests/SCPF/SCPFintentRerouteLatWithFlowObj/SCPFintentRerouteLatWithFlowObj.params
@@ -1,6 +1,6 @@
<PARAMS>
- <testcases>1,2,1,2,1,2,1,2</testcases>
+ <testcases>0,1,2,1,2,1,2,1,2</testcases>
<SCALE>1,3,5,7</SCALE>
<max>7</max>
@@ -14,30 +14,34 @@
<skipCleanInstall>yes</skipCleanInstall>
<warmUp>5</warmUp>
<sampleSize>20</sampleSize>
- <wait></wait>
- <intents>1,100,1000</intents> #list format, will be split on ','
- <debug>True</debug>
-
- <s1>1,1,1,1,1,1,1,1</s1>
- <s3>2,2,1,1,3,3,3,1</s3>
- <s5>2,2,1,1,3,4,5,3</s5>
- <s7>2,3,1,1,5,6,7,4</s7>
-
+ <intents>1,100</intents> #list format, will be split on ','
+ <ingress>null:0000000000000001/0</ingress>
+ <egress>null:0000000000000007/0</egress>
+ <debug>False</debug>
</TEST>
-
- <METRICS>
- <Submitted>0</Submitted>
- <Installed>1</Installed>
- <Failed>0</Failed>
- <Withdraw>0</Withdraw>
- <Withdrawn>0</Withdrawn>
- </METRICS>
+ <DATABASE>
+ <file>/tmp/IntentRerouteLatDBWithFlowObj</file>
+ </DATABASE>
<GIT>
- <autopull>off</autopull>
- <checkout>master</checkout>
+ <gitPull>False</gitPull>
+ <gitBranch>master</gitBranch>
</GIT>
+ <ATTEMPTS>
+ <verify>3</verify>
+ </ATTEMPTS>
+
+ <SLEEP>
+ <startup>10</startup>
+ <install>10</install>
+ <setmaster>5</setmaster>
+ <verify>5</verify>
+ <reroute>3</reroute>
+ # timeout for pexpect
+ <timeout>300</timeout>
+ </SLEEP>
+
<CTRL>
<USER>sdn</USER>
diff --git a/TestON/tests/SCPF/SCPFintentRerouteLatWithFlowObj/SCPFintentRerouteLatWithFlowObj.py b/TestON/tests/SCPF/SCPFintentRerouteLatWithFlowObj/SCPFintentRerouteLatWithFlowObj.py
index ff158b7..bc6ff0d 100644
--- a/TestON/tests/SCPF/SCPFintentRerouteLatWithFlowObj/SCPFintentRerouteLatWithFlowObj.py
+++ b/TestON/tests/SCPF/SCPFintentRerouteLatWithFlowObj/SCPFintentRerouteLatWithFlowObj.py
@@ -1,419 +1,441 @@
-# ScaleOutTemplate
-#
-# CASE1 starts number of nodes specified in param file
-#
-# cameron@onlab.us
-
-import sys
-import os.path
-
+# SCPFintentRerouteLatWithFlowObj
+"""
+SCPFintentRerouteLat
+ - Test Intent Reroute Latency
+ - Test Algorithm:
+ 1. Start Null Provider reroute Topology
+ 2. Using Push-test-intents to push batch size intents from switch 1 to switch 7
+ 3. Cut the link between switch 3 and switch 4 (the path will reroute to switch 8)
+ 4. Get the topology time stamp
+ 5. Get Intent reroute(Installed) time stamp from each nodes
+ 6. Use the latest intent time stamp subtract topology time stamp
+ - This test will run 5 warm up by default, warm up iteration can be setup in Param file
+ - The intent batch size will default set to 1 and 100, also can be set in Param file
+ - The unit of the latency result is milliseconds
+ - Ues flowObject set to True
+"""
class SCPFintentRerouteLatWithFlowObj:
-
- def __init__( self ):
+ def __init__(self):
self.default = ''
- def CASE1( self, main ):
+ def CASE0( self, main ):
+ '''
+ - GIT
+ - BUILDING ONOS
+ Pull specific ONOS branch, then Build ONOS ono ONOS Bench.
+ This step is usually skipped. Because in a Jenkins driven automated
+ test env. We want Jenkins jobs to pull&build for flexibility to handle
+ different versions of ONOS.
+ - Construct tests variables
+ '''
+ gitPull = main.params['GIT']['gitPull']
+ gitBranch = main.params['GIT']['gitBranch']
+ main.case("Pull onos branch and build onos on Teststation.")
+
+ if gitPull == 'True':
+ main.step("Git Checkout ONOS branch: " + gitBranch)
+ stepResult = main.ONOSbench.gitCheckout(branch=gitBranch)
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully checkout onos branch.",
+ onfail="Failed to checkout onos branch. Exiting test...")
+ if not stepResult: main.exit()
+
+ main.step("Git Pull on ONOS branch:" + gitBranch)
+ stepResult = main.ONOSbench.gitPull()
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully pull onos. ",
+ onfail="Failed to pull onos. Exiting test ...")
+ if not stepResult: main.exit()
+
+ main.step("Building ONOS branch: " + gitBranch)
+ stepResult = main.ONOSbench.cleanInstall(skipTest=True)
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully build onos.",
+ onfail="Failed to build onos. Exiting test...")
+ if not stepResult: main.exit()
+
+ else:
+ main.log.warn("Skipped pulling onos and Skipped building ONOS")
+
+ main.apps = main.params['ENV']['cellApps']
+ main.BENCHUser = main.params['BENCH']['user']
+ main.BENCHIp = main.params['BENCH']['ip1']
+ main.MN1Ip = main.params['MN']['ip1']
+ main.maxNodes = int(main.params['max'])
+ main.skipMvn = main.params['TEST']['skipCleanInstall']
+ main.cellName = main.params['ENV']['cellName']
+ main.scale = (main.params['SCALE']).split(",")
+ main.dbFileName = main.params['DATABASE']['file']
+ main.timeout = int(main.params['SLEEP']['timeout'])
+ main.startUpSleep = int(main.params['SLEEP']['startup'])
+ main.installSleep = int(main.params['SLEEP']['install'])
+ main.setMasterSleep = int(main.params['SLEEP']['setmaster'])
+ main.verifySleep = int(main.params['SLEEP']['verify'])
+ main.verifyAttempts = int(main.params['ATTEMPTS']['verify'])
+ main.sampleSize = int(main.params['TEST']['sampleSize'])
+ main.warmUp = int(main.params['TEST']['warmUp'])
+ main.intentsList = (main.params['TEST']['intents']).split(",")
+ main.ingress = main.params['TEST']['ingress']
+ main.egress = main.params['TEST']['egress']
+ main.debug = main.params['TEST']['debug']
+ for i in range(0, len(main.intentsList)):
+ main.intentsList[i] = int(main.intentsList[i])
+ # Create DataBase file
+ main.log.info("Create Database file " + main.dbFileName)
+ resultsDB = open(main.dbFileName, "w+")
+ resultsDB.close()
+
+ def CASE1( self, main ):
+ '''
+ clean up test environment and set up
+ '''
import time
- global init
- try:
- if type(init) is not bool:
- init = False
- except NameError:
- init = False
+ main.log.info("Get ONOS cluster IP")
+ print(main.scale)
+ main.numCtrls = int(main.scale[0])
+ main.ONOSip = []
+ main.maxNumBatch = 0
+ main.AllONOSip = main.ONOSbench.getOnosIps()
+ for i in range(main.numCtrls):
+ main.ONOSip.append(main.AllONOSip[i])
+ main.log.info(main.ONOSip)
+ main.CLIs = []
+ main.log.info("Creating list of ONOS cli handles")
+ for i in range(main.numCtrls):
+ main.CLIs.append(getattr(main, 'ONOS%scli' % (i + 1)))
- #Load values from params file
- checkoutBranch = main.params[ 'GIT' ][ 'checkout' ]
- gitPull = main.params[ 'GIT' ][ 'autopull' ]
- cellName = main.params[ 'ENV' ][ 'cellName' ]
- Apps = main.params[ 'ENV' ][ 'cellApps' ]
- BENCHUser = main.params[ 'BENCH' ][ 'user' ]
- BENCHIp = main.params[ 'BENCH' ][ 'ip1' ]
- MN1Ip = main.params[ 'MN' ][ 'ip1' ]
- main.maxNodes = int(main.params[ 'max' ])
- skipMvn = main.params[ 'TEST' ][ 'skipCleanInstall' ]
- cellName = main.params[ 'ENV' ][ 'cellName' ]
+ if not main.CLIs:
+ main.log.error("Failed to create the list of ONOS cli handles")
+ main.cleanup()
+ main.exit()
- # -- INIT SECTION, ONLY RUNS ONCE -- #
- if init == False:
- init = True
- global clusterCount #number of nodes running
- global ONOSIp #list of ONOS IP addresses
- global scale
- global commit
+ main.commit = main.ONOSbench.getVersion(report=True)
+ main.commit = main.commit.split(" ")[1]
+ main.log.info("Starting up %s node(s) ONOS cluster" % main.numCtrls)
+ main.log.info("Safety check, killing all ONOS processes" +
+ " before initiating environment setup")
- clusterCount = 0
- ONOSIp = [ 0 ]
- scale = (main.params[ 'SCALE' ]).split(",")
- clusterCount = int(scale[0])
+ for i in range(main.numCtrls):
+ main.ONOSbench.onosDie(main.ONOSip[i])
- #Populate ONOSIp with ips from params
- ONOSIp = [0]
- ONOSIp.extend(main.ONOSbench.getOnosIps())
+ main.log.info("NODE COUNT = %s" % main.numCtrls)
+ main.ONOSbench.createCellFile(main.ONOSbench.ip_address,
+ main.cellName,
+ main.MN1Ip,
+ main.apps,
+ main.ONOSip)
+ main.step("Apply cell to environment")
+ cellResult = main.ONOSbench.setCell(main.cellName)
+ verifyResult = main.ONOSbench.verifyCell()
+ stepResult = cellResult and verifyResult
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully applied cell to " + \
+ "environment",
+ onfail="Failed to apply cell to environment ")
- print("-----------------" + str(ONOSIp))
- #mvn clean install, for debugging set param 'skipCleanInstall' to yes to speed up test
- if skipMvn != "yes":
- mvnResult = main.ONOSbench.cleanInstall()
-
- #git
- main.step( "Git checkout and pull " + checkoutBranch )
- if gitPull == 'on':
- checkoutResult = main.ONOSbench.gitCheckout( checkoutBranch )
- pullResult = main.ONOSbench.gitPull()
-
- else:
- checkoutResult = main.TRUE
- pullResult = main.TRUE
- main.log.info( "Skipped git checkout and pull" )
-
- commit = main.ONOSbench.getVersion()
- commit = (commit.split(" "))[1]
-
- resultsDB = open("/tmp/IntentRerouteLatDBWithFlowObj", "w+")
- resultsDB.close()
-
- # -- END OF INIT SECTION --#
-
- clusterCount = int(scale[0])
- scale.remove(scale[0])
-
- #kill off all onos processes
- main.log.step("Safety check, killing all ONOS processes")
- main.log.step("before initiating environment setup")
- for node in range(1, main.maxNodes + 1):
- main.ONOSbench.onosDie(ONOSIp[node])
-
- #Uninstall everywhere
- main.log.step( "Cleaning Enviornment..." )
- for i in range(1, main.maxNodes + 1):
- main.log.info(" Uninstalling ONOS " + str(i) )
- main.ONOSbench.onosUninstall( ONOSIp[i] )
-
- #construct the cell file
- main.log.info("Creating cell file")
- cellIp = []
- for node in range (1, clusterCount + 1):
- cellIp.append(ONOSIp[node])
-
- main.ONOSbench.createCellFile(BENCHIp,cellName,MN1Ip,str(Apps), cellIp)
-
- main.step( "Set Cell" )
- main.ONOSbench.setCell(cellName)
-
- main.step( "Creating ONOS package" )
+ main.step("Creating ONOS package")
packageResult = main.ONOSbench.onosPackage()
+ stepResult = packageResult
+ utilities.assert_equals(expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully created ONOS package",
+ onfail="Failed to create ONOS package")
- main.step( "verify cells" )
- verifyCellResult = main.ONOSbench.verifyCell()
+ main.step("Uninstall ONOS package on all Nodes")
+ uninstallResult = main.TRUE
+ for i in range(int(main.numCtrls)):
+ main.log.info("Uninstalling package on ONOS Node IP: " + main.ONOSip[i])
+ u_result = main.ONOSbench.onosUninstall(main.ONOSip[i])
+ utilities.assert_equals(expect=main.TRUE, actual=u_result,
+ onpass="Test step PASS",
+ onfail="Test step FAIL")
+ uninstallResult = (uninstallResult and u_result)
- main.log.report( "Initializing " + str( clusterCount ) + " node cluster." )
- for node in range(1, clusterCount + 1):
- main.log.info("Starting ONOS " + str(node) + " at IP: " + ONOSIp[node])
- main.ONOSbench.onosInstall( ONOSIp[node])
+ main.step("Install ONOS package on all Nodes")
+ installResult = main.TRUE
+ for i in range(int(main.numCtrls)):
+ main.log.info("Installing package on ONOS Node IP: " + main.ONOSip[i])
+ i_result = main.ONOSbench.onosInstall(node=main.ONOSip[i])
+ utilities.assert_equals(expect=main.TRUE, actual=i_result,
+ onpass="Test step PASS",
+ onfail="Test step FAIL")
+ installResult = installResult and i_result
- for node in range(1, clusterCount + 1):
- for i in range( 2 ):
- isup = main.ONOSbench.isup( ONOSIp[node] )
- if isup:
- main.log.info("ONOS " + str(node) + " is up\n")
- break
- if not isup:
- main.log.report( "ONOS " + str(node) + " didn't start!" )
- main.log.info("Startup sequence complete")
+ main.step("Verify ONOS nodes UP status")
+ statusResult = main.TRUE
+ for i in range(int(main.numCtrls)):
+ main.log.info("ONOS Node " + main.ONOSip[i] + " status:")
+ onos_status = main.ONOSbench.onosStatus(node=main.ONOSip[i])
+ utilities.assert_equals(expect=main.TRUE, actual=onos_status,
+ onpass="Test step PASS",
+ onfail="Test step FAIL")
+ statusResult = (statusResult and onos_status)
+ time.sleep(2)
+ main.step("Start ONOS CLI on all nodes")
+ cliResult = main.TRUE
+ main.step(" Start ONOS cli using thread ")
+ startCliResult = main.TRUE
+ pool = []
+ main.threadID = 0
+ for i in range(int(main.numCtrls)):
+ t = main.Thread(target=main.CLIs[i].startOnosCli,
+ threadID=main.threadID,
+ name="startOnosCli",
+ args=[main.ONOSip[i]],
+ kwargs={"onosStartTimeout": main.timeout})
+ pool.append(t)
+ t.start()
+ main.threadID = main.threadID + 1
+ for t in pool:
+ t.join()
+ startCliResult = startCliResult and t.result
+ time.sleep(main.startUpSleep)
- deviceMastership = (main.params[ 'TEST' ][ "s" + str(clusterCount) ]).split(",")
- print("Device mastership list: " + str(deviceMastership))
+ # configure apps
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=8)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "topoShape", value="reroute")
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="true")
+ main.CLIs[0].setCfg("org.onosproject.store.flow.impl.DistributedFlowRuleStore", "backupEnabled", value="false")
+ main.CLIs[0].setCfg("org.onosproject.net.intent.impl.compiler.IntentConfigurableRegistrator",
+ "useFlowObjectives", value="true")
- main.ONOSbench.onosCfgSet( ONOSIp[1], "org.onosproject.store.flow.impl.DistributedFlowRuleStore", "backupEnabled false")
+ time.sleep(main.startUpSleep)
- main.log.step("Setting up null provider")
- for i in range(3):
- main.ONOSbench.onosCfgSet( ONOSIp[1], "org.onosproject.provider.nil.NullProviders", "deviceCount 8")
- main.ONOSbench.onosCfgSet( ONOSIp[1], "org.onosproject.provider.nil.NullProviders", "topoShape reroute")
- main.ONOSbench.onosCfgSet( ONOSIp[1], "org.onosproject.provider.nil.NullProviders", "enabled true")
- main.ONOSbench.onosCfgSet( ONOSIp[1], "org.onosproject.net.intent.impl.compiler.IntentConfigurableRegistrator", "useFlowObjectives true" )
- time.sleep(5)
- main.ONOSbench.handle.sendline("onos $OC1 summary")
- main.ONOSbench.handle.expect(":~")
- x = main.ONOSbench.handle.before
- if "devices=8" in x and "links=16," in x:
- break
-
- index = 1
- for node in deviceMastership:
- for attempt in range(0,10):
- cmd = ( "onos $OC" + node + """ "device-role null:000000000000000""" + str(index) + " " + ONOSIp[int(node)] + """ master" """)
- main.log.info("assigning mastership of device " + str(index) + " to node " + node + ": \n " + cmd + "\n")
- main.ONOSbench.handle.sendline(cmd)
- main.ONOSbench.handle.expect(":~")
- time.sleep(4)
-
- cmd = ( "onos $OC" + node + " roles|grep 00000" + str(index))
- main.log.info(cmd)
- main.ONOSbench.handle.sendline(cmd)
- main.ONOSbench.handle.expect(":~")
- check = main.ONOSbench.handle.before
- main.log.info("CHECK:\n" + check)
- if ("master=" + ONOSIp[int(node)]) in check:
- break
- index += 1
-
- main.ONOSbench.logReport(ONOSIp[1], ["ERROR", "WARNING", "EXCEPT"])
+ # Balance Master
+ main.CLIs[0].balanceMasters()
+ if len(main.ONOSip) > 1:
+ main.CLIs[0].deviceRole("null:0000000000000003", main.ONOSip[0])
+ main.CLIs[0].deviceRole("null:0000000000000004", main.ONOSip[0])
+ time.sleep( main.setMasterSleep )
def CASE2( self, main ):
-
import time
import numpy
import datetime
- #from scipy import stats
+ import json
+ # from scipy import stats
ts = time.time()
-
- sampleSize = int(main.params[ 'TEST' ][ 'sampleSize' ])
- warmUp = int(main.params[ 'TEST' ][ 'warmUp' ])
- intentsList = (main.params[ 'TEST' ][ 'intents' ]).split(",")
- debug = main.params[ 'TEST' ][ 'debug' ]
- for i in range(0,len(intentsList)):
- intentsList[i] = int(intentsList[i])
-
- timestampMetrics = []
- if main.params['METRICS']['Submitted'] == "1":
- timestampMetrics.append("Submitted")
- if main.params['METRICS']['Installed'] == "1":
- timestampMetrics.append("Installed")
- if main.params['METRICS']['Failed'] == "1":
- timestampMetrics.append("Failed")
- if main.params['METRICS']['Withdraw'] == "1":
- timestampMetrics.append("Withdraw")
- if main.params['METRICS']['Withdrawn'] == "1":
- timestampMetrics.append("Withdrawn")
- if debug: main.log.info(timestampMetrics)
-
- if debug == "True":
- debug = True
- else:
- debug = False
-
- ingress = "null:0000000000000001"
- egress = "null:0000000000000007"
-
- for intents in intentsList:
- main.log.report("Intent Batch size: " + str(intents) + "\n ")
- myResult = [["latency", "lastNode"] for x in range(sampleSize)]
-
- for run in range(0, (warmUp + sampleSize)):
- if run > warmUp:
- main.log.info("Starting test iteration " + str(run-warmUp))
-
- cmd = """onos $OC1 "push-test-intents -i """
- cmd += ingress + "/0 "
- cmd += egress + "/0 "
- cmd += str(intents) +""" 1" """
- if debug: main.log.info(cmd)
-
- withdrawCmd = cmd.replace("intents -i", "intents -w ")
-
- #push-test-intents
- main.ONOSbench.handle.sendline(cmd)
- main.ONOSbench.handle.expect(":~")
- myRawResult = main.ONOSbench.handle.before
-
- for i in range(0, 40):
- main.ONOSbench.handle.sendline("onos $OC1 summary")
- main.ONOSbench.handle.expect(":~")
- linkCheck = main.ONOSbench.handle.before
- if ("links=16,") in linkCheck and ("flows=" + str(intents*7) + ","):
- break
- if i == 39:
- main.log.error("Flow/link count incorrect, data invalid."+ linkCheck)
- main.ONOSbench.logReport(ONOSIp[1], ["ERROR", "WARNING", "EXCEPT"], "d")
- #main.ONOSbench.logReport(ONOSIp[(clusterCount-1)], ["ERROR", "WARNING", "EXCEPT"], "d")
- main.ONOSbench.sendline("onos $OC1 summary")
- main.ONOSbench.sendline("onos $OC1 devices")
- main.ONOSbench.sendline("onos $OC1 links")
- main.ONOSbench.expect(":~")
- main.log.info(main.ONOSbench.before)
-
- #collect timestamp from link cut
- cmd = """onos $OC1 null-link "null:0000000000000004/1 null:0000000000000003/2 down" """
- if debug: main.log.info("COMMAND: " + str(cmd))
- main.ONOSbench.handle.sendline(cmd)
- main.ONOSbench.handle.expect(":~")
-
- cmd = "onos-ssh $OC1 cat /opt/onos/log/karaf.log | grep TopologyManager| tail -1"
- for i in range(0,10):
- main.ONOSbench.handle.sendline(cmd)
- time.sleep(2)
- main.ONOSbench.handle.expect(":~")
- raw = main.ONOSbench.handle.before
- #if "NullLinkProvider" in raw and "links=14" in raw:
- if "links=14" in raw:
- break
- if i >= 9:
- main.log.error("Expected output not being recieved... continuing")
- main.log.info(raw)
- break
- time.sleep(2)
-
- if debug: main.log.debug("raw: " + raw)
-
- temp = raw.splitlines()
-
- if debug: main.log.debug("temp (after splitlines): " + str(temp))
-
- # Since the string is deterministic the date is always the 3rd element.
- # However, if the data were grepping for in the onos log changes then this will
- # not work. This is why we print out the raw and temp string so we can visually
- # check if everything is in the correct order. temp should like this:
- # temp = ['/onos$ onos-ssh $OC1 cat /opt/onos/log/karaf.log | grep Top ',
- # 'ologyManager| tail -1', '2015-10-15 12:03:33,736 ... ]
- temp = temp[2]
-
- if debug: main.log.debug("temp (checking for date): " + str(temp))
-
- cutTimestamp = (temp.split(" "))[0] + " " + (temp.split(" "))[1]
-
- if debug: main.log.info("Cut timestamp: " + cutTimestamp)
-
- #validate link count and flow count
- for i in range(0, 40):
- main.ONOSbench.handle.sendline("onos $OC1 summary")
- main.ONOSbench.handle.expect(":~")
- linkCheck = main.ONOSbench.handle.before
- #if "links=" + str(7*intents)+ "," in linkCheck and ("flows=" + str(7*intents) + ",") in linkCheck:
- if "links=14," in linkCheck and ("flows=" + str(8*intents) + ",") in linkCheck:
- break
- if i == 39:
- main.log.error("Link or flow count incorrect, data invalid." + linkCheck)
- main.ONOSbench.logReport(ONOSIp[1], ["ERROR", "WARNING", "EXCEPT"], "d")
-
- time.sleep(5) #trying to avoid negative values
-
- #intents events metrics installed timestamp
- IEMtimestamps = [0]*(clusterCount + 1)
- installedTemp = [0]*(clusterCount + 1)
- for node in range(1, clusterCount +1):
- cmd = "onos $OC" + str(node) + """ "intents-events-metrics"|grep Timestamp """
- raw = ""
- while "epoch)" not in raw:
- main.ONOSbench.handle.sendline(cmd)
- main.ONOSbench.handle.expect(":~")
- raw = main.ONOSbench.handle.before
-
- print(raw)
-
- intentsTimestamps = {}
- rawTimestamps = raw.splitlines()
- for line in rawTimestamps:
- if "Timestamp" in line and "grep" not in line:
- metricKey = (line.split(" "))[1]
- metricTimestamp = (line.split(" ")[len(line.split(" ")) -1]).replace("epoch)=","")
- metricTimestamp = float(metricTimestamp)
- metricTimestamp = numpy.divide(metricTimestamp, 1000)
- if debug: main.log.info(repr(metricTimestamp))
- intentsTimestamps[metricKey] = metricTimestamp
- if metricKey == "Installed":
- installedTemp[node] = metricTimestamp
-
- main.log.info("Node: " + str(node) + " Timestamps: " + str(intentsTimestamps))
- IEMtimestamps[node] = intentsTimestamps
-
- myMax = max(installedTemp)
- indexOfMax = installedTemp.index(myMax)
-
- #number crunch
- for metric in timestampMetrics: #this is where we sould add support for computing other timestamp metrics
- if metric == "Installed":
- if run >= warmUp:
- main.log.report("link cut timestamp: " + cutTimestamp)
- #readableInstalledTimestamp = str(intentsTimestamps["Installed"])
- readableInstalledTimestamp = str(myMax)
-
- #main.log.report("Intent Installed timestamp: " + str(intentsTimestamps["Installed"]))
- main.log.report("Intent Installed timestamp: " + str(myMax))
-
- cutEpoch = time.mktime(time.strptime(cutTimestamp, "%Y-%m-%d %H:%M:%S,%f"))
- if debug: main.log.info("cutEpoch=" + str(cutEpoch))
- #rerouteLatency = float(intentsTimestamps["Installed"] - cutEpoch)
- rerouteLatency = float(myMax - cutEpoch)
-
- rerouteLatency = numpy.divide(rerouteLatency, 1000)
- main.log.report("Reroute latency:" + str(rerouteLatency) + " (seconds)\n ")
- myResult[run-warmUp][0] = rerouteLatency
- myResult[run-warmUp][1] = indexOfMax
- if debug: main.log.info("Latency: " + str(myResult[run-warmUp][0]))
- if debug: main.log.info("last node: " + str(myResult[run-warmUp][1]))
-
- cmd = """ onos $OC1 null-link "null:0000000000000004/1 null:0000000000000003/2 up" """
- if debug: main.log.info(cmd)
- main.ONOSbench.handle.sendline(cmd)
- main.ONOSbench.handle.expect(":~")
-
- #wait for intent withdraw
- main.ONOSbench.handle.sendline(withdrawCmd)
- main.log.info(withdrawCmd)
- main.ONOSbench.handle.expect(":~")
- if debug: main.log.info(main.ONOSbench.handle.before)
- main.ONOSbench.handle.sendline("onos $OC1 intents|grep WITHDRAWN|wc -l")
- main.ONOSbench.handle.expect(":~")
- intentWithdrawCheck = main.ONOSbench.handle.before
- if (str(intents)) in intentWithdrawCheck:
- main.log.info("intents withdrawn")
- if debug: main.log.info(intentWithdrawCheck)
-
- # wait for links to be reestablished
- for i in range(0, 10):
- main.ONOSbench.handle.sendline("onos $OC1 summary")
- main.ONOSbench.handle.expect(":~")
- linkCheck = main.ONOSbench.handle.before
- if "links=16," in linkCheck:
- break
- time.sleep(1)
- if i == 9:
- main.log.info("Links Failed to reconnect, next iteration of data invalid." + linkCheck)
-
- if run < warmUp:
- main.log.info("Warm up run " + str(run+1) + " completed")
-
- if debug: main.log.info(myResult)
- latTemp = []
- nodeTemp = []
- for i in myResult:
- latTemp.append(i[0])
- nodeTemp.append(i[1])
-
- mode = {}
- for i in nodeTemp:
- if i in mode:
- mode[i] += 1
+ print(main.intentsList)
+ for batchSize in main.intentsList:
+ main.log.report("Intent Batch size: " + str(batchSize) + "\n ")
+ main.LatencyList = []
+ validRun = 0
+ invalidRun = 0
+ while validRun <= main.warmUp + main.sampleSize and invalidRun <= 20:
+ if validRun >= main.warmUp:
+ main.log.info("================================================")
+ main.log.info("Starting test iteration: {} ".format(validRun - main.warmUp))
+ main.log.info("Total iteration: {}".format(validRun + invalidRun))
+ main.log.info("================================================")
else:
- mode[i] = 1
+ main.log.info("====================Warm Up=====================")
- for i in mode.keys():
- if mode[i] == max(mode.values()):
- nodeMode = i
+ # push intents
+ main.CLIs[0].pushTestIntents(main.ingress, main.egress, batchSize,
+ offset=1, options="-i", timeout=main.timeout)
- average = numpy.average(latTemp)
- stdDev = numpy.std(latTemp)
+ # check links and flows
+ k = 0
+ verify = main.FALSE
+ linkCheck = 0
+ flowsCheck = 0
+ while k <= main.verifyAttempts:
+ time.sleep(main.verifySleep)
+ summary = json.loads(main.CLIs[0].summary(timeout=main.timeout))
+ linkCheck = summary.get("links")
+ flowsCheck = summary.get("flows")
+ if linkCheck == 16 and flowsCheck == batchSize * 7:
+ main.log.info("links: {}, flows: {} ".format(linkCheck, flowsCheck))
+ verify = main.TRUE
+ break
+ k += 1
+ if not verify:
+ main.log.warn("Links or flows number are not match!")
+ main.log.warn("links: {}, flows: {} ".format(linkCheck, flowsCheck))
+ # bring back topology
+ main.log.info("Bring back topology...")
+ main.CLIs[0].removeAllIntents(purge=True, sync=True, timeout=main.timeout)
+ time.sleep(1)
+ main.CLIs[0].purgeWithdrawnIntents()
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=0)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="false")
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=8)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="true")
+ if validRun >= main.warmUp:
+ invalidRun += 1
+ continue
+ else:
+ validRun += 1
+ continue
- average = numpy.multiply(average, 1000)
- stdDev = numpy.multiply(stdDev, 1000)
+ # Bring link down
+ main.CLIs[0].link("0000000000000004/1", "0000000000000003/2", "down",
+ timeout=main.timeout, showResponse=False)
+ verify = main.FALSE
+ k = 0
+ topoManagerLog = ""
+ while k <= main.verifyAttempts:
+ time.sleep(main.verifySleep)
+ summary = json.loads(main.CLIs[0].summary(timeout=main.timeout))
+ linkCheck = summary.get("links")
+ flowsCheck = summary.get("flows")
+ if linkCheck == 14:
+ main.log.info("links: {}, flows: {} ".format(linkCheck, flowsCheck))
+ verify = main.TRUE
+ break
+ k += 1
+ if not verify:
+ main.log.warn("Links number are not match in TopologyManager log!")
+ main.log.warn(topoManagerLog)
+ # bring back topology
+ main.log.info("Bring back topology...")
+ main.CLIs[0].removeAllIntents(purge=True, sync=True, timeout=main.timeout)
+ time.sleep(1)
+ main.CLIs[0].purgeWithdrawnIntents()
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=0)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="false")
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=8)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="true")
+ if validRun >= main.warmUp:
+ invalidRun += 1
+ continue
+ else:
+ validRun += 1
+ continue
- main.log.report("Scale: " + str(clusterCount) + " \tIntent batch: " + str(intents))
- main.log.report("Latency average:................" + str(average))
- main.log.report("Latency standard deviation:....." + str(stdDev))
- main.log.report("Mode of last node to respond:..." + str(nodeMode))
+ try:
+ # expect twice to clean the pexpect buffer
+ main.ONOSbench.handle.sendline("")
+ main.ONOSbench.handle.expect("\$")
+ main.ONOSbench.handle.expect("\$")
+ # send line by using bench, can't use driver because pexpect buffer problem
+ cmd = "onos-ssh $OC1 cat /opt/onos/log/karaf.log | grep TopologyManager| tail -1"
+ main.ONOSbench.handle.sendline(cmd)
+ time.sleep(1)
+ main.ONOSbench.handle.expect(":~")
+ topoManagerLog = main.ONOSbench.handle.before
+ topoManagerLogTemp = topoManagerLog.splitlines()
+ # To make sure we get correct topology log
+ for lines in topoManagerLogTemp:
+ if "creationTime" in lines:
+ topoManagerLog = lines
+ main.log.info("Topology Manager log:")
+ print(topoManagerLog)
+ cutTimestamp = float(topoManagerLog.split("creationTime=")[1].split(",")[0])
+ except:
+ main.log.error("Topology Log is not correct!")
+ print(topoManagerLog)
+ # bring back topology
+ main.log.info("Bring back topology...")
+ verify = main.FALSE
+ main.CLIs[0].removeAllIntents(purge=True, sync=True, timeout=main.timeout)
+ time.sleep(1)
+ main.CLIs[0].purgeWithdrawnIntents()
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=0)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="false")
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=8)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="true")
+ if validRun >= main.warmUp:
+ invalidRun += 1
+ else:
+ validRun += 1
+ # If we got wrong Topology log, we should skip this iteration, and continue for next one
+ continue
+
+ installedTemp = []
+ time.sleep(10)
+ for cli in main.CLIs:
+ tempJson = json.loads(cli.intentsEventsMetrics())
+ Installedtime = tempJson.get('intentInstalledTimestamp').get('value')
+ installedTemp.append(float(Installedtime))
+ for i in range(0, len(installedTemp)):
+ main.log.info("ONOS Node {} Installed Time stemp: {}".format((i + 1), installedTemp[i]))
+ maxInstallTime = float(max(installedTemp))
+ if validRun >= main.warmUp and verify:
+ main.log.info("Installed time stemp: {0:f}".format(maxInstallTime))
+ main.log.info("CutTimestamp: {0:f}".format(cutTimestamp))
+ # Both timeStemps are milliseconds
+ main.log.info("Latency: {0:f}".format(float(maxInstallTime - cutTimestamp)))
+ if float(maxInstallTime - cutTimestamp) < 0:
+ main.log.info("Latency less than 0!")
+ # bring back topology
+ main.log.info("Bring back topology...")
+ verify = main.FALSE
+ main.CLIs[0].removeAllIntents(purge=True, sync=True, timeout=main.timeout)
+ time.sleep(1)
+ main.CLIs[0].purgeWithdrawnIntents()
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=0)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="false")
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=8)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="true")
+ if validRun >= main.warmUp:
+ invalidRun += 1
+ else:
+ validRun += 1
+ continue
+ main.LatencyList.append(float(maxInstallTime - cutTimestamp))
+ # We get valid latency, validRun + 1
+ validRun += 1
+
+ # Verify Summary after we bring up link, and withdrawn intents
+ main.CLIs[0].link("0000000000000004/1", "0000000000000003/2", "up",
+ timeout=main.timeout)
+ k = 0
+ verify = main.FALSE
+ linkCheck = 0
+ flowsCheck = 0
+ while k <= main.verifyAttempts:
+ time.sleep(main.verifySleep)
+ main.CLIs[0].removeAllIntents(purge=True, sync=True, timeout=main.timeout)
+ time.sleep(1)
+ main.CLIs[0].purgeWithdrawnIntents()
+ summary = json.loads(main.CLIs[0].summary())
+ linkCheck = summary.get("links")
+ flowsCheck = summary.get("flows")
+ intentCheck = summary.get("intents")
+ if linkCheck == 16 and flowsCheck == 0 and intentCheck == 0:
+ main.log.info("links: {}, flows: {}, intents: {} ".format(linkCheck, flowsCheck, intentCheck))
+ verify = main.TRUE
+ break
+ k += 1
+ if not verify:
+ main.log.error("links, flows, or intents are not correct!")
+ main.log.info("links: {}, flows: {}, intents: {} ".format(linkCheck, flowsCheck, intentCheck))
+ # bring back topology
+ main.log.info("Bring back topology...")
+ main.CLIs[0].removeAllIntents(purge=True, sync=True, timeout=main.timeout)
+ time.sleep(1)
+ main.CLIs[0].purgeWithdrawnIntents()
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=0)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="false")
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "deviceCount", value=8)
+ main.CLIs[0].setCfg("org.onosproject.provider.nil.NullProviders", "enabled", value="true")
+ continue
+
+ aveLatency = 0
+ stdLatency = 0
+ aveLatency = numpy.average(main.LatencyList)
+ stdLatency = numpy.std(main.LatencyList)
+ main.log.report("Scale: " + str(main.numCtrls) + " \tIntent batch: " + str(batchSize))
+ main.log.report("Latency average:................" + str(aveLatency))
+ main.log.report("Latency standard deviation:....." + str(stdLatency))
main.log.report("________________________________________________________")
- resultsDB = open("/tmp/IntentRerouteLatDBWithFlowObj", "a")
- resultsDB.write("'" + commit + "',")
- resultsDB.write(str(clusterCount) + ",")
- resultsDB.write(str(intents) + ",")
- resultsDB.write(str(average) + ",")
- resultsDB.write(str(stdDev) + "\n")
- resultsDB.close()
-
- main.ONOSbench.logReport(ONOSIp[1], ["ERROR", "WARNING", "EXCEPT"])
+ if not (numpy.isnan(aveLatency) or numpy.isnan(stdLatency)):
+ # check if got NaN for result
+ resultsDB = open(main.dbFileName, "a")
+ resultsDB.write("'" + main.commit + "',")
+ resultsDB.write(str(main.numCtrls) + ",")
+ resultsDB.write(str(batchSize) + ",")
+ resultsDB.write(str(aveLatency) + ",")
+ resultsDB.write(str(stdLatency) + "\n")
+ resultsDB.close()
+ del main.scale[0]
diff --git a/TestON/tests/SCPF/SCPFscalingMaxIntents/SCPFscalingMaxIntents.py b/TestON/tests/SCPF/SCPFscalingMaxIntents/SCPFscalingMaxIntents.py
index a6f4445..5420010 100644
--- a/TestON/tests/SCPF/SCPFscalingMaxIntents/SCPFscalingMaxIntents.py
+++ b/TestON/tests/SCPF/SCPFscalingMaxIntents/SCPFscalingMaxIntents.py
@@ -198,7 +198,7 @@
main.step( "Start ONOS CLI on all nodes" )
cliResult = main.TRUE
- main.log.step(" Start ONOS cli using thread ")
+ main.step(" Start ONOS cli using thread ")
startCliResult = main.TRUE
pool = []
diff --git a/TestON/tests/SCPF/SCPFscalingMaxIntentsWithFlowObj/SCPFscalingMaxIntentsWithFlowObj.py b/TestON/tests/SCPF/SCPFscalingMaxIntentsWithFlowObj/SCPFscalingMaxIntentsWithFlowObj.py
index 438338a..6177b1a 100644
--- a/TestON/tests/SCPF/SCPFscalingMaxIntentsWithFlowObj/SCPFscalingMaxIntentsWithFlowObj.py
+++ b/TestON/tests/SCPF/SCPFscalingMaxIntentsWithFlowObj/SCPFscalingMaxIntentsWithFlowObj.py
@@ -198,7 +198,7 @@
main.step( "Start ONOS CLI on all nodes" )
cliResult = main.TRUE
- main.log.step(" Start ONOS cli using thread ")
+ main.step(" Start ONOS cli using thread ")
startCliResult = main.TRUE
pool = []
diff --git a/TestON/tests/SCPF/SCPFswitchLat/SCPFswitchLat.py b/TestON/tests/SCPF/SCPFswitchLat/SCPFswitchLat.py
index 7c12549..e905e5a 100644
--- a/TestON/tests/SCPF/SCPFswitchLat/SCPFswitchLat.py
+++ b/TestON/tests/SCPF/SCPFswitchLat/SCPFswitchLat.py
@@ -84,7 +84,7 @@
pullResult = main.TRUE
main.log.info( "Skipped git checkout and pull" )
- main.log.step("Grabbing commit number")
+ main.step("Grabbing commit number")
commit = main.ONOSbench.getVersion() ####
commit = (commit.split(" "))[1]
@@ -103,17 +103,17 @@
# -- END OF INIT SECTION --#
- main.log.step("Adjusting scale")
+ main.step("Adjusting scale")
clusterCount = int(scale[0])
scale.remove(scale[0])
#kill off all onos processes
- main.log.step("Safety check, killing all ONOS processes before initiating environment setup")
+ main.step("Safety check, killing all ONOS processes before initiating environment setup")
for node in range(main.maxNodes):
main.ONOSbench.onosDie(main.ONOSIp[node])
#Uninstall everywhere
- main.log.step( "Cleaning Enviornment..." )
+ main.step( "Cleaning Enviornment..." )
for i in range(main.maxNodes):
main.log.info(" Uninstalling ONOS " + str(i) )
main.ONOSbench.onosUninstall( main.ONOSIp[i] )
diff --git a/TestON/tests/USECASE/SegmentRouting/SRLinkDown/README.md b/TestON/tests/USECASE/SegmentRouting/SRLinkDown/README.md
new file mode 100755
index 0000000..59c1214
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRLinkDown/README.md
@@ -0,0 +1,16 @@
+This test verifies basic connectivity using SegmentRouting via pingall,
+it should not fail.
+
+It consists of
+
+1) Configure and Install ONOS
+2) Start Mininet and check flow state
+3) Pingall
+
+Requirements
+
+ - An updated version of the CPQD switch has to be running to make sure it supports group chaining.
+
+The test is executed using the netcfg subsystem:
+ 1) APPS=openflow-base,netcfghostprovider,netcfglinksprovider
+The topology is a 2x2 Leaf-spine
diff --git a/TestON/tests/USECASE/SegmentRouting/SRLinkDown/SRLinkDown.params b/TestON/tests/USECASE/SegmentRouting/SRLinkDown/SRLinkDown.params
new file mode 100755
index 0000000..1a58556
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRLinkDown/SRLinkDown.params
@@ -0,0 +1,46 @@
+<PARAMS>
+
+ <testcases>1,2,3</testcases>
+
+ <SCALE>
+ <size>3</size>
+ <max>3</max>
+ </SCALE>
+
+ <DEPENDENCY>
+ <wrapper1>startUp</wrapper1>
+ <topology>cord_fabric.py</topology>
+ </DEPENDENCY>
+
+ <ENV>
+ <cellName>productionCell</cellName>
+ <cellApps>drivers,segmentrouting</cellApps>
+ <diffApps>openflow-base,netcfghostprovider,netcfglinksprovider</diffApps>
+ <cellUser>sdn</cellUser>
+ </ENV>
+
+ <GIT>
+ <pull>False</pull>
+ <branch>master</branch>
+ </GIT>
+
+ <CTRL>
+ <port>6653</port>
+ </CTRL>
+
+ <timers>
+ <LinkDiscovery>12</LinkDiscovery>
+ <SwitchDiscovery>12</SwitchDiscovery>
+ </timers>
+
+ <kill>
+ <switch> spine101 </switch>
+ <dpid> 000000000101 </dpid>
+ <links> leaf1 leaf2 </links>
+ </kill>
+
+ <SLEEP>
+ <startup>10</startup>
+ </SLEEP>
+
+</PARAMS>
diff --git a/TestON/tests/USECASE/SegmentRouting/SRLinkDown/SRLinkDown.py b/TestON/tests/USECASE/SegmentRouting/SRLinkDown/SRLinkDown.py
new file mode 100755
index 0000000..db5469d
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRLinkDown/SRLinkDown.py
@@ -0,0 +1,107 @@
+# This test should always succeed. it runs cases 1,2,3,4
+#CASE1: Get and Build ONOS
+#CASE2: Package and Install ONOS
+#CASE3: Start Mininet and check flows
+#CASE4: Ping all
+#CASE5: Link Failure
+#CASE6: Switch Failure
+#CASE7: ONOS Failure
+#CASE8: CLUSTER Failure
+#CASE10: Logging
+
+class SRLinkDown:
+
+ def __init__( self ):
+ self.default = ''
+
+ def CASE1( self, main ):
+ """
+ Sets up 1-node Onos-cluster
+ Start 2x2 Leaf-Spine topology
+ Pingall
+ """
+ from tests.USECASE.SegmentRouting.dependencies.Testcaselib import Testcaselib as run
+ if not hasattr(main,'apps'):
+ run.initTest(main)
+
+ description = "Bridging and Routing sanity test with 2x2 Leaf-spine "
+ main.case( description )
+
+ main.cfgName = '2x2'
+ main.numCtrls = 1
+ run.installOnos(main)
+ run.startMininet(main, 'cord_fabric.py')
+ #pre-configured routing and bridging test
+ run.checkFlows(main, flowCount=116)
+ run.pingAll(main)
+ run.killLink(main, 'spine101', 'leaf2', switches='4', links='6')
+ run.pingAll(main, "CASE1_AfterLinkDown")
+ run.restoreLink(main, 'spine101', 'leaf2','of:0000000000000101',
+ 'of:0000000000000002', '2', '1', '4', '8')
+ run.pingAll(main, "CASE1_AfterLinkUp")
+ #TODO Dynamic config of hosts in subnet
+ #TODO Dynamic config of host not in subnet
+ #TODO Dynamic config of vlan xconnect
+ #TODO Vrouter integration
+ #TODO Mcast integration
+ run.cleanup(main)
+
+ def CASE2( self, main ):
+ """
+ Sets up 1-node Onos-cluster
+ Start 4x4 Leaf-Spine topology
+ Pingall
+ """
+ from tests.USECASE.SegmentRouting.dependencies.Testcaselib import Testcaselib as run
+ if not hasattr(main,'apps'):
+ run.initTest(main)
+ description = "Bridging and Routing sanity test with 4x4 Leaf-spine "
+ main.case( description )
+ main.cfgName = '4x4'
+ main.numCtrls = 1
+ run.installOnos(main)
+ run.startMininet(main, 'cord_fabric.py', args="--leaf=4 --spine=4")
+ #pre-configured routing and bridging test
+ run.checkFlows(main, flowCount=350)
+ run.pingAll(main)
+ run.killLink(main, 'spine101', 'leaf2', switches='8', links='30')
+ run.pingAll(main, "CASE2_AfterLinkDown")
+ run.restoreLink(main, 'spine101', 'leaf2','of:0000000000000101',
+ 'of:0000000000000002', '2', '1', '8', '32')
+ run.pingAll(main, "CASE2_AfterLinkUp")
+ #TODO Dynamic config of hosts in subnet
+ #TODO Dynamic config of host not in subnet
+ #TODO preconfigured xconnect
+ #TODO Vrouter integration
+ #TODO Mcast integration
+ run.cleanup(main)
+
+ def CASE3( self, main ):
+ """
+ Sets up 3-node Onos-cluster
+ Start 2x2 Leaf-Spine topology
+ Pingall
+ """
+ from tests.USECASE.SegmentRouting.dependencies.Testcaselib import Testcaselib as run
+ if not hasattr(main,'apps'):
+ run.initTest(main)
+ description = "Bridging and Routing sanity test with 2x2 Leaf-spine "
+ main.case( description )
+ main.cfgName = '2x2'
+ main.numCtrls = 3
+ run.installOnos(main)
+ run.startMininet(main, 'cord_fabric.py')
+ #pre-configured routing and bridging test
+ run.checkFlows(main, flowCount=116)
+ run.pingAll(main)
+ run.killLink(main, 'spine101', 'leaf2', switches='4', links='6')
+ run.pingAll(main, "CASE3_AfterLinkDown")
+ run.restoreLink(main, 'spine101', 'leaf2','of:0000000000000101',
+ 'of:0000000000000002', '2', '1', '4', '8')
+ run.pingAll(main, "CASE3_AfterLinkUp")
+ #TODO Dynamic config of hosts in subnet
+ #TODO Dynamic config of host not in subnet
+ #TODO Dynamic config of vlan xconnect
+ #TODO Vrouter integration
+ #TODO Mcast integration
+ run.cleanup(main)
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRLinkDown/SRLinkDown.topo b/TestON/tests/USECASE/SegmentRouting/SRLinkDown/SRLinkDown.topo
new file mode 100755
index 0000000..546a023
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRLinkDown/SRLinkDown.topo
@@ -0,0 +1,58 @@
+<TOPOLOGY>
+ <COMPONENT>
+
+ <ONOSbench>
+ <host>localhost</host>
+ <user>sdn</user>
+ <password>rocks</password>
+ <type>OnosDriver</type>
+ <connect_order>1</connect_order>
+ <COMPONENTS>
+ <nodes>1</nodes>
+ </COMPONENTS>
+ </ONOSbench>
+
+ <ONOScli1>
+ <host>OC1</host>
+ <user>sdn</user>
+ <password>rocks</password>
+ <type>OnosCliDriver</type>
+ <connect_order>2</connect_order>
+ <COMPONENTS>
+ </COMPONENTS>
+ </ONOScli1>
+
+ <ONOScli2>
+ <host>OC2</host>
+ <user>sdn</user>
+ <password>rocks</password>
+ <type>OnosCliDriver</type>
+ <connect_order>3</connect_order>
+ <COMPONENTS>
+ </COMPONENTS>
+ </ONOScli2>
+
+ <ONOScli3>
+ <host>OC3</host>
+ <user>sdn</user>
+ <password>rocks</password>
+ <type>OnosCliDriver</type>
+ <connect_order>4</connect_order>
+ <COMPONENTS>
+ </COMPONENTS>
+ </ONOScli3>
+
+
+ <Mininet1>
+ <host>OCN</host>
+ <user>sdn</user>
+ <password>rocks</password>
+ <type>MininetCliDriver</type>
+ <connect_order>5</connect_order>
+ <COMPONENTS>
+ <home>~/mininet/custom/</home>
+ </COMPONENTS>
+ </Mininet1>
+
+ </COMPONENT>
+</TOPOLOGY>
diff --git a/TestON/tests/USECASE/USECASE_SegmentRouting/__init__.py b/TestON/tests/USECASE/SegmentRouting/SRLinkDown/__init__.py
old mode 100644
new mode 100755
similarity index 100%
copy from TestON/tests/USECASE/USECASE_SegmentRouting/__init__.py
copy to TestON/tests/USECASE/SegmentRouting/SRLinkDown/__init__.py
diff --git a/TestON/tests/USECASE/SegmentRouting/SRSanity/README.md b/TestON/tests/USECASE/SegmentRouting/SRSanity/README.md
new file mode 100755
index 0000000..59c1214
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRSanity/README.md
@@ -0,0 +1,16 @@
+This test verifies basic connectivity using SegmentRouting via pingall,
+it should not fail.
+
+It consists of
+
+1) Configure and Install ONOS
+2) Start Mininet and check flow state
+3) Pingall
+
+Requirements
+
+ - An updated version of the CPQD switch has to be running to make sure it supports group chaining.
+
+The test is executed using the netcfg subsystem:
+ 1) APPS=openflow-base,netcfghostprovider,netcfglinksprovider
+The topology is a 2x2 Leaf-spine
diff --git a/TestON/tests/USECASE/SegmentRouting/SRSanity/SRSanity.params b/TestON/tests/USECASE/SegmentRouting/SRSanity/SRSanity.params
new file mode 100755
index 0000000..a757a48
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRSanity/SRSanity.params
@@ -0,0 +1,46 @@
+<PARAMS>
+
+ <testcases>1,2,3,4,5,6</testcases>
+
+ <SCALE>
+ <size>3</size>
+ <max>3</max>
+ </SCALE>
+
+ <DEPENDENCY>
+ <wrapper1>startUp</wrapper1>
+ <topology>cord_fabric.py</topology>
+ </DEPENDENCY>
+
+ <ENV>
+ <cellName>productionCell</cellName>
+ <cellApps>drivers,segmentrouting</cellApps>
+ <diffApps>openflow-base,netcfghostprovider,netcfglinksprovider</diffApps>
+ <cellUser>sdn</cellUser>
+ </ENV>
+
+ <GIT>
+ <pull>False</pull>
+ <branch>master</branch>
+ </GIT>
+
+ <CTRL>
+ <port>6653</port>
+ </CTRL>
+
+ <timers>
+ <LinkDiscovery>12</LinkDiscovery>
+ <SwitchDiscovery>12</SwitchDiscovery>
+ </timers>
+
+ <kill>
+ <switch> spine101 </switch>
+ <dpid> 000000000101 </dpid>
+ <links> leaf1 leaf2 </links>
+ </kill>
+
+ <SLEEP>
+ <startup>10</startup>
+ </SLEEP>
+
+</PARAMS>
diff --git a/TestON/tests/USECASE/SegmentRouting/SRSanity/SRSanity.py b/TestON/tests/USECASE/SegmentRouting/SRSanity/SRSanity.py
new file mode 100755
index 0000000..631248b
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRSanity/SRSanity.py
@@ -0,0 +1,164 @@
+# This test should always succeed. it runs cases 1,2,3
+#CASE1: 2x2 Leaf-Spine topo and test IP connectivity
+#CASE2: 4x4 topo + IP connectivity test
+#CASE3: Single switch topo + IP connectivity test
+#CASE4: 2x2 topo + 3-node ONOS CLUSTER + IP connectivity test
+#CASE5: 4x4 topo + 3-node ONOS CLUSTER + IP connectivity test
+#CASE6: Single switch + 3-node ONOS CLUSTER + IP connectivity test
+
+class SRSanity:
+
+ def __init__( self ):
+ self.default = ''
+
+ def CASE1( self, main ):
+ """
+ Sets up 1-node Onos-cluster
+ Start 2x2 Leaf-Spine topology
+ Pingall
+ """
+ from tests.USECASE.SegmentRouting.dependencies.Testcaselib import Testcaselib as run
+ if not hasattr(main,'apps'):
+ run.initTest(main)
+
+ description = "Bridging and Routing sanity test with 2x2 Leaf-spine "
+ main.case( description )
+
+ main.cfgName = '2x2'
+ main.numCtrls = 1
+ run.installOnos(main)
+ run.startMininet(main, 'cord_fabric.py')
+ #pre-configured routing and bridging test
+ run.checkFlows(main, minFlowCount=116)
+ run.pingAll(main, "CASE1")
+ #TODO Dynamic config of hosts in subnet
+ #TODO Dynamic config of host not in subnet
+ #TODO Dynamic config of vlan xconnect
+ #TODO Vrouter integration
+ #TODO Mcast integration
+ run.cleanup(main)
+
+ def CASE2( self, main ):
+ """
+ Sets up 1-node Onos-cluster
+ Start 4x4 Leaf-Spine topology
+ Pingall
+ """
+ from tests.USECASE.SegmentRouting.dependencies.Testcaselib import Testcaselib as run
+ if not hasattr(main,'apps'):
+ run.initTest(main)
+ description = "Bridging and Routing sanity test with 4x4 Leaf-spine "
+ main.case( description )
+ main.cfgName = '4x4'
+ main.numCtrls = 1
+ run.installOnos(main)
+ run.startMininet(main, 'cord_fabric.py', args="--leaf=4 --spine=4")
+ #pre-configured routing and bridging test
+ run.checkFlows(main, minFlowCount=350)
+ run.pingAll(main, 'CASE2')
+ #TODO Dynamic config of hosts in subnet
+ #TODO Dynamic config of host not in subnet
+ #TODO Dynamic config of vlan xconnect
+ #TODO Vrouter integration
+ #TODO Mcast integration
+ run.cleanup(main)
+
+ def CASE3( self, main ):
+ """
+ Sets up 1-node Onos-cluster
+ Start single switch topology
+ Pingall
+ """
+ from tests.USECASE.SegmentRouting.dependencies.Testcaselib import Testcaselib as run
+ if not hasattr(main,'apps'):
+ run.initTest(main)
+ description = "Bridging and Routing sanity test with single switch "
+ main.case( description )
+ main.cfgName = '0x1'
+ main.numCtrls = 1
+ run.installOnos(main)
+ run.startMininet(main, 'cord_fabric.py', args="--leaf=1 --spine=0")
+ #pre-configured routing and bridging test
+ run.checkFlows(main, minFlowCount=15)
+ run.pingAll(main, 'CASE3')
+ #TODO Dynamic config of hosts in subnet
+ #TODO Dynamic config of host not in subnet
+ #TODO Dynamic config of vlan xconnect
+ #TODO Vrouter integration
+ #TODO Mcast integration
+ run.cleanup(main)
+
+ def CASE4( self, main ):
+ """
+ Sets up 3-node Onos-cluster
+ Start 2x2 Leaf-Spine topology
+ Pingall
+ """
+ from tests.USECASE.SegmentRouting.dependencies.Testcaselib import Testcaselib as run
+ if not hasattr(main,'apps'):
+ run.initTest(main)
+ description = "Bridging and Routing sanity test with 2x2 Leaf-spine "
+ main.case( description )
+ main.cfgName = '2x2'
+ main.numCtrls = 3
+ run.installOnos(main)
+ run.startMininet(main, 'cord_fabric.py')
+ #pre-configured routing and bridging test
+ run.checkFlows(main, minFlowCount=116)
+ run.pingAll(main, 'CASE4')
+ #TODO Dynamic config of hosts in subnet
+ #TODO Dynamic config of host not in subnet
+ #TODO Dynamic config of vlan xconnect
+ #TODO Vrouter integration
+ #TODO Mcast integration
+ run.cleanup(main)
+
+ def CASE5( self, main ):
+ """
+ Sets up 3-node Onos-cluster
+ Start 4x4 Leaf-Spine topology
+ Pingall
+ """
+ from tests.USECASE.SegmentRouting.dependencies.Testcaselib import Testcaselib as run
+ if not hasattr(main,'apps'):
+ run.initTest(main)
+ description = "Bridging and Routing sanity test with 4x4 Leaf-spine "
+ main.case( description )
+ main.cfgName = '4x4'
+ main.numCtrls = 3
+ run.installOnos(main)
+ run.startMininet(main, 'cord_fabric.py', args="--leaf=4 --spine=4")
+ #pre-configured routing and bridging test
+ run.checkFlows(main, minFlowCount=350)
+ run.pingAll(main, 'CASE5')
+ #TODO Dynamic config of hosts in subnet
+ #TODO Dynamic config of host not in subnet
+ #TODO Dynamic config of vlan xconnect
+ #TODO Vrouter integration
+ #TODO Mcast integration
+ run.cleanup(main)
+
+ def CASE6( self, main ):
+ """
+ Sets up 3-node Onos-cluster
+ Start single switch topology
+ Pingall
+ """
+ from tests.USECASE.SegmentRouting.dependencies.Testcaselib import Testcaselib as run
+ if not hasattr(main,'apps'):
+ run.initTest(main)
+ description = "Bridging and Routing sanity test with single switch "
+ main.case( description )
+ main.cfgName = '0x1'
+ main.numCtrls = 3
+ run.installOnos(main)
+ run.startMininet(main, 'cord_fabric.py', args="--leaf=1 --spine=0")
+ #pre-configured routing and bridging test
+ run.checkFlows(main, minFlowCount=15)
+ run.pingAll(main, 'CASE4')
+ #TODO Dynamic config of hosts in subnet
+ #TODO Dynamic config of host not in subnet
+ #TODO Dynamic config of vlan xconnect
+ #TODO Vrouter integration
+ #TODO Mcast integration
+ run.cleanup(main)
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRSanity/SRSanity.topo b/TestON/tests/USECASE/SegmentRouting/SRSanity/SRSanity.topo
new file mode 100755
index 0000000..546a023
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRSanity/SRSanity.topo
@@ -0,0 +1,58 @@
+<TOPOLOGY>
+ <COMPONENT>
+
+ <ONOSbench>
+ <host>localhost</host>
+ <user>sdn</user>
+ <password>rocks</password>
+ <type>OnosDriver</type>
+ <connect_order>1</connect_order>
+ <COMPONENTS>
+ <nodes>1</nodes>
+ </COMPONENTS>
+ </ONOSbench>
+
+ <ONOScli1>
+ <host>OC1</host>
+ <user>sdn</user>
+ <password>rocks</password>
+ <type>OnosCliDriver</type>
+ <connect_order>2</connect_order>
+ <COMPONENTS>
+ </COMPONENTS>
+ </ONOScli1>
+
+ <ONOScli2>
+ <host>OC2</host>
+ <user>sdn</user>
+ <password>rocks</password>
+ <type>OnosCliDriver</type>
+ <connect_order>3</connect_order>
+ <COMPONENTS>
+ </COMPONENTS>
+ </ONOScli2>
+
+ <ONOScli3>
+ <host>OC3</host>
+ <user>sdn</user>
+ <password>rocks</password>
+ <type>OnosCliDriver</type>
+ <connect_order>4</connect_order>
+ <COMPONENTS>
+ </COMPONENTS>
+ </ONOScli3>
+
+
+ <Mininet1>
+ <host>OCN</host>
+ <user>sdn</user>
+ <password>rocks</password>
+ <type>MininetCliDriver</type>
+ <connect_order>5</connect_order>
+ <COMPONENTS>
+ <home>~/mininet/custom/</home>
+ </COMPONENTS>
+ </Mininet1>
+
+ </COMPONENT>
+</TOPOLOGY>
diff --git a/TestON/tests/USECASE/USECASE_SegmentRouting/__init__.py b/TestON/tests/USECASE/SegmentRouting/SRSanity/__init__.py
old mode 100644
new mode 100755
similarity index 100%
copy from TestON/tests/USECASE/USECASE_SegmentRouting/__init__.py
copy to TestON/tests/USECASE/SegmentRouting/SRSanity/__init__.py
diff --git a/TestON/tests/USECASE/USECASE_SegmentRouting/__init__.py b/TestON/tests/USECASE/SegmentRouting/__init__.py
old mode 100644
new mode 100755
similarity index 100%
rename from TestON/tests/USECASE/USECASE_SegmentRouting/__init__.py
rename to TestON/tests/USECASE/SegmentRouting/__init__.py
diff --git a/TestON/tests/USECASE/SegmentRouting/dependencies/0x1.json b/TestON/tests/USECASE/SegmentRouting/dependencies/0x1.json
new file mode 100755
index 0000000..0ba5dbd
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/dependencies/0x1.json
@@ -0,0 +1,53 @@
+{
+ "ports" : {
+ "of:0000000000000001/1" : {
+ "interfaces" : [
+ {
+ "ips" : [ "10.0.1.254/24" ]
+ }
+ ]
+ },
+ "of:0000000000000001/2" : {
+ "interfaces" : [
+ {
+ "ips" : [ "10.0.1.254/24" ]
+ }
+ ]
+ }
+ },
+ "devices" : {
+ "of:0000000000000001" : {
+ "basic":{ "driver" : "ofdpa-cpqd" },
+ "segmentrouting" : {
+ "name" : "Leaf-R1",
+ "nodeSid" : 1,
+ "routerIp" : "192.168.0.1",
+ "routerMac" : "10:00:00:00:00:01",
+ "isEdgeRouter" : true,
+ "adjacencySids" : []
+ }
+ }
+ },
+ "apps": {
+ "org.onosproject.segmentrouting": {
+ "segmentrouting": {
+ "hostLearning": true
+ }
+ }
+ },
+ "hosts" : {
+ "00:00:00:00:00:01/-1" : {
+ "basic": {
+ "ips": ["10.0.1.1"],
+ "location": "of:0000000000000001/1"
+ }
+ },
+ "00:00:00:00:00:02/-1" : {
+ "basic": {
+ "ips": ["10.0.1.2"],
+ "location": "of:0000000000000001/2"
+ }
+ }
+ }
+
+}
diff --git a/TestON/tests/USECASE/USECASE_SegmentRouting/2x2.json b/TestON/tests/USECASE/SegmentRouting/dependencies/2x2.json
old mode 100644
new mode 100755
similarity index 100%
rename from TestON/tests/USECASE/USECASE_SegmentRouting/2x2.json
rename to TestON/tests/USECASE/SegmentRouting/dependencies/2x2.json
diff --git a/TestON/tests/USECASE/USECASE_SegmentRouting/4x4.json b/TestON/tests/USECASE/SegmentRouting/dependencies/4x4.json
old mode 100644
new mode 100755
similarity index 100%
rename from TestON/tests/USECASE/USECASE_SegmentRouting/4x4.json
rename to TestON/tests/USECASE/SegmentRouting/dependencies/4x4.json
diff --git a/TestON/tests/USECASE/SegmentRouting/dependencies/Testcaselib.py b/TestON/tests/USECASE/SegmentRouting/dependencies/Testcaselib.py
new file mode 100755
index 0000000..3ba3cc0
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/dependencies/Testcaselib.py
@@ -0,0 +1,342 @@
+import os
+import imp
+import time
+
+from core import utilities
+
+
+class Testcaselib:
+ @staticmethod
+ def initTest( main ):
+ """
+ - Construct tests variables
+ - GIT ( optional )
+ - Checkout ONOS master branch
+ - Pull latest ONOS code
+ - Building ONOS ( optional )
+ - Install ONOS package
+ - Build ONOS package
+ """
+ main.step( "Constructing test variables" )
+ # Test variables
+ main.cellName = main.params[ 'ENV' ][ 'cellName' ]
+ main.apps = main.params[ 'ENV' ][ 'cellApps' ]
+ main.diff = main.params[ 'ENV' ][ 'diffApps' ]
+ gitBranch = main.params[ 'GIT' ][ 'branch' ]
+ main.path = os.path.dirname( main.testFile )
+ main.dependencyPath = main.path +"/../dependencies/"
+ main.topology = main.params[ 'DEPENDENCY' ][ 'topology' ]
+ wrapperFile1 = main.params[ 'DEPENDENCY' ][ 'wrapper1' ]
+ main.scale = ( main.params[ 'SCALE' ][ 'size' ] ).split( "," )
+ main.maxNodes = int( main.params[ 'SCALE' ][ 'max' ] )
+ #main.ONOSport = main.params[ 'CTRL' ][ 'port' ]
+ main.startUpSleep = int( main.params[ 'SLEEP' ][ 'startup' ] )
+ main.cellData = {} # for creating cell file
+ main.CLIs = []
+ main.ONOSip = []
+
+ # Assigning ONOS cli handles to a list
+ for i in range( 1, main.maxNodes + 1 ):
+ main.CLIs.append( getattr( main, 'ONOScli' + str( i ) ) )
+ main.ONOSip.append( main.CLIs[i-1].ip_address )
+ # -- INIT SECTION, ONLY RUNS ONCE -- #
+ main.startUp = imp.load_source( wrapperFile1,
+ main.dependencyPath +
+ wrapperFile1 +
+ ".py" )
+
+ copyResult1 = main.ONOSbench.scp( main.Mininet1,
+ main.dependencyPath +
+ main.topology,
+ main.Mininet1.home,
+ direction="to" )
+ if main.CLIs:
+ stepResult = main.TRUE
+ else:
+ main.log.error( "Did not properly created list of ONOS CLI handle" )
+ stepResult = main.FALSE
+
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully construct " +
+ "test variables ",
+ onfail="Failed to construct test variables" )
+
+ @staticmethod
+ def installOnos( main ):
+ """
+ - Set up cell
+ - Create cell file
+ - Set cell file
+ - Verify cell file
+ - Kill ONOS process
+ - Uninstall ONOS cluster
+ - Verify ONOS start up
+ - Install ONOS cluster
+ - Connect to cli
+ """
+ # main.scale[ 0 ] determines the current number of ONOS controller
+ apps=main.apps
+ if main.diff:
+ apps = main.apps + "," + main.diff
+ else: main.log.error( "App list is empty" )
+ main.case( "Package and start ONOS using apps:" + apps)
+ print "NODE COUNT = ", main.numCtrls
+ print main.ONOSip
+ tempOnosIp = []
+ for i in range( main.numCtrls ):
+ tempOnosIp.append( main.ONOSip[i] )
+ onosUser = main.params[ 'ENV' ][ 'cellUser' ]
+ main.step("Create and Apply cell file")
+ main.ONOSbench.createCellFile( main.ONOSbench.ip_address,
+ "temp",
+ main.Mininet1.ip_address,
+ apps,
+ tempOnosIp,
+ onosUser )
+ cellResult = main.ONOSbench.setCell( "temp" )
+ verifyResult = main.ONOSbench.verifyCell()
+ stepResult = cellResult and verifyResult
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully applied cell to " + \
+ "environment",
+ onfail="Failed to apply cell to environment " )
+ #kill off all onos processes
+ main.log.info( "Safety check, killing all ONOS processes" +
+ " before initiating environment setup" )
+ for i in range( main.maxNodes ):
+ main.ONOSbench.onosDie( main.ONOSip[ i ] )
+ main.step( "Create and Install ONOS package" )
+ main.ONOSbench.handle.sendline( "cp "+main.dependencyPath+"/"+main.cfgName+".json ~/onos/tools/package/config/network-cfg.json")
+ packageResult = main.ONOSbench.onosPackage()
+
+ onosInstallResult = main.TRUE
+ for i in range( main.numCtrls ):
+ onosInstallResult = onosInstallResult and \
+ main.ONOSbench.onosInstall( node=main.ONOSip[ i ] )
+ stepResult = onosInstallResult
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully installed ONOS package",
+ onfail="Failed to install ONOS package" )
+ main.step( "Starting ONOS service" )
+ stopResult,startResult, onosIsUp= main.TRUE, main.TRUE, main.TRUE,
+ for i in range( main.numCtrls ):
+ onosIsUp = onosIsUp and main.ONOSbench.isup( main.ONOSip[ i ] )
+ if onosIsUp == main.TRUE:
+ main.log.report( "ONOS instance is up and ready" )
+ else:
+ main.log.report( "ONOS instance may not be up, stop and " +
+ "start ONOS again " )
+ for i in range( main.numCtrls ):
+ stopResult = stopResult and \
+ main.ONOSbench.onosStop( main.ONOSip[ i ] )
+ for i in range( main.numCtrls ):
+ startResult = startResult and \
+ main.ONOSbench.onosStart( main.ONOSip[ i ] )
+ stepResult = onosIsUp and stopResult and startResult
+
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="ONOS service is ready",
+ onfail="ONOS service did not start properly" )
+ main.step( "Checking if ONOS CLI is ready" )
+ for i in range( main.numCtrls ):
+ main.CLIs[i].startCellCli()
+ cliResult = main.CLIs[i].startOnosCli( main.ONOSip[ i ],
+ commandlineTimeout=60, onosStartTimeout=100 )
+ utilities.assert_equals( expect=main.TRUE,
+ actual=cliResult,
+ onpass="ONOS CLI is ready",
+ onfail="ONOS CLI is not ready" )
+ main.active=0
+ for i in range( 10 ):
+ ready = True
+ output = main.CLIs[main.active].summary()
+ if not output:
+ ready = False
+ if ready:
+ break
+ time.sleep( 10 )
+ utilities.assert_equals( expect=True, actual=ready,
+ onpass="ONOS summary command succeded",
+ onfail="ONOS summary command failed" )
+
+ if not ready:
+ main.log.error( "ONOS startup failed!" )
+ main.cleanup()
+ main.exit()
+
+ for i in range( main.numCtrls ):
+ main.CLIs[i].logSet( "DEBUG", "org.onosproject.segmentrouting" )
+ main.CLIs[i].logSet( "DEBUG", "org.onosproject.driver.pipeline" )
+ main.CLIs[i].logSet( "DEBUG", "org.onosproject.store.group.impl" )
+ main.CLIs[i].logSet( "DEBUG", "org.onosproject.net.flowobjective.impl" )
+
+ @staticmethod
+ def startMininet( main, topology, args="" ):
+ main.step( "Starting Mininet Topology" )
+ arg = "--onos %d %s" % (main.numCtrls, args)
+ main.topology=topology
+ topoResult = main.Mininet1.startNet( topoFile= main.dependencyPath + main.topology, args=arg )
+ stepResult = topoResult
+ utilities.assert_equals( expect=main.TRUE,
+ actual=stepResult,
+ onpass="Successfully loaded topology",
+ onfail="Failed to load topology" )
+ # Exit if topology did not load properly
+ if not topoResult:
+ main.cleanup()
+ main.exit()
+
+ @staticmethod
+ def checkFlows(main, minFlowCount):
+ main.step(" Check whether the flow count is bigger than %s" % minFlowCount)
+ count = utilities.retry(main.CLIs[main.active].checkFlowCount,
+ main.FALSE,
+ kwargs={'min':minFlowCount},
+ attempts=10,
+ sleep=10)
+ utilities.assertEquals( \
+ expect=True,
+ actual=(count>0),
+ onpass="Flow count looks correct: "+str(count),
+ onfail="Flow count looks wrong: "+str(count) )
+
+ main.step( "Check whether all flow status are ADDED" )
+ flowCheck = utilities.retry( main.CLIs[main.active].checkFlowsState,
+ main.FALSE,
+ kwargs={'isPENDING':False},
+ attempts=10,
+ sleep=10)
+ utilities.assertEquals( \
+ expect=main.TRUE,
+ actual=flowCheck,
+ onpass="Flow status is correct!",
+ onfail="Flow status is wrong!" )
+ main.ONOSbench.dumpFlows( main.ONOSip[main.active],
+ main.logdir, "flowsBefore" + main.cfgName)
+ main.ONOSbench.dumpGroups( main.ONOSip[0],
+ main.logdir, "groupsBefore" + main.cfgName)
+
+ @staticmethod
+ def pingAll( main, tag=""):
+ main.log.report( "Check full connectivity" )
+ main.step("Check full connectivity %s" %tag)
+ pa = main.Mininet1.pingall()
+ utilities.assert_equals( expect=main.TRUE, actual=pa,
+ onpass="Full connectivity successfully tested",
+ onfail="Full connectivity failed" )
+ main.ONOSbench.dumpFlows( main.ONOSip[main.active],
+ main.logdir, "flowsOn" + tag)
+ main.ONOSbench.dumpGroups( main.ONOSip[main.active],
+ main.logdir, "groupsOn" + tag)
+
+ @staticmethod
+ def killLink( main, end1, end2, switches, links ):
+ """
+ end1,end2: identify the switches, ex.: 'leaf1', 'spine1'
+ switches, links: number of expected switches and links after linkDown, ex.: '4', '6'
+ Kill a link and verify ONOS can see the proper link change
+ """
+ main.linkSleep = float( main.params[ 'timers' ][ 'LinkDiscovery' ] )
+ main.step( "Kill link between %s and %s" %(end1, end2))
+ LinkDown = main.Mininet1.link( END1=end1, END2=end2, OPTION="down" )
+ main.log.info( "Waiting %s seconds for link down to be discovered" % main.linkSleep )
+ time.sleep( main.linkSleep )
+ topology = utilities.retry( main.CLIs[main.active].checkStatus,
+ main.FALSE,
+ kwargs={'numoswitch':switches, 'numolink':links},
+ attempts=10,
+ sleep=main.linkSleep)
+ result = topology & LinkDown
+ utilities.assert_equals( expect=main.TRUE, actual=result,
+ onpass="Link down successful",
+ onfail="Failed to turn off link?" )
+
+ @staticmethod
+ def restoreLink( main, end1, end2, dpid1, dpid2, port1, port2, switches, links ):
+ """
+ Params:
+ end1,end2: identify the end switches, ex.: 'leaf1', 'spine1'
+ dpid1, dpid2: dpid of the end switches respectively, ex.: 'of:0000000000000002'
+ port1, port2: respective port of the end switches that connects to the link, ex.:'1'
+ switches, links: number of expected switches and links after linkDown, ex.: '4', '6'
+ Kill a link and verify ONOS can see the proper link change
+ """
+ main.step( "Restore link between %s and %s" %( end1, end2 ) )
+ result = False
+ count=0
+ while True:
+ count+=0
+ main.Mininet1.link( END1=end1, END2=end2, OPTION="up" )
+ main.Mininet1.link( END2=end1, END1=end2, OPTION="up" )
+ main.log.info( "Waiting %s seconds for link up to be discovered" % main.linkSleep )
+ time.sleep( main.linkSleep )
+ main.CLIs[main.active].portstate( dpid=dpid1, port=port1 )
+ main.CLIs[main.active].portstate( dpid=dpid2, port=port2 )
+ time.sleep( main.linkSleep )
+
+ result = main.CLIs[main.active].checkStatus( numoswitch=switches, numolink=links )
+ if count>5 or result:
+ break
+ utilities.assert_equals( expect=main.TRUE, actual=result,
+ onpass="Link up successful",
+ onfail="Failed to bring link up" )
+
+ @staticmethod
+ def killSwitch( main, switch, switches, links ):
+ """
+ Params: switches, links: number of expected switches and links after SwitchDown, ex.: '4', '6'
+ Completely kill a switch and verify ONOS can see the proper change
+ """
+ main.switchSleep = float( main.params[ 'timers' ][ 'SwitchDiscovery' ] )
+ main.step( "Kill " + switch )
+ main.log.info( "Stopping" + switch )
+ main.Mininet1.switch( SW=switch, OPTION="stop" )
+ main.log.info( "Waiting %s seconds for switch down to be discovered" % ( main.switchSleep ) )
+ time.sleep( main.switchSleep )
+ topology = utilities.retry( main.CLIs[main.active].checkStatus,
+ main.FALSE,
+ kwargs={'numoswitch':switches, 'numolink':links},
+ attempts=10,
+ sleep=main.switchSleep)
+ utilities.assert_equals( expect=main.TRUE, actual=topology,
+ onpass="Kill switch successful",
+ onfail="Failed to kill switch?" )
+
+ @staticmethod
+ def recoverSwitch( main, switch, switches, links ):
+ """
+ Params: switches, links: number of expected switches and links after SwitchUp, ex.: '4', '6'
+ Recover a switch and verify ONOS can see the proper change
+ """
+ main.step( "Recovering " + switch )
+ main.log.info( "Starting" + switch )
+ main.Mininet1.switch( SW=switch, OPTION="start")
+ main.log.info( "Waiting %s seconds for switch up to be discovered" %(main.switchSleep))
+ time.sleep( main.switchSleep )
+ topology = utilities.retry( main.CLIs[main.active].checkStatus,
+ main.FALSE,
+ kwargs={'numoswitch':switches, 'numolink':links},
+ attempts=10,
+ sleep=main.switchSleep)
+ utilities.assert_equals( expect=main.TRUE, actual=topology,
+ onpass="Switch recovery successful",
+ onfail="Failed to recover switch?" )
+
+ @staticmethod
+ def cleanup( main ):
+ """
+ Stop Onos-cluster.
+ Stops Mininet
+ Copies ONOS log
+ """
+ main.Mininet1.stopNet()
+ main.ONOSbench.scp( main.ONOScli1 ,"/opt/onos/log/karaf.log",
+ "/tmp/karaf.log", direction="from" )
+ main.ONOSbench.cpLogsToDir("/tmp/karaf.log",main.logdir,
+ copyFileName="karaf.log."+main.cfgName)
+ for i in range(main.numCtrls):
+ main.ONOSbench.onosStop( main.ONOSip[i] )
diff --git a/TestON/tests/USECASE/USECASE_SegmentRouting/__init__.py b/TestON/tests/USECASE/SegmentRouting/dependencies/__init__.py
old mode 100644
new mode 100755
similarity index 100%
copy from TestON/tests/USECASE/USECASE_SegmentRouting/__init__.py
copy to TestON/tests/USECASE/SegmentRouting/dependencies/__init__.py
diff --git a/TestON/tests/USECASE/USECASE_SegmentRouting/dependencies/cord_fabric.py b/TestON/tests/USECASE/SegmentRouting/dependencies/cord_fabric.py
similarity index 100%
rename from TestON/tests/USECASE/USECASE_SegmentRouting/dependencies/cord_fabric.py
rename to TestON/tests/USECASE/SegmentRouting/dependencies/cord_fabric.py
diff --git a/TestON/tests/USECASE/USECASE_SegmentRouting/dependencies/startUp.py b/TestON/tests/USECASE/SegmentRouting/dependencies/startUp.py
old mode 100644
new mode 100755
similarity index 100%
rename from TestON/tests/USECASE/USECASE_SegmentRouting/dependencies/startUp.py
rename to TestON/tests/USECASE/SegmentRouting/dependencies/startUp.py
diff --git a/TestON/tests/USECASE/USECASE_SdnipFunction/USECASE_SdnipFunction.py b/TestON/tests/USECASE/USECASE_SdnipFunction/USECASE_SdnipFunction.py
index 9ea664b..50501cf 100644
--- a/TestON/tests/USECASE/USECASE_SdnipFunction/USECASE_SdnipFunction.py
+++ b/TestON/tests/USECASE/USECASE_SdnipFunction/USECASE_SdnipFunction.py
@@ -113,7 +113,7 @@
branchName = main.ONOSbench.getBranchName()
main.log.report( "ONOS is on branch: " + branchName )
- main.log.step( "Uninstalling ONOS" )
+ main.step( "Uninstalling ONOS" )
uninstallResult = main.ONOSbench.onosUninstall( ONOS1Ip )
utilities.assert_equals( expect=main.TRUE,
actual=uninstallResult,
diff --git a/TestON/tests/USECASE/USECASE_SdnipFunctionCluster/USECASE_SdnipFunctionCluster.py b/TestON/tests/USECASE/USECASE_SdnipFunctionCluster/USECASE_SdnipFunctionCluster.py
index e1c20f5..bb8acb8 100644
--- a/TestON/tests/USECASE/USECASE_SdnipFunctionCluster/USECASE_SdnipFunctionCluster.py
+++ b/TestON/tests/USECASE/USECASE_SdnipFunctionCluster/USECASE_SdnipFunctionCluster.py
@@ -108,7 +108,7 @@
branchName = main.ONOSbench.getBranchName()
main.log.report( "ONOS is on branch: " + branchName )
- main.log.step( "Uninstalling ONOS" )
+ main.step( "Uninstalling ONOS" )
uninstallResult = main.ONOSbench.onosUninstall( ONOS1Ip ) \
and main.ONOSbench.onosUninstall( ONOS2Ip ) \
and main.ONOSbench.onosUninstall( ONOS3Ip )
diff --git a/TestON/tests/USECASE/USECASE_SdnipFunctionCluster_fsfw/USECASE_SdnipFunctionCluster_fsfw.py b/TestON/tests/USECASE/USECASE_SdnipFunctionCluster_fsfw/USECASE_SdnipFunctionCluster_fsfw.py
index 8ca65a6..0499fde 100644
--- a/TestON/tests/USECASE/USECASE_SdnipFunctionCluster_fsfw/USECASE_SdnipFunctionCluster_fsfw.py
+++ b/TestON/tests/USECASE/USECASE_SdnipFunctionCluster_fsfw/USECASE_SdnipFunctionCluster_fsfw.py
@@ -113,7 +113,7 @@
branchName = main.ONOSbench.getBranchName()
main.log.report( "ONOS is on branch: " + branchName )
- main.log.step( "Uninstalling ONOS" )
+ main.step( "Uninstalling ONOS" )
uninstallResult = main.ONOSbench.onosUninstall( ONOS1Ip ) \
and main.ONOSbench.onosUninstall( ONOS2Ip ) \
and main.ONOSbench.onosUninstall( ONOS3Ip )
diff --git a/TestON/tests/USECASE/USECASE_SdnipFunction_fsfw/USECASE_SdnipFunction_fsfw.py b/TestON/tests/USECASE/USECASE_SdnipFunction_fsfw/USECASE_SdnipFunction_fsfw.py
index d995156..f2395de 100644
--- a/TestON/tests/USECASE/USECASE_SdnipFunction_fsfw/USECASE_SdnipFunction_fsfw.py
+++ b/TestON/tests/USECASE/USECASE_SdnipFunction_fsfw/USECASE_SdnipFunction_fsfw.py
@@ -122,7 +122,7 @@
branchName = main.ONOSbench.getBranchName()
main.log.report( "ONOS is on branch: " + branchName )
- main.log.step( "Uninstalling ONOS" )
+ main.step( "Uninstalling ONOS" )
uninstallResult = main.ONOSbench.onosUninstall( ONOS1Ip )
utilities.assert_equals( expect=main.TRUE,
actual=uninstallResult,
diff --git a/TestON/tests/USECASE/USECASE_SegmentRouting/README.md b/TestON/tests/USECASE/USECASE_SegmentRouting/README.md
deleted file mode 100644
index 8240068..0000000
--- a/TestON/tests/USECASE/USECASE_SegmentRouting/README.md
+++ /dev/null
@@ -1,33 +0,0 @@
-This test is designed to verify basic connectivity the SegmentRouting application via pingaall.
-
-It consists of
-
-1) Configure and Install ONOS
-2) Start Mininet and check flow state
-2) Test connectivity
-
-Requirements
-
- - A single ONOS instance is required for the test, the application is currently not stable in a cluster as of today.
- - An updated version of the CPQD switch has to be running to make sure it supports group chaining.
-
-Step 1:
-In this step, we copy config file to ONOS, next we package ONOS and install it in the target machine.
-
-Step 2:
-
-In this step we start the topology, connect to ONOS
-
-Step:3
-
-Here, we send several pings between hosts to test connectivity.
-
-Then Steps are repeated for different configurations and topologies.
-
- Configurations:
- 1) APPS=openflow-base,netcfghostprovider,netcfglinksprovider
- 2) APPS=openflow
-
- Topologies:
- 1) 2x2 Leaf-Spine
- 2) 4x4 Leaf-Spine
diff --git a/TestON/tests/USECASE/USECASE_SegmentRouting/USECASE_SegmentRouting.params b/TestON/tests/USECASE/USECASE_SegmentRouting/USECASE_SegmentRouting.params
deleted file mode 100755
index 15ce439..0000000
--- a/TestON/tests/USECASE/USECASE_SegmentRouting/USECASE_SegmentRouting.params
+++ /dev/null
@@ -1,36 +0,0 @@
-<PARAMS>
-
- <testcases>1,[2,3,4,4,10]*2</testcases>
-
- <SCALE>
- <size>1</size>
- <max>1</max>
- </SCALE>
-
- <DEPENDENCY>
- <path>/tests/USECASE_SegmentRouting/dependencies/</path>
- <wrapper1>startUp</wrapper1>
- <topology>cord_fabric.py</topology>
- </DEPENDENCY>
-
- <ENV>
- <cellName>productionCell</cellName>
- <cellApps>drivers,segmentrouting</cellApps>
- <diffApps>openflow-base,netcfghostprovider,netcfglinksprovider;openflow</diffApps>
- <cellUser>sdn</cellUser>
- </ENV>
-
- <GIT>
- <pull>False</pull>
- <branch>master</branch>
- </GIT>
-
- <CTRL>
- <port>6653</port>
- </CTRL>
-
- <SLEEP>
- <startup>10</startup>
- </SLEEP>
-
-</PARAMS>
diff --git a/TestON/tests/USECASE/USECASE_SegmentRouting/USECASE_SegmentRouting.py b/TestON/tests/USECASE/USECASE_SegmentRouting/USECASE_SegmentRouting.py
deleted file mode 100755
index f44966b..0000000
--- a/TestON/tests/USECASE/USECASE_SegmentRouting/USECASE_SegmentRouting.py
+++ /dev/null
@@ -1,315 +0,0 @@
-
-# This test is to determine if the Segment Routing application is working properly
-
-class USECASE_SegmentRouting:
-
- def __init__( self ):
- self.default = ''
-
- def CASE1( self, main ):
- import time
- import os
- import imp
- import re
-
- """
- - Construct tests variables
- - GIT ( optional )
- - Checkout ONOS master branch
- - Pull latest ONOS code
- - Building ONOS ( optional )
- - Install ONOS package
- - Build ONOS package
- """
-
- main.case( "Constructing test variables and building ONOS" )
- main.step( "Constructing test variables" )
- stepResult = main.FALSE
-
- # Test variables
- main.cellName = main.params[ 'ENV' ][ 'cellName' ]
- main.apps = main.params[ 'ENV' ][ 'cellApps' ]
- main.diff = []
- main.diff.extend(( main.params[ 'ENV' ][ 'diffApps' ] ).split(";"))
- main.diff.extend(( main.params[ 'ENV' ][ 'diffApps' ] ).split(";"))
- gitBranch = main.params[ 'GIT' ][ 'branch' ]
- main.path = os.path.dirname( main.testFile )
- main.dependencyPath = main.path + "/dependencies/"
- main.topology = main.params[ 'DEPENDENCY' ][ 'topology' ]
- #main.json = ["0x1","0x1"]
- main.json = ["2x2", "2x2","4x4","4x4"]
- main.args = [" ", " ", " --spine 4 --leaf 4 ", " --spine 4 --leaf 4 "]
- #main.args = [" --spine 0 --leaf 1 "," --spine 0 --leaf 1 "]
- main.scale = ( main.params[ 'SCALE' ][ 'size' ] ).split( "," )
- main.maxNodes = int( main.params[ 'SCALE' ][ 'max' ] )
- main.ONOSport = main.params[ 'CTRL' ][ 'port' ]
- wrapperFile1 = main.params[ 'DEPENDENCY' ][ 'wrapper1' ]
- main.startUpSleep = int( main.params[ 'SLEEP' ][ 'startup' ] )
- gitPull = main.params[ 'GIT' ][ 'pull' ]
- main.cellData = {} # for creating cell file
- main.CLIs = []
- main.ONOSip = []
-
- main.ONOSip = main.ONOSbench.getOnosIps()
-
- # Assigning ONOS cli handles to a list
- for i in range( 1, main.maxNodes + 1 ):
- main.CLIs.append( getattr( main, 'ONOScli' + str( i ) ) )
-
- # -- INIT SECTION, ONLY RUNS ONCE -- #
- main.startUp = imp.load_source( wrapperFile1,
- main.dependencyPath +
- wrapperFile1 +
- ".py" )
-
- copyResult1 = main.ONOSbench.scp( main.Mininet1,
- main.dependencyPath +
- main.topology,
- main.Mininet1.home,
- direction="to" )
- if main.CLIs:
- stepResult = main.TRUE
- else:
- main.log.error( "Did not properly created list of ONOS CLI handle" )
- stepResult = main.FALSE
-
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully construct " +
- "test variables ",
- onfail="Failed to construct test variables" )
-
- if gitPull == 'True':
- main.step( "Building ONOS in " + gitBranch + " branch" )
- onosBuildResult = main.startUp.onosBuild( main, gitBranch )
- stepResult = onosBuildResult
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully compiled " +
- "latest ONOS",
- onfail="Failed to compile " +
- "latest ONOS" )
- else:
- main.log.warn( "Did not pull new code so skipping mvn " +
- "clean install" )
-
- def CASE2( self, main ):
- """
- - Set up cell
- - Create cell file
- - Set cell file
- - Verify cell file
- - Kill ONOS process
- - Uninstall ONOS cluster
- - Verify ONOS start up
- - Install ONOS cluster
- - Connect to cli
- """
-
- # main.scale[ 0 ] determines the current number of ONOS controller
- main.numCtrls = int( main.scale[ 0 ] )
- apps=main.apps
- if main.diff:
- apps = main.apps+","+main.diff.pop(0)
- else: main.log.error( "App list is empty" )
- main.case( "Package and start ONOS using apps:" + apps)
-
- print "NODE COUNT = ", main.numCtrls
-
- tempOnosIp = []
- for i in range( main.numCtrls ):
- tempOnosIp.append( main.ONOSip[i] )
-
- onosUser = main.params[ 'ENV' ][ 'cellUser' ]
- main.step("Create and Apply cell file")
- main.ONOSbench.createCellFile( main.ONOSbench.ip_address,
- "temp",
- main.Mininet1.ip_address,
- apps,
- tempOnosIp,
- onosUser )
-
- cellResult = main.ONOSbench.setCell( "temp" )
- verifyResult = main.ONOSbench.verifyCell()
- stepResult = cellResult and verifyResult
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully applied cell to " + \
- "environment",
- onfail="Failed to apply cell to environment " )
- #kill off all onos processes
- main.log.info( "Safety check, killing all ONOS processes" +
- " before initiating environment setup" )
-
- for i in range( main.maxNodes ):
- main.ONOSbench.onosDie( main.ONOSip[ i ] )
-
- main.step( "Create and Install ONOS package" )
- main.jsonFile=main.json.pop(0)
- main.ONOSbench.handle.sendline( "cp "+main.path+"/"+main.jsonFile+".json ~/onos/tools/package/config/network-cfg.json")
- packageResult = main.ONOSbench.onosPackage()
- #stepResult = packageResult
- #utilities.assert_equals( expect=main.TRUE,
- # actual=stepResult,
- # onpass="Successfully created ONOS package",
- # onfail="Failed to create ONOS package" )
-
- #time.sleep( main.startUpSleep )
-
- onosInstallResult = main.TRUE
- for i in range( main.numCtrls ):
- onosInstallResult = onosInstallResult and \
- main.ONOSbench.onosInstall( node=main.ONOSip[ i ] )
- stepResult = onosInstallResult
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully installed ONOS package",
- onfail="Failed to install ONOS package" )
-
- main.step( "Starting ONOS service" )
- stopResult = main.TRUE
- startResult = main.TRUE
- onosIsUp = main.TRUE
-
- for i in range( main.numCtrls ):
- onosIsUp = onosIsUp and main.ONOSbench.isup( main.ONOSip[ i ] )
- if onosIsUp == main.TRUE:
- main.log.report( "ONOS instance is up and ready" )
- else:
- main.log.report( "ONOS instance may not be up, stop and " +
- "start ONOS again " )
- for i in range( main.numCtrls ):
- stopResult = stopResult and \
- main.ONOSbench.onosStop( main.ONOSip[ i ] )
- for i in range( main.numCtrls ):
- startResult = startResult and \
- main.ONOSbench.onosStart( main.ONOSip[ i ] )
- stepResult = onosIsUp and stopResult and startResult
-
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="ONOS service is ready",
- onfail="ONOS service did not start properly" )
- #time.sleep( 2*main.startUpSleep )
- #main.ONOSbench.handle.sendline( "onos-secure-ssh")
- main.step( "Checking if ONOS CLI is ready" )
- cellResult = main.CLIs[0].setCell( "temp" )
-
- cliResult = main.CLIs[0].startOnosCli( main.ONOSip[ 0 ],
- commandlineTimeout=60, onosStartTimeout=100 )
- utilities.assert_equals( expect=main.TRUE,
- actual=cliResult,
- onpass="ONOS CLI is ready",
- onfail="ONOS CLI is not ready" )
- for i in range( 10 ):
- ready = True
- output = main.CLIs[0].summary()
- if not output:
- ready = False
- if ready:
- break
- time.sleep( 10 )
- utilities.assert_equals( expect=True, actual=ready,
- onpass="ONOS summary command succeded",
- onfail="ONOS summary command failed" )
-
- if not ready:
- main.log.error( "ONOS startup failed!" )
- main.cleanup()
- main.exit()
-
- def CASE3( self, main ):
- """
- Start mininet
- """
- main.case( "Start Leaf-Spine "+main.jsonFile+" Mininet Topology" )
- main.log.report( "Start Mininet topology" )
-
- main.step( "Starting Mininet Topology" )
- args,topo=" "," "
- #if main.topology:
- # topo = main.topology.pop(0)
- #else: main.log.error( "Topo list is empty" )
- if main.args:
- args = "--onos 1 " + main.args.pop(0)
- else: main.log.error( "Argument list is empty" )
-
- topoResult = main.Mininet1.startNet( topoFile= main.dependencyPath + main.topology, args=args )
- stepResult = topoResult
- utilities.assert_equals( expect=main.TRUE,
- actual=stepResult,
- onpass="Successfully loaded topology",
- onfail="Failed to load topology" )
- # Exit if topology did not load properly
- if not topoResult:
- main.cleanup()
- main.exit()
- #main.step("Waiting for switch initialization and configuration")
- main.step(" Check whether the flow count is bigger than 80" )
- count = utilities.retry( main.CLIs[0].checkFlowCount,
- main.FALSE,
- kwargs={'min':10},
- attempts=10 )
- utilities.assertEquals( \
- expect=True,
- actual=(count>0),
- onpass="Flow count looks correct: "+str(count),
- onfail="Flow count looks wrong: "+str(count) )
-
- main.step( "Check whether all flow status are ADDED" )
- flowCheck = utilities.retry( main.CLIs[0].checkFlowsState,
- main.FALSE,
- kwargs={'isPENDING':False},
- attempts=10 )
- utilities.assertEquals( \
- expect=main.TRUE,
- actual=flowCheck,
- onpass="Flow status is correct!",
- onfail="Flow status is wrong!" )
- main.ONOSbench.dumpFlows( main.ONOSip[0],
- main.logdir, "flowsBefore" + main.jsonFile)
- main.ONOSbench.dumpGroups( main.ONOSip[0],
- main.logdir, "groupsBefore" + main.jsonFile)
- #time.sleep( 3*main.startUpSleep)
- main.count=1
-
- def CASE4( self, main ):
- main.case( "Check full connectivity" )
- main.log.report( "Check full connectivity" )
-
- main.step("Check full connectivity"+str(main.count))
- pa = main.Mininet1.pingall()
- utilities.assert_equals( expect=main.TRUE, actual=pa,
- onpass="Full connectivity successfully tested",
- onfail="Full connectivity failed" )
- # cleanup mininet
- main.ONOSbench.dumpFlows( main.ONOSip[0],
- main.logdir, "flowsAfter" + str(main.count) + main.jsonFile)
- main.ONOSbench.dumpGroups( main.ONOSip[0],
- main.logdir, "groupsAfter" + str(main.count) + main.jsonFile)
-
- def CASE10( self, main ):
- '''
- Report errors/warnings/exceptions
- '''
- main.case( "Logging test for " + main.jsonFile )
- #if len(main.json) > 0 :
- main.ONOSbench.onosStop( main.ONOSip[0] )
- main.Mininet1.stopNet()
- main.ONOSbench.cpLogsToDir("/opt/onos/log/karaf.log",main.logdir,
- copyFileName="karaf.log."+main.jsonFile+str(len(main.json)))
- #main.ONOSbench.logReport( main.ONOSip[ 0 ],
- # [ "INFO" ],
- # "a" )
- #main.log.info("Error report: \n" )
- main.ONOSbench.logReport( main.ONOSip[ 0 ],
- [ "INFO",
- "FOLLOWER",
- "WARN",
- "flow",
- "ERROR",
- "Except" ],
- "s" )
-
-
-
diff --git a/TestON/tests/USECASE/USECASE_SegmentRouting/USECASE_SegmentRouting.topo b/TestON/tests/USECASE/USECASE_SegmentRouting/USECASE_SegmentRouting.topo
deleted file mode 100755
index a5266a0..0000000
--- a/TestON/tests/USECASE/USECASE_SegmentRouting/USECASE_SegmentRouting.topo
+++ /dev/null
@@ -1,37 +0,0 @@
-<TOPOLOGY>
- <COMPONENT>
-
- <ONOSbench>
- <host>localhost</host>
- <user>sdn</user>
- <password>rocks</password>
- <type>OnosDriver</type>
- <connect_order>1</connect_order>
- <COMPONENTS>
- <nodes>1</nodes>
- </COMPONENTS>
- </ONOSbench>
-
- <ONOScli1>
- <host>localhost</host>
- <user>sdn</user>
- <password>rocks</password>
- <type>OnosCliDriver</type>
- <connect_order>2</connect_order>
- <COMPONENTS>
- </COMPONENTS>
- </ONOScli1>
-
- <Mininet1>
- <host>OCN</host>
- <user>sdn</user>
- <password>rocks</password>
- <type>MininetCliDriver</type>
- <connect_order>3</connect_order>
- <COMPONENTS>
- <home>~/mininet/custom/</home>
- </COMPONENTS>
- </Mininet1>
-
- </COMPONENT>
-</TOPOLOGY>
diff --git a/TestON/tests/__init__.py b/TestON/tests/__init__.py
index e69de29..8b13789 100644
--- a/TestON/tests/__init__.py
+++ b/TestON/tests/__init__.py
@@ -0,0 +1 @@
+